diff --git a/deprecated/FILES b/deprecated/FILES
deleted file mode 100644
index 1311108b6..000000000
--- a/deprecated/FILES
+++ /dev/null
@@ -1,260 +0,0 @@
-
-Code map for GF source files.
-
-$Author: peb $
-$Date: 2005/02/07 10:58:08 $
-
-Directories:
-
-[top level] GF main function and runtime-related modules
-api high-level access to GF functionalities
-canonical GFC (= GF Canonical) basic functionalities
-cf context-free skeleton used in parsing
-cfgm multilingual context-free skeleton exported to Java
-compile compilation phases from GF to GFC
-conversions [OBSOLETE] formats used in parser generation
-for-ghc GHC-specific files (Glasgow Haskell Compiler)
-for-hugs Hugs-specific files (a Haskell interpreter)
-for-windows Windows-specific files (an operating system from Microsoft)
-grammar basic functionalities of GF grammars used in compilation
-infra GF-independent infrastructure and auxiliaries
-newparsing parsing with GF grammars: current version (cf. parsing)
-notrace debugging utilities for parser development (cf. trace)
-parsers parsers of GF and GFC files
-parsing [OBSOLETE] parsing with GF grammars: old version (cf. newparsing)
-shell interaction shells
-source utilities for reading in GF source files
-speech generation of speech recognition grammars
-trace debugging utilities for parser development (cf. notrace)
-useGrammar grammar functionalities for applications
-util utilities for using GF
-
-
-Individual files:
-
-GF.hs the Main module
-GFModes.hs
-HelpFile.hs [AUTO] help file generated by util/MkHelpFile
-Today.hs [AUTO] file generated by "make today"
-
-api/API.hs high-level access to GF functionalities
-api/BatchTranslate.hs
-api/GetMyTree.hs
-api/GrammarToHaskell.hs
-api/IOGrammar.hs
-api/MyParser.hs slot for defining your own parser
-
-canonical/AbsGFC.hs [AUTO] abstract syntax of GFC
-canonical/CanonToGrammar.hs
-canonical/CMacros.hs
-canonical/ErrM.hs
-canonical/GetGFC.hs
-canonical/GFC.cf [LBNF] source of GFC parser
-canonical/GFC.hs
-canonical/LexGFC.hs
-canonical/Look.hs
-canonical/MkGFC.hs
-canonical/PrExp.hs
-canonical/PrintGFC.hs pretty-printer of GFC
-canonical/Share.hs
-canonical/SkelGFC.hs [AUTO]
-canonical/TestGFC.hs [AUTO]
-canonical/Unlex.hs
-
-cf/CanonToCF.hs
-cf/CF.hs abstract syntax of context-free grammars
-cf/CFIdent.hs
-cf/CFtoGrammar.hs
-cf/CFtoSRG.hs
-cf/ChartParser.hs the current default parsing method
-cf/EBNF.hs
-cf/PPrCF.hs
-cf/PrLBNF.hs
-cf/Profile.hs
-
-cfgm/CFG.cf [LBNF] source
-cfgm/AbsCFG.hs [AUTO]
-cfgm/LexCFG.hs [AUTO]
-cfgm/ParCFG.hs [AUTO]
-cfgm/PrintCFG.hs [AUTO]
-cfgm/PrintCFGrammar.hs
-
-compile/CheckGrammar.hs
-compile/Compile.hs the complete compiler pipeline
-compile/Extend.hs
-compile/GetGrammar.hs
-compile/GrammarToCanon.hs
-compile/MkResource.hs
-compile/MkUnion.hs
-compile/ModDeps.hs
-compile/Optimize.hs
-compile/PGrammar.hs
-compile/PrOld.hs
-compile/Rebuild.hs
-compile/RemoveLiT.hs
-compile/Rename.hs
-compile/ShellState.hs the run-time multilingual grammar datastructure
-compile/Update.hs
-
-for-ghc/ArchEdit.hs
-for-ghc/Arch.hs
-
-for-ghc-nofud/ArchEdit.hs@
-for-ghc-nofud/Arch.hs@
-
-for-hugs/ArchEdit.hs
-for-hugs/Arch.hs
-for-hugs/JGF.hs
-for-hugs/MoreCustom.hs
-for-hugs/Unicode.hs
-
-for-hugs/Arch.hs
-for-hugs/ArchEdit.hs
-for-hugs/JGF.hs
-for-hugs/LexCFG.hs dummy CFG lexer
-for-hugs/LexGF.hs dummy GF lexer
-for-hugs/LexGFC.hs dummy GFC lexer
-for-hugs/MoreCustom.hs
-for-hugs/ParCFG.hs dummy CFG parser
-for-hugs/ParGFC.hs dummy GFC parser
-for-hugs/ParGF.hs dummy GF parser
-for-hugs/Tracing.hs
-for-hugs/Unicode.hs
-
-for-windows/ArchEdit.hs
-for-windows/Arch.hs
-
-grammar/AbsCompute.hs
-grammar/Abstract.hs GF and GFC abstract syntax datatypes
-grammar/AppPredefined.hs
-grammar/Compute.hs
-grammar/Grammar.hs GF source grammar datatypes
-grammar/LookAbs.hs
-grammar/Lookup.hs
-grammar/Macros.hs macros for creating GF terms and types
-grammar/MMacros.hs more macros, mainly for abstract syntax
-grammar/PatternMatch.hs
-grammar/PrGrammar.hs the top-level grammar printer
-grammar/Refresh.hs
-grammar/ReservedWords.hs
-grammar/TC.hs Coquand's type checking engine
-grammar/TypeCheck.hs
-grammar/Unify.hs
-grammar/Values.hs
-
-infra/Arabic.hs ASCII coding of Arabic Unicode
-infra/Assoc.hs finite maps/association lists as binary search trees
-infra/CheckM.hs
-infra/Comments.hs
-infra/Devanagari.hs ASCII coding of Devanagari Unicode
-infra/ErrM.hs
-infra/Ethiopic.hs
-infra/EventF.hs
-infra/ExtendedArabic.hs
-infra/ExtraDiacritics.hs
-infra/FudgetOps.hs
-infra/Glue.hs
-infra/Greek.hs
-infra/Hebrew.hs
-infra/Hiragana.hs
-infra/Ident.hs
-infra/LatinASupplement.hs
-infra/Map.hs finite maps as red black trees
-infra/Modules.hs
-infra/OCSCyrillic.hs
-infra/Operations.hs library of strings, search trees, error monads
-infra/Option.hs
-infra/OrdMap2.hs abstract class of finite maps + implementation as association lists
-infra/OrdSet.hs abstract class of sets + implementation as sorted lists
-infra/Parsers.hs
-infra/ReadFiles.hs
-infra/RedBlack.hs red black trees
-infra/RedBlackSet.hs sets and maps as red black trees
-infra/Russian.hs
-infra/SortedList.hs sets as sorted lists
-infra/Str.hs
-infra/Tamil.hs
-infra/Text.hs
-infra/Trie2.hs
-infra/Trie.hs
-infra/UnicodeF.hs
-infra/Unicode.hs
-infra/UseIO.hs
-infra/UTF8.hs UTF3 en/decoding
-infra/Zipper.hs
-
-newparsing/CFGrammar.hs type definitions for context-free grammars
-newparsing/CFParserGeneral.hs several variants of general CFG chart parsing
-newparsing/CFParserIncremental.hs several variants of incremental (Earley-style) CFG chart parsing
-newparsing/ConvertGFCtoMCFG.hs converting GFC to MCFG
-newparsing/ConvertGrammar.hs conversions between different grammar formats
-newparsing/ConvertMCFGtoCFG.hs converting MCFG to CFG
-newparsing/GeneralChart.hs Haskell framework for "parsing as deduction"
-newparsing/GrammarTypes.hs instantiations of grammar types
-newparsing/IncrementalChart.hs Haskell framework for incremental chart parsing
-newparsing/MCFGrammar.hs type definitions for multiple CFG
-newparsing/MCFParserBasic.hs MCFG chart parser
-newparsing/MCFRange.hs ranges for MCFG parsing
-newparsing/ParseCFG.hs parsing of CFG
-newparsing/ParseCF.hs parsing of the CF format
-newparsing/ParseGFC.hs parsing of GFC
-newparsing/ParseMCFG.hs parsing of MCFG
-newparsing/Parser.hs general definitions for parsers
-newparsing/PrintParser.hs pretty-printing class for parsers
-newparsing/PrintSimplifiedTerm.hs simplified pretty-printing for GFC terms
-
-notrace/Tracing.hs tracing predicates when we DON'T want tracing capabilities (normal case)
-
-parsers/ParGFC.hs [AUTO]
-parsers/ParGF.hs [AUTO]
-
-shell/CommandF.hs
-shell/CommandL.hs line-based syntax of editor commands
-shell/Commands.hs commands of GF editor shell
-shell/IDE.hs
-shell/JGF.hs
-shell/PShell.hs
-shell/ShellCommands.hs commands of GF main shell
-shell/Shell.hs
-shell/SubShell.hs
-shell/TeachYourself.hs
-
-source/AbsGF.hs [AUTO]
-source/ErrM.hs
-source/GF.cf [LBNF] source of GF parser
-source/GrammarToSource.hs
-source/LexGF.hs [AUTO]
-source/PrintGF.hs [AUTO]
-source/SourceToGrammar.hs
-
-speech/PrGSL.hs
-speech/PrJSGF.hs
-speech/SRG.hs
-speech/TransformCFG.hs
-
-trace/Tracing.hs tracing predicates when we want tracing capabilities
-
-translate/GFT.hs Main module of html-producing batch translator
-
-useGrammar/Custom.hs database for customizable commands
-useGrammar/Editing.hs
-useGrammar/Generate.hs
-useGrammar/GetTree.hs
-useGrammar/Information.hs
-useGrammar/Linear.hs the linearization algorithm
-useGrammar/MoreCustom.hs
-useGrammar/Morphology.hs
-useGrammar/Paraphrases.hs
-useGrammar/Parsing.hs the top-level parsing algorithm
-useGrammar/Randomized.hs
-useGrammar/RealMoreCustom.hs
-useGrammar/Session.hs
-useGrammar/TeachYourself.hs
-useGrammar/Tokenize.hs lexer definitions (listed in Custom)
-useGrammar/Transfer.hs
-
-util/GFDoc.hs utility for producing LaTeX and HTML from GF
-util/HelpFile source of ../HelpFile.hs
-util/Htmls.hs utility for chopping a HTML document to slides
-util/MkHelpFile.hs
-util/WriteF.hs
diff --git a/deprecated/Grammar.epsi b/deprecated/Grammar.epsi
deleted file mode 100644
index 5c398ad25..000000000
--- a/deprecated/Grammar.epsi
+++ /dev/null
@@ -1,4882 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Title: _anonymous_0
-%%Creator: dot version 2.2.1 (Tue Oct 11 01:38:42 UTC 2005)
-%%CreationDate: 2006-06-16 16:06 Grammar.ps
-%%For: (aarne) Aarne Ranta,,,
-%%Pages: 1
-%%DocumentFonts:
-%%BoundingBox: 35 35 612 273
-%%BeginPreview: 577 238 8 3570
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000002244778888887744220000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000002288
-% bbddddbb99885544558899bbddddbb8822
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000003399dd77
-% 33000000000000000000000000003377dd
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000044bbcc660000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000011ccaa4400000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000011cc66000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000011cc6600000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000011cc660000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000cc66000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000559900000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000995500000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000dd110000000000000088ff88
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000033aa000000000000000000ff00
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000008866000000000000000000ff00
-% 00000000aaee55449988bb000088eeaabb
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000007777000000000000000000ff00
-% 000000009911ee00ff11ff0000ff00ff00
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000022cc000000000000000000ff00
-% 000000004444ff00ff00ff0000ee11ee00
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000dd110000000000000000ff00
-% 000044992200ff00ff00ff000088dd5500
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000088660000000000000055ffff
-% ffddaabbff77ee77ff22ff5500bbaa8855
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000044bb00000000000000000000
-% 00000000000000000000000066332244ee
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000cc99000000000000000000
-% 000000000000000000000000bbffffcc44
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000011d3990000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000066bbb0999900000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000002288dd993300009999000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000004499dd8811000000000088dd8811000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000066ccbb550000000000000000002288dd882200
-% 0000000000000000000000000000000022
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000002288dd9922000000000000000000000000001166dd99
-% 66441100000000000000000011446699dd
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000055aadd661100000000000000000000000000000000000066
-% 88aabbeeccbb888888bbbbeebbaa886600
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000001177ddaa4400000000000000000000000000000000000000000000
-% 0000000000444488554400000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000003399dd8822000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000066ccbb66000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000002288dd99330000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000055aadd771100000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 001177dd994400000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000044
-% 99dd8822000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000001166ccbb
-% 55000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000002299dd882200
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000066bbcc6600000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000002288dd9933000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000055aadd77110000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000002288dd99440000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000004499dd881100000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000001177ddaa5500000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000004499dd8822000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000001166ccbb66000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000003399dd88220000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000001166ccbb660000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000002288dd992200000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000066bbcc6611000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00002288dd9933000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 66bbcc66110000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000000002288dd
-% 99330000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000066bbdd7711
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00220000000000000000000000000000000000000000000000000070c10000002288ee9944000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000444455888899bbbbeedd
-% bbbbbbeeddbbbb8888884444330000000000000000000000000070f5f46655bbdd77110000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000002266aaeebb888888444433000000
-% 000000000000444455888899bbee9955110000000000000000aef6fffffd99440000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000003377cccc88330000000000000000000000
-% 00000000000000000000000000005599ddaa772200000011aef9fffffff266000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000004488ddbb77220000000000000000000000000000
-% 00000000000000000000000000000000003388cccc8830e1ffffffffffffeb000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000001188cc66110000000000000000000000000000000000
-% 00000000000000000000000000000000000000002277f5fff8e0d2b4a88844000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000044dd880000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000011aabb220000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000001188cc33000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000055dd7700000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000044dd880000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000011aabb220000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000022dd33000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000055dd0000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000887700000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000aa4400000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000011dd11000000000000000044bbffddbbbb0000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000044bb00000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000006688000000000000000044cc22000055cc0000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000cc33000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000dd220000000000000000cc4400000000ee33998866aaee5500449988
-% ee44dd9900449988ee44dd990000aaee553399886600000000000000006699000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000033cc000000000000000000ff00000022ddff22ff00009911ee0000ff00
-% 33ff11ff0000ff0033ff11ff00009911ee00ff0000000000000000000011dd000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000033444444888888c4330000000000000000dd4400000011ff00ff00004444ff0000ff00
-% 00ff00ff0000ff0000ff00ff00004444ff00ff0000000000000000000077bfc8c8b0827650443300
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000114444445588888899bbbb
-% bbeeffcdd4dee9e2e6f1f6f2a499000000000000000066ee66000000ff00ff00992200ff0000ff00
-% 00ff00ff0000ff0000ff00ff00992200ff00ff00000000000000000000dd5882c0c8c8e0e0edfff2
-% edfbffe8e0d7cda8a088885544444411000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000001144444466888888aabbbbbbffeebbc9cdb4b8c8d7cbdee8e8ff
-% f6edfff2e0d8c8b08f76694444dd22000000000000000055ccffffaa9955ff88bbff77ee55ddff88
-% 55ff55ff44ddff8855ff55ff44bbff77ee8eff88000000000000000066aebbffbbbb888855442200
-% 004444447798a8c1cdd7f8f8e0e4e4e0e0f3ffc9bbbbaa8888885544444400000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 4444445588888899bbbbbbffeebbbbbba7a8a8b0b0a8a8cdc4cdfff0e0e9e9f0f8e0cda8a8904444
-% 2200000022448888bbddccbb88778800000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000cc330000004444778899bbdd
-% eebbaa88884444000000000000334455888899bbbbf3e6cdd2c8c8c0c1cdc4ccffccbbbb99888888
-% 44444411000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000002244444477888888bbbbbbeeffbbbb
-% bbaa8888a082768fa88899bbbbddffc9cdd7c8c8e0d2f3dac0aa8888444411000000000000114466
-% 88aacceebb888844330000000011dd77000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000001198bb0000000000000000000000
-% 001144448888bbbbffbbbb887744330000000000000000114444668888aabbccffbbbbc1a8a88fa8
-% 9088bbbbbbffddbbbb99888866444422000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000003344444488888899bbbbbbffeebbbbbb88888877445d7650668888aabb
-% bbeeeebbbbaaa8a8b7a8b4cdccffbbbb88887744440000000000000000000022448899bbeebbaa88
-% 554400000000000000000000000011bbd22200000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000044ddb8ddcc88662200000000000000
-% 0000000000000000000044558888bbddddbb998855441100000000000000000000002244448888aa
-% bbddddbbaa888844765d44888888bbbbbbeeddbbbb99888855444400000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000114444
-% 4488888899bbbbbbffddbbbbbb8888886644444411444455888899bbbbddffbbbbaa8888775d7677
-% 8888bbcceebbbb888855443300000000000000000000000000445588aacceebb8877442200000000
-% 00000000000000000000002266aaddaa99dd77000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000088dd330000115588bbeebb8844110000
-% 000000000000000000000000000000000022446688aabbeebbbb8877442200000000000000000000
-% 0000001144448888aabbddeebbbb888855442200334444888888bbbbddeebbbb9988885544441100
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000033444466888888bbbbbbeeeebbbbbb88
-% 888877444444000000224444778888bbbbbbffccbbbb888888444444003344778899bbddddbbaa88
-% 77443300000000000000000000000000000011447788bbddccbb8866440000000000000000000000
-% 00000000000000115599ddbb884400000011aabb2200000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000033cc88110000000000000000337799ddcc99
-% 6622000000000000000000000000000000000000000000000044558899bbeebbaa88554400000000
-% 0000000000000000000000001144448888aabbddeebbbb8888444400000000334444888888bbbbdd
-% eebbbb8888774444110000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000033444466888888bbbbbbffddbbbbaa8888884444442200000000003344
-% 44888888bbbbccffbbbbaa8888774444220000000044448888bbbbeeccbb88886644220000000000
-% 00000000000000000000000011447788bbeebb998855330000000000000000000000000000000000
-% 000000004488ccdd885511000000000000000077dd88550000000000000000000000000000000000
-% 000000000000000000000000000000000000001166c2dd4400000000000000000000000000001155
-% 88bbeeaa77440000000000000000000000000000000000000000000000000011446688aacceebb88
-% 8844330000000000000000000000000000000000001144448888bbbbeebbaa887744220000000000
-% 00004444668888bbbbddeebbbb88887744
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000003344
-% 4466888888bbbbbbffddbbbbaa8888884444441100000000000000114444778888bbbbccffbbbbaa
-% 8888664444110000000000000033448888bbccffbbbb888844441100000000000000000000000000
-% 00000000000011447788bbeebb998844220000000000000000000000000000000000000000000000
-% 2277aaddaa66220000000000000000000000000050b899dd99661100000000000000000000000000
-% 000000000000000000000000000000002277aadda0bbdd6600000000000000000000000000000000
-% 0000004477aaeebb8844110000000000000000000000000000000000000000000000000000002244
-% 8888bbddccbb88664411000000000000000000000000000000000000001144558888bbddddbb9988
-% 5544110000000000000000003344558888
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000444444888888aabbbbeeeebbbbaa
-% 88888844444411000000000000000000004444668888aabbbbffccbbbb8888664444110000000000
-% 00000000001144668899bbeeccbb8888443300000000000000000000000000000000000000000000
-% 11447788bbeebb9988442200000000000000000000000000000000000000000000000000115599dd
-% bb883300000000000000000000000000000044bbbb4400005588ddbb772200000000000000000000
-% 000000000000000000000000003388cccc88330000002299dd660000000000000000000000000000
-% 00000000000000336699ddcc88662200000000000000000000000000000000000000000000000000
-% 000000000044558899cceebb88664400000000000000000000000000000000000000000000224466
-% 88aabbeeccbb8888444400000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000011444455888888bbbbbbffddbbbb99888866444422000000000000
-% 000000000000114444778888bbbbddeebbbb88887744442200000000000000000000000000003344
-% 7788bbbbeebbaa88664422000000000000000000000000000000000000000000000000447788bbee
-% bb99884422000000000000000000000000000000000000000000000000000000003388bbdd995511
-% 0000000000000000000000000000000022aabb44000000000000003377cceebbc0b4888855444400
-% 000000114444668888c7bbbbffaa662200000000000000002299dd66000000000000000000000000
-% 0000000000000000000000115588ccdd996622000000000000000000000000000000000000000000
-% 0000000000000000000000335588aaccddbb88553300000000000000000000000000000000000000
-% 000000000033448888bbbbeebbaa886644
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000334444888888bbbbbbffccbbbb88888855444411000000000000000000000000000022444477
-% 8888bbbbeeddbbbb888866444400000000000000000000000000000000000044558899bbddddbb88
-% 8844440000000000000000000000000000000000000000000000000000225588aaddccaa88552200
-% 0000000000000000000000000000000000000000000000000000000000116699eeaa772200000000
-% 00000000000000000000000000002299dd660000000000000000000000000000a0a844888888bbbb
-% ddffccbbbb88887744c17a0000000000000000000000000000002299dd6600000000000000000000
-% 000000000000000000000000000000115588bbdd9966220000000000000000000000000000000000
-% 0000000000000000000000000000000000446688bbddccaa88552200000000000000000000000000
-% 00000000000000000000000011446688aa
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000011444466888899bbbbee
-% eebbbb9988886644441100000000000000000000000000000000004444778888bbbbeeccbbaa8888
-% 664444000000000000000000000000000000000000000011446688aabbffbbaa8877442200000000
-% 000000000000000000000000000000000000000000000011447788bbeebb88664400000000000000
-% 00000000000000000000000000000000000000000000000000003388cccc88550000000000000000
-% 0000000000000000000000001188dd6600000000000000000000000000000044cc00000000000000
-% 00000000000000000022dd11000000000000000000000000000000002299dd660000000000000000
-% 00000000000000000000000000000000000000004488bbeeaa773300000000000000000000000000
-% 0000000000000000000000000000000000000000000000446688bbeebb9988442200000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000114444668888bbbbccffccbbbb8888884444330000
-% 00000000000000000000000000000000003344558888bbbbddeebbbb888866444400000000000000
-% 000000000000000000000000000000000033558899bbeebbaa885544110000000000000000000000
-% 000000000000000000000000000000000000335588bbddccaa884422000000000000000000000000
-% 000000000000000000000000000000000000000000002266aaddaa66220000000000000000000000
-% 000000000000000000001188dd881100000000000000000000000000000000cc4400000000000000
-% 0000000000000000000088880000000000000000000000000000000000002299dd66000000000000
-% 0000000000000000000000000000000000000000000000004488bbeeaa7733000000000000000000
-% 0000000000000000000000000000000000000000000000000000000011447788bbeebb8855220000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000004444558888aabbbbffccbbbb88887744441100000000000000000000000000
-% 00000000000000004444778899bbbbffbbbb99887744441100000000000000000000000000000000
-% 0000000000000000000022447788bbddddbb88774422000000000000000000000000000000000000
-% 00000000000000000000000011447799bbeebb886644000000000000000000000000000000000000
-% 000000000000000000000000000000000000004488cccc8844000000000000000000000000000000
-% 00000000000000000077dd8811000000000000000000000000000000000077990000000000000000
-% 0000000000000000000000dd33000000000000000000000000000000000000002299dd6600000000
-% 000000000000000000000000000000000000000000000000000000004488bbee9966220000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000336688bbeebb
-% 8855220000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000003344
-% 44888899bbbbeeddbbbb888888444422000000000000000000000000000000000000000000000044
-% 44778899bbcceebbbb88885544330000000000000000000000000000000000000000000000000000
-% 00000000445588aabbeebb9988553300000000000000000000000000000000000000000000000000
-% 00000000000000114488aaddcc998844110000000000000000000000000000000000000000000000
-% 0000000000000000000000000000001166aaddaa6622000000000000000000000000000000000000
-% 0000000000000066dd992200000000000000000000000000000000000011dd110000000000000000
-% 000000000000000000000044bb0000000000000000000000000000000000000000002299dd660000
-% 00000000000000000000000000000000000000000000000000000000000000004488bbdd99662200
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000033
-% 6688bbeebb885533000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000224444888899bbbbffbbbb99
-% 8888554433000000000000000000000000000000000000000000000000114444888899bbcceebbbb
-% 88885544220000000000000000000000000000000000000000000000000000000000000000224488
-% 88bbeeccbb8866441100000000000000000000000000000000000000000000000000000000000000
-% 0000114488aaddcc9977440000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000003388cccc884400000000000000000000000000000000000000000000
-% 000000000066dd992200000000000000000000000000000000000000009977000000000000000000
-% 000000000000000000000000aa66000000000000000000000000000000000000000000002299dd66
-% 0000000000000000000000000000000000000000000000000000000000000000000000005588ccdd
-% 99551100000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000225588bbeebb88663300000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000224444888899bbbbffccbbaa88884444220000000000
-% 0000000000000000000000000000000000000000002244668899bbcceebbbb888855442200000000
-% 00000000000000000000000000000000000000000000000000000000000000336688bbcceebb8888
-% 44220000000000000000000000000000000000000000000000000000000000000000000000224488
-% aaddcc99774400000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000116699eeaa772200000000000000000000000000000000000000000000000000
-% 00000055dd992200000000000000000000000000000000000000000044cc00000000000000000000
-% 00000000000000000000000022dd1100000000000000000000000000000000000000000000002299
-% dd660000000000000000000000000000000000000000000000000000000000000000000000000011
-% 5588cccc885511000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000225588bbeebb8866
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000004444778899bbbbffccbbaa8888554433000000000000000000000000000000
-% 0000000000000000000000000044448888aabbeeccbb998866443300000000000000000000000000
-% 00000000000000000000000000000000000000000000000000335588aaccddbb8866440000000000
-% 0000000000000000000000000000000000000000000000000000000000000000225588bbeebb8866
-% 44000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000003377ccdd88550000000000000000000000000000000000000000000000000000000000
-% 0044bbbb220000000000000000000000000000000000000000000000cc4400000000000000000000
-% 00000000000000000000000000888800000000000000000000000000000000000000000000000000
-% 2299dd66000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000116699ddbb8833000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000225588
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 4444778899bbccffbbbb888866443300000000000000000000000000000000000000000000000000
-% 000000001144558888bbccffbbbb8888444411000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000022448899bbeebb8866440000000000000000000000
-% 000000000000000000000000000000000000000000000000000000225588bbeebb88663300000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00005599ddaa77220000000000000000000000000000000000000000000000000000000000000044
-% bbbb4400000000000000000000000000000000000000000000000077990000000000000000000000
-% 0000000000000000000000000000dd33000000000000000000000000000000000000000000000000
-% 00002299dd6600000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000003377aaeeaa66220000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000004444778899bbcceebb
-% bb888866443300000000000000000000000000000000000000000000000000000000000000445588
-% 88bbcceebbaa88774433000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000011447799bbeebb8877441100000000000000000000000000000000
-% 00000000000000000000000000000000000000000000004477aaddcc886633000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000002277
-% aaee995511000000000000000000000000000000000000000000000000000000000000000044bbbb
-% 440000000000000000000000000000000000000000000000000011dd110000000000000000000000
-% 000000000000000000000000000044bb000000000000000000000000000000000000000000000000
-% 000000002299dd660000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000004488ccdd88551100000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000002244668888bbcceebbbb8888554422000000
-% 000000000000000000000000000000000000000000000000000000000044448888bbbbffbbbb8877
-% 44330000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000447788bbeebb9988442200000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000226688ccddaa77440000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000003388cccc88
-% 330000000000000000000000000000000000000000000000000000000000000000000044bbbb4400
-% 0000000000000000000000000000000000000000000000000000aa77000000000000000000000000
-% 000000000000000000000000000000aa770000000000000000000000000000000000000000000000
-% 0000000000002299ee88110000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000115599ddbb883300000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000002244668899bbddddbb9988774433000000000000000000000000
-% 00000000000000000000000000000000000000000011446688aabbeeccbb88884444000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000446688bbddccaa88552200000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000114488bbeebb885522000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000116699eeaa66220000
-% 00000000000000000000000000000000000000000000000000000000000000000022aacc44000000
-% 0000000000000000000000000000000000000000000000000066bb00000000000000000000000000
-% 00000000000000000000000000000011dd3300000000000000000000000000000000000000000000
-% 00000000000000001188dd8811000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000002277aadd996611000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000003344778899bbddddbb99886644220000000000000000000000000000000000000000
-% 000000000000000000000000000022447788bbbbeebb998866441100000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000000114488aa
-% ccddaa88553300000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000337799cccc9977330000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000002277bbdd8855000000000000
-% 000000000000000000000000000000000000000000000000000000000000002299dd660000000000
-% 00000000000000000000000000000000000000000000000022dd1100000000000000000000000000
-% 0000000000000000000000000000000044cc00000000000000000000000000000000000000000000
-% 000000000000000000001188dd881100000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000004488ddcc8833000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000001144
-% 558899bbeeccbb888855442200000000000000000000000000000000000000000000000000000000
-% 0000000000000022447788bbcceebb99885544000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000114488aaddcc997744
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000225588bbeebb884411000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000004488ddcc7733000000000000000000
-% 00000000000000000000000000000000000000000000000000000000002299dd6600000000000000
-% 000000000000000000000000000000000000000000000000cc550000000000000000000000000000
-% 00000000000000000000000000000000008888000000000000000000000000000000000000000000
-% 0000000000000000000000001188dd88110000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000002277aaee9966110000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000011446688aabbffbbaa
-% 88664422000000000000000000000000000000000000000000000000000000000000000000000000
-% 11446688bbccddbb8888554400000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000225588aaddbb9977440000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 226699ddcc8866220000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000115599ddaa6611000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000002299dd66000000000000000000
-% 00000000000000000000000000000000000000000000008888000000000000000000000000000000
-% 000000000000000000000000000000000000cc440000000000000000000000000000000000000000
-% 00000000000000000000000000001188dd8811000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000005588ddcc77330000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000022447788bbbbeebb9988664411000000
-% 0000000000000000000000000000000000000000000000000000000000000000000022448899bbee
-% bbaa8855330000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000225588bbeebb88663300000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000000336699dd
-% bb885511000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000002277aadd995500000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000002299dd660000000000000000000000
-% 0000000000000000000000000000000000000000000033dd11000000000000000000000000000000
-% 00000000000000000000000000000000000033ee1100000000000000000000000000000000000000
-% 000000000000000000000000000000001188dd992200000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000002277aadd99551100
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000446688bbccddbb998855440000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000446688aacceebb8877442200
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000225588bbeebb886633000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000003377aaeebb884400
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000003388cccc883300000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000002299dd6600000000000000000000000000
-% 00000000000000000000000000000000000000000011dd3300000000000000000000000000000000
-% 0000000000000000000000000000000000000077aa00000000000000000000000000000000000000
-% 0000000000000000000000000000000000000066dd99220000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000005599ddaa
-% 7722000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000011447788bbeeccaa885533000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000336688bbddccaa8866440000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000335588bbeebb8866330000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000004477aaddbb88440000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000005599eeaa662200000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000002299dd66000000000000000000000000000000
-% 00000000000000000000000000000000000000000099880000000000000000000000000000000000
-% 0000000000000000000000000000000000000000bb66000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000066dd9922000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000033
-% 88cccc8833000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000022448899bbeebb99884433000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000224488aaccddbb8855330000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000336688bbeebb88552200000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000004488bbeeaa7733000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000001166aadd99551100000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000002299dd660000000000000000000000000000000000
-% 000000000000000000000000000000000000000055bb000000000000000000000000000000000000
-% 000000000000000000000000000000000000000011dd220000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000066dd992200000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00002277aadd8855000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000011
-% 448899bbeebb88774422000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000011447788bbeebb8877440000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00004488bbddbb885522000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000004488bbddaa773300000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000002277bbdd88440000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000002299dd6600000000000000000000000000000000000000
-% 0000000000000000000000000000000000220022dd22000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000055cc0000220000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000066dd99220000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000116699dd9966110000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000225588bbddbb
-% 99774411000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000114488aaddccaa88442200000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000225588
-% ccdd9977330000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000003377bbdd9966220000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00003388cccc77330000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000002299dd66000000000000000000000000000000000000000000
-% 0000000000000000000000000000000033ffcdc15500000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000088aeebf60000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000066ddaa44000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000005588ddaa77220000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000336688bbeebb8866330000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00447799ddcc99774400000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000003377aaddcc8855
-% 22000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000226699eeaa7733000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000055
-% 99ddaa66220000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000002299dd660000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000066ffffefcd44000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000066ecf2ffed2200000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000055bbbb4400000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000003388cccc77
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000446688bbeebb88552200000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000000336699cc
-% ddaa8844000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000114488bbeeaa884400000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000004488cccc885500000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000115599dd99
-% 55110000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000002299dd6600000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000a8fffffffff6000000000000000000000000000000000000
-% 000000000000000000000000000000000000000033ffffffffff5500000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000044bbbb440000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000002277
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000004488bbeeaa884422000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000004488bbeebb884411
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000226688ccdd9966330000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000003377aaee99662200000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000001166aadd99550000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000002299dd66000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000dbfffffff033000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000070f6ffffffa000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000044bbbb44000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000115588bbdd9977330000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000004488bbdd9966220000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000004477aaeebb885511000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00116699ddbb77330000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000002277bbdd88330000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000033bb0000002299dd660000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000f9ffffe12200000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000044f2ffffd700000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000044bbbb4400
-% 0022c111000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000002222000000000000115588ccdd996622000000000000000000000000000000000000000000
-% 0000000000000000000000000000000011330000000000004488bbee996622000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000115588bbeeaa77440000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000004488
-% ccdd8855000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000003377cccc88330000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0033f2f6662299dd6600000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000033f2f9dd110000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000033f8fff800000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000000044bbbb
-% 44b4fff0330000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000001144558888998866442200000000000000000000000000
-% 000044f2c70000005599ddcc88551100000000000000000000000000000000004455888899885544
-% 11000000000000000000000000000022e1f211002277bbeeaa773300000000000000000000000000
-% 00000000000000000000000044445588888899888855444400000000000000000000000000000000
-% 0000000000229800000000005599ddcc886622000000000000000000000000000000000000000000
-% 444477888899888844441100000000000000000000000000000000000011981100000055aaddaa66
-% 22000000000000000000000000000000000000000000000000444455888888888888444422000000
-% 00000000000000000000000000000000001190000000002288ddcc77220000000000000000000000
-% 00000000000000000000000000224444778888998888664444000000000000000000000000000000
-% 11e1fffff1dd66000000000000000000000000000000000000000000000000000000000000000000
-% 00004444558888888888884444220066feae00000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000011e1fb22002244448888889988774444
-% 11000000000000000000000000000000000000000000000000000000000000000000000000000044
-% c4fbfffff2330000000000000000000000000011444488888888888888aa99888888888866443300
-% 0000000000000000000000000000000000
-% 0000000000000000000000002288bbcceebbaa88774444668899bbddddbb99440000000000000000
-% 0070f6fff65d99eeaa66110000000000000000000000000000000044aabbeebbbb887744446688aa
-% bbffbbbb6600000000000000000033f2ffffc8ccdd88330000000000000000000000000000000000
-% 00000000005599bbbbeeddbbbb88888844444444888888bbbbddeebbbb9966110000000000000000
-% 0000000080f4f933005599dd9955110000000000000000000000000000000000000055aabbcceebb
-% bb8888664444558888aabbddddbbbb7711000000000000000000000060f0fc661177dd9944000000
-% 0000000000000000000000000000000000003388bbbbddeebbbb888888444444558888aabbccffbb
-% bbaa661100000000000000000000000033f8f9661166bbcc77110000000000000000000000000000
-% 000000000000116699bbbbffccbbaa888866444444778888bbbbddeebbbb88330000000000000011
-% e1fffffff26600000000000000000000000000000000000000000000000000000000003388bbbbdd
-% eebbbb888888444444558888aabbbbffebbbaa661100000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000005599c0efffccbbaa8888554444558888aa
-% bbcceebbbb8833000000000000000000000000000000000000000000000000000000000000000000
-% b4fffffffff670000000000000447799bbcceebbaa8888886644444444444444444477888888bbcc
-% ffbbbb8855220000000000000000000000
-% 0000000000000000000044aadd773300000000000000000000000000002266bbcc66000000000000
-% 90f5ffffffbb6611000000000000000000000000000000000066ddaa551100000000000000000000
-% 0000004499dd8811000000000060f2fffffff9400000000000000000000000000000000000000000
-% 001166aaee9955330000000000000000000000000000000000000000335588ddaa77220000000000
-% 000022d2faffffd3dd995500000000000000000000000000000000000000004499dd995522000000
-% 00000000000000000000000000114488ddaa661100000000000011c1f6ffffe5dd88220000000000
-% 0000000000000000000000000000003388ddaa664400000000000000000000000000000000000000
-% 224488ddaa6622000000000000000044f2fffff7dd88330000000000000000000000000000000000
-% 0000001166aadd885522000000000000000000000000000000000000004466aadd885500000000ae
-% f8ffffffffeb00000000000000000000000000000000000000000000000000003388ddbb77441100
-% 0000000000000000000000000000000000224488ddbb772200000000000000000000000000000000
-% 00000000000000000000000000000000000000005599ee9955330000000000000000000000000000
-% 000000004466aadd8833000000000000000000000000000000000000000000000000000000000022
-% fffffffffffff580116699ccddaa8844220000000000000000000000000000000000000000000000
-% 0000446688bbeebb884400000000000000
-% 000000000000001166ddaa5500000000000000000000000000000000000000002299dd88220000ae
-% fafffffffff2110000000000000000000000000000001188dd992200000000000000000000000000
-% 00000000001188dd8822000070f5ffffffffff980000000000000000000000000000000000003377
-% ccdd8833000000000000000000000000000000000000000000000000000000003388cccc88330000
-% 0080f4fffffffff300000000000000000000000000000000000000003388ddaa6600000000000000
-% 00000000000000000000000000000000003399dd995500000060f0fffffffff41100000000000000
-% 0000000000000000000000005599eeaa661100000000000000000000000000000000000000000000
-% 000000003388ddcc77220000000070f6fffffff56600000000000000000000000000000000000000
-% 2277bbdd883300000000000000000000000000000000000000000000000000001166aadd9955aefc
-% ffeef2e4b46600000000000000000000000000000000000000000000005588ddaa66110000000000
-% 0000000000000000000000000000000000000000003388cccc772200000000000000000000000000
-% 00000000000000000000000000000000003399eeaa66110000000000000000000000000000000000
-% 000000000000001166aadd8833000000000000000000000000000000000000000000000000000000
-% 88a0a8cde0f2ffffeb88441100000000000000000000000000000000000000000000000000000000
-% 000000000000003366aadd995511000000
-% 00000000000066dd88220000000000000000000000000000000000000000000000001166dd88cdfc
-% fffffffffffa70000000000000000000000000000066dd8811000000000000000000000000000000
-% 000000000000001166dd88a0ffffffededeeffa80000000000000000000000000000000055ddbb77
-% 22000000000000000000000000000000000000000000000000000000000000000000002266aaee80
-% d2fdfffffffffff933000000000000000000000000000000000033bbcc6611000000000000000000
-% 00000000000000000000000000000000000000005599ee60c1fdfffffffffffa6600000000000000
-% 0000000000000000000088dd99551100000000000000000000000000000000000000000000000000
-% 000000000000002277ccbb330090f5ffffffffffeb000000000000000000000000000000000022bb
-% cc88330000000000000000000000000000000000000000000000000000000000000000005599f7dd
-% 77440000000000000000000000000000000000000000000000000077ddaa66110000000000000000
-% 0000000000000000000000000000000000000000000000002277ccdd330000000000000000000000
-% 00000000000000000000000000000055ddaa66110000000000000000000000000000000000000000
-% 000000000000000000001166aadd3300000000000000000000000000000000000000000000000000
-% 00001166ddcc77220000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000005599dd994400
-% 000000000066cc11000000000000000000000000000000000000000000000000000000000099dcae
-% a8a8a8a8a8a8500000000000000000000000000066cc110000000000000000000000000000000000
-% 0000000000000000000099cf9066444411000000000000000000000000000000000011aabb220000
-% 000000000000000000000000000000000000000000000000000000000000000000000000000011b6
-% e8b4a8a8a8a8a8a8220000000000000000000000000000000055dd44000000000000000000000000
-% 0000000000000000000000000000000000000000000022ccd7a8a8a8a8a8a8a84000000000000000
-% 000000000000000022bb991100000000000000000000000000000000000000000000000000000000
-% 0000000000000000000044ddccfff2edffe8dbcd920000000000000000000000000000000077dd55
-% 00000000000000000000000000000000000000000000000000000000000000000000000000001188
-% cc33000000000000000000000000000000000000000000000011bbaa110000000000000000000000
-% 00000000000000000000000000000000000000000000000000000033dd8800000000000000000000
-% 000000000000000000000000000088cc220000000000000000000000000000000000000000000000
-% 0000000000000000000000000033dd77000000000000000000000000000000000000000000000000
-% 1188dd99220000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000055bbbb
-% 0000000099cc110000000000000000000000000000000000000000000000000000000000000088cc
-% 1100000000000000000000000000000000000066cc11000000000000000000000000000000000000
-% 00000000000000000000009999000000000000000000000000000000000000000055dd7700000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 55dd7700000000000000000000000000000000000000000088cc2200000000000000000000000000
-% 00000000000000000000000000000000000000000000000099bb1100000000000000000000000000
-% 0000000000000066dd55000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000011b6cd30000000000000000000000000000000000000000011aaaa1100
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 44dd7700000000000000000000000000000000000000000055dd6600000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000001199cc220000000000000000
-% 00000000000000000000000033cc8800000000000000000000000000000000000000000000000000
-% 000000000000000000000000000011aaaa1100000000000000000000000000000000000000000088
-% dd881100000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000044
-% 00000099990000000000000000000000000000000000000000000000000000000000000000000066
-% cc110000000000000000000000000000000066cc1100000000000000000000000000000000000000
-% 0000000000000000000000009999000000000000000000000000000000000011aabb220000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0011aabb22000000000000000000000000000000000011bb99110000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000066dd33000000000000000000000000
-% 000000000011aabb2200000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000066dd5500000000000000000000000000000000000044dd77000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0011aaaa1100000000000000000000000000000000001188cc220000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000055dd6600000000000000
-% 000000000000000000000066dd550000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000077ee4400000000000000000000000000000000000022bb99
-% 11000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00008899000000000000000000000000000000000000000000000000000000000000000000000000
-% 66cc00000000000000000000000000000055cc110000000000000000000000000000000000000000
-% 00000000000000000000000000998800000000000000000000000000000022dd7700000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000055dd4400000000000000000000000000000011dd6600000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000033dd550000000000000000000000
-% 0000000022dd77000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000022bb880000000000000000000000000000000088cc3300000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000077dd2200000000000000000000000000000011dd8800000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000011bb99000000000000
-% 0000000000000000000088bb11000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000033cc550000000000000000000000000000000066dd5500
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 0011dd00000000000000000000000000000000000000000000000000000000000000000000000000
-% 0099550000000000000000000000000000aa33000000000000000000000000000000000000000000
-% 0000000000000000000000000000ee00000000000000000000000000000099660000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000044bb00000000000000000000000000000077880000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000033bb0000000000000000000000
-% 00000000886600000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000dd22000000000000000000000000000011dd000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000669900000000000000000000000000000088880000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000cc220000000000
-% 00000000000000000011dd0000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000022dd00000000000000000000000000000033dd220000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00668800000000000000000000000000000000000000000000000000000000000000000000000000
-% 0055990000000000000000000000000011dd00000000000000000000000000000000000000000000
-% 0000000000000000000000000000aa330000000000000000000000000011dd000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000bb330000000000000000000000000000cc220000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000dd2200000000000000000000
-% 00000011dd1100000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000778800000000000000000000000000007788000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000dd110000000000000000000000000000dd110000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000066990000000000
-% 00000000000000000077880000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000aa440000000000000000000000000011dd33000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00aa3300000000000000ffff440022aacc2200000000000000000000000000000000000000000000
-% 0000dd0000000000000000000000000055990000000000000000bbff880000ffbb00000000000000
-% 66ee0000000000000000000000006688000000000000000000000000008888000000000000000000
-% 0088000000000011aa0000cc00000000000000000000000022dd0000000000000000000000000000
-% 000000000066990000000000000000000000000033bb000000000000000000000088000000000011
-% aa000000000000000000000000000066ee0000000000000000000000778800000000000000000000
-% 00000066880000000000000000ffff440022aacc2200000000000000000000000000000000000000
-% 000000000044dd00000000000000000011dd0000000000000000000000000000dd22000000000000
-% 0088ffbb880000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000008888000000000000000000000000006699000000000000000055ccffdd770000000000
-% 0000000000000000000000000022dd00000000000000000000000000000000000000dd1100000000
-% 000000000000000000dd220000000000000077ffffee8811000000000044dd000000000000000022
-% dd00000000000000000000000000000000000055aa00000000000000000000000000887700000000
-% 000000000033bbffddbb440000000000000000000000cc0000000000000000000000000000000000
-% 0022dd0000000000000000000000000000
-% 11ee000000000000000000ffdd220000ff0000000000000000000000000000000000000000000000
-% 000099550000000000000000000000009955000000000000000011cc660000662200000000000000
-% 00ff00000000000000000000000022cc00000000000000000000000011dd11000000000000000000
-% 22dd660000000000ff0000000000000000000000000000cc00000000000000000000000000000000
-% 000000000000dd2200000000000000000000000099660000000000000000000022dd660000000000
-% ff000000000000000000000000000000ff000000000000000000000011dd00000000000000000000
-% 000000dd22000000000000000000ffdd220000ff0000000000000000000000000000000000000000
-% 000000000000ff000000000000000000009966000000000000000000000000559900000000000000
-% 00ff000099000000000000000000000000cc00000000000000000000000000000000000000000000
-% 000000000011dd00000000000000000000000000bb330000000000000055cc110000996600000000
-% 0000000000000000000000cc00000000000000000000000000000000000000000000887700000000
-% 000000000000000044aa000000000000000000ff001177cc000000000000ff00000000000000cc00
-% 0000000000000000000000000000000000000000dd22000000000000000000000000cc2200000000
-% 0000000033bb330000664400000000000000000000000000000000000000000000000000000000cc
-% 0000000000000000000000000000000000
-% 6699000000000000000000ff44cc1100ff0011bbffbb2299ff44ff00449988bb0000000000000000
-% 00005588000000000000000000000000ee0000000000000000000055cc0000880099ee6600339988
-% 66ffbbdd3300000000000000000000cc110000000000000000000000669900000000000000000000
-% 6622cc000011bbccff003388000099ee660088ff880088ffa09900bbee2255aa0099ee6600000000
-% 0000000000006688000000000000000000000000dd11000000000000000000006622cc000011bbcc
-% ff00bbee2255aa0099ee663399886600ffbbdd33000000000000000000aa33000000000000000000
-% 000033aa00000000000000000000ff44cc1100ff99ff44ff00449988ee44dd99000099ee66339988
-% 6600aaee5500ff0000000000000000000022bb000000000000000000000000aa4400000000000000
-% 00dd660055000099ee66449988bb000088ff8899ee6600449988bb000088ff88000099ee66000000
-% 0000000000009955000000000000000000000033bb0000000000000000cc3300000022dd99ff44ff
-% 000099ee660066eeccbb88ff88339911bbffbb22449988bb0000000000000000000022cc00000000
-% 00000000000000009955000000000000000000ff000033cc000099ee6600ff0000aaee550088ffa0
-% 9900bbee2255aa0099ee660000000000000000008877000000000000000000000011dd0000000000
-% 00000000bb22000000004411bbffbb22449988bb0033880099ff44ff00449988bb000088ff8888ff
-% 8833990011bbffbb22449988bb00000000
-% 55aa000000000000000000ff00889900ff00bb330099bb00ff00ff0000ff11ff0000000000000000
-% 00006688000000000000000000000000dd1100000000000000000000dd443355773311ee0000ff00
-% 00ff1188cc00000000000000000000dd110000000000000000000000559900000000000000000000
-% 6600994400995511ff0000ff00773311ee885500aa0000ff00ff0022dd004422773311ee00000000
-% 0000000000008877000000000000000000000000dd11000000000000000000006600994400995511
-% ff0022dd004422773311ee00ff000000ff1188cc000000000000000000cc33000000000000000000
-% 000022cc00000000000000000000ff00889900ff00ff00ff0000ff0033ff11ff00773311ee00ff00
-% 00009911ee00ff0000000000000000000044aa000000000000000000000000996600000000000000
-% 0033ddbb1100773311ee00ff11ff000000ff773311ee0000ff11ff00885500aa00773311ee000000
-% 000000000000bb44000000000000000000000022dd0000000000000000ff0000000000ff00ff00ff
-% 00773311ee00ff33338800ff0000ffbb330099bb00ff11ff0000000000000000000033bb00000000
-% 00000000000000008866000000000000000000ff5599881100773311ee00ff00009911ee0000ff00
-% ff0022dd004422773311ee0000000000000000008866000000000000000000000000dd0000000000
-% 00000000ff000000000000bb330099bb00ff11ff0000ff0000ff00ff0000ff11ff00885500aa00ff
-% 0000ff00bb330099bb00ff11ff00000000
-% 00dd000000000000000000ff0000bb77ff00ff000011ff00ff00ff0000ff00ff0000000000000000
-% 0000aa3300000000000000000000000088660000000000000000000066aa8800bbffffff0000ff00
-% 00ff0011ff00000000000000000033bb00000000000000000000000000dd22000000000000000055
-% ffffffaa00ff0000ff0000ff00bbffffffee0000000000ff00ff000088666600bbffffff00000000
-% 000000000011dd11000000000000000000000000887700000000000000000055ffffffaa00ff0000
-% ff000088666600bbffffff00ff000000ff0011ff000000000000000022cc00000000000000000000
-% 000000bb44000000000000000000ff0000bb77ff00ff00ff0000ff0000ff00ff00bbffffff00ff00
-% 00004444ff00ff00000000000000000000aa4400000000000000000000000033bb00000000000000
-% 00001199bb00bbffffff00ff00ff000000ffbbffffff0000ff00ff00ee00000000bbffffff000000
-% 000000000022cc00000000000000000000000000995500000000000000dd2200000011ee00ff00ff
-% 00bbffffff0066ee881100ff0000ffff000011ff00ff00ff00000000000000000000996600000000
-% 000000000000000022cc000000000000000000ff11cc660000bbffffff00ff00004444ff0000ff00
-% ff000088666600bbffffff000000000000000000dd11000000000000000000000000bb3300000000
-% 00000000dd330000000000ff000011ff00ff00ff0000ff0000ff00ff0000ff00ff00ee00000000ff
-% 0000ff00ff000011ff00ff00ff00000000
-% 0099550000000000000000ff000022eeff00dd660011bb00ff00ff0000ff00ff0000000000000000
-% 0011dd0000000000000000000000000044aa0000000000000000000000dd7700aa5500111100ff00
-% 00ff0011bb0000000000000000007777000000000000000000000000006699000000000000000088
-% 000011ee22ee8800ff0000ff00aa550011e08800221100ff00ff000022bb5500aa55001111000000
-% 000000000066880000000000000000000000000022dd00000000000000000088000011ee22ee8800
-% ff000022bb5500aa55001111ff000000ff0011bb0000000000000000886600000000000000000000
-% 0000005599000000000000000000ff000022eeff00ff00ff0000ff0000ff00ff00aa55001111ff00
-% 00992200ff00ff00000000000000000022dd0000000000000000000000000000bb33000000000000
-% 77440000ff00aa55001111ff00ff000000ffaa5500111100ff00ff00dd88002211aa550011110000
-% 000000000099660000000000000000000000000044bb0000000000000066aa000000778800ff00ff
-% 00aa55001111661188ee00ff0000ffdd660011bb00ff00ff00000000000000000011dd0000000000
-% 000000000000000000bb330000000000000000ff0022dd3300aa55001111ff00992200ff0000ff00
-% ff000022bb5500aa5500111100000000000000669900000000000000000000000000778800000000
-% 0000000066cc0000000022dd660011bb00ff00ff0000ff0000ff00ff0000ff00ff00dd88002211ff
-% 0000ff00dd660011bb00ff00ff00000000
-% 0055990000000000000055ff88000055ff0033ccffbb3300ccccee5533ff22ff5500000000000000
-% 0066880000000000000000000000000000dd000000000000000000000088220033ddff880055ff88
-% 00ddffbb11000000000000000000cc220000000000000000000000000011dd1100000000000055ff
-% 440088eeaa70eebbff6600ff0033ddff8844ddff880000ee92ff220000aa000033ddff8800000000
-% 0000000000dd220000000000000000000000000000bb330000000000000055ff440088eeaa70eebb
-% ff660000aa000033ddff8855ff880000ddffbb110000000000000000dd1100000000000000000000
-% 00000000dd220000000000000055ff88000055ff00ccccee55ddff8855ff55ff4433ddff8855ff88
-% 00bbff77ee77ff220000000000000000886600000000000000000000000000006699000000000000
-% 55ddffee660033ddff8833ff22ff550000ee92ddff880033ff22ff5544ddff880033ddff88000000
-% 0000000011dd000000000000000000000000000000cc220000000000000066994466880000ccccee
-% 5533ddff8800ffcccc8800ee7733ff4eccffbb3333ff22ff55000000000000000088880000000000
-% 00000000000000000066990000000000000044ff550055ee4433ddff8833ff22bbff77ee5500ee92
-% ff220000aa000033ddff880000000000000000cc330000000000000000000000000000cc66000000
-% 000000000066ddffee881133ccffbb3333ff22ff5500ff0000ccccee5533ff22ff5544ddff8800ee
-% 7733ff2233ccffbb3333ff22ff55000000
-% 0000dd11000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb4400000000000000000000000000009955000000000000000000000000000000000000000000
-% 0000000000000000000000000011dd00000000000000000000000000000088880000000000000000
-% 0000000000000000000000ff00000000000000000000000000000000001100000000000000000000
-% 00000000779900000000000000000000000000000066aa0000000000000000000000000000000000
-% 00000000110000000000000000000000000000000000000000000055990000000000000000000000
-% 00000000778800000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000011dd11000000000000000000000000000000dd220000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000888800000000000000000000000000000066aa000000000000000011cccc550000000000
-% 000000000000000000000000000000000000000000000000000000000000000011dd110000000000
-% 00000000000000000000dd1100000000000000000000000000000000000000000000000000000000
-% 00000000110000000000000000000000000044cc00000000000000000000000000000011dd440000
-% 00000000000000000000000000000000000000000000ff0000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 000066cc110000000000000000000000000000000000000000000000000000000000000000000000
-% 99aa00000000000000000000000000000033dd330000000000000000000000000000000000000000
-% 00000000000000000000000011cc6600000000000000000000000000000011bbaa11000000000000
-% 00000000000000000088448800000000000000000000000000000000000000000000000000000000
-% 00001188cc2200000000000000000000000000000000aa9911000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000066dd330000000000000000000000
-% 0000000011bbaa110000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000055dd660000000000000000000000000000000055dd5500000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00001199bb1100000000000000000000000000000000aabb11000000000000001188ddff44000000
-% 0000000000000000000000000000000000000000000000000000000000000044dd66000000000000
-% 0000000000000000000066dd44000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000066dd330000000000000000000000000000000033cc8800
-% 00000000000000000000000000000000000000008844880000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000066cc1100000000000000000000000000000000000000000000000000000000000000000099
-% 99000000000000000000000000000000000033dd3300000000000000000000000000000000000000
-% 000000000000000000000011cc6600000000000000000000000000000000000077dd550000000000
-% 00000000000000000011440000000000000000000000000000000000000000000000000000000000
-% 0044dd880000000000000000000000000000000000000088cc220000000000000000000000000000
-% 0000000000000000000000000000000000000000000000001199bb11000000000000000000000000
-% 00000000000077dd4400000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000001188cc2200000000000000000000000000000000000022bbaa110000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0044dd880000000000000000000000000000000000000066dd550000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000088cc3300000000000000
-% 000000000000000000000033cc880000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000001199bb110000000000000000000000000000000000000088cc
-% 33000000000000000000000000000000000000001144000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 0000000066ee3300000000000000000000000000000000000000000000000000000000000011bb99
-% 0000000000000000000000000000000000000033dd33000000000000000000000000000000000000
-% 0000000000000000000011cc66000000000000000000000000000000000000000022bbaa11000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000011
-% 88cc3300000000000000000000000000000000000000000055dd5500000000000000000000000000
-% 000000000000000000000000000000000000000000000022cc880000000000000000000000000000
-% 0000000000000033cc88000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000033dd880000000000000000000000000000000000000000000077dd4400
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 88cc3300000000000000000000000000000000000000000022cc9911000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000033cc88000000000000000000
-% 0000000000000000000000001199bb11000000000000000000000000000000000000000000000000
-% 000000000000000000000000000033cc880000000000000000000000000000000000000000000044
-% ddbb4400000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000001177
-% 000000000033dd440000000000000000000000000000000000000000000000000000000011ccc955
-% 000000000000000000000000000000000000000033dd330000000000000000000000000000000000
-% 00000000000000000022ddb8220000000000000000000000000000000000000000000077dd660000
-% 000000000000000000000000000000000000000000000000000000000000000000000000000044e2
-% d055000000000000000000000000000000000000000000000022cc88110000000000000000000000
-% 0000000000000000000000000000000000000000000044ddc7440000000000000000000000000000
-% 00000000000000000088cc4400000000000000000000000000000000000000000000000000000000
-% 0000000000000000001188e2ae55000000000000000000000000000000000000000000000033cc88
-% 110000000000000000000000000000000000000000000000000000000000000000000000000033cc
-% 881100000000000000000000000000000000000000000000000088dd440000000000000000000000
-% 00000000000000000000000000000000000000000000000000000077ee4400000000000000000000
-% 000000000000000000000000000066dd660000000000000000000000000000000000000000000000
-% 0000000000000000000000000077ee44000000000000000000000000000000000000000000000000
-% 0044bbcc660000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000002288dd88
-% 00000000000033bbbb660000000000000000000000000000000000000000000000004499dd664499
-% dd771100000000000000000000000000000000000033ccbb44000000000000000000000000000000
-% 000000000000003399dd6066cccc661100000000000000000000000000000000000000002299ddaa
-% 66110000000000000000000000000000000000000000000000000000000000000000115599eeaa33
-% 5599ee88330000000000000000000000000000000000000000001188dd9955000000000000000000
-% 000000000000000000000000000000000000003388ddaa3355aadd77110000000000000000000000
-% 0000000000000000000044aadd883300000000000000000000000000000000000000000000000000
-% 0000000000001166aadd88115599dd99550000000000000000000000000000000000000000001188
-% ddaa6622000000000000000000000000000000000000000000000000000000000000003388ddf2b0
-% 11000000000000000000000000000000000000000000000000000033aadd88550000000000000000
-% 00000000000000000000000000000000000000000000001166aaee99110000000000000000000000
-% 00000000000000000000000000000022aadd88330000000000000000000000000000000000000000
-% 000000000000000000005599dd991100000000000000000000000000000000000000000000000000
-% 0000003399eeb07a1100000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000003388cccc771100
-% 00000000000000003399ee88220000000000000000000000000000000000001166ccbb5500000000
-% 2288dd993300000000000000000000000000000000000044aadd6600000000000000000000000000
-% 000000000055bbbb66000000002288dd995500000000000000000000000000000000000000000044
-% 88ddcc772200000000000000000000000000000000000000000000000000002277aadd9955000000
-% 00001166aadd88330000000000000000000000000000000000000000005599ee8833000000000000
-% 000000000000000000000000000000002277cccc6611000000002288dd9933000000000000000000
-% 0000000000000000000000001166aaee995500000000000000000000000000000000000000000000
-% 0000002277bbdd88330000000000005599dd99550000000000000000000000000000000000000000
-% 003388ddcc7722000000000000000000000000000000000000000000000000005588ddaa66111188
-% dd881100000000000000000000000000000000000000000000000000001166aadd99550000000000
-% 00000000000000000000000000000000000000002266aadd88440000000000000000000000000000
-% 00000000000000000000000000000000001166aadd88330000000000000000000000000000000000
-% 000000000000005599dd995500000000000000000000000000000000000000000000000000000000
-% 000000001188e4b8ddcc885522000000000000000000000000000000000000000000000000000000
-% 000000000000337799ddaa662200000000
-% 000000000000000000001177ddaa6644220000000000000000000011445588dd8822000000000000
-% 00000066aadd883300000000000000000000000000000000002299ee884444000000000000000000
-% 00334488ddaa440000000000000000005599dd882200000000000000000000000000000000000000
-% 00002277ccdd886644441100000000000000000000000000001144446688cccc8833000000000000
-% 00000000002277aaee996611000000000000000000000000000000000000001166aadd8855442200
-% 000000000000000000000011444488bbdd77220000000000000000000066aaee9966110000000000
-% 000000000000000000000000000000115599dd997744442200000000000000000000000000004444
-% 5588cccc88330000000000000000000000005599dd99550000000000000000000000000000000000
-% 000000002277cccc8855444400000000000000000000000000002244447799ddaa66110000000000
-% 1188dd7700000000000000000000000000000000000000000000000000000000005599dd99884444
-% 22000000000000000000000000000033445588ccdd88330000000000000000000000000000000000
-% 00000000000000000000000000000000000000001166aadd88664444000000000000000000000000
-% 001144447799dd995500000000000000000000000000000000000000000000000000000000000000
-% 00001188dd88110000336688bbeebb88664422000000000000000000000000000000000000000000
-% 44447788bbddaa88441100000000000000
-% 00000000000000000000000000558899bbddddbb99888888bbcceebbaa8866110000000000000000
-% 00000000001166aadd885511000000000000000000000000000000117788bbcceebbaa888899bbdd
-% ccbb888822000000000000000000000000001166cccc662200000000000000000000000000000000
-% 000000000011668888bbbbccffbbbbaa88888888aabbbbffccbbbb88887722000000000000000000
-% 0000000000000000005588cccc88441100000000000000000000000000000000000022778899bbcc
-% ffbbbb88888888bbbbeeddbbaa888833000000000000000000000000000000005588ddbb77330000
-% 00000000000000000000000000000000000000558888aabbccffbbbbaa88888888bbbbddeebbbb88
-% 8877220000000000000000000000000000000000005599dd99550000000000000000000000000000
-% 0000000000000022778888bbbbeeddbbbb8888888899bbbbffccbbaa888855000000000000000000
-% 00001199dd66000000000000000000000000000000000000000000000000000000000000558888aa
-% bbbbffccbbaa88888888bbbbddeebbd2d08877220000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000116688d8c4bbeeddbbbb88888888bbbbee
-% ddbbbb88885500000000000000000000000000000000000000000000000000000000000000000000
-% 1188dd881100000000000000000033668899bbddeebbbbaa8888888888888888888888bbbbbbffbb
-% bb88885522000000000000000000000000
-% 00000000000000000000000000000000000000224444554433000000000000000000000000000000
-% 0000000000000000116699ddcc885511000000000000000000000000000000000011444455442200
-% 0000000000000000000000000000000000000000002288bbdd996611000000000000000000000000
-% 00000000000000000000000000002244444455444422000000000000000000000000000000000000
-% 000000000000000000000000226699ddcc8866220000000000000000000000000000000000000000
-% 00003344445544441100000000000000000000000000000000000000000000000000003377bbdd99
-% 55110000000000000000000000000000000000000000000000000022444444444444000000000000
-% 0000000000000000000000000000000000000000000000005599ddaa661100000000000000000000
-% 00000000000000000000000000000000444444554444330000000000000000000000000000000000
-% 000000002299dd660000000000000000000000000000000000000000000000000000000000000000
-% 00000000224444554444441100000011dd3300000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000077aa00000000114444554444440000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000002288
-% dd881100000000000000000000000000000000000011444444444444444444444444444433000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000226699ddcc8855110000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000115588cccc8855110000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000115588bbddaa773300000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000001155
-% 99ddbb77330000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000005588ddaa662200000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000002299dd66000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000044cc00000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000022dd1100000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000002299dd66
-% 11000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000226699ddcc88551100000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000116699ddcc88440000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000004488aaeebb8844000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00003377bbdd99551100000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000003388ddcc772200000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000002299dd5500000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000008888000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000bb550000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000002299dd660000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000225588cccc997744000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000002266aaddcc996633
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000336699ddcc88552200000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000115599ddbb773300000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000002277cccc883300
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000022bbbb440000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000011dd330000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000077aa000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000002299dd6600000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000114488aaddcc99774400000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000000115588bb
-% eebb8855220000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000225588ccdd997733000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000003377bbdd995511000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000002277bbdd
-% 88440000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000044bbbb44000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000044cc0000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000022dd11000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000002299dd66000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000003388
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000011448899ccddaa88441100
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00226688bbeeaa884411000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000004488bbddbb88
-% 44000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000005588ddbb7733000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000011
-% 66aaee99550000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000044bbbb4400000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000888800000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000bb5500000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000003399dd660000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000003388ddbb66
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000447799ccdd
-% aa884422000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000337799ccddbb88553300000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000003377
-% 99ddcc88552200000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000002277aaee9966220000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000005599eeaa661100000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000044bbbb440000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000011dd22000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000066aa0000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000044bbcc6600000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000005599ddaa66110000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 447788bbeebb99884422000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000446688bbeebb9977441100000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000225588ccdd998844110000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000004488bbdd99662200000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000003388ddcc772200000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000044bbbb44000000000000000000000000000000000000
-% 000000000000000000000000000000000000000055bb000000000000000000000000000000000000
-% 000000000000000000000000000000000000000011dd220000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000044bbbb44000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000116699dd9966110000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000011447788bbeebbaa885533000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000011448899bbeebb8866330000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000447799ccddaa884411000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000004488bbdd996622000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000002277cccc883300000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000044bbbb4400000000000000000000000000000000
-% 000000000000000000000000000000000000000000aa770000000000000000000000000000000000
-% 0000000000000000000000000000000000000000aa77000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000044bbbb440000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00002266aadd9955000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000011447788bbddccaa885533000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000335588bbddccbb8866440000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000447799ccddaa88441100000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000004488bbdd9966220000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000002266aadd995500000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000044bbbb220000000000000000000000000000
-% 00000000000000000000000000000000000000000011dd2200000000000000000000000000000000
-% 0000000000000000000000000000000000000055bb00000000000000000000000000000000000000
-% 000000000000000000000000000000000000000044bbbb4400000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000022
-% 77ccdd8833000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000446688bbddddbb888844330000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000445588aacceebb8888442200
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000447799ccddaa8844110000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000004488bbddaa773300
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000115599eeaa6622000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000066dd9922000000000000000000000000
-% 0000000000000000000000000000000000000000000055bb00000000000000000000000000000000
-% 00000000000000000000000000000000000011dd2200000000000000000000000000000000000000
-% 00000000000000000000000000000000000044bbbb44000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000004488ddcc
-% 7722000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000033448888bbccddbb8888443300000000
-% 0000000000000000000000000000000000000000000000000000000000000000000022448888bbee
-% bbaa8855440000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000447788bbddbb885522000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000004488bbee
-% aa773300000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000003388cccc7733000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000066dd992200000000000000000000
-% 0000000000000000000000000000000000000000000000aa77000000000000000000000000000000
-% 000000000000000000000000000000000000aa770000000000000000000000000000000000000000
-% 0000000000000000000000000000000044bbbb440000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000001166aaddaa662200
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000022447788bbcceebb99
-% 88554400000000000000000000000000000000000000000000000000000000000000000000000000
-% 11446688bbccddbb8888554400000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000336688bbeebb88552200000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 4488bbeeaa7744000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000002277bbdd8855000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000066dd99220000000000000000
-% 000000000000000000000000000000000000000000000011dd220000000000000000000000000000
-% 000000000000000000000000000000000055bb000000000000000000000000000000000000000000
-% 000000000000000000000000000044bbbb4400000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000003388cccc88440000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000002244
-% 7788bbcceebbaa887744330000000000000000000000000000000000000000000000000000000000
-% 0000000000000022447788bbcceebb99885544000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000336688bbeebb8855
-% 22000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000004488aaeebb88552200000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000116699ddaa66110000000000000000
-% 00000000000000000000000000000000000000000000000000000000000066dd9922000000000000
-% 00000000000000000000000000000000000000000000000055bb0000000000000000000000000000
-% 0000000000000000000000000000000011dd22000000000000000000000000000000000000000000
-% 00000000000000000000000044bbbb44000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000116699eeaa77220000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000001144558888bbcceebbaa88774433000000000000000000000000000000000000000000
-% 000000000000000000000000000022446688aabbffbbaa8866441100000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000336688
-% bbffbb99774411000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000225588bbddaa7744000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000004488ddcc77330000000000
-% 000000000000000000000000000000000000000000000000000000000000000066dd992200000000
-% 00000000000000000000000000000000000000000000000000bb5500000000000000000000000000
-% 00000000000000000000000000000000888800000000000000000000000000000000000000000000
-% 0000000000000000000044bbbb440000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000003377ccdd8855000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000001144558888bbcceebbaa8877443300000000000000000000000000
-% 00000000000000000000000000000000000000000011446688aabbeeccbb88885544110000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000022448899bbeebb88774411000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000004477aaddbb88662200000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000002277aadd99550000
-% 0000000000000000000000000000000000000000000000000000000000000000000066dd99220000
-% 0000000000000000000000000000000000000000000000000022dd11000000000000000000000000
-% 00000000000000000000000000000044cc0000000000000000000000000000000000000000000000
-% 000000000000000044bbbb4400000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000116699ddaa7722000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000001144558888bbcceebbbb888855442200000000
-% 000000000000000000000000000000000000000000000000000000000033447788aabbeeccbb8888
-% 44440000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000022448899cceebb88664400000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000225588bbeeaa8844000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000000000000000115599eeaa
-% 77220000000000000000000000000000000000000000000000000000000000000000000066dd8811
-% 000000000000000000000000000000000000000000000000000077aa000000000000000000000000
-% 000000000000000000000000000011dd330000000000000000000000000000000000000000000000
-% 00000000000044bbbb44000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000004488cccc885500000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000004444778899bbcceebbbb
-% 88885544220000000000000000000000000000000000000000000000000000000000000000444488
-% 88bbbbffbbbb88884444000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000335588aaccddbb88664400000000000000000000000000000000
-% 000000000000000000000000000000000000000000004477aaddcc88662200000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000033
-% 88cccc884400000000000000000000000000000000000000000000000000000000000000001188dd
-% 881100000000000000000000000000000000000000000000000000bb550000000000000000000000
-% 00000000000000000000000000008888000000000000000000000000000000000000000000000000
-% 0000000044bbbb440000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000003377aaee99662200000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000044
-% 44778899bbcceebbbb88885544220000000000000000000000000000000000000000000000000000
-% 000000000044448888bbbbeeccbb9988664433000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000335588aaddddaa88553300000000000000000000
-% 0000000000000000000000000000000000000000000000000000115588bbeebb8855220000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00002266aaddaa662200000000000000000000000000000000000000000000000000000000000011
-% 88dd8811000000000000000000000000000000000000000000000022dd1100000000000000000000
-% 0000000000000000000000000044cc00000000000000000000000000000000000000000000000000
-% 000044bbbb4400000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000226699eebb77330000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000004444778899bbcceebbbb88887744441100000000000000000000000000000000
-% 000000000000000000000000003344668888bbcceebbbb8888554411000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000446688bbddccaa88553300000000
-% 00000000000000000000000000000000000000000000000000000000000000336688bbddbb886633
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000004488cccc883300000000000000000000000000000000000000000000000000000000
-% 001188dd88110000000000000000000000000000000000000000000077aa22ae3300000000000000
-% 00000000000000000000709820dd3300000000000000000000000000000000000000000000000000
-% 44bbbb44000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000005588cccc8855000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000336699
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000004444668888bbbbddeebbbb888877444411000000000000
-% 0000000000000000000000000000000000000000000044448888aabbddddbbaa8888444411000000
-% 0000000000000000000000000000000000000000000000000000000000000000446688bbddddbb88
-% 774422000000000000000000000000000000000000000000000000000000000000000000225588bb
-% eebb8866330000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000002266aadd996611000000000000000000000000000000000000000000000000
-% 0000001188dd8811000000000000000000000000000000000000000022d7f6ff9800000000000000
-% 00000000000000000000d7fff4bb11000000000000000000000000000000000000000000000044bb
-% bb440000000000000000000000000000000000000000000000000000000000000000000000000000
-% 4488bbdd996611000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000447788bbeebb8855
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000004444668888bbbbddeebbbb8888
-% 6644441100000000000000000000000000000000000000000000000000002244558888aabbddddbb
-% bb888855442200000000000000000000000000000000000000000000000000000000000000003344
-% 8899bbeebbaa88664411000000000000000000000000000000000000000000000000000000000000
-% 00225588bbeebb886633000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000004488cccc8833000000000000000000000000000000000000000000
-% 00000000001188dd88110000000000000000000000000000000000a0f6ffffffd200000000000000
-% 00000000000000000000f8fffffff260000000000000000000000000000000000000000066ccbb44
-% 0000000000000000000000000000000000000000000000000000000000000000000000004488bbee
-% aa662200000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000447799ccddaa88442200000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000444466
-% 8888bbbbddffbbbb9988885544440000000000000000000000000000000000000000000000000011
-% 4444888899bbccffbbbb888866443300000000000000000000000000000000000000000000000000
-% 0000000000446688aabbeebb99885544000000000000000000000000000000000000000000000000
-% 000000000000225588bbeebb88663300000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000002266aaddaa66220000000000000000000000000000000000
-% 000000000000001188dd660000000000000000000000000000000070f5fffffff800000000000000
-% 00000000000000000033edfffffff23300000000000000000000000000000000000066ddbb440000
-% 00000000000000000000000000000000000000000000000000000000000000003377aaddaa773300
-% 00000000000000000000000000000000000000000000000000000000000000000000000000001144
-% 88aaccddaa884411000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000334444888888bbbbddeebbbb998888444433000000000000000000000000000000
-% 0000000000000000004444668888bbbbeeccbbaa8888554433000000000000000000000000000000
-% 000000000000000000000011447788bbccddbb888844220000000000000000000000000000000000
-% 0000000000000000000000225588bbddcc9988441100000000000000000000000000000000000000
-% 00000000000000000000000000000000000000004488cccc88550000000000000000000000000000
-% 0000000000000000002299dd6600000000000000000000000000000070faffffed22000000000000
-% 00000000000000000066fffffff833000000000000000000000000000000000066ddbb4400000000
-% 000000000000000000000000000000000000000000000000000000003377aaeeaa77330000000000
-% 000000000000000000000000000000000000000000000000000000000000000000114488aaddcc99
-% 7744000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000444455888899bbbbeeddbbbb88888855444411000000
-% 000000000000000000000000000000000000114444888899bbbbffccbbaa88885544330000000000
-% 00000000000000000000000000000000000033448888bbddccbb8877442200000000000000000000
-% 0000000000000000000000000000000011447799bbeebb8866330000000000000000000000000000
-% 0000000000000000000000000000000000000000000000116699eebb773300000000000000000000
-% 00000000000000000000002299dd66000000000000000000000000000033f2fff855000000000000
-% 000000000000000000a0ffffe1110000000000000000000000000000000066ddbb44000000000000
-% 0000000000000000000000000000000000000000000000003377aaeebb8844000000000000000000
-% 00000000000000000000000000000000000000000000000000000000335588bbddbb997744000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000000444455888888bbbbccffbb
-% bbbb8888884444330000000000000000000000000000000000000000224444888899bbbbffccbbaa
-% 8888554444000000000000000000000000000000000000000044558899bbddccbb88885544000000
-% 00000000000000000000000000000000000000000000335588bbddcc998844220000000000000000
-% 0000000000000000000000000000000000000000000000000000003377bbdd996611000000000000
-% 000000000000000000000000002299dd6600000089a0000000000000000033edff98000000000000
-% 002200000000000000d7fbcd1100000000000000000000000000000066dd99440000000000000000
-% 00000000000000000000000000000000000000003377aaeebb884400000000000000000000000000
-% 00000000000000000000000000000000000000000000335588aaccddbb8866330000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 22444466888899bbbbeeeebbbbaa8888664444330000000000000000000000000000000000002244
-% 44888888bbbbeeddbbbb8888774444220000000000000000000000000000000033447788bbbbffbb
-% bb887744330000000000000000000000000000000000000000000011447799bbeebb886644000000
-% 000000000000000000000000000000000000000000000000000000000000005588cccc8855110000
-% 0000000000000000000000000000002299dd4411f2f570000000000000000011e1d8446688aabbff
-% bbbbcceebb99885544ffae0000000000000000000011aeed000066dd992200000000000000000000
-% 000000000000000000000000000000003377aaeebb88440000000000000000000000000000000000
-% 0000000000000000000000000000000022448899bbeebb8877440000000000000000000000000000
-% 0000000000000000000000000022448888
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000334444778888aabbbbddeebbbbbb8888884444441100000000000000
-% 0000000000000000004444668888aabbccffbbbbaa88886644441100000000000000000000000000
-% 44558888bbcceebb99886644110000000000000000000000000000000000000000335588aaddccaa
-% 88553300000000000000000000000000000000000000000000000000000000000000226699ddbb88
-% 440000000000000000000000000000000044bbcffffff5600000000000000044a0e2998855441100
-% 0000000022446688aae48822000000000000000011e1fff9a9dd9922000000000000000000000000
-% 0000000000000000000000003377aaeebb8844000000000000000000000000000000000000000000
-% 0000000000000000000011448899bbeebb8877441100000000000000000000000000000000000000
-% 00000000001144558888bbcceebb888844
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000022444455888888bbbbbbffccbbbb9988
-% 88774444330000000000000000000000000000224444778888bbbbccffbbbbaa8888664444110000
-% 000000000000002244668899bbeeccbb888844440000000000000000000000000000000000000044
-% 6688bbddccaa88553300000000000000000000000000000000000000000000000000000000002277
-% aaddaa77330000000000000000000000000011f2fffffff2330000000055bbbb6600000000000000
-% 0000000000000000001177dd9933000000000033e4fffffff9220000000000000000000000000000
-% 00000000000000004488aaddaa773300000000000000000000000000000000000000000000000000
-% 0000000022447788bbeebb9988441100000000000000000000000000000000000000000000004444
-% 8888bbbbeebbaa88774433000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000444444
-% 778888aabbbbccffccbbbb99888888444444110000000000000000000000224444778888bbbbccff
-% bbbbaa88887744442200000000000033448888bbbbffccbb88886644220000000000000000000000
-% 0000000000446688bbddccaa88553300000000000000000000000000000000000000000000000000
-% 00003377bbeeaa773300000000000000601189fffffffffff2220066dd9944000000000000000000
-% 00000000000000000000000066bbbb44000033f2fffffffff9700000000000000000000000000000
-% 000000004488bbeeaa77330000000000000000000000000000000000000000000000000000004466
-% 88aabbeebb9988442200000000000000000000000000000000000000000033447788aabbffbbbb88
-% 8844440000000000000000000000224444
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000044444477888888bbbbbbffddbbbbbb888888554444330000000000000000
-% 00224444778888aabbbbeeddbbbb9988885544441100003344668899bbcceebbbb88884444110000
-% 0000000000000000000000446688bbddccaa88554400000000000000000000000000000000000000
-% 0000000000004488bbeeaa7733000011faf07598c7f0edf8ffe1a0aa220000000000000000000000
-% 000000000000000000000000000044cc6670fafffffffff2f2d20000000000000000000000000011
-% 5588bbdd99663300000000000000000000000000000000000000000000000033448888bbeeccaa88
-% 6644000000000000000000000000000000000000000022446688aabbeeccbb888855441100000000
-% 00000000224444888899bbbbffccbbaa88
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000033444455888888bbbbbbddffccbbbbaa88
-% 88885544443300000000000000444444888888bbbbccffbbbbbb88888844445044448888aabbeecc
-% bb99887744330000000000000000000000446688bbccddbb88774411000000000000000000000000
-% 000000000000000000004477aaddaab3fffff6c11100114498e9ba00000000000000000000000000
-% 00000000000000000000000000000011ccd7cda8a08844443300330000000000000000115588ccdd
-% 99662200000000000000000000000000000000000000000011446688bbccddbb8877442200000000
-% 000000000000000000000000003344668888bbbbeeddbb9988664411000000000000334444888899
-% bbbbffccbbaa8888554433000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000334444
-% 55888888aabbbbccffddbbbbbb888888664444441100000011444455888888bbbbccffbbbbbb8888
-% 98828fa890bbbbffbbbb8888774444000000000000000033558899bbeebb99884433000000000000
-% 000000000000000000000000000033e1fffffffff060000099990000000000000000000000000000
-% 0000000000000000000000000000000011cc66000000000022b4ff77000000226699cccc88552200
-% 000000000000000000000000000000000022447788aabbffbbaa8855440000000000000000000000
-% 000000114444888899bbccffbbbb888877444400000000334444888888bbbbddeebbbb9988885544
-% 3300000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000003344444488888888bbbbbbddffbbbbbbaa888888664444441111444455
-% 888888bbbbccffccbbcdb4b8c8b8cdcdf2ddbbbb88885544330000000022447788bbddccaa886644
-% 000000000000000000000000000011f4fffffffffff6c1a099000000000000000000000000000000
-% 000000000000000000000000000000000011cc6600001198f4ffffb46699ddcc8855110000000000
-% 0000000000000000000033448888bbcceebb998855440000000000000000000000003344558888bb
-% bbeeddbbaa88885544220022444466888899bbbbddeebbbb99888855444400000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000004444445588888899bbbbbbeeffbb
-% bbbbbb888888884444767644888888aabbbbe0f3cddbe0d0e0e0ffcdcda7888844441100446688aa
-% bbeebb9988443300000000000000fff9e2cdcdcdcdcddec100000000000000000000000000000000
-% 00000000000000000000000000000000000011dd1180f0ffffffffe8a04400000000000000000000
-% 00000044558888bbddddbb888844330000000000000011444455888888bbbbddffbbbb9988774469
-% 504466888899bbbbddffbbbbbb888888444444000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 003344444477888888bbbbbbbbffeebbbbbbaa888898a87682a8a888c9cdd2f8f8e9edf2ffe0e0c7
-% a8a880769b88bbddddbb88774422fffffff798220000995500000000000000000000000000000000
-% 0000000000000000000000000000000000000088e9fffffffffffffff800000000000033448888bb
-% bbffbbaa88774422000000334444778888bbbbbbffccbbbb8888a876769b888899bbbbbbffddbbbb
-% aa888888444444000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000004444444488888888aabbbbbbeeffccbbbbc4a8a8b0d0cb
-% bfe8e8e6fbfff6fbede7dbe6e3dbfffffffffffcdc66dd11000000000000000000000033bbffddbb
-% 4400000000000000000000000000000000000055ae447ad6ffffffffff7788aabbeeccbb88a07676
-% 4488888899bbbbbbeeeebbc9c1a8a8b8a8a8a7bbbbbbeeffbbbbbb99888877444444110000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000022444444668888
-% 8888bbbbbbbbeeffcddbdbebe9e6fffffffffffffff8aa000000000000000000000033bb33000066
-% 440000000000cc00000000000000000000000000e0ddffffffffffffffc8d2cdc0ccffdacdcdcdc8
-% c8c8b8c1cdcdc0eeffbbbbbbbb888888774444441133444466888888888899bbbbbbbbbbbbbbbbdd
-% ffffffffffffffffffffffffffffffffffffffffffccbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb8888
-% 8888888888888888888877444444444444
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000022444444fffffffffffffff8770000000000000000000000bb2200000000
-% 4400aaee5588ff88000000000000000000000000b5ffffffffffffffffcdffffbbbbbbc9b4a8a8a8
-% a8767676764488888888888899bbbbbbbbddffddbbbbaa8888884444444444444444220000000000
-% 00000000000000000000000000000000000000000000000000000000000011444444444444444444
-% 4444444444668888888888888888888888
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000fffffbfcd7a055b6440000000000000000000000ff0000000000
-% 00009911ee00ff0000000000000000000000000090fdffffffffffffffbbbbbbbbbbbbbbbbbbbbbb
-% bb888888888888888866444444443300000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000008955220000000077880000000000000000000000dd3300000000
-% 00004444ff00ff00000000000000000000000000bb3355a0f2f9fffffc0000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000022cc000000000000000000000066cc00000000
-% 22992200ff00ff00000000000000000000000011dd000000003389e3ca0000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000cc22000000000000000000000066ddffee88
-% 11bbff77ee55ee770000000000000000000000668800000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000886600000000000000000000000000000000
-% 00000000000000000000000000000000000000995500000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000033cc11000000000000000000000000000000
-% 00000000000000000000000000000000000033dd0000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000066cc110000000000000000000000000000
-% 000000000000000000000000000000000033dd330000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000066cc1100000000000000000000000000
-% 0000000000000000000000000000000033dd33000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000066cc11000000000000000000000000
-% 00000000000000000000000000000033dd3300000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000066dd660000000000000000000000
-% 000000000000000000000000001188dd330000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000000002299dd88110000000000000000
-% 00000000000000000000002299dd8811000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000002288dd8822000000000000
-% 0000000000000000004499dd66110000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000001166ddddbb88884444
-% 00001144558899bbeebb550000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000033447788bb
-% bbe1bbaa886644220000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00bb0000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000000000033f5
-% e0ece0e8980000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000000000000f0
-% fffffff9660000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000000000000000000000000bb
-% fffffff0000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000066
-% f8ffff98000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000011
-% f4fff222000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% d7ffd700000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 80fe6600000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000002244448888
-% 98fc8888774444110000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000002277aabbccffbbbbaa888855
-% 444444668888bbbbccffbbbb99661100000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000003388cccc8844110000000000000000
-% 0000000000000000000000225588ddaa772200000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000004488ddbb7722000000000000000000000000
-% 0000000000000000000000000000003388cccc773300000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000077ddaa6611000000000000000000000000000000
-% 0000000000000000000000000000000000002277bbdd440000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000022bbaa11000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000033cc8811000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000066dd550000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000088dd330000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000011aabb11000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000033dd8800000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000022dd770000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000001188cc000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000009966000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000099660000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000011dd00000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000022dd0000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000008888000000000000000033bbffddbb440000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000bb4400000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000dd110000000000000033bb33000066440000000000000000000000
-% 0000000000000000000000000000000000000000000000000000000044aa00000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000066990000000000000000bb22000000004411bbffbb22449988ee44dd
-% 9900449988ee44dd990011bbffbb22449988bb00000000000000000000dd11000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000044aa0000000000000000ff000000000000bb330099bb00ff0033ff11
-% ff0000ff0033ff11ff00bb330099bb00ff11ff00000000000000000000dd11000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000dd2200000000000000dd330000000000ff000011ff00ff0000ff00
-% ff0000ff0000ff00ff00ff000011ff00ff00ff000000000000000000669900000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000066990000000000000066cc0000000022dd660011bb00ff0000ff00
-% ff0000ff0000ff00ff00dd660011bb00ff00ff000000000000000000dd2200000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000011dd110000000000000066ddffee881133ccffbb33ddff8855ff55
-% ff44ddff8855ff55ff4433ccffbb3333ff22ff550000000000000044bb0000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000008888000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000bb440000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000011bbaa1100000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000000000033cc88000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000077dd44000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000077dd4400000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000033cc881100000000000000000000000000000000000000
-% 0000000000000000000000000000000000000000000022bbaa110000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000000088dd44000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000077dd5500000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000033aaee9955000000000000000000000000000000
-% 00000000000000000000000000000000001166aaee99110000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000005599ddaa66110000000000000000000000
-% 00000000000000000000000000002277bbdd88330000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000004488ddbb88554444000000000000
-% 00000000000000001144446688cccc77330000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 000000000000000000000000000000000000000000000000000000000033888888bbbbddeebbbb88
-% 88888899bbbbffddbbbb888877220000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000004444
-% 44554444330000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 00000000000000000000000000000000000000000000000000000000000000000000000000000000
-% 0000000000000000000000000000000000
-%%EndImage
-%%EndPreview
-save countdictstack mark newpath /showpage {} def /setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-save
-/DotDict 200 dict def
-DotDict begin
-
-/setupLatin1 {
-mark
-/EncodingVector 256 array def
- EncodingVector 0
-
-ISOLatin1Encoding 0 255 getinterval putinterval
-
-EncodingVector
- dup 306 /AE
- dup 301 /Aacute
- dup 302 /Acircumflex
- dup 304 /Adieresis
- dup 300 /Agrave
- dup 305 /Aring
- dup 303 /Atilde
- dup 307 /Ccedilla
- dup 311 /Eacute
- dup 312 /Ecircumflex
- dup 313 /Edieresis
- dup 310 /Egrave
- dup 315 /Iacute
- dup 316 /Icircumflex
- dup 317 /Idieresis
- dup 314 /Igrave
- dup 334 /Udieresis
- dup 335 /Yacute
- dup 376 /thorn
- dup 337 /germandbls
- dup 341 /aacute
- dup 342 /acircumflex
- dup 344 /adieresis
- dup 346 /ae
- dup 340 /agrave
- dup 345 /aring
- dup 347 /ccedilla
- dup 351 /eacute
- dup 352 /ecircumflex
- dup 353 /edieresis
- dup 350 /egrave
- dup 355 /iacute
- dup 356 /icircumflex
- dup 357 /idieresis
- dup 354 /igrave
- dup 360 /dcroat
- dup 361 /ntilde
- dup 363 /oacute
- dup 364 /ocircumflex
- dup 366 /odieresis
- dup 362 /ograve
- dup 365 /otilde
- dup 370 /oslash
- dup 372 /uacute
- dup 373 /ucircumflex
- dup 374 /udieresis
- dup 371 /ugrave
- dup 375 /yacute
- dup 377 /ydieresis
-
-% Set up ISO Latin 1 character encoding
-/starnetISO {
- dup dup findfont dup length dict begin
- { 1 index /FID ne { def }{ pop pop } ifelse
- } forall
- /Encoding EncodingVector def
- currentdict end definefont
-} def
-/Times-Roman starnetISO def
-/Times-Italic starnetISO def
-/Times-Bold starnetISO def
-/Times-BoldItalic starnetISO def
-/Helvetica starnetISO def
-/Helvetica-Oblique starnetISO def
-/Helvetica-Bold starnetISO def
-/Helvetica-BoldOblique starnetISO def
-/Courier starnetISO def
-/Courier-Oblique starnetISO def
-/Courier-Bold starnetISO def
-/Courier-BoldOblique starnetISO def
-cleartomark
-} bind def
-
-/coord-font-family /Times-Roman def
-/default-font-family /Times-Roman def
-/coordfont coord-font-family findfont 8 scalefont def
-
-/InvScaleFactor 1.0 def
-/set_scale {
- dup 1 exch div /InvScaleFactor exch def
- dup scale
-} bind def
-
-% styles
-/solid { [] 0 setdash } bind def
-/dashed { [9 InvScaleFactor mul dup ] 0 setdash } bind def
-/dotted { [1 InvScaleFactor mul 6 InvScaleFactor mul] 0 setdash } bind def
-/invis {/fill {newpath} def /stroke {newpath} def /show {pop newpath} def} bind def
-/bold { 2 setlinewidth } bind def
-/filled { } bind def
-/unfilled { } bind def
-/rounded { } bind def
-/diagonals { } bind def
-
-% hooks for setting color
-/nodecolor { sethsbcolor } bind def
-/edgecolor { sethsbcolor } bind def
-/graphcolor { sethsbcolor } bind def
-/nopcolor {pop pop pop} bind def
-
-/beginpage { % i j npages
- /npages exch def
- /j exch def
- /i exch def
- /str 10 string def
- npages 1 gt {
- gsave
- coordfont setfont
- 0 0 moveto
- (\() show i str cvs show (,) show j str cvs show (\)) show
- grestore
- } if
-} bind def
-
-/set_font {
- findfont exch
- scalefont setfont
-} def
-
-% draw aligned label in bounding box aligned to current point
-/alignedtext { % width adj text
- /text exch def
- /adj exch def
- /width exch def
- gsave
- width 0 gt {
- text stringwidth pop adj mul 0 rmoveto
- } if
- [] 0 setdash
- text show
- grestore
-} def
-
-/boxprim { % xcorner ycorner xsize ysize
- 4 2 roll
- moveto
- 2 copy
- exch 0 rlineto
- 0 exch rlineto
- pop neg 0 rlineto
- closepath
-} bind def
-
-/ellipse_path {
- /ry exch def
- /rx exch def
- /y exch def
- /x exch def
- matrix currentmatrix
- newpath
- x y translate
- rx ry scale
- 0 0 1 0 360 arc
- setmatrix
-} bind def
-
-/endpage { showpage } bind def
-/showpage { } def
-
-/layercolorseq
- [ % layer color sequence - darkest to lightest
- [0 0 0]
- [.2 .8 .8]
- [.4 .8 .8]
- [.6 .8 .8]
- [.8 .8 .8]
- ]
-def
-
-/layerlen layercolorseq length def
-
-/setlayer {/maxlayer exch def /curlayer exch def
- layercolorseq curlayer 1 sub layerlen mod get
- aload pop sethsbcolor
- /nodecolor {nopcolor} def
- /edgecolor {nopcolor} def
- /graphcolor {nopcolor} def
-} bind def
-
-/onlayer { curlayer ne {invis} if } def
-
-/onlayers {
- /myupper exch def
- /mylower exch def
- curlayer mylower lt
- curlayer myupper gt
- or
- {invis} if
-} def
-
-/curlayer 0 def
-
-14 default-font-family set_font
-1 setmiterlimit
-% /arrowlength 10 def
-% /arrowwidth 5 def
-
-% make sure pdfmark is harmless for PS-interpreters other than Distiller
-/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse
-% make '<<' and '>>' safe on PS Level 1 devices
-/languagelevel where {pop languagelevel}{1} ifelse
-2 lt {
- userdict (<<) cvn ([) cvn load put
- userdict (>>) cvn ([) cvn load put
-} if
-
-gsave
-35 35 866 238 boxprim clip newpath
-36 36 translate
-0 0 1 beginpage
-0.7291 set_scale
-0 0 translate 0 rotate
-0.000 0.000 0.000 graphcolor
-14.00 /Times-Roman set_font
-
-% Lang
-[ /Rect [ 750 288 804 324 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Lang.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-777 306 27 18 ellipse_path
-stroke
-gsave 10 dict begin
-762 301 moveto
-(Lang)
-[8.4 6.24 6.96 6.96]
-xshow
-end grestore
-end grestore
-
-% Grammar
-[ /Rect [ 564 216 644 252 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Lang.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-604 234 40 18 ellipse_path
-stroke
-gsave 10 dict begin
-577 229 moveto
-(Grammar)
-[10.08 4.56 6.24 10.8 10.8 6.24 4.56]
-xshow
-end grestore
-end grestore
-
-% Lang -> Grammar
-gsave 10 dict begin
-solid
-newpath 754 296 moveto
-726 284 677 264 642 250 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 644 247 moveto
-633 246 lineto
-641 253 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 644 247 moveto
-633 246 lineto
-641 253 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Lexicon
-[ /Rect [ 915 216 987 252 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Lexicon.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-951 234 36 18 ellipse_path
-stroke
-gsave 10 dict begin
-928 229 moveto
-(Lexicon)
-[8.4 5.76 6.96 3.84 6.24 6.96 6.96]
-xshow
-end grestore
-end grestore
-
-% Lang -> Lexicon
-gsave 10 dict begin
-solid
-newpath 800 296 moveto
-829 284 879 264 913 250 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 915 253 moveto
-923 246 lineto
-912 246 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 915 253 moveto
-923 246 lineto
-912 246 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Noun
-[ /Rect [ 0 144 58 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Noun.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-29 162 29 18 ellipse_path
-stroke
-gsave 10 dict begin
-13 157 moveto
-(Noun)
-[9.84 6.96 6.96 6.96]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Noun
-gsave 10 dict begin
-solid
-newpath 564 232 moveto
-456 225 161 206 67 180 curveto
-65 179 63 178 61 178 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 62 174 moveto
-51 174 lineto
-59 181 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 62 174 moveto
-51 174 lineto
-59 181 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Verb
-[ /Rect [ 76 144 130 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Verb.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-103 162 27 18 ellipse_path
-stroke
-gsave 10 dict begin
-89 157 moveto
-(Verb)
-[8.88 6.24 4.56 6.96]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Verb
-gsave 10 dict begin
-solid
-newpath 564 231 moveto
-467 224 219 203 139 180 curveto
-137 179 135 179 133 178 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 135 175 moveto
-124 174 lineto
-132 181 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 135 175 moveto
-124 174 lineto
-132 181 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Adjective
-[ /Rect [ 148 144 228 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Adjective.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-188 162 40 18 ellipse_path
-stroke
-gsave 10 dict begin
-160 157 moveto
-(Adjective)
-[9.6 6.96 3.84 6.24 6.24 3.84 3.84 6.48 6.24]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Adjective
-gsave 10 dict begin
-solid
-newpath 564 231 moveto
-497 225 354 209 237 180 curveto
-234 179 231 178 228 177 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 229 174 moveto
-218 174 lineto
-227 180 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 229 174 moveto
-218 174 lineto
-227 180 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Adverb
-[ /Rect [ 246 144 314 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Adverb.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-280 162 34 18 ellipse_path
-stroke
-gsave 10 dict begin
-259 157 moveto
-(Adverb)
-[9.6 6.96 6.48 6.24 4.56 6.96]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Adverb
-gsave 10 dict begin
-solid
-newpath 565 229 moveto
-511 221 408 205 323 180 curveto
-321 179 318 178 316 177 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 317 174 moveto
-306 174 lineto
-315 180 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 317 174 moveto
-306 174 lineto
-315 180 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Numeral
-[ /Rect [ 332 144 408 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Numeral.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-370 162 38 18 ellipse_path
-stroke
-gsave 10 dict begin
-345 157 moveto
-(Numeral)
-[9.84 6.96 10.8 6.24 4.56 6.24 3.84]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Numeral
-gsave 10 dict begin
-solid
-newpath 570 225 moveto
-532 215 470 197 417 180 curveto
-414 179 412 178 409 177 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 411 174 moveto
-400 173 lineto
-408 180 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 411 174 moveto
-400 173 lineto
-408 180 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Sentence
-[ /Rect [ 426 144 502 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Sentence.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-464 162 38 18 ellipse_path
-stroke
-gsave 10 dict begin
-438 157 moveto
-(Sentence)
-[7.68 6.24 6.96 3.84 6.24 6.96 6.24 6.24]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Sentence
-gsave 10 dict begin
-solid
-newpath 577 220 moveto
-555 208 523 192 499 180 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 500 177 moveto
-490 175 lineto
-497 183 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 500 177 moveto
-490 175 lineto
-497 183 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Question
-[ /Rect [ 520 144 596 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Question.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-558 162 38 18 ellipse_path
-stroke
-gsave 10 dict begin
-532 157 moveto
-(Question)
-[10.08 6.96 6.24 5.28 3.84 3.84 6.96 6.96]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Question
-gsave 10 dict begin
-solid
-newpath 593 217 moveto
-588 208 581 197 574 188 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 577 186 moveto
-569 179 lineto
-571 189 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 577 186 moveto
-569 179 lineto
-571 189 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Relative
-[ /Rect [ 614 144 686 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Relative.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-650 162 36 18 ellipse_path
-stroke
-gsave 10 dict begin
-627 157 moveto
-(Relative)
-[9.12 6.24 3.84 6.24 3.84 3.84 6.48 6.24]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Relative
-gsave 10 dict begin
-solid
-newpath 615 217 moveto
-620 208 627 197 634 188 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 637 189 moveto
-639 179 lineto
-631 186 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 637 189 moveto
-639 179 lineto
-631 186 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Conjunction
-[ /Rect [ 704 144 800 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Conjunction.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-752 162 48 18 ellipse_path
-stroke
-gsave 10 dict begin
-717 157 moveto
-(Conjunction)
-[9.36 6.96 6.96 3.84 6.96 6.96 6.24 3.84 3.84 6.96 6.96]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Conjunction
-gsave 10 dict begin
-solid
-newpath 631 221 moveto
-654 209 688 193 714 180 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 715 183 moveto
-723 176 lineto
-712 177 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 715 183 moveto
-723 176 lineto
-712 177 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Phrase
-[ /Rect [ 818 144 882 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Phrase.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-850 162 32 18 ellipse_path
-stroke
-gsave 10 dict begin
-831 157 moveto
-(Phrase)
-[7.68 6.96 4.56 6.24 5.52 6.24]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Phrase
-gsave 10 dict begin
-solid
-newpath 640 226 moveto
-682 217 751 200 809 180 curveto
-811 179 813 178 816 177 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 817 180 moveto
-825 173 lineto
-814 174 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 817 180 moveto
-825 173 lineto
-814 174 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Text
-[ /Rect [ 900 144 954 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Phrase.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-927 162 27 18 ellipse_path
-stroke
-gsave 10 dict begin
-914 157 moveto
-(Text)
-[7.2 5.76 6.96 3.84]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Text
-gsave 10 dict begin
-solid
-newpath 643 230 moveto
-699 224 805 209 891 180 curveto
-893 179 895 179 897 178 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 898 181 moveto
-906 174 lineto
-895 175 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 898 181 moveto
-906 174 lineto
-895 175 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Idiom
-[ /Rect [ 972 144 1032 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Phrase.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-1002 162 30 18 ellipse_path
-stroke
-gsave 10 dict begin
-985 157 moveto
-(Idiom)
-[4.56 6.96 3.84 6.96 10.8]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Idiom
-gsave 10 dict begin
-solid
-newpath 644 232 moveto
-711 227 850 214 963 180 curveto
-965 179 967 178 969 178 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 971 181 moveto
-979 174 lineto
-968 174 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 971 181 moveto
-979 174 lineto
-968 174 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Structural
-[ /Rect [ 1050 144 1130 180 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Structural.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-1090 162 40 18 ellipse_path
-stroke
-gsave 10 dict begin
-1062 157 moveto
-(Structural)
-[7.44 3.84 4.8 6.96 6.24 3.84 6.96 4.56 6.24 3.84]
-xshow
-end grestore
-end grestore
-
-% Grammar -> Structural
-gsave 10 dict begin
-solid
-newpath 644 232 moveto
-721 228 897 215 1041 180 curveto
-1044 179 1047 178 1050 177 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 1051 180 moveto
-1060 174 lineto
-1049 174 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 1051 180 moveto
-1060 174 lineto
-1049 174 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Cat
-[ /Rect [ 577 72 631 108 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Cat.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-604 90 27 18 ellipse_path
-stroke
-gsave 10 dict begin
-594 85 moveto
-(Cat)
-[9.36 6.24 3.84]
-xshow
-end grestore
-end grestore
-
-% Lexicon -> Cat
-gsave 10 dict begin
-solid
-newpath 986 230 moveto
-1053 221 1185 196 1139 144 curveto
-1073 68 792 97 693 92 curveto
-683 91 661 90 641 90 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 641 87 moveto
-631 90 lineto
-641 94 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 641 87 moveto
-631 90 lineto
-641 94 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Noun -> Cat
-gsave 10 dict begin
-solid
-newpath 51 150 moveto
-56 148 62 145 67 144 curveto
-162 117 461 98 567 92 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 567 95 moveto
-577 91 lineto
-567 89 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 567 95 moveto
-577 91 lineto
-567 89 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Verb -> Cat
-gsave 10 dict begin
-solid
-newpath 123 150 moveto
-128 148 134 146 139 144 curveto
-219 120 472 100 567 93 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 567 96 moveto
-577 92 lineto
-567 90 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 567 96 moveto
-577 92 lineto
-567 90 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Adjective -> Cat
-gsave 10 dict begin
-solid
-newpath 218 150 moveto
-224 148 231 145 237 144 curveto
-356 114 500 99 567 93 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 567 96 moveto
-577 92 lineto
-567 90 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 567 96 moveto
-577 92 lineto
-567 90 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Adverb -> Cat
-gsave 10 dict begin
-solid
-newpath 306 150 moveto
-311 148 317 145 323 144 curveto
-408 118 513 102 567 94 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 567 97 moveto
-577 93 lineto
-567 91 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 567 97 moveto
-577 93 lineto
-567 91 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Numeral -> Cat
-gsave 10 dict begin
-solid
-newpath 399 150 moveto
-405 148 411 146 417 144 curveto
-470 127 531 109 569 100 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 570 103 moveto
-579 97 lineto
-568 97 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 570 103 moveto
-579 97 lineto
-568 97 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Sentence -> Cat
-gsave 10 dict begin
-solid
-newpath 490 149 moveto
-513 137 549 119 574 106 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 576 109 moveto
-583 101 lineto
-573 103 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 576 109 moveto
-583 101 lineto
-573 103 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Question -> Cat
-gsave 10 dict begin
-solid
-newpath 569 145 moveto
-575 136 582 125 588 116 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 591 117 moveto
-593 107 lineto
-585 114 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 591 117 moveto
-593 107 lineto
-585 114 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Relative -> Cat
-gsave 10 dict begin
-solid
-newpath 639 145 moveto
-633 136 626 125 620 116 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 623 114 moveto
-615 107 lineto
-617 117 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 623 114 moveto
-615 107 lineto
-617 117 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Conjunction -> Cat
-gsave 10 dict begin
-solid
-newpath 722 148 moveto
-697 136 661 118 635 105 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 637 102 moveto
-626 101 lineto
-634 108 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 637 102 moveto
-626 101 lineto
-634 108 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Phrase -> Cat
-gsave 10 dict begin
-solid
-newpath 825 150 moveto
-820 148 814 146 809 144 curveto
-751 123 681 107 640 97 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 640 94 moveto
-630 95 lineto
-639 100 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 640 94 moveto
-630 95 lineto
-639 100 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Text -> Cat
-gsave 10 dict begin
-solid
-newpath 906 150 moveto
-901 148 896 146 891 144 curveto
-804 114 696 100 641 93 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 641 90 moveto
-631 92 lineto
-641 96 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 641 90 moveto
-631 92 lineto
-641 96 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Idiom -> Cat
-gsave 10 dict begin
-solid
-newpath 979 150 moveto
-974 148 968 145 963 144 curveto
-848 109 708 96 641 92 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 641 89 moveto
-631 91 lineto
-641 95 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 641 89 moveto
-631 91 lineto
-641 95 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Structural -> Cat
-gsave 10 dict begin
-solid
-newpath 1060 150 moveto
-1054 148 1047 145 1041 144 curveto
-895 108 717 95 641 91 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 641 88 moveto
-631 91 lineto
-641 95 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 641 88 moveto
-631 91 lineto
-641 95 lineto
-closepath
-stroke
-end grestore
-end grestore
-
-% Common
-[ /Rect [ 565 0 643 36 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (Tense.gf) >>
- /Subtype /Link
-/ANN pdfmark
-gsave 10 dict begin
-solid
-604 18 39 18 ellipse_path
-stroke
-gsave 10 dict begin
-578 13 moveto
-(Common)
-[9.36 6.96 10.8 10.8 6.96 6.96]
-xshow
-end grestore
-end grestore
-
-% Cat -> Common
-gsave 10 dict begin
-solid
-newpath 604 72 moveto
-604 64 604 55 604 46 curveto
-stroke
-gsave 10 dict begin
-solid
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 608 46 moveto
-604 36 lineto
-601 46 lineto
-closepath
-fill
-0.000 0.000 0.000 edgecolor
-newpath 608 46 moveto
-604 36 lineto
-601 46 lineto
-closepath
-stroke
-end grestore
-end grestore
-endpage
-showpage
-grestore
-end
-restore
-%%Trailer
-cleartomark countdictstack exch sub { end } repeat restore
-%%EOF
diff --git a/deprecated/HelpFile b/deprecated/HelpFile
deleted file mode 100644
index c6b38b313..000000000
--- a/deprecated/HelpFile
+++ /dev/null
@@ -1,693 +0,0 @@
--- GF help file updated for GF 2.6, 17/6/2006.
--- *: Commands and options marked with * are currently not implemented.
---
--- Each command has a long and a short name, options, and zero or more
--- arguments. Commands are sorted by functionality. The short name is
--- given first.
-
--- Type "h -all" for full help file, "h
- -unlexer=code format as code (spacing, indentation)
- -unlexer=textlit like text, but remove string literal quotes
- -unlexer=codelit like code, but remove string literal quotes
- -unlexer=concat remove all spaces
- -unlexer=bind like identity, but bind at "&+"
-
--mark, marking of parts of tree in linearization. The default is none.
- -mark=metacat append "+CAT" to every metavariable, showing its category
- -mark=struct show tree structure with brackets
- -mark=java show tree structure with XML tags (used in gfeditor)
-
--coding, Some grammars are in UTF-8, some in isolatin-1.
- If the letters (a-umlaut) and (o-umlaut) look strange, either
- change your terminal to isolatin-1, or rewrite the grammar with
- 'pg -utf8'.
-
--- *: Commands and options marked with * are not currently implemented.
diff --git a/deprecated/Makefile b/deprecated/Makefile
deleted file mode 100644
index e4c6bb728..000000000
--- a/deprecated/Makefile
+++ /dev/null
@@ -1,250 +0,0 @@
-include config.mk
-
-
-GHMAKE=$(GHC) --make
-GHCXMAKE=ghcxmake
-GHCFLAGS+= -fglasgow-exts
-GHCOPTFLAGS=-O2
-GHCFUDFLAG=
-
-DIST_DIR=GF-$(PACKAGE_VERSION)
-NOT_IN_DIST= \
- grammars \
- download \
- doc/release2.html \
- src/tools/AlphaConvGF.hs
-
-BIN_DIST_DIR=$(DIST_DIR)-$(host)
-
-GRAMMAR_PACKAGE_VERSION=$(shell date +%Y%m%d)
-GRAMMAR_DIST_DIR=gf-grammars-$(GRAMMAR_PACKAGE_VERSION)
-
-MSI_FILE=gf-$(subst .,_,$(PACKAGE_VERSION)).msi
-
-GF_DATA_DIR=$(datadir)/GF-$(PACKAGE_VERSION)
-GF_LIB_DIR=$(GF_DATA_DIR)/lib
-
-EMBED = GF/Embed/TemplateApp
-
-# use the temporary binary file name 'gf-bin' to not clash with directory 'GF'
-# on case insensitive file systems (such as FAT)
-GF_EXE=gf$(EXEEXT)
-GF_EXE_TMP=gf-bin$(EXEEXT)
-GF_DOC_EXE=gfdoc$(EXEEXT)
-
-
-ifeq ("$(READLINE)","readline")
- GHCFLAGS += -package readline -DUSE_READLINE
-endif
-
-ifneq ("$(CPPFLAGS)","")
- GHCFLAGS += $(addprefix -optP, $(CPPFLAGS))
-endif
-
-ifneq ("$(LDFLAGS)","")
- GHCFLAGS += $(addprefix -optl, $(LDFLAGS))
-endif
-
-ifeq ("$(INTERRUPT)","yes")
- GHCFLAGS += -DUSE_INTERRUPT
-endif
-
-ifeq ("$(ATK)","yes")
- GHCFLAGS += -DUSE_ATK
-endif
-
-ifeq ("$(ENABLE_JAVA)", "yes")
- BUILD_JAR=jar
-else
- BUILD_JAR=
-endif
-
-.PHONY: all unix jar tags gfdoc windows install install-gf \
- lib temp install-gfdoc \
- today help clean windows-msi dist gfc
-
-all: unix gfc lib
-
-static: GHCFLAGS += -optl-static
-static: unix
-
-
-gf: unix
-
-unix: today opt
-
-windows: unix
-
-temp: today noopt
-
-
-build:
- $(GHMAKE) $(GHCFLAGS) GF.hs -o $(GF_EXE_TMP)
- strip $(GF_EXE_TMP)
- mv $(GF_EXE_TMP) ../bin/$(GF_EXE)
-
-opt: GHCFLAGS += $(GHCOPTFLAGS)
-opt: build
-
-embed: GHCFLAGS += $(GHCOPTFLAGS)
-embed:
- $(GHMAKE) $(GHCFLAGS) $(EMBED) -o $(EMBED)
- strip $(EMBED)
-
-noopt: build
-
-clean:
- find . '(' -name '*~' -o -name '*.hi' -o -name '*.ghi' -o -name '*.o' ')' -exec rm -f '{}' ';'
- -rm -f gf.wixobj
- -rm -f ../bin/$(GF_EXE)
- $(MAKE) -C tools/c clean
- $(MAKE) -C ../lib/c clean
- -rm -f ../bin/gfcc2c
-
-distclean: clean
- -rm -f tools/$(GF_DOC_EXE)
- -rm -f config.status config.mk config.log
- -rm -f *.tgz *.zip
- -rm -rf $(DIST_DIR) $(BIN_DIST_DIR)
- -rm -rf gf.wxs *.msi
-
-today:
- echo 'module Paths_gf (version, getDataDir) where' > Paths_gf.hs
- echo 'import Data.Version' >> Paths_gf.hs
- echo '{-# NOINLINE version #-}' >> Paths_gf.hs
- echo 'version :: Version' >> Paths_gf.hs
- echo 'version = Version {versionBranch = [3,0], versionTags = ["beta3"]}' >> Paths_gf.hs
- echo 'getDataDir = return "$(GF_DATA_DIR)" :: IO FilePath' >> Paths_gf.hs
-
-
-showflags:
- @echo $(GHCFLAGS)
-
-# added by peb:
-tracing: GHCFLAGS += -DTRACING
-tracing: temp
-
-ghci-trace: GHCFLAGS += -DTRACING
-ghci-trace: ghci
-
-#touch-files:
-# rm -f GF/System/Tracing.{hi,o}
-# touch GF/System/Tracing.hs
-
-# profiling
-prof: GHCOPTFLAGS += -prof -auto-all
-prof: unix
-
-tags:
- find GF Transfer -name '*.hs' | xargs hasktags
-
-#
-# Help file
-#
-
-tools/MkHelpFile: tools/MkHelpFile.hs
- $(GHMAKE) -o $@ $^
-
-help: GF/Shell/HelpFile.hs
-
-GF/Shell/HelpFile.hs: tools/MkHelpFile HelpFile
- tools/MkHelpFile
-
-#
-# Tools
-#
-
-gfdoc: tools/$(GF_DOC_EXE)
-
-tools/$(GF_DOC_EXE): tools/GFDoc.hs
- $(GHMAKE) $(GHCOPTFLAGS) -o $@ $^
-
-gfc: gf
- echo GFC!
- cp -f gfc ../bin/
- chmod a+x ../bin/gfc
-
-gfcc2c:
- $(MAKE) -C tools/c
- $(MAKE) -C ../lib/c
- mv tools/c/gfcc2c ../bin
-
-#
-# Resource grammars
-#
-
-lib:
- $(MAKE) -C ../lib/resource clean all
-
-#
-# Distribution
-#
-
-dist:
- -rm -rf $(DIST_DIR)
- darcs dist --dist-name=$(DIST_DIR)
- tar -zxf ../$(DIST_DIR).tar.gz
- rm ../$(DIST_DIR).tar.gz
- cd $(DIST_DIR)/src && perl -pi -e "s/^AC_INIT\(\[GF\],\[[^\]]*\]/AC_INIT([GF],[$(PACKAGE_VERSION)]/" configure.ac
- cd $(DIST_DIR)/src && autoconf && rm -rf autom4te.cache
-# cd $(DIST_DIR)/grammars && sh mkLib.sh
- cd $(DIST_DIR) && rm -rf $(NOT_IN_DIST)
- $(TAR) -zcf $(DIST_DIR).tgz $(DIST_DIR)
- rm -rf $(DIST_DIR)
-
-snapshot: PACKAGE_VERSION=$(shell date +%Y%m%d)
-snapshot: DIST_DIR=GF-$(PACKAGE_VERSION)
-snapshot: dist
-
-rpm: dist
- rpmbuild -ta $(DIST_DIR).tgz
-
-
-binary-dist:
- rm -rf $(BIN_DIST_DIR)
- mkdir $(BIN_DIST_DIR)
- mkdir $(BIN_DIST_DIR)/lib
- ./configure --host="$(host)" --build="$(build)"
- $(MAKE) gfc gfdoc
- $(INSTALL) ../bin/$(GF_EXE) tools/$(GF_DOC_EXE) $(BIN_DIST_DIR)
- $(INSTALL) configure config.guess config.sub install-sh config.mk.in $(BIN_DIST_DIR)
- $(INSTALL) gfc.in $(BIN_DIST_DIR)
- $(INSTALL) -m 0644 ../README ../LICENSE $(BIN_DIST_DIR)
- $(INSTALL) -m 0644 INSTALL.binary $(BIN_DIST_DIR)/INSTALL
- $(INSTALL) -m 0644 Makefile.binary $(BIN_DIST_DIR)/Makefile
-# $(TAR) -C $(BIN_DIST_DIR)/lib -zxf ../lib/compiled.tgz
- $(TAR) -zcf GF-$(PACKAGE_VERSION)-$(host).tgz $(BIN_DIST_DIR)
- rm -rf $(BIN_DIST_DIR)
-
-grammar-dist:
- -rm -rf $(GRAMMAR_DIST_DIR)
- mkdir $(GRAMMAR_DIST_DIR)
- cp -r ../_darcs/current/{lib,examples} $(GRAMMAR_DIST_DIR)
- $(MAKE) GF_LIB_PATH=.. -C $(GRAMMAR_DIST_DIR)/lib/resource-1.0 show-path prelude present alltenses mathematical api multimodal langs
- $(TAR) -zcf $(GRAMMAR_DIST_DIR).tgz $(GRAMMAR_DIST_DIR)
- rm -rf $(GRAMMAR_DIST_DIR)
-
-gf.wxs: config.status gf.wxs.in
- ./config.status --file=$@
-
-windows-msi: gf.wxs
- candle -nologo gf.wxs
- light -nologo -o $(MSI_FILE) gf.wixobj
-
-#
-# Installation
-#
-
-install: install-gf install-gfdoc install-lib
-
-install-gf:
- $(INSTALL) -d $(bindir)
- $(INSTALL) ../bin/$(GF_EXE) $(bindir)
-
-install-gfdoc:
- $(INSTALL) -d $(bindir)
- $(INSTALL) tools/$(GF_DOC_EXE) $(bindir)
-
-install-lib:
- $(INSTALL) -d $(GF_LIB_DIR)
- $(TAR) -C $(GF_LIB_DIR) -zxf ../lib/compiled.tgz
diff --git a/deprecated/Makefile.binary b/deprecated/Makefile.binary
deleted file mode 100644
index 0ae18a2e7..000000000
--- a/deprecated/Makefile.binary
+++ /dev/null
@@ -1,20 +0,0 @@
-include config.mk
-
-GF_DATA_DIR=$(datadir)/GF-$(PACKAGE_VERSION)
-GF_LIB_DIR=$(GF_DATA_DIR)/lib
-
-.PHONY: install uninstall
-
-install:
- $(INSTALL) -d $(bindir)
- $(INSTALL) gf$(EXEEXT) gfdoc$(EXEEXT) $(bindir)
- $(INSTALL) gfc$(EXEEXT) $(bindir)
- $(INSTALL) -d $(GF_DATA_DIR)
- cp -r lib $(GF_DATA_DIR)
-
-uninstall:
- -rm -f $(bindir)/gf$(EXEEXT) $(bindir)/gfdoc$(EXEEXT)
- -rm -f $GF_LIB_DIR)/*/*.gf{o}
- -rmdir $(GF_LIB_DIR)/*
- -rmdir $(GF_LIB_DIR)
- -rmdir $(GF_DATA_DIR)
diff --git a/deprecated/PGF/doc/Eng.gf b/deprecated/PGF/doc/Eng.gf
deleted file mode 100644
index c64f46313..000000000
--- a/deprecated/PGF/doc/Eng.gf
+++ /dev/null
@@ -1,13 +0,0 @@
-concrete Eng of Ex = {
- lincat
- S = {s : Str} ;
- NP = {s : Str ; n : Num} ;
- VP = {s : Num => Str} ;
- param
- Num = Sg | Pl ;
- lin
- Pred np vp = {s = np.s ++ vp.s ! np.n} ;
- She = {s = "she" ; n = Sg} ;
- They = {s = "they" ; n = Pl} ;
- Sleep = {s = table {Sg => "sleeps" ; Pl => "sleep"}} ;
-}
diff --git a/deprecated/PGF/doc/Ex.gf b/deprecated/PGF/doc/Ex.gf
deleted file mode 100644
index bd0b03483..000000000
--- a/deprecated/PGF/doc/Ex.gf
+++ /dev/null
@@ -1,8 +0,0 @@
-abstract Ex = {
- cat
- S ; NP ; VP ;
- fun
- Pred : NP -> VP -> S ;
- She, They : NP ;
- Sleep : VP ;
-}
diff --git a/deprecated/PGF/doc/Swe.gf b/deprecated/PGF/doc/Swe.gf
deleted file mode 100644
index 1d6672371..000000000
--- a/deprecated/PGF/doc/Swe.gf
+++ /dev/null
@@ -1,13 +0,0 @@
-concrete Swe of Ex = {
- lincat
- S = {s : Str} ;
- NP = {s : Str} ;
- VP = {s : Str} ;
- param
- Num = Sg | Pl ;
- lin
- Pred np vp = {s = np.s ++ vp.s} ;
- She = {s = "hon"} ;
- They = {s = "de"} ;
- Sleep = {s = "sover"} ;
-}
diff --git a/deprecated/PGF/doc/Test.gf b/deprecated/PGF/doc/Test.gf
deleted file mode 100644
index 5cd4c5474..000000000
--- a/deprecated/PGF/doc/Test.gf
+++ /dev/null
@@ -1,64 +0,0 @@
--- to test GFCC compilation
-
-flags coding=utf8 ;
-
-cat S ; NP ; N ; VP ;
-
-fun Pred : NP -> VP -> S ;
-fun Pred2 : NP -> VP -> NP -> S ;
-fun Det, Dets : N -> NP ;
-fun Mina, Sina, Me, Te : NP ;
-fun Raha, Paska, Pallo : N ;
-fun Puhua, Munia, Sanoa : VP ;
-
-param Person = P1 | P2 | P3 ;
-param Number = Sg | Pl ;
-param Case = Nom | Part ;
-
-param NForm = NF Number Case ;
-param VForm = VF Number Person ;
-
-lincat N = Noun ;
-lincat VP = Verb ;
-
-oper Noun = {s : NForm => Str} ;
-oper Verb = {s : VForm => Str} ;
-
-lincat NP = {s : Case => Str ; a : {n : Number ; p : Person}} ;
-
-lin Pred np vp = {s = np.s ! Nom ++ vp.s ! VF np.a.n np.a.p} ;
-lin Pred2 np vp ob = {s = np.s ! Nom ++ vp.s ! VF np.a.n np.a.p ++ ob.s ! Part} ;
-lin Det no = {s = \\c => no.s ! NF Sg c ; a = {n = Sg ; p = P3}} ;
-lin Dets no = {s = \\c => no.s ! NF Pl c ; a = {n = Pl ; p = P3}} ;
-lin Mina = {s = table Case ["minä" ; "minua"] ; a = {n = Sg ; p = P1}} ;
-lin Te = {s = table Case ["te" ; "teitä"] ; a = {n = Pl ; p = P2}} ;
-lin Sina = {s = table Case ["sinä" ; "sinua"] ; a = {n = Sg ; p = P2}} ;
-lin Me = {s = table Case ["me" ; "meitä"] ; a = {n = Pl ; p = P1}} ;
-
-lin Raha = mkN "raha" ;
-lin Paska = mkN "paska" ;
-lin Pallo = mkN "pallo" ;
-lin Puhua = mkV "puhu" ;
-lin Munia = mkV "muni" ;
-lin Sanoa = mkV "sano" ;
-
-oper mkN : Str -> Noun = \raha -> {
- s = table {
- NF Sg Nom => raha ;
- NF Sg Part => raha + "a" ;
- NF Pl Nom => raha + "t" ;
- NF Pl Part => Predef.tk 1 raha + "oja"
- }
- } ;
-
-oper mkV : Str -> Verb = \puhu -> {
- s = table {
- VF Sg P1 => puhu + "n" ;
- VF Sg P2 => puhu + "t" ;
- VF Sg P3 => puhu + Predef.dp 1 puhu ;
- VF Pl P1 => puhu + "mme" ;
- VF Pl P2 => puhu + "tte" ;
- VF Pl P3 => puhu + "vat"
- }
- } ;
-
diff --git a/deprecated/PGF/doc/gfcc.html b/deprecated/PGF/doc/gfcc.html
deleted file mode 100644
index 8f8c478c0..000000000
--- a/deprecated/PGF/doc/gfcc.html
+++ /dev/null
@@ -1,809 +0,0 @@
-
-
-
-Author's address:
-
-History:
-
-GFCC is a low-level format for GF grammars. Its aim is to contain the minimum
-that is needed to process GF grammars at runtime. This minimality has three
-advantages:
-
-Thus we also want to call GFCC the portable grammar format.
-
-The idea is that all embedded GF applications use GFCC.
-The GF system would be primarily used as a compiler and as a grammar
-development tool.
-
-Since GFCC is implemented in BNFC, a parser of the format is readily
-available for C, C++, C#, Haskell, Java, and OCaml. Also an XML
-representation can be generated in BNFC. A
-reference implementation
-of linearization and some other functions has been written in Haskell.
-
-GFCC is aimed to replace GFC as the run-time grammar format. GFC was designed
-to be a run-time format, but also to
-support separate compilation of grammars, i.e.
-to store the results of compiling
-individual GF modules. But this means that GFC has to contain extra information,
-such as type annotations, which is only needed in compilation and not at
-run-time. In particular, the pattern matching syntax and semantics of GFC is
-complex and therefore difficult to implement in new platforms.
-
-Actually, GFC is planned to be omitted also as the target format of
-separate compilation, where plain GF (type annotated and partially evaluated)
-will be used instead. GFC provides only marginal advantages as a target format
-compared with GF, and it is therefore just extra weight to carry around this
-format.
-
-The main differences of GFCC compared with GFC (and GF) can be summarized as follows:
-
-Here is an example of a GF grammar, consisting of three modules,
-as translated to GFCC. The representations are aligned; thus they do not completely
-reflect the order of judgements in GFCC files, which have different orders of
-blocks of judgements, and alphabetical sorting.
-
-The complete BNFC grammar, from which
-the rules in this section are taken, is in the file
-
-A grammar has a header telling the name of the abstract syntax
-(often specifying an application domain), and the names of
-the concrete languages. The abstract syntax and the concrete
-syntaxes themselves follow.
-
-This syntax organizes each module to a sequence of fields, such
-as flags, linearizations, operations, linearization types, etc.
-It is envisaged that particular applications can ignore some
-of the fields, typically so that earlier fields are more
-important than later ones.
-
-The judgement forms have the following syntax.
-
-For the run-time system, the reference implementation in Haskell
-uses a structure that gives efficient look-up:
-
-These definitions are from
-Identifiers (
-Types are first-order function types built from argument type
-contexts and value types.
-category symbols. Syntax trees (
-The head Atom is either a function
-constant, a bound variable, or a metavariable, or a string, integer, or float
-literal.
-
-The context-free types and trees of the "old GFCC" are special
-cases, which can be defined as follows:
-
-To store semantic (
-Notice that expressions are used to encode patterns. Primitive notions
-(the default semantics in GF) are encoded as empty sets of equations
-(
-Linearization terms (
-Tokens are strings or (maybe obsolescent) prefix-dependent
-variant lists.
-
-Two special forms of terms are introduced by the compiler
-as optimizations. They can in principle be eliminated, but
-their presence makes grammars much more compact. Their semantics
-will be explained in a later section.
-
-There is also a deprecated form of "record parameter alias",
-
-which will be removed when the migration to new GFCC is complete.
-
-The code in this section is from
-The linearization algorithm is essentially the same as in
-GFC: a tree is linearized by evaluating its linearization term
-in the environment of the linearizations of the subtrees.
-Literal atoms are linearized in the obvious way.
-The function also needs to know the language (i.e. concrete syntax)
-in which linearization is performed.
-
-TODO: bindings must be supported.
-
-The result of linearization is usually a record, which is realized as
-a string using the following algorithm.
-
-Notice that realization always picks the first field of a record.
-If a linearization type has more than one field, the first field
-does not necessarily contain the desired string.
-Also notice that the order of record fields in GFCC is not necessarily
-the same as in GF source.
-
-Evaluation follows call-by-value order, with two environments
-needed:
-
-The code is presented in one-level pattern matching, to
-enable reimplementations in languages that do not permit
-deep patterns (such as Java and C++).
-
-The three forms introduced by the compiler may a need special
-explanation.
-
-Global constants
-
-are shorthands for complex terms. They are produced by the
-compiler by (iterated) common subexpression elimination.
-They are often more powerful than hand-devised code sharing in the source
-code. They could be computed off-line by replacing each identifier by
-its definition.
-
-Prefix-suffix tables
-
-represent tables of word forms divided to the longest common prefix
-and its array of suffixes. In the example grammar above, we have
-
-which in fact is equal to the array of full forms
-
-The power of this construction comes from the fact that suffix sets
-tend to be repeated in a language, and can therefore be collected
-by common subexpression elimination. It is this technique that
-explains the used syntax rather than the more accurate
-
-since we want the suffix part to be a
-Compilation to GFCC is performed by the GF grammar compiler, and
-GFCC interpreters need not know what it does. For grammar writers,
-however, it might be interesting to know what happens to the grammars
-in the process.
-
-The compilation phases are the following
-
-Two major problems had to be solved in compiling GF to GFCC:
-
-The current implementation is still experimental and may fail
-to generate correct code. Any errors remaining are likely to be
-related to the two problems just mentioned.
-
-The order problem is solved in slightly different ways for tables and records.
-In both cases, eta expansion is used to establish a
-canonical order. Tables are ordered by applying the preorder induced
-by
-The canonical form of records is further complicated by lock fields,
-i.e. dummy fields of form
-While the order problem is rather bureaucratic in nature, run-time
-variables are an interesting problem. They arise in the presence
-of complex parameter values, created by argument-taking constructors
-and parameter records. To give an example, consider the GF parameter
-type system
-
-The values can be translated to integers in the expected way,
-
-However, an argument of
-This expression must first be translated to a case expression,
-
-which can then be translated to the GFCC term
-
-assuming that the variable
-This transformation of course has to be performed recursively, since
-there can be several run-time variables in a parameter value:
-
-A similar transformation would be possible to deal with the double
-role of parameter records discussed above. Thus the type
-
-could be uniformly translated into the set
-To avoid the code bloat resulting from this, we have chosen to
-deal with records by a currying transformation:
-
-This is performed when GFCC is generated. Selections with
-records have to be treated likewise,
-
-Linearization types (
-For example, the linearization type
-GFCC generation is a part of the
-developers' version
-of GF since September 2006. To invoke the compiler, the flag
-
-There is also an experimental batch compiler, which does not use the GFC
-format or the record aliases. It can be produced by
-
-in
-The reference interpreter written in Haskell consists of the following files:
-
-It is included in the
-developers' version
-of GF, in the subdirectories
-As of September 2007, default parsing in main GF uses GFCC (implemented by Krasimir
-Angelov). The interpreter uses the relevant modules
-
-To compile the interpreter, type
-
-in
-The available commands are
-
-Support for dependent types, higher-order abstract syntax, and
-semantic definition in GFCC generation and interpreters.
-
-Replacing the entire GF shell by one based on GFCC.
-
-Interpreter in Java.
-
-Hand-written parsers for GFCC grammars to reduce code size
-(and efficiency?) of interpreters.
-
-Binary format and/or file compression of GFCC output.
-
-Syntax editor based on GFCC.
-
-Rewriting of resource libraries in order to exploit the
-word-suffix sharing better (depth-one tables, as in FM).
-
-History
-
-September 2008: updated for Version 1.5.
-
-October 2007: updated for Version 1.2.
-
-January 2006: first version.
-
-The purpose of this document is to tell how to implement the GF
-resource grammar API for a new language. We will not cover how
-to use the resource grammar, nor how to change the API. But we
-will give some hints how to extend the API.
-
-A manual for using the resource grammar is found in
-
-
-A tutorial on GF, also introducing the idea of resource grammars, is found in
-
-
-This document concerns the API v. 1.5, while the current stable release is 1.4.
-You can find the code for the stable release in
-
-
-and the next release in
-
-
-It is recommended to build new grammars to match the next release.
-
-The library is divided into a bunch of modules, whose dependencies
-are given in the following figure.
-
-
-Modules of different kinds are distinguished as follows:
-
-Put in another way:
-
-The dashed ellipses form the main parts of the implementation, on which the resource
-grammar programmer has to work with. She also has to work on the
-The module structure is rather flat: most modules are direct
-parents of
-For the user of the library, these modules are the most important ones.
-In a typical application, it is enough to open
-The immediate parents of
-Expressions of each phrase category are constructed in the corresponding
-phrase category module. But their use takes mostly place in other modules.
-For instance, noun phrases, which are constructed in
-As usual in typeful programming, the only thing you need to know
-about an object you use is its type. When writing a linearization rule
-for a GF abstract syntax function, the only thing you need to know is
-the linearization types of its value and argument categories. To achieve
-the division of the resource grammar to several parallel phrase category modules,
-what we need is an underlying definition of the linearization types. This
-definition is given as the implementation of
-
-Any resource grammar implementation has first to agree on how to implement
-
-What is lexical and what is syntactic is not as clearcut in GF as in
-some other grammar formalisms. Logically, lexical means atom, i.e. a
-
-Another characterization of lexical is that lexical units can be added
-almost ad libitum, and they cannot be defined in terms of already
-given rules. The lexical modules of the resource API are thus more like
-samples than complete lists. There are two such modules:
-
-The module
-In the case of
-In addition to the common API, there is room for language-dependent extensions
-of the resource. The top level of each languages looks as follows (with German
-as example):
-
-where
-To give a better overview of language-specific structures,
-modules like
-Thus any category and function in
-In a minimal resource grammar implementation, the language-dependent
-extensions are just empty modules, but it is good to provide them for
-the sake of uniformity.
-
-Some lines in the resource library are suffixed with the comment
-
-which is used by a preprocessor to exclude those lines from
-a reduced version of the full resource. This present-tense-only
-version is useful for applications in most technical text, since
-they reduce the grammar size and compilation time. It can also
-be useful to exclude those lines in a first version of resource
-implementation. To compile a grammar with present-tense-only, use
-
-with
-Unless you are writing an instance of a parametrized implementation
-(Romance or Scandinavian), which will be covered later, the
-simplest way is to follow roughly the following procedure. Assume you
-are building a grammar for the German language. Here are the first steps,
-which we actually followed ourselves when building the German implementation
-of resource v. 1.0 at Ubuntu linux. We have slightly modified them to
-match resource v. 1.5 and GF v. 3.0.
-
-Here is the module structure of
-
-The real work starts now. There are many ways to proceed, the most obvious ones being
-
-The practical working direction is thus a saw-like motion between the morphological
-and top-level modules. Here is a possible course of the work that gives enough
-test data and enough general view at any point:
-
-The following develop-test cycle will
-be applied most of the time, both in the first steps described above
-and in later steps where you are more on your own.
-
-You are likely to run this cycle a few times for each linearization rule
-you implement, and some hundreds of times altogether. There are roughly
-70
-These auxuliary
-These modules are language-independent and provided by the existing resource
-package.
-
-An important decision is what rules to implement in terms of operations in
-
-This rule suggests that an operation should be created if it is to be
-used at least twice. At the same time, a sound principle of vicinity says:
-
-From these two principles, we have derived the following practice:
-
-This discipline is very different from the one followed in early
-versions of the library (up to 0.9). We then valued the principle of
-abstraction more than vicinity, creating layers of abstraction for
-almost everything. This led in practice to the duplication of almost
-all code on the
-The paradigms needed to implement
-
-For ease of use, the
-For the complement-taking variants, such as
-The golden rule for the design of paradigms is that
-
-The discipline of data abstraction moreover requires that the user of the resource
-is not given access to parameter constructors, but only to constants that denote
-them. This gives the resource grammarian the freedom to change the underlying
-data representation if needed. It means that the
-These constants are defined in terms of parameter types and constructors
-in
-An important difference between
-But when these category symbols are used to denote their linearization
-types in resource module, these definitions are translated to
-
-In this way, the user of a resource grammar cannot confuse adverbs with
-conjunctions. In other words, the lock fields force the type checker
-to function as grammaticality checker.
-
-When the resource grammar is
-The resource grammarian has to provide the dummy lock field values
-in her hidden definitions of constants in
-The lexicon belonging to
-The reason why
-It is useful in most languages to provide a separate module of irregular
-verbs and other words which are difficult for a lexicographer
-to handle. There are usually a limited number of such words - a
-few hundred perhaps. Building such a lexicon separately also
-makes it less important to cover everything by the
-worst-case variants of the paradigms
-You can often find resources such as lists of
-irregular verbs on the internet. For instance, the
-Irregular German Verb page
-previously found in
-
-All you have to do is to write a suitable verb paradigm
-
-and a Perl or Python or Haskell script that transforms
-the table to
-
-When using ready-made word lists, you should think about
-coyright issues. All resource grammar material should
-be provided under GNU Lesser General Public License (LGPL).
-
-This is a cheap technique to build a lexicon of thousands
-of words, if text data is available in digital format.
-See the Extract Homepage
-homepage for details.
-
-This is another cheap technique, where you need as input a list of words with
-part-of-speech marking. You initialize the lexicon by using the one-argument
-
-A. Ranta.
-How predictable is Finnish morphology? An experiment on lexicon construction.
-In J. Nivre, M. Dahllöf and B. Megyesi (eds),
-Resourceful Language Technology: Festschrift in Honor of Anna Sågvall Hein,
-University of Uppsala,
-2008.
-Available from the series homepage
-
-Sooner or later it will happen that the resource grammar API
-does not suffice for all applications. A common reason is
-that it does not include idiomatic expressions in a given language.
-The solution then is in the first place to build language-specific
-extension modules, like
-Above we have looked at how a resource implementation is built by
-the copy and paste method (from English to German), that is, formally
-speaking, from scratch. A more elegant solution available for
-families of languages such as Romance and Scandinavian is to
-use parametrized modules. The advantages are
-
-Here is a set of
-slides
-on the topic.
-
-This is the most demanding form of resource grammar writing.
-We do not recommend the method of parametrizing from the
-beginning: it is easier to have one language first implemented
-in the conventional way and then add another language of the
-same family by aprametrization. This means that the copy and
-paste method is still used, but at this time the differences
-are put into an
-This section is relevant for languages using a non-ASCII character set.
-
-From version 3.0, GF follows a simple encoding convention:
-
-Most current resource grammars use isolatin-1 in the source, but this does
-not affect their use in parallel with grammars written in other encodings.
-In fact, a grammar can be put up from modules using different codings.
-
-Warning. While string literals may contain any characters, identifiers
-must be isolatin-1 letters (or digits, underscores, or dashes). This has to
-do with the restrictions of the lexer tool that is used.
-
-While UTF-8 is well supported by most web browsers, its use in terminals and
-text editors may cause disappointment. Many grammarians therefore prefer to
-use ASCII transliterations. GF 3.0beta2 provides the following built-in
-transliterations:
-
-New transliterations can be defined in the GF source file
-The GFCC Grammar Format
-
-Aarne Ranta
-October 5, 2007
-http://www.cs.chalmers.se/~aarne
-
-
-
-What is GFCC
-
-
-
-GFCC vs. GFC
-
-
-
-
- grammar Ex(Eng,Swe);
-
- abstract Ex = { abstract {
- cat cat
- S ; NP ; VP ; NP[]; S[]; VP[];
- fun fun
- Pred : NP -> VP -> S ; Pred=[(($ 0! 1),(($ 1! 0)!($ 0! 0)))];
- She, They : NP ; She=[0,"she"];
- Sleep : VP ; They=[1,"they"];
- Sleep=[["sleeps","sleep"]];
- } } ;
-
- concrete Eng of Ex = { concrete Eng {
- lincat lincat
- S = {s : Str} ; S=[()];
- NP = {s : Str ; n : Num} ; NP=[1,()];
- VP = {s : Num => Str} ; VP=[[(),()]];
- param
- Num = Sg | Pl ;
- lin lin
- Pred np vp = { Pred=[(($ 0! 1),(($ 1! 0)!($ 0! 0)))];
- s = np.s ++ vp.s ! np.n} ;
- She = {s = "she" ; n = Sg} ; She=[0,"she"];
- They = {s = "they" ; n = Pl} ; They = [1, "they"];
- Sleep = {s = table { Sleep=[["sleeps","sleep"]];
- Sg => "sleeps" ;
- Pl => "sleep"
- }
- } ;
- } } ;
-
- concrete Swe of Ex = { concrete Swe {
- lincat lincat
- S = {s : Str} ; S=[()];
- NP = {s : Str} ; NP=[()];
- VP = {s : Str} ; VP=[()];
- param
- Num = Sg | Pl ;
- lin lin
- Pred np vp = { Pred = [(($0!0),($1!0))];
- s = np.s ++ vp.s} ;
- She = {s = "hon"} ; She = ["hon"];
- They = {s = "de"} ; They = ["de"];
- Sleep = {s = "sover"} ; Sleep = ["sover"];
- } } ;
-
-
-The syntax of GFCC files
-GF/GFCC/GFCC.cf.
-Top level
-
- Grm. Grammar ::=
- "grammar" CId "(" [CId] ")" ";"
- Abstract ";"
- [Concrete] ;
-
- Abs. Abstract ::=
- "abstract" "{"
- "flags" [Flag]
- "fun" [FunDef]
- "cat" [CatDef]
- "}" ;
-
- Cnc. Concrete ::=
- "concrete" CId "{"
- "flags" [Flag]
- "lin" [LinDef]
- "oper" [LinDef]
- "lincat" [LinDef]
- "lindef" [LinDef]
- "printname" [LinDef]
- "}" ;
-
-
- Flg. Flag ::= CId "=" String ;
- Cat. CatDef ::= CId "[" [Hypo] "]" ;
- Fun. FunDef ::= CId ":" Type "=" Exp ;
- Lin. LinDef ::= CId "=" Term ;
-
-
- data GFCC = GFCC {
- absname :: CId ,
- cncnames :: [CId] ,
- abstract :: Abstr ,
- concretes :: Map CId Concr
- }
-
- data Abstr = Abstr {
- aflags :: Map CId String, -- value of a flag
- funs :: Map CId (Type,Exp), -- type and def of a fun
- cats :: Map CId [Hypo], -- context of a cat
- catfuns :: Map CId [CId] -- funs yielding a cat (redundant, for fast lookup)
- }
-
- data Concr = Concr {
- flags :: Map CId String, -- value of a flag
- lins :: Map CId Term, -- lin of a fun
- opers :: Map CId Term, -- oper generated by subex elim
- lincats :: Map CId Term, -- lin type of a cat
- lindefs :: Map CId Term, -- lin default of a cat
- printnames :: Map CId Term -- printname of a cat or a fun
- }
-
-GF/GFCC/DataGFCC.hs.
-CId) are like Ident in GF, except that
-the compiler produces constants prefixed with _ in
-the common subterm elimination optimization.
-
- token CId (('_' | letter) (letter | digit | '\'' | '_')*) ;
-
-
-Abstract syntax
-Exp) are
-rose trees with nodes consisting of a head (Atom) and
-bound variables (CId).
-
- DTyp. Type ::= "[" [Hypo] "]" CId [Exp] ;
- DTr. Exp ::= "[" "(" [CId] ")" Atom [Exp] "]" ;
- Hyp. Hypo ::= CId ":" Type ;
-
-
- AC. Atom ::= CId ;
- AS. Atom ::= String ;
- AI. Atom ::= Integer ;
- AF. Atom ::= Double ;
- AM. Atom ::= "?" Integer ;
-
-
- Typ. Type ::= [CId] "->" CId
- Typ args val = DTyp [Hyp (CId "_") arg | arg <- args] val
-
- Tr. Exp ::= "(" CId [Exp] ")"
- Tr fun exps = DTr [] fun exps
-
-def) definitions by cases, the following expression
-form is provided, but it is only meaningful in the last field of a function
-declaration in an abstract syntax:
-
- EEq. Exp ::= "{" [Equation] "}" ;
- Equ. Equation ::= [Exp] "->" Exp ;
-
-[]). For a constructor (canonical form) of a category C, we
-aim to use the encoding as the application (_constr C).
-Concrete syntax
-Term) are built as follows.
-Constructor names are shown to make the later code
-examples readable.
-
- R. Term ::= "[" [Term] "]" ; -- array (record/table)
- P. Term ::= "(" Term "!" Term ")" ; -- access to field (projection/selection)
- S. Term ::= "(" [Term] ")" ; -- concatenated sequence
- K. Term ::= Tokn ; -- token
- V. Term ::= "$" Integer ; -- argument (subtree)
- C. Term ::= Integer ; -- array index (label/parameter value)
- FV. Term ::= "[|" [Term] "|]" ; -- free variation
- TM. Term ::= "?" ; -- linearization of metavariable
-
-
- KS. Tokn ::= String ;
- KP. Tokn ::= "[" "pre" [String] "[" [Variant] "]" "]" ;
- Var. Variant ::= [String] "/" [String] ;
-
-
- F. Term ::= CId ; -- global constant
- W. Term ::= "(" String "+" Term ")" ; -- prefix + suffix table
-
-
- RP. Term ::= "(" Term "@" Term ")"; -- DEPRECATED
-
-The semantics of concrete syntax terms
-GF/GFCC/Linearize.hs.
-Linearization and realization
-
- linExp :: GFCC -> CId -> Exp -> Term
- linExp gfcc lang tree@(DTr _ at trees) = case at of
- AC fun -> comp (Prelude.map lin trees) $ look fun
- AS s -> R [kks (show s)] -- quoted
- AI i -> R [kks (show i)]
- AF d -> R [kks (show d)]
- AM -> TM
- where
- lin = linExp gfcc lang
- comp = compute gfcc lang
- look = lookLin gfcc lang
-
-
- realize :: Term -> String
- realize trm = case trm of
- R (t:_) -> realize t
- S ss -> unwords $ Prelude.map realize ss
- K (KS s) -> s
- K (KP s _) -> unwords s ---- prefix choice TODO
- W s t -> s ++ realize t
- FV (t:_) -> realize t
- TM -> "?"
-
-Term evaluation
-
-
-
-
- compute :: GFCC -> CId -> [Term] -> Term -> Term
- compute gfcc lang args = comp where
- comp trm = case trm of
- P r p -> proj (comp r) (comp p)
- W s t -> W s (comp t)
- R ts -> R $ Prelude.map comp ts
- V i -> idx args (fromInteger i) -- already computed
- F c -> comp $ look c -- not computed (if contains V)
- FV ts -> FV $ Prelude.map comp ts
- S ts -> S $ Prelude.filter (/= S []) $ Prelude.map comp ts
- _ -> trm
-
- look = lookOper gfcc lang
-
- idx xs i = xs !! i
-
- proj r p = case (r,p) of
- (_, FV ts) -> FV $ Prelude.map (proj r) ts
- (W s t, _) -> kks (s ++ getString (proj t p))
- _ -> comp $ getField r (getIndex p)
-
- getString t = case t of
- K (KS s) -> s
- _ -> trace ("ERROR in grammar compiler: string from "++ show t) "ERR"
-
- getIndex t = case t of
- C i -> fromInteger i
- RP p _ -> getIndex p
- TM -> 0 -- default value for parameter
- _ -> trace ("ERROR in grammar compiler: index from " ++ show t) 0
-
- getField t i = case t of
- R rs -> idx rs i
- RP _ r -> getField r i
- TM -> TM
- _ -> trace ("ERROR in grammar compiler: field from " ++ show t) t
-
-
-The special term constructors
-
- Term ::= CId ;
-
-
- Term ::= "(" String "+" Term ")" ;
-
-
- Sleep = [("sleep" + ["s",""])]
-
-
- ["sleeps", "sleep"]
-
-
- "(" String "+" [String] ")"
-
-Term for the optimization to
-take effect.
-Compiling to GFCC
-
-
-
-coding flag)
-Problems in GFCC compilation
-
-
-
-param definitions. Records are ordered by sorting them by labels.
-This means that
-e.g. the s field will in general no longer appear as the first
-field, even if it does so in the GF source code. But relying on the
-order of fields in a labelled record would be misplaced anyway.
-lock_C = <>, which are added to grammar
-libraries to force intensionality of linearization types. The problem
-is that the absence of a lock field only generates a warning, not
-an error. Therefore a GF grammar can contain objects of the same
-type with and without a lock field. This problem was solved in GFCC
-generation by just removing all lock fields (defined as fields whose
-type is the empty record type). This has the further advantage of
-(slightly) reducing the grammar size. More importantly, it is safe
-to remove lock fields, because they are never used in computation,
-and because intensional types are only needed in grammars reused
-as libraries, not in grammars used at runtime.
-
- Number = Sg | Pl ;
- Person = P1 | P2 | P3 ;
- Agr = Ag Number Person ;
-
-
- Sg = 0, Pl = 1
- P1 = 0, P2 = 1, P3 = 2
- Ag Sg P1 = 0, Ag Sg P2 = 1, Ag Sg P3 = 2,
- Ag Pl P1 = 3, Ag Pl P2 = 4, Ag Pl P3 = 5
-
-Agr can be a run-time variable, as in
-
- Ag np.n P3
-
-
- case np.n of {
- 0 => 2 ;
- 1 => 5
- }
-
-
- ([2,5] ! ($0 ! $1))
-
-np is the first argument and that its
-Number field is the second in the record.
-
- Ag np.n np.p
-
-
- RNP = {n : Number ; p : Person}
-
-{0,1,2,3,4,5}
-as Agr above. Selections would be simple instances of indexing.
-But any projection from the record should be translated into
-a case expression,
-
- rnp.n ===>
- case rnp of {
- 0 => 0 ;
- 1 => 0 ;
- 2 => 0 ;
- 3 => 1 ;
- 4 => 1 ;
- 5 => 1
- }
-
-
- table {n : Number ; p : Person} {... ...}
- ===>
- table Number {Sg => table Person {...} ; table Person {...}}
-
-
- t ! r ===> t ! r.n ! r.p
-
-
-The representation of linearization types
-lincat) are not needed when generating with
-GFCC, but they have been added to enable parser generation directly from
-GFCC. The linearization type definitions are shown as a part of the
-concrete syntax, by using terms to represent types. Here is the table
-showing how different linearization types are encoded.
-
- P* = max(P) -- parameter type
- {r1 : T1 ; ... ; rn : Tn}* = [T1*,...,Tn*] -- record
- (P => T)* = [T* ,...,T*] -- table, size(P) cases
- Str* = ()
-
-present/CatEng.NP is
-translated as follows:
-
- NP = {
- a : { -- 6 = 2*3 values
- n : {ParamX.Number} ; -- 2 values
- p : {ParamX.Person} -- 3 values
- } ;
- s : {ResEng.Case} => Str -- 3 values
- }
-
- __NP = [[1,2],[(),(),()]]
-
-
-Running the compiler and the GFCC interpreter
--printer=gfcc to the command
-pm = print_multi is used. It is wise to recompile the grammar from
-source, since previously compiled libraries may not obey the canonical
-order of records.
-Here is an example, performed in
-example/bronzeage.
-
- i -src -path=.:prelude:resource-1.0/* -optimize=all_subs BronzeageEng.gf
- i -src -path=.:prelude:resource-1.0/* -optimize=all_subs BronzeageGer.gf
- strip
- pm -printer=gfcc | wf bronze.gfcc
-
-
- make gfc
-
-GF/src, and invoked by
-
- gfc --make FILES
-
-
-The reference interpreter
-
- -- source file for BNFC
- GFCC.cf -- labelled BNF grammar of gfcc
-
- -- files generated by BNFC
- AbsGFCC.hs -- abstrac syntax datatypes
- ErrM.hs -- error monad used internally
- LexGFCC.hs -- lexer of gfcc files
- ParGFCC.hs -- parser of gfcc files and syntax trees
- PrintGFCC.hs -- printer of gfcc files and syntax trees
-
- -- hand-written files
- DataGFCC.hs -- grammar datatype, post-parser grammar creation
- Linearize.hs -- linearization and evaluation
- Macros.hs -- utilities abstracting away from GFCC datatypes
- Generate.hs -- random and exhaustive generation, generate-and-test parsing
- API.hs -- functionalities accessible in embedded GF applications
- Generate.hs -- random and exhaustive generation
- Shell.hs -- main function - a simple command interpreter
-
-GF/src/GF/GFCC and
-GF/src/GF/Devel.
-
- GF/Conversions/SimpleToFCFG.hs -- generate parser from GFCC
- GF/Parsing/FCFG.hs -- run the parser
-
-
-
- make gfcc
-
-GF/src. To run it, type
-
- ./gfcc <GFCC-file>
-
-
-
-
-gr <Cat> <Int>: generate a number of random trees in category.
- and show their linearizations in all languages
-grt <Cat> <Int>: generate a number of random trees in category.
- and show the trees and their linearizations in all languages
-gt <Cat> <Int>: generate a number of trees in category from smallest,
- and show their linearizations in all languages
-gtt <Cat> <Int>: generate a number of trees in category from smallest,
- and show the trees and their linearizations in all languages
-p <Lang> <Cat> <String>: parse a string into a set of trees
-lin <Tree>: linearize tree in all languages, also showing full records
-q: terminate the system cleanly
-Embedded formats
-
-
-
-Some things to do
-Resource grammar writing HOWTO
-
-Author: Aarne Ranta <aarne (at) cs.chalmers.se>
-Last update: Mon Sep 22 14:28:01 2008
-
-
-
-
-
-
-
-
-www.cs.chalmers.se/Cs/Research/Language-technology/GF/lib/resource/doc/synopsis.html.
-www.cs.chalmers.se/Cs/Research/Language-technology/GF/doc/gf-tutorial.html.
-www.cs.chalmers.se/Cs/Research/Language-technology/GF/lib/resource/
-www.cs.chalmers.se/Cs/Research/Language-technology/GF/next-lib/src/
-The resource grammar structure
-
-
-
-
-
-
-
-Paradigms
-module. The rest of the modules can be produced mechanically from corresponding
-modules for other languages, by just changing the language codes appearing in
-their module headers.
-Grammar. The idea
-is that the implementors can concentrate on one linguistic aspect at a time, or
-also distribute the work among several authors. The module Cat
-defines the "glue" that ties the aspects together - a type system
-to which all the other modules conform, so that e.g. NP means
-the same thing in those modules that use NPs and those that
-constructs them.
-Library API modules
-Paradigms and Syntax.
-The module Try combines these two, making it possible to experiment
-with combinations of syntactic and lexical constructors by using the
-cc command in the GF shell. Here are short explanations of each API module:
-
-
-
-
-Try: the whole resource library for a language (Paradigms, Syntax,
- Irreg, and Extra);
- produced mechanically as a collection of modules
-Syntax: language-independent categories, syntax functions, and structural words;
- produced mechanically as a collection of modules
-Constructors: language-independent syntax functions and structural words;
- produced mechanically via functor instantiation
-Paradigms: language-dependent morphological paradigms
-Phrase category modules
-Grammar will be called phrase category modules,
-since each of them concentrates on a particular phrase category (nouns, verbs,
-adjectives, sentences,...). A phrase category module tells
-how to construct phrases in that category. You will find out that
-all functions in any of these modules have the same value type (or maybe
-one of a small number of different types). Thus we have
-
-
-
-
-Noun: construction of nouns and noun phrases
-Adjective: construction of adjectival phrases
-Verb: construction of verb phrases
-Adverb: construction of adverbial phrases
-Numeral: construction of cardinal and ordinal numerals
-Sentence: construction of sentences and imperatives
-Question: construction of questions
-Relative: construction of relative clauses
-Conjunction: coordination of phrases
-Phrase: construction of the major units of text and speech
-Text: construction of texts as sequences of phrases
-Idiom: idiomatic expressions such as existentials
-Infrastructure modules
-Noun, are
-used as arguments of functions of almost all other phrase category modules.
-How can we build all these modules independently of each other?
-
-
-
-Cat: syntactic categories of the resource grammar
-Cat. Luckily enough, even this can be done incrementally: you
-can skip the lincat definition of a category and use the default
-{s : Str} until you need to change it to something else. In
-English, for instance, many categories do have this linearization type.
-Lexical modules
-fun with no arguments. Linguistically, one may add to this
-that the lin consists of only one token (or of a table whose values
-are single tokens). Even in the restricted lexicon included in the resource
-API, the latter rule is sometimes violated in some languages. For instance,
-Structural.both7and_DConj is an atom, but its linearization is
-two words e.g. both - and.
-
-
-
-Structural: structural words (determiners, conjunctions,...)
-Lexicon: basic everyday content words (nouns, verbs,...)
-Structural aims for completeness, and is likely to
-be extended in future releases of the resource. The module Lexicon
-gives a "random" list of words, which enables testing the syntax.
-It also provides a check list for morphology, since those words are likely to include
-most morphological patterns of the language.
-Lexicon it may come out clearer than anywhere else
-in the API that it is impossible to give exact translation equivalents in
-different languages on the level of a resource grammar. This is no problem,
-since application grammars can use the resource in different ways for
-different languages.
-Language-dependent syntax modules
-
- abstract AllGerAbs = Lang, ExtraGerAbs, IrregGerAbs
-
-ExtraGerAbs is a collection of syntactic structures specific to German,
-and IrregGerAbs is a dictionary of irregular words of German
-(at the moment, just verbs). Each of these language-specific grammars has
-the potential to grow into a full-scale grammar of the language. These grammar
-can also be used as libraries, but the possibility of using functors is lost.
-ExtraGerAbs
-are built from a language-independent module ExtraAbs
-by restricted inheritance:
-
- abstract ExtraGerAbs = Extra [f,g,...]
-
-Extra may be shared by a subset of all
-languages. One can see this set-up as a matrix, which tells
-what Extra structures
-are implemented in what languages. For the common API in Grammar, the matrix
-is filled with 1's (everything is implemented in every language).
-The present-tense fragment
-
- --# notpresent
-
-
- make Present
-
-resource/Makefile.
-Phases of the work
-
-Putting up a directory
-
-
-
-GF/lib/resource/english, named
- german.
-
- cd GF/lib/resource/
- mkdir german
- cd german
-
-
-Ger and Deu are given, and we pick Ger.
- (We use the 3-letter codes rather than the more common 2-letter codes,
- since they will suffice for many more languages!)
-
-*Eng.gf files from english german,
- and rename them:
-
- cp ../english/*Eng.gf .
- rename 's/Eng/Ger/' *Eng.gf
-
- If you don't have the rename command, you can use a bash script with mv.
-
-
-
-Eng module references to Ger references
- in all files:
-
- sed -i 's/English/German/g' *Ger.gf
- sed -i 's/Eng/Ger/g' *Ger.gf
-
- The first line prevents changing the word English, which appears
- here and there in comments, to Gerlish. The sed command syntax
- may vary depending on your operating system.
-
-Eng - verify this by
-
- grep Ger *.gf
-
- But you will have to make lots of manual changes in all files anyway!
-
-
- sed -i 's/^/--/' *Ger.gf
-
- This will give you a set of templates out of which the grammar
- will grow as you uncomment and modify the files rule by rule.
-
-.gf files, uncomment the module headers and brackets,
- leaving the module bodies commented. Unfortunately, there is no
- simple way to do this automatically (or to avoid commenting these
- lines in the previous step) - but uncommenting the first
- and the last lines will actually do the job for many of the files.
-
-
- sed -i 's/^--//' LangGer.gf
-
-
-LangGer in GF:
-
- gf LangGer.gf
-
- You will get lots of warnings on missing rules, but the grammar will compile.
-
-
- pg -missing
-
- tells you what exactly is missing.
-LangGer. It has been simplified by leaving out
-the majority of the phrase category modules. Each of them has the same dependencies
-as VerbGer, whose complete dependencies are shown as an example.
-
-Direction of work
-
-
-
-Phrase and go down to Sentence, then
- Verb, Noun, and in the end Lexicon. In this way, you are all the time
- building complete phrases, and add them with more content as you proceed.
- This approach is not recommended. It is impossible to test the rules if
- you have no words to apply the constructions to.
-
-Lexicon. To this end, you
- need to write ParadigmsGer, which in turn needs parts of
- MorphoGer and ResGer.
- This approach is not recommended. You can get stuck to details of
- morphology such as irregular words, and you don't have enough grasp about
- the type system to decide what forms to cover in morphology.
-
-
-
-
-Cat.N and the required parameter types in ResGer. As we define
-
- lincat N = {s : Number => Case => Str ; g : Gender} ;
-
-we need the parameter types Number, Case, and Gender. The definition
-of Number in common/ParamX
-works for German, so we
-use it and just define Case and Gender in ResGer.
-
-mkN in ParadigmsGer. In this way you can
-already implement a huge amount of nouns correctly in LexiconGer. Actually
-just adding the worst-case instance of mkN (the one taking the most
-arguments) should suffice for every noun - but,
-since it is tedious to use, you
-might proceed to the next step before returning to morphology and defining the
-real work horse, mkN taking two forms and a gender.
-
-resource directory, by the commands
-
- > i -retain german/ParadigmsGer
- > cc -table mkN "Kirche"
-
-
-NounGer (DetCN UsePron DetQuant NumSg DefArt IndefArt UseN) and
-StructuralGer (i_Pron this_Quant). You also need some categories and
-parameter types. At this point, it is maybe not possible to find out the final
-linearization types of CN, NP, Det, and Quant, but at least you should
-be able to correctly inflect noun phrases such as every airplane:
-
- > i german/LangGer.gf
- > l -table DetCN every_Det (UseN airplane_N)
-
- Nom: jeder Flugzeug
- Acc: jeden Flugzeug
- Dat: jedem Flugzeug
- Gen: jedes Flugzeugs
-
-
-CatGer.V, ResGer.VForm, and
-ParadigmsGer.mkV. You may choose to exclude notpresent
-cases at this point. But anyway, you will be able to inflect a good
-number of verbs in Lexicon, such as
-live_V (mkV "leben").
-
-VP and
-Cl in CatGer, VerbGer.UseV, and SentenceGer.PredVP.
-Even if you have excluded the tenses, you will be able to produce
-
- > i -preproc=./mkPresent german/LangGer.gf
- > l -table PredVP (UsePron i_Pron) (UseV live_V)
-
- Pres Simul Pos Main: ich lebe
- Pres Simul Pos Inv: lebe ich
- Pres Simul Pos Sub: ich lebe
- Pres Simul Neg Main: ich lebe nicht
- Pres Simul Neg Inv: lebe ich nicht
- Pres Simul Neg Sub: ich nicht lebe
-
-You should also be able to parse:
-
- > p -cat=Cl "ich lebe"
- PredVP (UsePron i_Pron) (UseV live_V)
-
-
-CatGer.V2 CatGer.VPSlash ParadigmsGer.mkV2 VerbGer.ComplSlash VerbGer.SlashV2a)
-are a natural next step, so that you can
-produce ich liebe dich ("I love you").
-
-CatGer.A ParadigmsGer.mkA NounGer.AdjCN AdjectiveGer.PositA)
-will force you to think about strong and weak declensions, so that you can
-correctly inflect mein neuer Wagen, dieser neue Wagen
-("my new car, this new car").
-
-The develop-test cycle
-
-
-
-NounGer, and uncomment some
- linearization rules (for instance, DetCN, as above).
-
-CN, NP, N, Det) and the
- variations they have. Encode this in the lincats of CatGer.
- You may have to define some new parameter types in ResGer.
-
-LexiconGer. You will also need some regular inflection patterns
- inParadigmsGer.
-
-treebank option
- preserves the tree
-
- > gr -cat=NP -number=20 | l -table -treebank
-
-
-diff command to compare later
- linearizations produced from the same list of trees. If you save the trees
- in a file trees, you can do as follows:
-
- > rf -file=trees -tree -lines | l -table -treebank | wf -file=treebank
-
-
-resource/exx-resource.gft. A treebank can be created from this by
- the Unix command
-
- % runghc Make.hs test langs=Ger
-
-cats and
-600 funs in Lang at the moment; 170 of the funs are outside the two
-lexicon modules).
-Auxiliary modules
-resource modules will be written by you.
-
-
-
-ResGer: parameter types and auxiliary operations
-(a resource for the resource grammar!)
-ParadigmsGer: complete inflection engine and most important regular paradigms
-MorphoGer: auxiliaries for ParadigmsGer and StructuralGer. This need
-not be separate from ResGer.
-
-
-
-ParamX: parameter types used in many languages
-CommonX: implementation of language-uniform categories
- such as $Text$ and $Phr$, as well as of
- the logical tense, anteriority, and polarity parameters
-Coordination: operations to deal with lists and coordination
-Prelude: general-purpose operations on strings, records,
- truth values, etc.
-Predef: general-purpose operations with hard-coded definitions
-ResGer. The golden rule of functional programming says:
-
-
-
-
-
-
-
-
-
-oper in ResGer. An example is mkClause,
- used in Sentence, Question, and Relative-
-Numerals.
-let definition.
-oper,
- but rather inlined. However, a let definition may well be in place just
- to make the readable.
- Most functions in phrase category modules
- are implemented in this way.
-lin and oper levels, and made the code
-hard to understand and maintain.
-Morphology and lexicon
-LexiconGer are defined in
-ParadigmsGer.
-This module provides high-level ways to define the linearization of
-lexical items, of categories N, A, V and their complement-taking
-variants.
-Paradigms modules follow a certain
-naming convention. Thus they for each lexical category, such as N,
-the overloaded functions, such as mkN, with the following cases:
-
-
-
-N. Its type signature
- has the form
-
- mkN : Str -> ... -> Str -> P -> ... -> Q -> N
-
- with as many string and parameter arguments as can ever be needed to
- construct an N.
-
- mkN : Str -> N
-
-V2, we provide
-
-
-
-V and all necessary arguments, such
- as case and preposition:
-
- mkV2 : V -> Case -> Str -> V2 ;
-
-Str and produces a transitive verb with the direct
- object case:
-
- mkV2 : Str -> V2 ;
-
-
- mkV2 : V -> V2 ;
-
-
-
-
-ParadigmsGer module has
-to define constants for those parameter types and constructors that
-the application grammarian may need to use, e.g.
-
- oper
- Case : Type ;
- nominative, accusative, genitive, dative : Case ;
-
-ResGer and MorphoGer, which modules are not
-visible to the application grammarian.
-Lock fields
-MorphoGer and
-ParadigmsGer is that the former uses "raw" record types
-for word classes, whereas the latter used category symbols defined in
-CatGer. When these category symbols are used to denote
-record types in a resource modules, such as ParadigmsGer,
-a lock field is added to the record, so that categories
-with the same implementation are not confused with each other.
-(This is inspired by the newtype discipline in Haskell.)
-For instance, the lincats of adverbs and conjunctions are the same
-in CommonX (and therefore in CatGer, which inherits it):
-
- lincat Adv = {s : Str} ;
- lincat Conj = {s : Str} ;
-
-
- oper Adv : Type = {s : Str ; lock_Adv : {}} ;
- oper Conj : Type = {s : Str} ; lock_Conj : {}} ;
-
-opened in an application grammar, the
-lock fields are never seen (except possibly in type error messages),
-and the application grammarian should never write them herself. If she
-has to do this, it is a sign that the resource grammar is incomplete, and
-the proper way to proceed is to fix the resource grammar.
-Paradigms. For instance,
-
- mkAdv : Str -> Adv ;
- -- mkAdv s = {s = s ; lock_Adv = <>} ;
-
-
-
-Lexicon construction
-LangGer consists of two modules:
-
-
-
-StructuralGer, structural words, built by using both
- ParadigmsGer and MorphoGer.
-LexiconGer, content words, built by using ParadigmsGer only.
-MorphoGer has to be used in StructuralGer
-is that ParadigmsGer does not contain constructors for closed
-word classes such as pronouns and determiners. The reason why we
-recommend ParadigmsGer for building LexiconGer is that
-the coverage of the paradigms gets thereby tested and that the
-use of the paradigms in LexiconGer gives a good set of examples for
-those who want to build new lexica.
-Lexicon extension
-
-The irregularity lexicon
-mkV etc.
-Lexicon extraction from a word list
-http://www.iee.et.tu-dresden.de/~wernerr/grammar/verben_dt.html
-page gives a list of verbs in the
-traditional tabular format, which begins as follows:
-
- backen (du bäckst, er bäckt) backte [buk] gebacken
- befehlen (du befiehlst, er befiehlt; befiehl!) befahl (beföhle; befähle) befohlen
- beginnen begann (begönne; begänne) begonnen
- beißen biß gebissen
-
-
- irregV : (x1,_,_,_,_,x6 : Str) -> V ;
-
-
- backen_V = irregV "backen" "bäckt" "back" "backte" "backte" "gebacken" ;
- befehlen_V = irregV "befehlen" "befiehlt" "befiehl" "befahl" "beföhle" "befohlen" ;
-
-
-Lexicon extraction from raw text data
-Bootstrapping with smart paradigms
-mkN etc paradigms, and add forms to those words that do not come out right.
-This procedure is described in the paper
-Extending the resource grammar API
-ExtraGer.
-Using parametrized modules
-
-Writing an instance of parametrized resource grammar implementation
-
-
-
-Parametrizing a resource grammar implementation
-interface module.
-Character encoding and transliterations
-Coding conventions in GF
-
-
-
-
- flags coding = utf8 ;
-
- in each source module.
-coding flag
-gfo) and the Portable Grammar Format (pgf)
- are in UTF-8
-Transliterations
-
-
-
-GF/Text/Transliterations.hs.
-This file also gives instructions on how new ones are added.
-
-GF Resource Grammar Library is an open-source computational grammar resource -that currently covers 12 languages. -The Library is a collaborative effort to which programmers from many countries -have contributed. The next goal is to extend the library -to all of the 23 official EU languages. Also other languages -are welcome all the time. The following diagram show the current status of the -library. Each of the red and yellow ones are a potential project. -
--
--red=wanted, green=exists, orange=in-progress, solid=official-eu, dotted=non-eu -
--The linguistic coverage of the library includes the inflectional morphology -and basic syntax of each language. It can be used in GF applications -and also ported to other formats. It can also be used for building other -linguistic resources, such as morphological lexica and parsers. -The library is licensed under LGPL. -
- --Writing a grammar for a language is usually easier if other languages -from the same family already have grammars. The colours have the same -meaning as in the diagram above; in addition, we use boldface for the -red, still unimplemented languages and italics for the -orange languages in progress. Thus, in particular, each of the languages -coloured red below are possible programming projects. -
--Baltic: -
--Celtic: -
--Fenno-Ugric: -
--Germanic: -
--Hellenic: -
--Indo-Iranian: -
--Romance: -
--Semitic: -
--Slavonic: -
--Tai: -
--Turkic: -
--Writing a resource grammar implementation requires good general programming -skills, and a good explicit knowledge of the grammar of the target language. -A typical participant could be -
--But it is the quality of the assignment that is assessed, not any formal -requirements. The "typical participant" was described to give an idea of -who is likely to succeed in this. -
- --A Summer School on resource grammars and applications will -be organized at the campus of Chalmers University of Technology in Gothenburg, -Sweden, on 17-28 August 2009. It can be seen as a natural checkpoint in -a resource grammar project; the participants are assumed to learn GF before -the Summer School, but how far they have come in their projects may vary. -
--More information on the Summer School web page: -
-
-http://www.cs.chalmers.se/Cs/Research/Language-technology/GF/doc/gf-summerschool.html
-
-The idea is to write a run-time system for GF grammars in Java. This enables -the use of embedded grammars in Java applications. This project is -a fresh-up of earlier work, -now using the new run-time format PGF and addressing a new parsing algorithm. -
--Requirements: Java, Haskell, basics of compilers and parsing algorithms. -
- --The idea is to write a run-time system for GF grammars in C#. This enables -the use of embedded grammars in C# applications. This project is -similar to earlier work -on Java, now addressing C# and using the new run-time format PGF. -
--Requirements: C#, Haskell, basics of compilers and parsing algorithms. -
- --This is an idea for a software localization library using GF grammars. -The library should replace strings by grammar rules, which can be conceived -as very smart templates always guaranteeing grammatically correct output. -The library should be based on the -GF Resource Grammar Library, providing infrastructure -currently for 12 languages. -
--Requirements: GF, some natural languages, some localization platform -
- --GF grammars can be compiled into programs that can be run on different -platforms, such as web browsers and mobile phones. An example is a -numeral translator running on both these platforms. -
--The proposed project is rather open: find some cool applications of -the technology that are useful or entertaining for mobile phone users. A -part of the project is to investigate implementation issues such as making -the best use of the phone's resources. Possible applications have -something to do with translation; one suggestion is an sms editor/translator. -
--Requirements: GF, JavaScript, some phone application development tools -
- --This project is rather open: find some cool applications of -the technology that are useful or entertaining on the web. Examples include -
- - --Requirements: GF, JavaScript or Java and Google Web Toolkit, CGI -
- --It is possible to add custom gadgets to GMail. If you are going to write -e-mail in a foreign language then you probably will need help from -dictonary or you may want to check something in the grammar. GF provides -all resources that you may need but you have to think about how to -design gadget that fits well in the GMail environment and what -functionality from GF you want to expose. -
--Requirements: GF, Google Web Toolkit -
- --All code suggested here will be released under the LGPL just like -the current resource grammars and run-time GF libraries, -with the copyright held by respective authors. -
--As a rule, the code will be distributed via the GF web site. -
- - - - diff --git a/deprecated/doc/gf-ideas.txt b/deprecated/doc/gf-ideas.txt deleted file mode 100644 index 3f62196b9..000000000 --- a/deprecated/doc/gf-ideas.txt +++ /dev/null @@ -1,231 +0,0 @@ -GF Project Ideas -Resource Grammars, Web Applications, etc -contact: Aarne Ranta (aarne at chalmers dot se) - -%!Encoding : iso-8859-1 - -%!target:html -%!postproc(html): #BECE-GF Version 3.0 is a major revision of GF. The source language is a superset of the -language in 2.9, which means backward compatibility. But the target languages, the -compiler implementation, and the functionalities (e.g. the shell) have undergone -radical changes. -
--Here is a summary of the main novelties visible to the user: -
--There are some features of GF 2.9 that will not work in the 3.0 beta release. -
-help -changes gives the actual list.
--Users who want to have these features are welcome to contact us, -and even more welcome to contribute code that restores them! -
--Operations for defining patterns. -
--Inheritance of overload groups. -
- - - - diff --git a/deprecated/doc/gf3-release.txt b/deprecated/doc/gf3-release.txt deleted file mode 100644 index 631752c90..000000000 --- a/deprecated/doc/gf3-release.txt +++ /dev/null @@ -1,58 +0,0 @@ -GF 3.0 -Krasimir Angelov, Bjrn Bringert, and Aarne Ranta -Beta release, 27 June 2008 - - -GF Version 3.0 is a major revision of GF. The source language is a superset of the -language in 2.9, which means backward compatibility. But the target languages, the -compiler implementation, and the functionalities (e.g. the shell) have undergone -radical changes. - - -==New features== - -Here is a summary of the main novelties visible to the user: -- **Size**: the source code and the executable binary size have gone - down to about the half of 2.9. -- **Portability**: the new back end format PGF (Portable Grammar Format) is - much simpler than the old GFC format, and therefore easier to port to new - platforms. -- **Multilingual web page support**: as an example of portability, GF 3.0 provides a - compiler from PGF to JavaScript. There are also JavaScript libraries for creating - translators and syntax editors as client-side web applications. -- **Incremental parsing**: there is a possibility of word completion when - input strings are sent to the parser. -- **Application programmer's interfaces**: both source-GF and PGF formats, - the shell, and the compiler are accessible via high-level APIs. -- **Resource library version 1.4**: more coverage, more languages; some of - the new GF language features are exploited. -- **Uniform character encoding**: UTF8 in generated files, user-definable in - source files - - -==Non-supported features== - -There are some features of GF 2.9 that will //not// work in the 3.0 beta release. -- Java Editor GUI: we now see the JavaScript editor as the main form of - syntax editing. -- Pre-module multi-file grammar format: the grammar format of GF before version 2.0 - is still not yet supported. -- Context-free and EBNF input grammar formats. -- Probabilistic GF grammars. -- Some output formats: LBNF. -- Some GF shell commands: while the main ones will be supported with their familiar - syntax and options, some old commands have not been included. The GF shell - command ``help -changes`` gives the actual list. - - -Users who want to have these features are welcome to contact us, -and even more welcome to contribute code that restores them! - - -==GF language extensions== - -Operations for defining patterns. - -Inheritance of overload groups. - - diff --git a/deprecated/doc/school-langs.dot b/deprecated/doc/school-langs.dot deleted file mode 100644 index 88e0a9c96..000000000 --- a/deprecated/doc/school-langs.dot +++ /dev/null @@ -1,106 +0,0 @@ -graph{ - -size = "8,8" ; - -overlap = scale ; - -"Abs" [label = "Abstract Syntax", style = "solid", shape = "rectangle"] ; - -"1" [label = "Bulgarian", style = "solid", shape = "ellipse", color = "green"] ; -"1" -- "Abs" [style = "solid"]; - -"2" [label = "Czech", style = "solid", shape = "ellipse", color = "red"] ; -"2" -- "Abs" [style = "solid"]; - -"3" [label = "Danish", style = "solid", shape = "ellipse", color = "green"] ; -"3" -- "Abs" [style = "solid"]; - -"4" [label = "German", style = "solid", shape = "ellipse", color = "green"] ; -"4" -- "Abs" [style = "solid"]; - -"5" [label = "Estonian", style = "solid", shape = "ellipse", color = "red"] ; -"5" -- "Abs" [style = "solid"]; - -"6" [label = "Greek", style = "solid", shape = "ellipse", color = "red"] ; -"6" -- "Abs" [style = "solid"]; - -"7" [label = "English", style = "solid", shape = "ellipse", color = "green"] ; -"7" -- "Abs" [style = "solid"]; - -"8" [label = "Spanish", style = "solid", shape = "ellipse", color = "green"] ; -"8" -- "Abs" [style = "solid"]; - -"9" [label = "French", style = "solid", shape = "ellipse", color = "green"] ; -"9" -- "Abs" [style = "solid"]; - -"10" [label = "Italian", style = "solid", shape = "ellipse", color = "green"] ; -"10" -- "Abs" [style = "solid"]; - -"11" [label = "Latvian", style = "solid", shape = "ellipse", color = "red"] ; -"11" -- "Abs" [style = "solid"]; - -"12" [label = "Lithuanian", style = "solid", shape = "ellipse", color = "red"] ; -"Abs" -- "12" [style = "solid"]; - -"13" [label = "Irish", style = "solid", shape = "ellipse", color = "red"] ; -"Abs" -- "13" [style = "solid"]; - -"14" [label = "Hungarian", style = "solid", shape = "ellipse", color = "red"] ; -"Abs" -- "14" [style = "solid"]; - -"15" [label = "Maltese", style = "solid", shape = "ellipse", color = "red"] ; -"Abs" -- "15" [style = "solid"]; - -"16" [label = "Dutch", style = "solid", shape = "ellipse", color = "red"] ; -"Abs" -- "16" [style = "solid"]; - -"17" [label = "Polish", style = "solid", shape = "ellipse", color = "orange"] ; -"Abs" -- "17" [style = "solid"]; - -"18" [label = "Portuguese", style = "solid", shape = "ellipse", color = "red"] ; -"Abs" -- "18" [style = "solid"]; - -"19" [label = "Slovak", style = "solid", shape = "ellipse", color = "red"] ; -"Abs" -- "19" [style = "solid"]; - -"20" [label = "Slovene", style = "solid", shape = "ellipse", color = "red"] ; -"Abs" -- "20" [style = "solid"]; - -"21" [label = "Romanian", style = "solid", shape = "ellipse", color = "orange"] ; -"Abs" -- "21" [style = "solid"]; - -"22" [label = "Finnish", style = "solid", shape = "ellipse", color = "green"] ; -"Abs" -- "22" [style = "solid"]; - -"23" [label = "Swedish", style = "solid", shape = "ellipse", color = "green"] ; -"Abs" -- "23" [style = "solid"]; - -"24" [label = "Catalan", style = "dotted", shape = "ellipse", color = "green"] ; -"Abs" -- "24" [style = "solid"]; - -"25" [label = "Norwegian", style = "dotted", shape = "ellipse", color = "green"] ; -"Abs" -- "25" [style = "solid"]; - -"26" [label = "Russian", style = "dotted", shape = "ellipse", color = "green"] ; -"Abs" -- "26" [style = "solid"]; - -"27" [label = "Interlingua", style = "dotted", shape = "ellipse", color = "green"] ; -"Abs" -- "27" [style = "solid"]; - -"28" [label = "Latin", style = "dotted", shape = "ellipse", color = "orange"] ; -"Abs" -- "28" [style = "solid"]; -"29" [label = "Turkish", style = "dotted", shape = "ellipse", color = "orange"] ; -"Abs" -- "29" [style = "solid"]; -"30" [label = "Hindi", style = "dotted", shape = "ellipse", color = "orange"] ; -"Abs" -- "30" [style = "solid"]; -"31" [label = "Thai", style = "dotted", shape = "ellipse", color = "orange"] ; -"Abs" -- "31" [style = "solid"]; -"32" [label = "Urdu", style = "dotted", shape = "ellipse", color = "orange"] ; -"Abs" -- "32" [style = "solid"]; -"33" [label = "Telugu", style = "dotted", shape = "ellipse", color = "red"] ; -"Abs" -- "33" [style = "solid"]; -"34" [label = "Arabic", style = "dotted", shape = "ellipse", color = "orange"] ; -"Abs" -- "34" [style = "solid"]; - - -} diff --git a/deprecated/doc/school-langs.png b/deprecated/doc/school-langs.png deleted file mode 100644 index 7230e0bff..000000000 Binary files a/deprecated/doc/school-langs.png and /dev/null differ diff --git a/deprecated/doc/summer-align.png b/deprecated/doc/summer-align.png deleted file mode 100644 index 796754408..000000000 Binary files a/deprecated/doc/summer-align.png and /dev/null differ diff --git a/deprecated/doc/summer-langs.png b/deprecated/doc/summer-langs.png deleted file mode 100644 index 729af722a..000000000 Binary files a/deprecated/doc/summer-langs.png and /dev/null differ diff --git a/deprecated/doc/vr.html b/deprecated/doc/vr.html deleted file mode 100644 index e5dee1885..000000000 --- a/deprecated/doc/vr.html +++ /dev/null @@ -1,46 +0,0 @@ - - - - --Lars Borin (co-leader) -
--Robin Cooper (co-leader) -
--Aarne Ranta (project responsible) -
--Sibylle Schupp (co-leader) -
--Ali El Dada, MSc Thesis -
--Muhammad Humayoun, MSc Thesis -
--Janna Khegai, -Language Engineering in GF, PhD Thesis, Chalmers. 2006. -
--GF -
- - - - - diff --git a/deprecated/doc/vr.txt b/deprecated/doc/vr.txt deleted file mode 100644 index 9b5045978..000000000 --- a/deprecated/doc/vr.txt +++ /dev/null @@ -1,32 +0,0 @@ -Library-Based Grammar Engineering -VR Project 2006-2008 - - -=Staff= - -Lars Borin (co-leader) - -Robin Cooper (co-leader) - -Aarne Ranta (project responsible) - -Sibylle Schupp (co-leader) - - - -=Publications= - -Ali El Dada, MSc Thesis - -Muhammad Humayoun, MSc Thesis - -Janna Khegai, -Language Engineering in GF, PhD Thesis, Chalmers. 2006. - - - -=Links= - -[GF http://www.cs.chalmers.se/~aarne/GF/] - -[Functional Morphology http://www.cs.chalmers.se/~markus/FM/] diff --git a/deprecated/exper/EditShell.hs b/deprecated/exper/EditShell.hs deleted file mode 100644 index dd7fd8eea..000000000 --- a/deprecated/exper/EditShell.hs +++ /dev/null @@ -1,136 +0,0 @@ -module Main where - -import PGF.Editor -import PGF - -import Data.Char -import System (getArgs) - --- a rough editor shell using the PGF.Edito API --- compile: --- cd .. ; ghc --make exper/EditShell.hs --- use: --- EditShell file.pgf - -main = do - putStrLn "Hi, I'm the Editor! Type h for help on commands." - file:_ <- getArgs - pgf <- readPGF file - let dict = pgf2dict pgf - let st0 = new (startCat pgf) - let lang = head (languages pgf) ---- for printnames; enable choosing lang - editLoop pgf dict lang st0 -- alt 1: all editing commands --- dialogueLoop pgf dict lang st0 -- alt 2: just refinement by parsing (see bottom) - -editLoop :: PGF -> Dict -> Language -> State -> IO State -editLoop pgf dict lang st = do - putStrLn $ - if null (allMetas st) - then unlines - (["The tree is complete:",prState st] ++ linearizeAll pgf (stateTree st)) - else if isMetaFocus st - then "I want something of type " ++ showType (focusType st) ++ - " (0 - " ++ show (length (refineMenu dict st)-1) ++ ")" - else "Do you want to change this node?" - c <- getLine - st' <- interpret pgf dict st c - editLoop pgf dict lang st' - -interpret :: PGF -> Dict -> State -> String -> IO State -interpret pgf dict st c = case words c of - "r":f:_ -> do - let st' = goNextMeta (refine dict (mkCId f) st) - prLState pgf st' - return st' - "p":ws -> do - let tts = parseAll pgf (focusType st) (dropWhile (not . isSpace) c) - st' <- selectReplace dict (concat tts) st - prLState pgf st' - return st' - "a":_ -> do - t:_ <- generateRandom pgf (focusType st) - let st' = goNextMeta (replace dict t st) - prLState pgf st' - return st' - "d":_ -> do - let st' = delete st - prLState pgf st' - return st' - "m":_ -> do - putStrLn (unwords (map prCId (refineMenu dict st))) - return st - d : _ | all isDigit d -> do - let f = refineMenu dict st !! read d - let st' = goNextMeta (refine dict f st) - prLState pgf st' - return st' - p@('[':_):_ -> do - let st' = goPosition (mkPosition (read p)) st - prLState pgf st' - return st' - ">":_ -> do - let st' = goNext st - prLState pgf st' - return st' - "x":_ -> do - mapM_ putStrLn [show (showPosition p) ++ showType t | (p,t) <- allMetas st] - return st - "h":_ -> putStrLn commandHelp >> return st - _ -> do - putStrLn "command not understood" - return st - -prLState pgf st = do - let t = stateTree st - putStrLn (unlines ([ - "Now I have:","", - prState st] ++ - linearizeAll pgf t)) - --- prompt selection from list of trees, such as ambiguous choice -selectReplace :: Dict -> [Tree] -> State -> IO State -selectReplace dict ts st = case ts of - [] -> putStrLn "no results" >> return st - [t] -> return $ goNextMeta $ replace dict t st - _ -> do - mapM_ putStrLn $ "choose tree by entering its number:" : - [show i ++ " : " ++ showTree t | (i,t) <- zip [0..] ts] - d <- getLine - let t = ts !! read d - return $ goNextMeta $ replace dict t st - -commandHelp = unlines [ - "a -- refine with a random subtree", - "d -- delete current subtree", - "h -- display this help message", - "m -- show refinement menu", - "p Anything -- parse Anything and refine with it", - "r Function -- refine with Function", - "x -- show all unknown positions and their types", - "4 -- refine with 4th item from menu (see m)", - "[1,2,3] -- go to position 1,2,3", - "> -- go to next node" - ] - ----------------- --- for a dialogue system, working just by parsing; questions are cat printnames ----------------- - -dialogueLoop :: PGF -> Dict -> Language -> State -> IO State -dialogueLoop pgf dict lang st = do - putStrLn $ - if null (allMetas st) - then "Ready!\n " ++ unlines (linearizeAll pgf (stateTree st)) - else if isMetaFocus st - then showPrintName pgf lang (focusType st) - else "Do you want to change this node?" - c <- getLine - st' <- interpretD pgf dict st c - dialogueLoop pgf dict lang st' - -interpretD :: PGF -> Dict -> State -> String -> IO State -interpretD pgf dict st c = do - let tts = parseAll pgf (focusType st) c - st' <- selectReplace dict (concat tts) st --- prLState pgf st' - return st' diff --git a/deprecated/exper/Evaluate.hs b/deprecated/exper/Evaluate.hs deleted file mode 100644 index 413c82402..000000000 --- a/deprecated/exper/Evaluate.hs +++ /dev/null @@ -1,461 +0,0 @@ ----------------------------------------------------------------------- --- | --- Module : Evaluate --- Maintainer : AR --- Stability : (stable) --- Portability : (portable) --- --- > CVS $Date: 2005/11/01 15:39:12 $ --- > CVS $Author: aarne $ --- > CVS $Revision: 1.19 $ --- --- Computation of source terms. Used in compilation and in @cc@ command. ------------------------------------------------------------------------------ - -module GF.Compile.Evaluate (appEvalConcrete) where - -import GF.Data.Operations -import GF.Grammar.Grammar -import GF.Infra.Ident -import GF.Data.Str -import GF.Grammar.PrGrammar -import GF.Infra.Modules -import GF.Infra.Option -import GF.Grammar.Macros -import GF.Grammar.Lookup -import GF.Grammar.Refresh -import GF.Grammar.PatternMatch -import GF.Grammar.Lockfield (isLockLabel) ---- - -import GF.Grammar.AppPredefined - -import qualified Data.Map as Map - -import Data.List (nub,intersperse) -import Control.Monad (liftM2, liftM) -import Debug.Trace - - -data EEnv = EEnv { - computd :: Map.Map (Ident,Ident) FTerm, - temp :: Int - } - -emptyEEnv = EEnv Map.empty 0 - -lookupComputed :: (Ident,Ident) -> STM EEnv (Maybe FTerm) -lookupComputed mc = do - env <- readSTM - return $ Map.lookup mc $ computd env - -updateComputed :: (Ident,Ident) -> FTerm -> STM EEnv () -updateComputed mc t = updateSTM (\e -> e{computd = Map.insert mc t (computd e)}) - -getTemp :: STM EEnv Ident -getTemp = do - env <- readSTM - updateSTM (\e -> e{temp = temp e + 1}) - return $ identC ("#" ++ show (temp env)) - -data FTerm = - FTC Term - | FTF (Term -> FTerm) - -prFTerm :: Integer -> FTerm -> String -prFTerm i t = case t of - FTC t -> prt t - FTF f -> show i +++ "->" +++ prFTerm (i + 1) (f (EInt i)) - -term2fterm t = case t of - Abs x b -> FTF (\t -> term2fterm (subst [(x,t)] b)) - _ -> FTC t - -traceFTerm c ft = ft ----trace ("\n" ++ prt c +++ "=" +++ take 60 (prFTerm 0 ft)) ft - -fterm2term :: FTerm -> STM EEnv Term -fterm2term t = case t of - FTC t -> return t - FTF f -> do - x <- getTemp - b <- fterm2term $ f (Vr x) - return $ Abs x b - -subst g t = case t of - Vr x -> maybe t id $ lookup x g - _ -> composSafeOp (subst g) t - - -appFTerm :: FTerm -> [Term] -> FTerm -appFTerm ft ts = case (ft,ts) of - (FTF f, x:xs) -> appFTerm (f x) xs - _ -> ft -{- - (FTC _, []) -> ft - (FTC f, [a]) -> case appPredefined (App f a) of - Ok (t,_) -> FTC t - _ -> error $ "error: appFTerm" +++ prFTerm 0 ft +++ unwords (map prt ts) - _ -> error $ "error: appFTerm" +++ prFTerm 0 ft +++ unwords (map prt ts) --} - -apps :: Term -> (Term,[Term]) -apps t = case t of - App f a -> (f',xs ++ [a]) where (f',xs) = apps f - _ -> (t,[]) - -appEvalConcrete gr bt = liftM fst $ appSTM (evalConcrete gr bt) emptyEEnv - -evalConcrete :: SourceGrammar -> BinTree Ident Info -> STM EEnv (BinTree Ident Info) -evalConcrete gr mo = mapMTree evaldef mo where - - evaldef (f,info) = case info of - CncFun (mt@(Just (_,ty@(cont,val)))) pde ppr -> - evalIn ("\nerror in linearization of function" +++ prt f +++ ":") $ - do - pde' <- case pde of - Yes de -> do - liftM yes $ pEval ty de - _ -> return pde - --- ppr' <- liftM yes $ evalPrintname gr c ppr pde' - return $ (f, CncFun mt pde' ppr) -- only cat in type actually needed - - _ -> return (f,info) - - pEval (context,val) trm = do ---- errIn ("parteval" +++ prt_ trm) $ do - let - vars = map fst context - args = map Vr vars - subst = [(v, Vr v) | v <- vars] - trm1 = mkApp trm args - trm3 <- recordExpand val trm1 >>= comp subst - return $ mkAbs vars trm3 - - recordExpand typ trm = case unComputed typ of - RecType tys -> case trm of - FV rs -> return $ FV [R [assign lab (P r lab) | (lab,_) <- tys] | r <- rs] - _ -> return $ R [assign lab (P trm lab) | (lab,_) <- tys] - _ -> return trm - - comp g t = case t of - - Q (IC "Predef") _ -> trace ("\nPredef:\n" ++ prt t) $ return t - - Q p c -> do - md <- lookupComputed (p,c) - case md of - Nothing -> do - d <- lookRes (p,c) - updateComputed (p,c) $ traceFTerm c $ term2fterm d - return d - Just d -> fterm2term d >>= comp g - App f a -> case apps t of - (h@(Q p c),xs) | p == IC "Predef" -> do - xs' <- mapM (comp g) xs - (t',b) <- stmErr $ appPredefined (foldl App h xs') - if b then return t' else comp g t' - (h@(Q p c),xs) -> do - xs' <- mapM (comp g) xs - md <- lookupComputed (p,c) - case md of - Just ft -> do - t <- fterm2term $ appFTerm ft xs' - comp g t - Nothing -> do - d <- lookRes (p,c) - let ft = traceFTerm c $ term2fterm d - updateComputed (p,c) ft - t' <- fterm2term $ appFTerm ft xs' - comp g t' - _ -> do - f' <- comp g f - a' <- comp g a - case (f',a') of - (Abs x b,_) -> comp (ext x a' g) b - (QC _ _,_) -> returnC $ App f' a' - (FV fs, _) -> mapM (\c -> comp g (App c a')) fs >>= return . variants - (_, FV as) -> mapM (\c -> comp g (App f' c)) as >>= return . variants - - (Alias _ _ d, _) -> comp g (App d a') - - (S (T i cs) e,_) -> prawitz g i (flip App a') cs e - - _ -> do - (t',b) <- stmErr $ appPredefined (App f' a') - if b then return t' else comp g t' - - - Vr x -> do - t' <- maybe (prtRaise ( - "context" +++ show g +++ ": no value given to variable") x) return $ lookup x g - case t' of - _ | t == t' -> return t - _ -> comp g t' - - Abs x b -> do - b' <- comp (ext x (Vr x) g) b - return $ Abs x b' - - Let (x,(_,a)) b -> do - a' <- comp g a - comp (ext x a' g) b - - Prod x a b -> do - a' <- comp g a - b' <- comp (ext x (Vr x) g) b - return $ Prod x a' b' - - P t l | isLockLabel l -> return $ R [] - ---- a workaround 18/2/2005: take this away and find the reason - ---- why earlier compilation destroys the lock field - - - P t l -> do - t' <- comp g t - case t' of - FV rs -> mapM (\c -> comp g (P c l)) rs >>= returnC . variants - R r -> maybe - (prtRaise (prt t' ++ ": no value for label") l) (comp g . snd) $ - lookup l r - - ExtR a (R b) -> case lookup l b of ----comp g (P (R b) l) of - Just (_,v) -> comp g v - _ -> comp g (P a l) - - S (T i cs) e -> prawitz g i (flip P l) cs e - - _ -> returnC $ P t' l - - S t@(T _ cc) v -> do - v' <- comp g v - case v' of - FV vs -> do - ts' <- mapM (comp g . S t) vs - return $ variants ts' - _ -> case matchPattern cc v' of - Ok (c,g') -> comp (g' ++ g) c - _ | isCan v' -> prtRaise ("missing case" +++ prt v' +++ "in") t - _ -> do - t' <- comp g t - return $ S t' v' -- if v' is not canonical - - S t v -> do - t' <- comp g t - v' <- comp g v - case t' of - T _ [(PV IW,c)] -> comp g c --- an optimization - T _ [(PT _ (PV IW),c)] -> comp g c - - T _ [(PV z,c)] -> comp (ext z v' g) c --- another optimization - T _ [(PT _ (PV z),c)] -> comp (ext z v' g) c - - FV ccs -> mapM (\c -> comp g (S c v')) ccs >>= returnC . variants - - V ptyp ts -> do - vs <- stmErr $ allParamValues gr ptyp - ps <- stmErr $ mapM term2patt vs - let cc = zip ps ts - case v' of - FV vs -> mapM (\c -> comp g (S t' c)) vs >>= returnC . variants - _ -> case matchPattern cc v' of - Ok (c,g') -> comp (g' ++ g) c - _ | isCan v' -> prtRaise ("missing case" +++ prt v' +++ "in") t - _ -> return $ S t' v' -- if v' is not canonical - - T _ cc -> case v' of - FV vs -> mapM (\c -> comp g (S t' c)) vs >>= returnC . variants - _ -> case matchPattern cc v' of - Ok (c,g') -> comp (g' ++ g) c - _ | isCan v' -> prtRaise ("missing case" +++ prt v' +++ "in") t - _ -> return $ S t' v' -- if v' is not canonical - - Alias _ _ d -> comp g (S d v') - - S (T i cs) e -> prawitz g i (flip S v') cs e - - _ -> returnC $ S t' v' - - -- normalize away empty tokens - K "" -> return Empty - - -- glue if you can - Glue x0 y0 -> do - x <- comp g x0 - y <- comp g y0 - case (x,y) of - (Alias _ _ d, y) -> comp g $ Glue d y - (x, Alias _ _ d) -> comp g $ Glue x d - - (S (T i cs) e, s) -> prawitz g i (flip Glue s) cs e - (s, S (T i cs) e) -> prawitz g i (Glue s) cs e - (_,Empty) -> return x - (Empty,_) -> return y - (K a, K b) -> return $ K (a ++ b) - (_, Alts (d,vs)) -> do ----- (K a, Alts (d,vs)) -> do - let glx = Glue x - comp g $ Alts (glx d, [(glx v,c) | (v,c) <- vs]) - (Alts _, ka) -> checks [do - y' <- stmErr $ strsFromTerm ka ----- (Alts _, K a) -> checks [do - x' <- stmErr $ strsFromTerm x -- this may fail when compiling opers - return $ variants [ - foldr1 C (map K (str2strings (glueStr v u))) | v <- x', u <- y'] ----- foldr1 C (map K (str2strings (glueStr v (str a)))) | v <- x'] - ,return $ Glue x y - ] - (FV ks,_) -> do - kys <- mapM (comp g . flip Glue y) ks - return $ variants kys - (_,FV ks) -> do - xks <- mapM (comp g . Glue x) ks - return $ variants xks - - _ -> do - mapM_ checkNoArgVars [x,y] - r <- composOp (comp g) t - returnC r - - Alts _ -> do - r <- composOp (comp g) t - returnC r - - -- remove empty - C a b -> do - a' <- comp g a - b' <- comp g b - case (a',b') of - (Alts _, K a) -> checks [do - as <- stmErr $ strsFromTerm a' -- this may fail when compiling opers - return $ variants [ - foldr1 C (map K (str2strings (plusStr v (str a)))) | v <- as] - , - return $ C a' b' - ] - (Empty,_) -> returnC b' - (_,Empty) -> returnC a' - _ -> returnC $ C a' b' - - -- reduce free variation as much as you can - FV ts -> mapM (comp g) ts >>= returnC . variants - - -- merge record extensions if you can - ExtR r s -> do - r' <- comp g r - s' <- comp g s - case (r',s') of - (Alias _ _ d, _) -> comp g $ ExtR d s' - (_, Alias _ _ d) -> comp g $ Glue r' d - - (R rs, R ss) -> stmErr $ plusRecord r' s' - (RecType rs, RecType ss) -> stmErr $ plusRecType r' s' - _ -> return $ ExtR r' s' - - -- case-expand tables - -- if already expanded, don't expand again - T i@(TComp _) cs -> do - -- if there are no variables, don't even go inside - cs' <- if (null g) then return cs else mapPairsM (comp g) cs - return $ T i cs' - - --- this means some extra work; should implement TSh directly - TSh i cs -> comp g $ T i [(p,v) | (ps,v) <- cs, p <- ps] - - T i cs -> do - pty0 <- stmErr $ getTableType i - ptyp <- comp g pty0 - case allParamValues gr ptyp of - Ok vs -> do - - cs' <- mapM (compBranchOpt g) cs - sts <- stmErr $ mapM (matchPattern cs') vs - ts <- mapM (\ (c,g') -> comp (g' ++ g) c) sts - ps <- stmErr $ mapM term2patt vs - let ps' = ps --- PT ptyp (head ps) : tail ps - return $ --- V ptyp ts -- to save space, just course of values - T (TComp ptyp) (zip ps' ts) - _ -> do - cs' <- mapM (compBranch g) cs - return $ T i cs' -- happens with variable types - - -- otherwise go ahead - _ -> composOp (comp g) t >>= returnC - - lookRes (p,c) = case lookupResDefKind gr p c of - Ok (t,_) | noExpand p -> return t - Ok (t,0) -> comp [] t - Ok (t,_) -> return t - Bad s -> raise s - - noExpand p = errVal False $ do - mo <- lookupModule gr p - return $ case getOptVal (iOpts (flags mo)) useOptimizer of - Just "noexpand" -> True - _ -> False - - prtRaise s t = raise (s +++ prt t) - - ext x a g = (x,a):g - - returnC = return --- . computed - - variants ts = case nub ts of - [t] -> t - ts -> FV ts - - isCan v = case v of - Con _ -> True - QC _ _ -> True - App f a -> isCan f && isCan a - R rs -> all (isCan . snd . snd) rs - _ -> False - - compBranch g (p,v) = do - let g' = contP p ++ g - v' <- comp g' v - return (p,v') - - compBranchOpt g c@(p,v) = case contP p of - [] -> return c - _ -> compBranch g c ----- _ -> err (const (return c)) return $ compBranch g c - - contP p = case p of - PV x -> [(x,Vr x)] - PC _ ps -> concatMap contP ps - PP _ _ ps -> concatMap contP ps - PT _ p -> contP p - PR rs -> concatMap (contP . snd) rs - - PAs x p -> (x,Vr x) : contP p - - PSeq p q -> concatMap contP [p,q] - PAlt p q -> concatMap contP [p,q] - PRep p -> contP p - PNeg p -> contP p - - _ -> [] - - prawitz g i f cs e = do - cs' <- mapM (compBranch g) [(p, f v) | (p,v) <- cs] - return $ S (T i cs') e - --- | argument variables cannot be glued -checkNoArgVars :: Term -> STM EEnv Term -checkNoArgVars t = case t of - Vr (IA _) -> raise $ glueErrorMsg $ prt t - Vr (IAV _) -> raise $ glueErrorMsg $ prt t - _ -> composOp checkNoArgVars t - -glueErrorMsg s = - "Cannot glue (+) term with run-time variable" +++ s ++ "." ++++ - "Use Prelude.bind instead." - -stmErr :: Err a -> STM s a -stmErr e = stm (\s -> do - v <- e - return (v,s) - ) - -evalIn :: String -> STM s a -> STM s a -evalIn msg st = stm $ \s -> case appSTM st s of - Bad e -> Bad $ msg ++++ e - Ok vs -> Ok vs diff --git a/deprecated/exper/Optimize.hs b/deprecated/exper/Optimize.hs deleted file mode 100644 index 7cf88554f..000000000 --- a/deprecated/exper/Optimize.hs +++ /dev/null @@ -1,273 +0,0 @@ ----------------------------------------------------------------------- --- | --- Module : Optimize --- Maintainer : AR --- Stability : (stable) --- Portability : (portable) --- --- > CVS $Date: 2005/09/16 13:56:13 $ --- > CVS $Author: aarne $ --- > CVS $Revision: 1.18 $ --- --- Top-level partial evaluation for GF source modules. ------------------------------------------------------------------------------ - -module GF.Compile.Optimize (optimizeModule) where - -import GF.Grammar.Grammar -import GF.Infra.Ident -import GF.Infra.Modules -import GF.Grammar.PrGrammar -import GF.Grammar.Macros -import GF.Grammar.Lookup -import GF.Grammar.Refresh -import GF.Grammar.Compute -import GF.Compile.BackOpt -import GF.Compile.CheckGrammar -import GF.Compile.Update - -import GF.Compile.Evaluate - -import GF.Data.Operations -import GF.Infra.CheckM -import GF.Infra.Option - -import Control.Monad -import Data.List - --- | partial evaluation of concrete syntax. AR 6\/2001 -- 16\/5\/2003 -- 5\/2\/2005. --- only do this for resource: concrete is optimized in gfc form -optimizeModule :: Options -> [(Ident,SourceModule)] -> (Ident,SourceModule) -> - Err (Ident,SourceModule) -optimizeModule opts ms mo@(_,mi) = case mi of - m0@(Module mt st fs me ops js) | st == MSComplete && isModRes m0 -> do - mo1 <- evalModule oopts ms mo - return $ case optim of - "parametrize" -> shareModule paramOpt mo1 -- parametrization and sharing - "values" -> shareModule valOpt mo1 -- tables as courses-of-values - "share" -> shareModule shareOpt mo1 -- sharing of branches - "all" -> shareModule allOpt mo1 -- first parametrize then values - "none" -> mo1 -- no optimization - _ -> mo1 -- none; default for src - _ -> evalModule oopts ms mo - where - oopts = addOptions opts (iOpts (flagsModule mo)) - optim = maybe "all" id $ getOptVal oopts useOptimizer - -evalModule :: Options -> [(Ident,SourceModule)] -> (Ident,SourceModule) -> Err (Ident,SourceModule) -evalModule oopts ms mo@(name,mod) = case mod of - - m0@(Module mt st fs me ops js) | st == MSComplete -> case mt of -{- - -- now: don't optimize resource - - _ | isModRes m0 -> do - let deps = allOperDependencies name js - ids <- topoSortOpers deps - MGrammar (mod' : _) <- foldM evalOp gr ids - return $ mod' --} - MTConcrete a -> do ------ - js0 <- appEvalConcrete gr js - js' <- mapMTree (evalCncInfo oopts gr name a) js0 ---- <- gr0 6/12/2005 - return $ (name, Module mt st fs me ops js') - - _ -> return $ (name,mod) - _ -> return $ (name,mod) - where - gr0 = MGrammar $ ms - gr = MGrammar $ (name,mod) : ms - - evalOp g@(MGrammar ((_, m) : _)) i = do - info <- lookupTree prt i $ jments m - info' <- evalResInfo oopts gr (i,info) - return $ updateRes g name i info' - --- | only operations need be compiled in a resource, and this is local to each --- definition since the module is traversed in topological order -evalResInfo :: Options -> SourceGrammar -> (Ident,Info) -> Err Info -evalResInfo oopts gr (c,info) = case info of - - ResOper pty pde -> eIn "operation" $ do - pde' <- case pde of - Yes de | optres -> liftM yes $ comp de - _ -> return pde - return $ ResOper pty pde' - - _ -> return info - where - comp = if optres then computeConcrete gr else computeConcreteRec gr - eIn cat = errIn ("Error optimizing" +++ cat +++ prt c +++ ":") - optim = maybe "all" id $ getOptVal oopts useOptimizer - optres = case optim of - "noexpand" -> False - _ -> True - - -evalCncInfo :: - Options -> SourceGrammar -> Ident -> Ident -> (Ident,Info) -> Err (Ident,Info) -evalCncInfo opts gr cnc abs (c,info) = errIn ("optimizing" +++ prt c) $ case info of - - CncCat ptyp pde ppr -> do - - pde' <- case (ptyp,pde) of - (Yes typ, Yes de) -> - liftM yes $ pEval ([(varStr, typeStr)], typ) de - (Yes typ, Nope) -> - liftM yes $ mkLinDefault gr typ >>= partEval noOptions gr ([(varStr, typeStr)],typ) - (May b, Nope) -> - return $ May b - _ -> return pde -- indirection - - ppr' <- liftM yes $ evalPrintname gr c ppr (yes $ K $ prt c) - - return (c, CncCat ptyp pde' ppr') - - CncFun (mt@(Just (_,ty@(cont,val)))) pde ppr -> - eIn ("linearization in type" +++ prt (mkProd (cont,val,[])) ++++ "of function") $ do - pde' <- case pde of ------ Yes de -> do ------ liftM yes $ pEval ty de - _ -> return pde - ppr' <- liftM yes $ evalPrintname gr c ppr pde' - return $ (c, CncFun mt pde' ppr') -- only cat in type actually needed - - _ -> return (c,info) - where - pEval = partEval opts gr - eIn cat = errIn ("Error optimizing" +++ cat +++ prt c +++ ":") - --- | the main function for compiling linearizations -partEval :: Options -> SourceGrammar -> (Context,Type) -> Term -> Err Term -partEval opts gr (context, val) trm = errIn ("parteval" +++ prt_ trm) $ do - let vars = map fst context - args = map Vr vars - subst = [(v, Vr v) | v <- vars] - trm1 = mkApp trm args - trm3 <- if globalTable - then etaExpand trm1 >>= comp subst >>= outCase subst - else etaExpand trm1 >>= comp subst - return $ mkAbs vars trm3 - - where - - globalTable = oElem showAll opts --- i -all - - comp g t = {- refreshTerm t >>= -} computeTerm gr g t - - etaExpand t = recordExpand val t --- >>= caseEx -- done by comp - - outCase subst t = do - pts <- getParams context - let (args,ptyps) = unzip $ filter (flip occur t . fst) pts - if null args - then return t - else do - let argtyp = RecType $ tuple2recordType ptyps - let pvars = map (Vr . zIdent . prt) args -- gets eliminated - patt <- term2patt $ R $ tuple2record $ pvars - let t' = replace (zip args pvars) t - t1 <- comp subst $ T (TTyped argtyp) [(patt, t')] - return $ S t1 $ R $ tuple2record args - - --- notice: this assumes that all lin types follow the "old JFP style" - getParams = liftM concat . mapM getParam - getParam (argv,RecType rs) = return - [(P (Vr argv) lab, ptyp) | (lab,ptyp) <- rs, not (isLinLabel lab)] - ---getParam (_,ty) | ty==typeStr = return [] --- in lindef - getParam (av,ty) = - Bad ("record type expected not" +++ prt ty +++ "for" +++ prt av) - --- all lin types are rec types - - replace :: [(Term,Term)] -> Term -> Term - replace reps trm = case trm of - -- this is the important case - P _ _ -> maybe trm id $ lookup trm reps - _ -> composSafeOp (replace reps) trm - - occur t trm = case trm of - - -- this is the important case - P _ _ -> t == trm - S x y -> occur t y || occur t x - App f x -> occur t x || occur t f - Abs _ f -> occur t f - R rs -> any (occur t) (map (snd . snd) rs) - T _ cs -> any (occur t) (map snd cs) - C x y -> occur t x || occur t y - Glue x y -> occur t x || occur t y - ExtR x y -> occur t x || occur t y - FV ts -> any (occur t) ts - V _ ts -> any (occur t) ts - Let (_,(_,x)) y -> occur t x || occur t y - _ -> False - - --- here we must be careful not to reduce --- variants {{s = "Auto" ; g = N} ; {s = "Wagen" ; g = M}} --- {s = variants {"Auto" ; "Wagen"} ; g = variants {N ; M}} ; - -recordExpand :: Type -> Term -> Err Term -recordExpand typ trm = case unComputed typ of - RecType tys -> case trm of - FV rs -> return $ FV [R [assign lab (P r lab) | (lab,_) <- tys] | r <- rs] - _ -> return $ R [assign lab (P trm lab) | (lab,_) <- tys] - _ -> return trm - - --- | auxiliaries for compiling the resource - -mkLinDefault :: SourceGrammar -> Type -> Err Term -mkLinDefault gr typ = do - case unComputed typ of - RecType lts -> mapPairsM mkDefField lts >>= (return . Abs varStr . R . mkAssign) - _ -> prtBad "linearization type must be a record type, not" typ - where - mkDefField typ = case unComputed typ of - Table p t -> do - t' <- mkDefField t - let T _ cs = mkWildCases t' - return $ T (TWild p) cs - Sort "Str" -> return $ Vr varStr - QC q p -> lookupFirstTag gr q p - RecType r -> do - let (ls,ts) = unzip r - ts' <- mapM mkDefField ts - return $ R $ [assign l t | (l,t) <- zip ls ts'] - _ | isTypeInts typ -> return $ EInt 0 -- exists in all as first val - _ -> prtBad "linearization type field cannot be" typ - --- | Form the printname: if given, compute. If not, use the computed --- lin for functions, cat name for cats (dispatch made in evalCncDef above). ---- We cannot use linearization at this stage, since we do not know the ---- defaults we would need for question marks - and we're not yet in canon. -evalPrintname :: SourceGrammar -> Ident -> MPr -> Perh Term -> Err Term -evalPrintname gr c ppr lin = - case ppr of - Yes pr -> comp pr - _ -> case lin of - Yes t -> return $ K $ clean $ prt $ oneBranch t ---- stringFromTerm - _ -> return $ K $ prt c ---- - where - comp = computeConcrete gr - - oneBranch t = case t of - Abs _ b -> oneBranch b - R (r:_) -> oneBranch $ snd $ snd r - T _ (c:_) -> oneBranch $ snd c - V _ (c:_) -> oneBranch c - FV (t:_) -> oneBranch t - C x y -> C (oneBranch x) (oneBranch y) - S x _ -> oneBranch x - P x _ -> oneBranch x - Alts (d,_) -> oneBranch d - _ -> t - - --- very unclean cleaner - clean s = case s of - '+':'+':' ':cs -> clean cs - '"':cs -> clean cs - c:cs -> c: clean cs - _ -> s - diff --git a/deprecated/gf.spec b/deprecated/gf.spec deleted file mode 100644 index 8dfbee6f5..000000000 --- a/deprecated/gf.spec +++ /dev/null @@ -1,119 +0,0 @@ -%define name GF -%define version 3.0 -%define release 1 - -Name: %{name} -Summary: Grammatical Framework -Version: %{version} -Release: %{release} -License: GPL -Group: Sciences/Other -Vendor: The Language Technology Group -URL: http://www.cs.chalmers.se/~aarne/GF/ -Source: GF-%{version}.tgz -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot -BuildRequires: ghc - -%description -The Grammatical Framework (=GF) is a grammar formalism based on type theory. -It consists of - - * a special-purpose programming language - * a compiler of the language - * a generic grammar processor - -The compiler reads GF grammars from user-provided files, and the -generic grammar processor performs various tasks with the grammars: - - * generation - * parsing - * translation - * type checking - * computation - * paraphrasing - * random generation - * syntax editing - -GF particularly addresses the following aspects of grammars: - - * multilinguality (parallel grammars for different languages) - * semantics (semantic conditions of well-formedness, semantic - properties of expressions) - * grammar engineering (modularity, information hiding, reusable - libraries) - - -%package editor -Summary: Java syntax editor for Grammatical Framework (GF). -Group: Sciences/Other -Requires: %{name} - -%description editor -This package contains the syntax editor GUI for GF. - -%package editor2 -Summary: Java syntax editor for Grammatical Framework (GF). -Group: Sciences/Other -Requires: %{name} - -%description editor2 -This package contains the syntax editor GUI for GF with printname enhancements and HTML support. - - -%prep -rm -rf $RPM_BUILD_ROOT -%setup -q - -%build -cd src -%configure -make all - -%install -cd src -%makeinstall - -%clean -rm -rf $RPM_BUILD_ROOT - -%files -%defattr(-,root,root,0755) -%{_bindir}/gf -%{_bindir}/gfdoc -%doc LICENSE README doc/{DocGF.pdf,gf2-highlights.html,index.html} - -%files editor -%defattr(-,root,root,0755) -%{_bindir}/jgf -%{_datadir}/%{name}-%{version}/gf-java.jar - -%files editor2 -%defattr(-,root,root,0755) -%{_bindir}/gfeditor -%{_datadir}/%{name}-%{version}/gfeditor.jar - - -%changelog -* Tue Jun 21 2005 Hans-Joachim Daniels
-
-- -
- -
- -March 20, 2008. Ten years of GF! -
- -December 21, 2007. -
- -News before 2.9. - - -
- echo "pg -printer=slf" | gf foo.ebnf -- - - -
- -The GF Grammar Libraries are licensed under -GNU Lesser General Public License (LGPL). - - - -
- -Letter -editor: -write simple letters in English, Finnish, -French, Swedish, and Russian with a few mouse clicks. - -
- -Demo film -of a multimodal dialogue system built with embedded grammars. - -
- -Example grammars used in the -GF tutorial. - -
- -Resource grammar library: -basic structures of ten languages -(Danish, English, Finnish, French, German, -Italian, Norwegian, Russian, Spanish, Swedish). -Resource grammars can be used as libraries for writing GF -applications, -but they can also be useful for language training. - - - -
- -The platform-independent graphical user interface is written in -Java. - - -
- -The Download Page -gives links to source and binary packages, as well as -information on compiler requirements. - -
- -The publicly accessible - -Darcs repository -has the latest sources and documents. - -
- -For Java programmers: GF grammars can be embedded in Java programs by using the - -Embedded GF Interpreter. - - - - -
- -And register to the -GF User's Mailing List! - -
-One of the main ideas of -GF -is the use of libraries in grammar writing, in a way familiar -from software engineering. In this way, large grammars can -be built in cooperation, and old grammars or parts of them -can be reused in new grammars. The slides -Grammars as Software Libraries -give some introduction to this idea. -
--This library covers basic linguistic structures of -different languages. -
--Version 1.1 released 22 December 2006 -(enhanced version of 1.0). -Covers Danish, English, Finnish, French, German, Italian, Norwegian, -Russian, Spanish, and Swedish. -
--Two older versions are also available: -Version 0.9 -and -Version 0.6. -
--The prelude -library gives utility functions for different GF applications: -
--Precedence. Utilities for -formal languages: precedence levels, associatives, infixes. -
--Predef. Type signatures -of predefined (hard-coded) functions. -
--Prelude. Generic utilities -for strings, tables, records, booleans. -
- - - - diff --git a/deprecated/old-lib/index.txt b/deprecated/old-lib/index.txt deleted file mode 100644 index 83fd65611..000000000 --- a/deprecated/old-lib/index.txt +++ /dev/null @@ -1,58 +0,0 @@ -GF Grammar Libraries -Author: Aarne Ranta: Prec * Prec> of { - <3,4> | <2,3> | <2,4> => True ; - <1,1> | <1,0> | <0,0> => False ; - <1,_> | <0,_> => True ; - _ => False - } ; - - nextPrec : Prec -> Prec = \p -> case
of {
- 4 => 4 ;
- n => Predef.plus n 1
- } ;
-
-}
diff --git a/deprecated/old-lib/prelude/HTML.gf b/deprecated/old-lib/prelude/HTML.gf
deleted file mode 100644
index b469b582c..000000000
--- a/deprecated/old-lib/prelude/HTML.gf
+++ /dev/null
@@ -1,8 +0,0 @@
-resource HTML = open Prelude in {
- oper
- tag : Str -> Str = \t -> "<" + t + ">" ;
- endtag : Str -> Str = \t -> tag ("/" + t) ;
- intag : Str -> Str -> Str = \t,s -> tag t ++ s ++ endtag t ;
- intagAttr : Str -> Str -> Str -> Str =
- \t,a,s -> ("<" + t) ++ (a + ">") ++ s ++ endtag t ;
-}
diff --git a/deprecated/old-lib/prelude/Latex.gf b/deprecated/old-lib/prelude/Latex.gf
deleted file mode 100644
index 2fd2f9ec8..000000000
--- a/deprecated/old-lib/prelude/Latex.gf
+++ /dev/null
@@ -1,12 +0,0 @@
-resource Latex = open Prelude in {
- oper
- command : Str -> Str = \c -> "\\" + c ;
- fun1 : Str -> Str -> Str = \f,x -> "\\" + f + "{" ++ x ++ "}" ;
- fun2 : Str -> Str -> Str -> Str =
- \f,x,y -> "\\" + f + "{" ++ x ++ "}{" ++ y ++ "}" ;
- begin : Str -> Str = \e -> "\\begin{" + e + "}" ;
- end : Str -> Str = \e -> "\\end{" + e + "}" ;
- inEnv : Str -> Str -> Str = \e,s -> begin e ++ s ++ end e ;
-}
-
-
diff --git a/deprecated/old-lib/prelude/Precedence.gf b/deprecated/old-lib/prelude/Precedence.gf
deleted file mode 100644
index 62775958c..000000000
--- a/deprecated/old-lib/prelude/Precedence.gf
+++ /dev/null
@@ -1,117 +0,0 @@
--- operations for precedence-dependent strings.
--- five levels:
--- p4 (constants), p3 (applications), p2 (products), p1 (sums), p0 (arrows)
-
-resource Precedence = open Prelude in {
-
-param
-Prec = p4 | p3 | p2 | p1 | p0 ;
-
-oper
-PrecTerm = Prec => Str ;
-
-oper
-pss : PrecTerm -> {s : PrecTerm} = \s -> {s = s} ;
-
-
--- change this if you want some other type of parentheses
-mkParenth : Str -> Str = \str -> "(" ++ str ++ ")" ;
-
--- define ordering of precedences
-nextPrec : Prec => Prec =
- table {p0 => p1 ; p1 => p2 ; p2 => p3 ; _ => p4} ;
-prevPrec : Prec => Prec =
- table {p4 => p3 ; p3 => p2 ; p2 => p1 ; _ => p0} ;
-
-mkPrec : Str -> Prec => Prec => Str = \str ->
- table {
- p4 => table { -- use the term of precedence p4...
- _ => str} ; -- ...always without parentheses
- p3 => table { -- use the term of precedence p3...
- p4 => mkParenth str ; -- ...in parentheses if p4 is required...
- _ => str} ; -- ...otherwise without parentheses
- p2 => table {
- p4 => mkParenth str ;
- p3 => mkParenth str ;
- _ => str} ;
- p1 => table {
- p1 => str ;
- p0 => str ;
- _ => mkParenth str} ;
- p0 => table {
- p0 => str ;
- _ => mkParenth str}
- } ;
-
--- make a string into a constant, of precedence p4
-mkConst : Str -> PrecTerm =
- \f ->
- mkPrec f ! p4 ;
-
--- make a string into a 1/2/3 -place prefix operator, of precedence p3
-mkFun1 : Str -> PrecTerm -> PrecTerm =
- \f -> \x ->
- table {k => mkPrec (f ++ x ! p4) ! p3 ! k} ;
-mkFun2 : Str -> PrecTerm -> PrecTerm -> PrecTerm =
- \f -> \x -> \y ->
- table {k => mkPrec (f ++ x ! p4 ++ y ! p4) ! p3 ! k} ;
-mkFun3 : Str -> PrecTerm -> PrecTerm -> PrecTerm -> PrecTerm =
- \f -> \x -> \y -> \z ->
- table {k => mkPrec (f ++ x ! p4 ++ y ! p4 ++ z ! p4) ! p3 ! k} ;
-
--- make a string into a non/left/right -associative infix operator, of precedence p
-mkInfix : Str -> Prec -> PrecTerm -> PrecTerm -> PrecTerm =
- \f -> \p -> \x -> \y ->
- table {k => mkPrec (x ! (nextPrec ! p) ++ f ++ y ! (nextPrec ! p)) ! p ! k} ;
-mkInfixL : Str -> Prec -> PrecTerm -> PrecTerm -> PrecTerm =
- \f -> \p -> \x -> \y ->
- table {k => mkPrec (x ! p ++ f ++ y ! (nextPrec ! p)) ! p ! k} ;
-mkInfixR : Str -> Prec -> PrecTerm -> PrecTerm -> PrecTerm =
- \f -> \p -> \x -> \y ->
- table {k => mkPrec (x ! (nextPrec ! p) ++ f ++ y ! p) ! p ! k} ;
-
------------------------------------------------------------
-
--- alternative:
--- precedence as inherent feature
-
-oper TermWithPrec = {s : Str ; p : Prec} ;
-
-oper
-mkpPrec : Str -> Prec -> TermWithPrec =
- \f -> \p ->
- {s = f ; p = p} ;
-
-usePrec : TermWithPrec -> Prec -> Str =
- \x -> \p ->
- mkPrec x.s ! x.p ! p ;
-
--- make a string into a constant, of precedence p4
-mkpConst : Str -> TermWithPrec =
- \f ->
- mkpPrec f p4 ;
-
--- make a string into a 1/2/3 -place prefix operator, of precedence p3
-mkpFun1 : Str -> TermWithPrec -> TermWithPrec =
- \f -> \x ->
- mkpPrec (f ++ usePrec x p4) p3 ;
-
-mkpFun2 : Str -> TermWithPrec -> TermWithPrec -> TermWithPrec =
- \f -> \x -> \y ->
- mkpPrec (f ++ usePrec x p4 ++ usePrec y p4) p3 ;
-
-mkpFun3 : Str -> TermWithPrec -> TermWithPrec -> TermWithPrec -> TermWithPrec =
- \f -> \x -> \y -> \z ->
- mkpPrec (f ++ usePrec x p4 ++ usePrec y p4 ++ usePrec z p4) p3 ;
-
--- make a string a into non/left/right -associative infix operator, of precedence p
-mkpInfix : Str -> Prec -> TermWithPrec -> TermWithPrec -> TermWithPrec =
- \f -> \p -> \x -> \y ->
- mkpPrec (usePrec x (nextPrec ! p) ++ f ++ usePrec y (nextPrec ! p)) p ;
-mkpInfixL : Str -> Prec -> TermWithPrec -> TermWithPrec -> TermWithPrec =
- \f -> \p -> \x -> \y ->
- mkpPrec (usePrec x p ++ f ++ usePrec y (nextPrec ! p)) p ;
-mkpInfixR : Str -> Prec -> TermWithPrec -> TermWithPrec -> TermWithPrec =
- \f -> \p -> \x -> \y ->
- mkpPrec (usePrec x (nextPrec ! p) ++ f ++ usePrec y p) p ;
-} ;
\ No newline at end of file
diff --git a/deprecated/old-lib/prelude/Predef.gf b/deprecated/old-lib/prelude/Predef.gf
deleted file mode 100644
index d8141ea8c..000000000
--- a/deprecated/old-lib/prelude/Predef.gf
+++ /dev/null
@@ -1,37 +0,0 @@
---1 Predefined functions for concrete syntax
-
--- The definitions of these constants are hard-coded in GF, and defined
--- in [AppPredefined.hs ../src/GF/Grammar/AppPredefined.hs]. Applying
--- them to run-time variables leads to compiler errors that are often
--- only detected at the code generation time.
-
-resource Predef = {
-
--- This type of booleans is for internal use only.
-
- param PBool = PTrue | PFalse ;
-
- oper Error : Type = variants {} ; -- the empty type
- oper Int : Type = variants {} ; -- the type of integers
- oper Ints : Int -> Type = variants {} ; -- the type of integers from 0 to n
-
- oper error : Str -> Error = variants {} ; -- forms error message
- oper length : Tok -> Int = variants {} ; -- length of string
- oper drop : Int -> Tok -> Tok = variants {} ; -- drop prefix of length
- oper take : Int -> Tok -> Tok = variants {} ; -- take prefix of length
- oper tk : Int -> Tok -> Tok = variants {} ; -- drop suffix of length
- oper dp : Int -> Tok -> Tok = variants {} ; -- take suffix of length
- oper eqInt : Int -> Int -> PBool = variants {} ; -- test if equal integers
- oper lessInt: Int -> Int -> PBool = variants {} ; -- test order of integers
- oper plus : Int -> Int -> Int = variants {} ; -- add integers
- oper eqStr : Tok -> Tok -> PBool = variants {} ; -- test if equal strings
- oper occur : Tok -> Tok -> PBool = variants {} ; -- test if occurs as substring
- oper occurs : Tok -> Tok -> PBool = variants {} ; -- test if any char occurs
- oper show : (P : Type) -> P -> Tok = variants {} ; -- convert param to string
- oper read : (P : Type) -> Tok -> P = variants {} ; -- convert string to param
- oper toStr : (L : Type) -> L -> Str = variants {} ; -- find the "first" string
- oper mapStr : (L : Type) -> (Str -> Str) -> L -> L = variants {} ;
- -- map all strings in a data structure; experimental ---
-
-} ;
-
diff --git a/deprecated/old-lib/prelude/PredefAbs.gf b/deprecated/old-lib/prelude/PredefAbs.gf
deleted file mode 100644
index a99961d00..000000000
--- a/deprecated/old-lib/prelude/PredefAbs.gf
+++ /dev/null
@@ -1,4 +0,0 @@
-abstract PredefAbs = {
- cat Int ; String ; Float ;
-} ;
-
diff --git a/deprecated/old-lib/prelude/PredefCnc.gf b/deprecated/old-lib/prelude/PredefCnc.gf
deleted file mode 100644
index f12b9b1f0..000000000
--- a/deprecated/old-lib/prelude/PredefCnc.gf
+++ /dev/null
@@ -1,4 +0,0 @@
-concrete PredefCnc of PredefAbs = {
- lincat
- Int, Float, String = {s : Str} ;
-} ;
diff --git a/deprecated/old-lib/prelude/Prelude.gf b/deprecated/old-lib/prelude/Prelude.gf
deleted file mode 100644
index 56545d051..000000000
--- a/deprecated/old-lib/prelude/Prelude.gf
+++ /dev/null
@@ -1,142 +0,0 @@
---1 The GF Prelude
-
--- This file defines some prelude facilities usable in all grammars.
-
-resource Prelude = open (Predef=Predef) in {
-
-oper
-
---2 Strings, records, and tables
-
- SS : Type = {s : Str} ;
- ss : Str -> SS = \s -> {s = s} ;
- ss2 : (_,_ : Str) -> SS = \x,y -> ss (x ++ y) ;
- ss3 : (_,_ ,_: Str) -> SS = \x,y,z -> ss (x ++ y ++ z) ;
-
- cc2 : (_,_ : SS) -> SS = \x,y -> ss (x.s ++ y.s) ;
- cc3 : (_,_,_ : SS) -> SS = \x,y,z -> ss (x.s ++ y.s ++ z.s) ;
-
- SS1 : Type -> Type = \P -> {s : P => Str} ;
- ss1 : (A : Type) -> Str -> SS1 A = \A,s -> {s = table {_ => s}} ;
-
- SP1 : Type -> Type = \P -> {s : Str ; p : P} ;
- sp1 : (A : Type) -> Str -> A -> SP1 A = \_,s,a -> {s = s ; p = a} ;
-
- constTable : (A,B : Type) -> B -> A => B = \_,_,b -> \\_ => b ;
- constStr : (A : Type) -> Str -> A => Str = \A -> constTable A Str ;
-
--- Discontinuous constituents.
-
- SD2 : Type = {s1,s2 : Str} ;
- sd2 : (_,_ : Str) -> SD2 = \x,y -> {s1 = x ; s2 = y} ;
-
-
---2 Optional elements
-
--- Missing form.
-
- nonExist : Str = variants {} ;
-
--- Optional string with preference on the string vs. empty.
-
- optStr : Str -> Str = \s -> variants {s ; []} ;
- strOpt : Str -> Str = \s -> variants {[] ; s} ;
-
--- Free order between two strings.
-
- bothWays : Str -> Str -> Str = \x,y -> variants {x ++ y ; y ++ x} ;
-
--- Parametric order between two strings.
-
- preOrPost : Bool -> Str -> Str -> Str = \pr,x,y ->
- if_then_Str pr (x ++ y) (y ++ x) ;
-
---2 Infixes. prefixes, and postfixes
-
--- Fixes with precedences are defined in [Precedence Precedence.html].
-
- infixSS : Str -> SS -> SS -> SS = \f,x,y -> ss (x.s ++ f ++ y.s) ;
- prefixSS : Str -> SS -> SS = \f,x -> ss (f ++ x.s) ;
- postfixSS : Str -> SS -> SS = \f,x -> ss (x.s ++ f) ;
- embedSS : Str -> Str -> SS -> SS = \f,g,x -> ss (f ++ x.s ++ g) ;
-
-
---2 Booleans
-
- param Bool = True | False ;
-
-oper
- if_then_else : (A : Type) -> Bool -> A -> A -> A = \_,c,d,e ->
- case c of {
- True => d ; ---- should not need to qualify
- False => e
- } ;
-
- andB : (_,_ : Bool) -> Bool = \a,b -> if_then_else Bool a b False ;
- orB : (_,_ : Bool) -> Bool = \a,b -> if_then_else Bool a True b ;
- notB : Bool -> Bool = \a -> if_then_else Bool a False True ;
-
- if_then_Str : Bool -> Str -> Str -> Str = if_then_else Str ;
-
- onlyIf : Bool -> Str -> Str = \b,s -> case b of {
- True => s ;
- _ => nonExist
- } ;
-
--- Interface to internal booleans
-
- pbool2bool : Predef.PBool -> Bool = \b -> case b of {
- Predef.PFalse => False ; Predef.PTrue => True
- } ;
-
- init : Tok -> Tok = Predef.tk 1 ;
- last : Tok -> Tok = Predef.dp 1 ;
-
---2 High-level acces to Predef operations
-
- isNil : Tok -> Bool = \b -> pbool2bool (Predef.eqStr [] b) ;
-
- ifTok : (A : Type) -> Tok -> Tok -> A -> A -> A = \A,t,u,a,b ->
- case Predef.eqStr t u of {Predef.PTrue => a ; Predef.PFalse => b} ;
-
---2 Lexer-related operations
-
--- Bind together two tokens in some lexers, either obligatorily or optionally
-
- oper
- glue : Str -> Str -> Str = \x,y -> x ++ BIND ++ y ;
- glueOpt : Str -> Str -> Str = \x,y -> variants {glue x y ; x ++ y} ;
- noglueOpt : Str -> Str -> Str = \x,y -> variants {x ++ y ; glue x y} ;
-
--- Force capitalization of next word in some unlexers
-
- capitalize : Str -> Str = \s -> CAPIT ++ s ;
-
--- These should be hidden, and never changed since they are hardcoded in (un)lexers
-
- BIND : Str = "&+" ;
- PARA : Str = "&-" ;
- CAPIT : Str = "&|" ;
-
---2 Miscellaneous
-
--- Identity function
-
- id : (A : Type) -> A -> A = \_,a -> a ;
-
--- Parentheses
-
- paren : Str -> Str = \s -> "(" ++ s ++ ")" ;
- parenss : SS -> SS = \s -> ss (paren s.s) ;
-
--- Zero, one, two, or more (elements in a list etc)
-
-param
- ENumber = E0 | E1 | E2 | Emore ;
-
-oper
- eNext : ENumber -> ENumber = \e -> case e of {
- E0 => E1 ; E1 => E2 ; _ => Emore} ;
-
-
-}
diff --git a/deprecated/old-lib/resource/Make.hs b/deprecated/old-lib/resource/Make.hs
deleted file mode 100644
index eff24eb06..000000000
--- a/deprecated/old-lib/resource/Make.hs
+++ /dev/null
@@ -1,193 +0,0 @@
-module Main where
-
-import Control.Monad
-import Data.Maybe
-import System.Cmd
-import System.Directory
-import System.Environment
-import System.Exit
-
--- Make commands for compiling and testing resource grammars.
--- usage: runghc Make ((present? OPT?) | (clone FILE))? LANGS?
--- where
--- - OPT = (lang | api | math | pgf | test | demo | clean)
--- - LANGS has the form e.g. langs=Eng,Fin,Rus
--- - clone with a flag file=FILENAME clones the file to the specified languages,
--- by replacing the 3-letter language name of the original in both
--- the filename and the body
--- with each name in the list (default: all languages)
--- With no argument, lang and api are done, in this order.
--- See 'make' below for what is done by which command.
-
-default_gf = "../../dist/build/gf/gf"
-
-presApiPath = "-path=api:present"
-
--- the languages have long directory names and short ISO codes (3 letters)
--- we also give the decodings for postprocessing linearizations, as long as grammars
--- don't support all flags needed; they are used in tests
-
-langsCoding = [
- (("arabic", "Ara"),""),
- (("bulgarian","Bul"),""),
- (("catalan", "Cat"),""),
- (("danish", "Dan"),""),
- (("english", "Eng"),""),
- (("finnish", "Fin"),""),
- (("french", "Fre"),""),
- (("hindi", "Hin"),"to_devanagari"),
- (("german", "Ger"),""),
- (("interlingua","Ina"),""),
- (("italian", "Ita"),""),
- (("norwegian","Nor"),""),
- (("russian", "Rus"),""),
- (("spanish", "Spa"),""),
- (("swedish", "Swe"),""),
- (("thai", "Tha"),"to_thai")
- ]
-
-langs = map fst langsCoding
-
--- languagues for which to compile Lang
-langsLang = langs `except` ["Ara"]
-
--- languages for which to compile Try
-langsAPI = langsLang `except` ["Ara","Bul","Hin","Ina","Rus","Tha"]
-
--- languages for which to compile Mathematical
-langsMath = langsAPI
-
--- languages for which to run treebank test
-langsTest = langsLang `except` ["Ara","Bul","Cat","Hin","Rus","Spa","Tha"]
-
--- languages for which to run demo test
-langsDemo = langsLang `except` ["Ara","Hin","Ina","Tha"]
-
--- languages for which langs.pgf is built
-langsPGF = langsTest `only` ["Eng","Fre","Swe"]
-
--- languages for which Compatibility exists (to be extended)
-langsCompat = langsLang `only` ["Cat","Eng","Fin","Fre","Ita","Spa","Swe"]
-
-treebankExx = "exx-resource.gft"
-treebankResults = "exx-resource.gftb"
-
-main = do
- xx <- getArgs
- make xx
-
-make :: [String] -> IO ()
-make xx = do
- let ifx opt act = if null xx || elem opt xx then act >> return () else return ()
- let ifxx opt act = if elem opt xx then act >> return () else return ()
- let pres = elem "present" xx
- let dir = if pres then "../present" else "../alltenses"
-
- let optl ls = maybe ls id $ getOptLangs xx
-
- ifx "lang" $ do
- mapM_ (gfc pres [] . lang) (optl langsLang)
- copy "*/*.gfo" dir
- ifx "compat" $ do
- mapM_ (gfc pres [] . compat) (optl langsCompat)
- copy "*/Compatibility*.gfo" dir
- ifx "api" $ do
- mapM_ (gfc pres presApiPath . try) (optl langsAPI)
- copy "*/*.gfo" dir
- ifx "math" $ do
- mapM_ (gfc False [] . math) (optl langsMath)
- copy "mathematical/*.gfo" "../mathematical"
- mapM_ (gfc False [] . symbolic) (optl langsMath)
- copy "mathematical/Symbolic*.gfo" "../mathematical"
- ifxx "pgf" $ do
- run_gfc $ ["-s","--make","--name=langs","--parser=off",
- "--output-dir=" ++ dir]
- ++ [dir ++ "/Lang" ++ la ++ ".gfo" | (_,la) <- optl langsPGF]
- ifxx "test" $ do
- let ls = optl langsTest
- gf (treeb "Lang" ls) $ unwords [dir ++ "/Lang" ++ la ++ ".gfo" | (_,la) <- ls]
- ifxx "demo" $ do
- let ls = optl langsDemo
- gf (demos "Demo" ls) $ unwords ["demo/Demo" ++ la ++ ".gf" | (_,la) <- ls]
- ifxx "clean" $ do
- system "rm -f */*.gfo ../alltenses/*.gfo ../present/*.gfo"
- ifxx "clone" $ do
- let (pref,lang) = case getLangName xx of
- Just pl -> pl
- _ -> error "expected flag option file=ppppppLLL.gf"
- s <- readFile (pref ++ lang ++ ".gf")
- mapM_ (\la -> writeFile (pref ++ la ++ ".gf") (replaceLang lang la s)) (map snd (optl langs))
- return ()
-
-gfc pres ppath file = do
- let preproc = if pres then "-preproc=./mkPresent" else ""
- let path = if pres then ppath else ""
- putStrLn $ "Compiling " ++ file
- run_gfc ["-s","-src", preproc, path, file]
-
-gf comm file = do
- putStrLn $ "Reading " ++ file
- let cmd = "echo \"" ++ comm ++ "\" | gf -s " ++ file
- putStrLn cmd
- system cmd
-
-treeb abstr ls = "rf -lines -tree -file=" ++ treebankExx ++
- " | l -treebank " ++ unlexer abstr ls ++ " | wf -file=" ++ treebankResults
-
-demos abstr ls = "gr -number=100 | l -treebank " ++ unlexer abstr ls ++
- " | ps -to_html | wf -file=resdemo.html"
-
-lang (lla,la) = lla ++ "/All" ++ la ++ ".gf"
-compat (lla,la) = lla ++ "/Compatibility" ++ la ++ ".gf"
-try (lla,la) = "api/Try" ++ la ++ ".gf"
-math (lla,la) = "mathematical/Mathematical" ++ la ++ ".gf"
-symbolic (lla,la) = "mathematical/Symbolic" ++ la ++ ".gf"
-
-except ls es = filter (flip notElem es . snd) ls
-only ls es = filter (flip elem es . snd) ls
-
--- list of languages overriding the definitions above
-getOptLangs args = case [ls | a <- args, let (f,ls) = splitAt 6 a, f=="langs="] of
- ls:_ -> return $ findLangs $ seps ls
- _ -> Nothing
- where
- seps = words . map (\c -> if c==',' then ' ' else c)
- findLangs ls = [lang | lang@(_,la) <- langs, elem la ls]
-
--- the file name has the form p....pLLL.gf, i.e. 3-letter lang name, suffix .gf
-getLangName args = case [ls | a <- args, let (f,ls) = splitAt 5 a, f=="file="] of
- fi:_ -> let (nal,ferp) = splitAt 3 (drop 3 (reverse fi)) in return (reverse ferp,reverse nal)
- _ -> Nothing
-
-replaceLang s1 s2 = repl where
- repl s = case s of
- c:cs -> case splitAt lgs s of
- (pre,rest) | pre == s1 -> s2 ++ repl rest
- _ -> c : repl cs
- _ -> s
- lgs = 3 -- length s1
-
-unlexer abstr ls =
- "-unlexer=\\\"" ++ unwords
- [abstr ++ la ++ "=" ++ unl |
- lla@(_,la) <- ls, let unl = unlex lla, not (null unl)] ++
- "\\\""
- where
- unlex lla = maybe "" id $ lookup lla langsCoding
-
--- | Runs the gf executable in compile mode with the given arguments.
-run_gfc :: [String] -> IO ()
-run_gfc args =
- do let args' = ["-batch","-gf-lib-path=../"] ++ filter (not . null) args ++ ["+RTS"] ++ rts_flags ++ ["-RTS"]
- putStrLn $ "Running: " ++ default_gf ++ " " ++ unwords (map showArg args')
- e <- rawSystem default_gf args'
- case e of
- ExitSuccess -> return ()
- ExitFailure i -> putStrLn $ "gf exited with exit code: " ++ show i
- where rts_flags = ["-K100M"]
- showArg arg = "'" ++ arg ++ "'"
-
-copy :: String -> String -> IO ()
-copy from to =
- do system $ "cp " ++ from ++ " " ++ to
- return ()
diff --git a/deprecated/old-lib/resource/Makefile b/deprecated/old-lib/resource/Makefile
deleted file mode 100644
index 7c7d1900f..000000000
--- a/deprecated/old-lib/resource/Makefile
+++ /dev/null
@@ -1,49 +0,0 @@
-RUNGHC=runghc
-RUNMAKE=$(RUNGHC) Make.hs
-
-.PHONY: all present alltenses lang api math test demo synopsis link compiled clean
-
-all: link present alltenses math
-
-present:
- $(RUNMAKE) present lang
- $(RUNMAKE) present api
-
-alltenses:
- $(RUNMAKE) lang
- $(RUNMAKE) api
-
-lang:
- $(RUNMAKE) lang
-
-api:
- $(RUNMAKE) api
-
-math:
- $(RUNMAKE) math
-
-compat:
- gf -batch */Compatibility*.gf
- cp -p */Compatibility*.gfo ../alltenses/
- cp -p */Compatibility*.gfo ../present/
-# $(RUNMAKE) present compat
-# $(RUNMAKE) compat
-
-test:
- $(RUNMAKE) test
-
-demo:
- $(RUNMAKE) demo
-
-synopsis:
- cd doc ; $(RUNGHC) MkSynopsis ; cd ..
-
-link:
- chmod a+x mkPresent
-
-compiled:
- (cd .. && tar -zcf resource-compiled.tar.gz prelude alltenses present mathematical)
-
-clean:
- $(RUNMAKE) clean
-
diff --git a/deprecated/old-lib/resource/abstract/Adjective.gf b/deprecated/old-lib/resource/abstract/Adjective.gf
deleted file mode 100644
index 4255b7eee..000000000
--- a/deprecated/old-lib/resource/abstract/Adjective.gf
+++ /dev/null
@@ -1,30 +0,0 @@
---1 Adjective: Adjectives and Adjectival Phrases
-
-abstract Adjective = Cat ** {
-
- fun
-
--- The principal ways of forming an adjectival phrase are
--- positive, comparative, relational, reflexive-relational, and
--- elliptic-relational.
--- (The superlative use is covered in [Noun Noun.html].$SuperlA$.)
-
- PositA : A -> AP ; -- warm
- ComparA : A -> NP -> AP ; -- warmer than I
- ComplA2 : A2 -> NP -> AP ; -- married to her
- ReflA2 : A2 -> AP ; -- married to itself
- UseA2 : A2 -> A ; -- married
-
--- Sentence and question complements defined for all adjectival
--- phrases, although the semantics is only clear for some adjectives.
-
- SentAP : AP -> SC -> AP ; -- good that she is here
-
--- An adjectival phrase can be modified by an *adadjective*, such as "very".
-
- AdAP : AdA -> AP -> AP ; -- very warm
-
--- The formation of adverbs from adjective (e.g. "quickly") is covered
--- in [Adverb Adverb.html].
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Adverb.gf b/deprecated/old-lib/resource/abstract/Adverb.gf
deleted file mode 100644
index 3199d6888..000000000
--- a/deprecated/old-lib/resource/abstract/Adverb.gf
+++ /dev/null
@@ -1,32 +0,0 @@
---1 Adverb: Adverbs and Adverbial Phrases
-
-abstract Adverb = Cat ** {
-
- fun
-
--- The two main ways of forming adverbs are from adjectives and by
--- prepositions from noun phrases.
-
- PositAdvAdj : A -> Adv ; -- warmly
- PrepNP : Prep -> NP -> Adv ; -- in the house
-
--- Comparative adverbs have a noun phrase or a sentence as object of
--- comparison.
-
- ComparAdvAdj : CAdv -> A -> NP -> Adv ; -- more warmly than John
- ComparAdvAdjS : CAdv -> A -> S -> Adv ; -- more warmly than he runs
-
--- Adverbs can be modified by 'adadjectives', just like adjectives.
-
- AdAdv : AdA -> Adv -> Adv ; -- very quickly
-
--- Subordinate clauses can function as adverbs.
-
- SubjS : Subj -> S -> Adv ; -- when she sleeps
-
--- Comparison adverbs also work as numeral adverbs.
-
- AdnCAdv : CAdv -> AdN ; -- less (than five)
-
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Backward.gf b/deprecated/old-lib/resource/abstract/Backward.gf
deleted file mode 100644
index 458fb3010..000000000
--- a/deprecated/old-lib/resource/abstract/Backward.gf
+++ /dev/null
@@ -1,63 +0,0 @@
---1 Obsolete constructs included for backward-compatibility
-
-abstract Backward = Cat ** {
-
-
--- from Cat
-
-cat
- Slash ;
-
-fun
-
--- from Verb 19/4/2008
-
- ComplV2 : V2 -> NP -> VP ; -- use it
- ComplV3 : V3 -> NP -> NP -> VP ; -- send a message to her
- ComplV2V : V2V -> NP -> VP -> VP ; -- cause it to burn
- ComplV2S : V2S -> NP -> S -> VP ; -- tell me that it rains
- ComplV2Q : V2Q -> NP -> QS -> VP ; -- ask me who came
- ComplV2A : V2A -> NP -> AP -> VP ; -- paint it red
-
- ReflV2 : V2 -> VP ; -- use itself
-
- UseVQ : VQ -> V2 ; -- ask (a question)
- UseVS : VS -> V2 ; -- know (a secret)
-
-
--- from Sentence 19/4/2008
-
- SlashV2 : NP -> V2 -> Slash ; -- (whom) he sees
- SlashVVV2 : NP -> VV -> V2 -> Slash; -- (whom) he wants to see
-
--- from Noun 19/4/2008
-
- NumInt : Int -> Num ; -- 51
- OrdInt : Int -> Ord ; -- 51st (DEPRECATED)
- NoOrd : Ord ;
-
- -- 20/4
- DetSg : Quant -> Ord -> Det ; -- the best man
- DetPl : Quant -> Num -> Ord -> Det ; -- the five best men
- NoNum : Num ;
-
- -- 22/4
- DefArt : Quant ; -- the (house), the (houses)
- IndefArt : Quant ; -- a (house), (houses)
- MassDet : Quant ; -- (beer)
-
--- from Structural 19/4/2008
-
- that_NP : NP ;
- these_NP : NP ;
- this_NP : NP ;
- those_NP : NP ;
-
- whichPl_IDet : IDet ;
- whichSg_IDet : IDet ;
-
--- from Adverb
-
- AdvSC : SC -> Adv ; -- that he arrives ---- REMOVE?
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Cat.gf b/deprecated/old-lib/resource/abstract/Cat.gf
deleted file mode 100644
index 23b8f3b0e..000000000
--- a/deprecated/old-lib/resource/abstract/Cat.gf
+++ /dev/null
@@ -1,134 +0,0 @@
---1 Cat: the Category System
-
--- The category system is central to the library in the sense
--- that the other modules ($Adjective$, $Adverb$, $Noun$, $Verb$ etc)
--- communicate through it. This means that a e.g. a function using
--- $NP$s in $Verb$ need not know how $NP$s are constructed in $Noun$:
--- it is enough that both $Verb$ and $Noun$ use the same type $NP$,
--- which is given here in $Cat$.
---
--- Some categories are inherited from [``Common`` Common.html].
--- The reason they are defined there is that they have the same
--- implementation in all languages in the resource (typically,
--- just a string). These categories are
--- $AdA, AdN, AdV, Adv, Ant, CAdv, IAdv, PConj, Phr$,
--- $Pol, SC, Tense, Text, Utt, Voc$.
---
--- Moreover, the list categories $ListAdv, ListAP, ListNP, ListS$
--- are defined on $Conjunction$ and only used locally there.
-
-
-abstract Cat = Common ** {
-
- cat
-
---2 Sentences and clauses
-
--- Constructed in [Sentence Sentence.html], and also in
--- [Idiom Idiom.html].
-
- S ; -- declarative sentence e.g. "she lived here"
- QS ; -- question e.g. "where did she live"
- RS ; -- relative e.g. "in which she lived"
- Cl ; -- declarative clause, with all tenses e.g. "she looks at this"
- ClSlash;-- clause missing NP (S/NP in GPSG) e.g. "she looks at"
- SSlash ;-- sentence missing NP e.g. "she has looked at"
- Imp ; -- imperative e.g. "look at this"
-
---2 Questions and interrogatives
-
--- Constructed in [Question Question.html].
-
- QCl ; -- question clause, with all tenses e.g. "why does she walk"
- IP ; -- interrogative pronoun e.g. "who"
- IComp ; -- interrogative complement of copula e.g. "where"
- IDet ; -- interrogative determiner e.g. "how many"
- IQuant; -- interrogative quantifier e.g. "which"
-
---2 Relative clauses and pronouns
-
--- Constructed in [Relative Relative.html].
-
- RCl ; -- relative clause, with all tenses e.g. "in which she lives"
- RP ; -- relative pronoun e.g. "in which"
-
---2 Verb phrases
-
--- Constructed in [Verb Verb.html].
-
- VP ; -- verb phrase e.g. "is very warm"
- Comp ; -- complement of copula, such as AP e.g. "very warm"
- VPSlash ; -- verb phrase missing complement e.g. "give to John"
-
---2 Adjectival phrases
-
--- Constructed in [Adjective Adjective.html].
-
- AP ; -- adjectival phrase e.g. "very warm"
-
---2 Nouns and noun phrases
-
--- Constructed in [Noun Noun.html].
--- Many atomic noun phrases e.g. "everybody"
--- are constructed in [Structural Structural.html].
--- The determiner structure is
--- ``` Predet (QuantSg | QuantPl Num) Ord
--- as defined in [Noun Noun.html].
-
- CN ; -- common noun (without determiner) e.g. "red house"
- NP ; -- noun phrase (subject or object) e.g. "the red house"
- Pron ; -- personal pronoun e.g. "she"
- Det ; -- determiner phrase e.g. "those seven"
- Predet ; -- predeterminer (prefixed Quant) e.g. "all"
- Quant ; -- quantifier ('nucleus' of Det) e.g. "this/these"
- Art ; -- article e.g. "the"
- Num ; -- number determining element e.g. "seven"
- Card ; -- cardinal number e.g. "seven"
- Ord ; -- ordinal number (used in Det) e.g. "seventh"
-
---2 Numerals
-
--- Constructed in [Numeral Numeral.html].
-
- Numeral ; -- cardinal or ordinal in words e.g. "five/fifth"
- Digits ; -- cardinal or ordinal in digits e.g. "1,000/1,000th"
-
---2 Structural words
-
--- Constructed in [Structural Structural.html].
-
- Conj ; -- conjunction e.g. "and"
----b DConj ; -- distributed conjunction e.g. "both - and"
- Subj ; -- subjunction e.g. "if"
- Prep ; -- preposition, or just case e.g. "in"
-
---2 Words of open classes
-
--- These are constructed in [Lexicon Lexicon.html] and in
--- additional lexicon modules.
-
- V ; -- one-place verb e.g. "sleep"
- V2 ; -- two-place verb e.g. "love"
- V3 ; -- three-place verb e.g. "show"
- VV ; -- verb-phrase-complement verb e.g. "want"
- VS ; -- sentence-complement verb e.g. "claim"
- VQ ; -- question-complement verb e.g. "wonder"
- VA ; -- adjective-complement verb e.g. "look"
- V2V ; -- verb with NP and V complement e.g. "cause"
- V2S ; -- verb with NP and S complement e.g. "tell"
- V2Q ; -- verb with NP and Q complement e.g. "ask"
- V2A ; -- verb with NP and AP complement e.g. "paint"
-
- A ; -- one-place adjective e.g. "warm"
- A2 ; -- two-place adjective e.g. "divisible"
-
- N ; -- common noun e.g. "house"
- N2 ; -- relational noun e.g. "son"
- N3 ; -- three-place relational noun e.g. "connection"
- PN ; -- proper name e.g. "Paris"
-
--- DEPRECATED: QuantSg, QuantPl
---- QuantSg ;-- quantifier ('nucleus' of sing. Det) e.g. "every"
---- QuantPl ;-- quantifier ('nucleus' of plur. Det) e.g. "many"
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Common.gf b/deprecated/old-lib/resource/abstract/Common.gf
deleted file mode 100644
index 76bfd9cf4..000000000
--- a/deprecated/old-lib/resource/abstract/Common.gf
+++ /dev/null
@@ -1,61 +0,0 @@
---1 Common: Structures with Common Implementations.
-
--- This module defines the categories that uniformly have the linearization
--- ${s : Str}$ in all languages.
-
--- Moreover, this module defines the abstract parameters of tense, polarity, and
--- anteriority, which are used in [``Phrase`` Phrase.html] to generate different
--- forms of sentences. Together they give 4 x 2 x 2 = 16 sentence forms.
-
--- These tenses are defined for all languages in the library. More tenses
--- can be defined in the language extensions, e.g. the "pass simple" of
--- Romance languages in [``ExtraRomance`` ../romance/ExtraRomance.gf].
-
-abstract Common = {
-
- cat
-
---2 Top-level units
-
--- Constructed in [``Text`` Text.html]: $Text$.
-
- Text ; -- text consisting of several phrases e.g. "He is here. Why?"
-
--- Constructed in [``Phrase`` Phrase.html]:
-
- Phr ; -- phrase in a text e.g. "but be quiet please"
- Utt ; -- sentence, question, word... e.g. "be quiet"
- Voc ; -- vocative or "please" e.g. "my darling"
- PConj ; -- phrase-beginning conjunction e.g. "therefore"
-
--- Constructed in [``Sentence`` Sentence.html]:
-
- SC ; -- embedded sentence or question e.g. "that it rains"
-
---2 Adverbs
-
--- Constructed in [``Adverb`` Adverb.html].
--- Many adverbs are constructed in [``Structural`` Structural.html].
-
- Adv ; -- verb-phrase-modifying adverb e.g. "in the house"
- AdV ; -- adverb directly attached to verb e.g. "always"
- AdA ; -- adjective-modifying adverb e.g. "very"
- AdN ; -- numeral-modifying adverb e.g. "more than"
- IAdv ; -- interrogative adverb e.g. "why"
- CAdv ; -- comparative adverb e.g. "more"
-
---2 Tense, polarity, and anteriority
-
- Tense ; -- tense e.g. present, past, future
- Pol ; -- polarity e.g. positive, negative
- Ant ; -- anteriority e.g. simultaneous, anterior
-
- fun
- PPos, PNeg : Pol ; -- I sleep/don't sleep
-
- TPres : Tense ;
- ASimul : Ant ;
- TPast, TFut, TCond : Tense ; -- I slept/will sleep/would sleep --# notpresent
- AAnter : Ant ; -- I have slept --# notpresent
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Compatibility.gf b/deprecated/old-lib/resource/abstract/Compatibility.gf
deleted file mode 100644
index a4af7d4f5..000000000
--- a/deprecated/old-lib/resource/abstract/Compatibility.gf
+++ /dev/null
@@ -1,9 +0,0 @@
-abstract Compatibility = Cat ** {
-
--- from Noun 19/4/2008
-
-fun
- NumInt : Int -> Num ; -- 57
- OrdInt : Int -> Ord ; -- 57
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Conjunction.gf b/deprecated/old-lib/resource/abstract/Conjunction.gf
deleted file mode 100644
index 4c2183919..000000000
--- a/deprecated/old-lib/resource/abstract/Conjunction.gf
+++ /dev/null
@@ -1,52 +0,0 @@
---1 Conjunction: Coordination
-
--- Coordination is defined for many different categories; here is
--- a sample. The rules apply to *lists* of two or more elements,
--- and define two general patterns:
--- - ordinary conjunction: X,...X and X
--- - distributed conjunction: both X,...,X and X
---
---
--- $VP$ conjunctions are not covered here, because their applicability
--- depends on language. Some special cases are defined in
--- [``Extra`` ../abstract/Extra.gf].
-
-
-abstract Conjunction = Cat ** {
-
---2 Rules
-
- fun
- ConjS : Conj -> [S] -> S ; -- "he walks and she runs"
- ConjAP : Conj -> [AP] -> AP ; -- "cold and warm"
- ConjNP : Conj -> [NP] -> NP ; -- "she or we"
- ConjAdv : Conj -> [Adv] -> Adv ; -- "here or there"
-
----b DConjS : DConj -> [S] -> S ; -- "either he walks or she runs"
----b DConjAP : DConj -> [AP] -> AP ; -- "both warm and cold"
----b DConjNP : DConj -> [NP] -> NP ; -- "either he or she"
----b DConjAdv : DConj -> [Adv] -> Adv; -- "both here and there"
-
---2 Categories
-
--- These categories are only used in this module.
-
- cat
- [S]{2} ;
- [Adv]{2} ;
- [NP]{2} ;
- [AP]{2} ;
-
---2 List constructors
-
--- The list constructors are derived from the list notation and therefore
--- not given explicitly. But here are their type signatures:
-
- -- BaseC : C -> C -> [C] ; -- for C = S, AP, NP, Adv
- -- ConsC : C -> [C] -> [C] ;
-}
-
---.
--- *Note*. This module uses right-recursive lists. If backward
--- compatibility with API 0.9 is needed, use
--- [SeqConjunction SeqConjunction.html].
diff --git a/deprecated/old-lib/resource/abstract/Extra.gf b/deprecated/old-lib/resource/abstract/Extra.gf
deleted file mode 100644
index b0601019f..000000000
--- a/deprecated/old-lib/resource/abstract/Extra.gf
+++ /dev/null
@@ -1,30 +0,0 @@
---1 More syntax rules
-
--- This module defines syntax rules that are not implemented in all
--- languages, but in more than one, so that it makes sense to offer a
--- common API.
-
-abstract Extra = Cat ** {
-
- fun
- GenNP : NP -> Quant ; -- this man's
- ComplBareVS : VS -> S -> VP ; -- know you go
-
- StrandRelSlash : RP -> ClSlash -> RCl ; -- that he lives in
- EmptyRelSlash : RP -> ClSlash -> RCl ; -- he lives in
- StrandQuestSlash : IP -> ClSlash -> QCl ; -- whom does John live with
-
--- $VP$ conjunction, which has different fragments implemented in
--- different languages - never a full $VP$, though.
-
- cat
- VPI ;
- [VPI] {2} ;
-
- fun
- MkVPI : VP -> VPI ;
- ConjVPI : Conj -> [VPI] -> VPI ;
- ComplVPIVV : VV -> VPI -> VP ;
-
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Grammar.gf b/deprecated/old-lib/resource/abstract/Grammar.gf
deleted file mode 100644
index a1edd59df..000000000
--- a/deprecated/old-lib/resource/abstract/Grammar.gf
+++ /dev/null
@@ -1,22 +0,0 @@
---1 Grammar: the Main Module of the Resource Grammar
-
--- This grammar is a collection of the different grammar modules,
--- To test the resource, import [``Lang`` Lang.html], which also contains
--- a lexicon.
-
-abstract Grammar =
- Noun,
- Verb,
- Adjective,
- Adverb,
- Numeral,
- Sentence,
- Question,
- Relative,
- Conjunction,
- Phrase,
- Text,
- Structural,
- Idiom ;
-
-
diff --git a/deprecated/old-lib/resource/abstract/Idiom.gf b/deprecated/old-lib/resource/abstract/Idiom.gf
deleted file mode 100644
index 6b012becc..000000000
--- a/deprecated/old-lib/resource/abstract/Idiom.gf
+++ /dev/null
@@ -1,22 +0,0 @@
---1 Idiom: Idiomatic Expressions
-
-abstract Idiom = Cat ** {
-
--- This module defines constructions that are formed in fixed ways,
--- often different even in closely related languages.
-
- fun
- ImpersCl : VP -> Cl ; -- it is hot
- GenericCl : VP -> Cl ; -- one sleeps
-
- CleftNP : NP -> RS -> Cl ; -- it is I who did it
- CleftAdv : Adv -> S -> Cl ; -- it is here she slept
-
- ExistNP : NP -> Cl ; -- there is a house
- ExistIP : IP -> QCl ; -- which houses are there
-
- ProgrVP : VP -> VP ; -- be sleeping
-
- ImpPl1 : VP -> Utt ; -- let's go
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Lang.gf b/deprecated/old-lib/resource/abstract/Lang.gf
deleted file mode 100644
index 978d970ad..000000000
--- a/deprecated/old-lib/resource/abstract/Lang.gf
+++ /dev/null
@@ -1,13 +0,0 @@
---1 Lang: a Test Module for the Resource Grammar
-
--- This grammar is for testing the resource as included in the
--- language-independent API, consisting of a grammar and a lexicon.
--- The grammar without a lexicon is [``Grammar`` Grammar.html],
--- which may be more suitable to open in applications.
-
-abstract Lang =
- Grammar,
- Lexicon
- ** {
- flags startcat=Phr ;
- } ;
diff --git a/deprecated/old-lib/resource/abstract/Lexicon.gf b/deprecated/old-lib/resource/abstract/Lexicon.gf
deleted file mode 100644
index 59b844ec9..000000000
--- a/deprecated/old-lib/resource/abstract/Lexicon.gf
+++ /dev/null
@@ -1,356 +0,0 @@
-abstract Lexicon = Cat ** {
-fun
- add_V3 : V3 ;
- airplane_N : N ;
- already_Adv : Adv ;
- animal_N : N ;
- answer_V2S : V2S ;
- apartment_N : N ;
- apple_N : N ;
- art_N : N ;
- ashes_N : N ;
- ask_V2Q : V2Q ;
- baby_N : N ;
- back_N : N ;
- bad_A : A ;
- bank_N : N ;
- bark_N : N ;
- beautiful_A : A ;
- become_VA : VA ;
- beer_N : N ;
- beg_V2V : V2V ;
- belly_N : N ;
- big_A : A ;
- bike_N : N ;
- bird_N : N ;
- bite_V2 : V2 ;
- black_A : A ;
- blood_N : N ;
- blow_V : V ;
- blue_A : A ;
- boat_N : N ;
- bone_N : N ;
- book_N : N ;
- boot_N : N ;
- boss_N : N ;
- boy_N : N ;
- bread_N : N ;
- break_V2 : V2 ;
- breast_N : N ;
- breathe_V : V ;
- broad_A : A ;
- brother_N2 : N2 ;
- brown_A : A ;
- burn_V : V ;
- butter_N : N ;
- buy_V2 : V2 ;
- camera_N : N ;
- cap_N : N ;
- car_N : N ;
- carpet_N : N ;
- cat_N : N ;
- ceiling_N : N ;
- chair_N : N ;
- cheese_N : N ;
- child_N : N ;
- church_N : N ;
- city_N : N ;
- clean_A : A ;
- clever_A : A ;
- close_V2 : V2 ;
- cloud_N : N ;
- coat_N : N ;
- cold_A : A ;
- come_V : V ;
- computer_N : N ;
- correct_A : A ;
- country_N : N ;
- count_V2 : V2 ;
- cousin_N : N ;
- cow_N : N ;
- cut_V2 : V2 ;
- day_N : N ;
- die_V : V ;
- dig_V : V ;
- dirty_A : A ;
- distance_N3 : N3 ;
- doctor_N : N ;
- dog_N : N ;
- door_N : N ;
- do_V2 : V2 ;
- drink_V2 : V2 ;
- drink_V2 : V2 ;
- dry_A : A ;
- dull_A : A ;
- dust_N : N ;
- ear_N : N ;
- earth_N : N ;
- easy_A2V : A2 ;
- eat_V2 : V2 ;
- eat_V2 : V2 ;
- egg_N : N ;
- empty_A : A ;
- enemy_N : N ;
- eye_N : N ;
- factory_N : N ;
- fall_V : V ;
- far_Adv : Adv ;
- father_N2 : N2 ;
- fat_N : N ;
- fear_VS : VS ;
- fear_V2 : V2 ;
- feather_N : N ;
- fight_V2 : V2 ;
- find_V2 : V2 ;
- fingernail_N : N ;
- fire_N : N ;
- fish_N : N ;
- float_V : V ;
- floor_N : N ;
- flower_N : N ;
- flow_V : V ;
- fly_V : V ;
- fog_N : N ;
- foot_N : N ;
- forest_N : N ;
- forget_V2 : V2 ;
- freeze_V : V ;
- fridge_N : N ;
- friend_N : N ;
- fruit_N : N ;
- full_A : A ;
- fun
- fun_AV : A ;
- garden_N : N ;
- girl_N : N ;
- give_V3 : V3 ;
- glove_N : N ;
- gold_N : N ;
- good_A : A ;
- go_V : V ;
- grammar_N : N ;
- grass_N : N ;
- green_A : A ;
- guts_N : N ;
- hair_N : N ;
- hand_N : N ;
- harbour_N : N ;
- hate_V2 : V2 ;
- hat_N : N ;
- have_V2 : V2 ;
- head_N : N ;
- heart_N : N ;
- hear_V2 : V2 ;
- hear_V2 : V2 ;
- heavy_A : A ;
- hill_N : N ;
- hit_V2 : V2 ;
- hold_V2 : V2 ;
- hope_VS : VS ;
- horn_N : N ;
- horse_N : N ;
- hot_A : A ;
- house_N : N ;
- hunt_V2 : V2 ;
- husband_N : N ;
- ice_N : N ;
- important_A : A ;
- industry_N : N ;
- iron_N : N ;
- john_PN : PN ;
- jump_V : V ;
- kill_V2 : V2 ;
- king_N : N ;
- knee_N : N ;
- know_V2 : V2 ;
- know_V2 : V2 ;
- lake_N : N ;
- lamp_N : N ;
- language_N : N ;
- laugh_V : V ;
- leaf_N : N ;
- learn_V2 : V2 ;
- leather_N : N ;
- leave_V2 : V2 ;
- left_Ord : Ord ;
- leg_N : N ;
- lie_V : V ;
- like_V2 : V2 ;
- listen_V2 : V2 ;
- liver_N : N ;
- live_V : V ;
- long_A : A ;
- lose_V2 : V2 ;
- louse_N : N ;
- love_N : N ;
- love_V2 : V2 ;
- man_N : N ;
- married_A2 : A2 ;
- meat_N : N ;
- milk_N : N ;
- moon_N : N ;
- mother_N2 : N2 ;
- mountain_N : N ;
- mouth_N : N ;
- music_N : N ;
- name_N : N ;
- narrow_A : A ;
- near_A : A ;
- neck_N : N ;
- new_A : A ;
- newspaper_N : N ;
- night_N : N ;
- nose_N : N ;
- now_Adv : Adv ;
- number_N : N ;
- oil_N : N ;
- old_A : A ;
- open_V2 : V2 ;
- paint_V2A : V2A ;
- paper_N : N ;
- paris_PN : PN ;
- peace_N : N ;
- pen_N : N ;
- person_N : N ;
- planet_N : N ;
- plastic_N : N ;
- play_V2 : V2 ;
- play_V : V ;
- policeman_N : N ;
- priest_N : N ;
- probable_AS : A ;
- pull_V2 : V2 ;
- push_V2 : V2 ;
- put_V2 : V2 ;
- queen_N : N ;
- question_N : N ;
- radio_N : N ;
- rain_N : N ;
- rain_V0 : V ;
- read_V2 : V2 ;
- ready_A : A ;
- reason_N : N ;
- red_A : A ;
- religion_N : N ;
- restaurant_N : N ;
- right_Ord : Ord ;
- river_N : N ;
- road_N : N ;
- rock_N : N ;
- roof_N : N ;
- root_N : N ;
- rope_N : N ;
- rotten_A : A ;
- round_A : A ;
- rubber_N : N ;
- rub_V2 : V2 ;
- rule_N : N ;
- run_V : V ;
- salt_N : N ;
- sand_N : N ;
- say_VS : VS ;
- school_N : N ;
- science_N : N ;
- scratch_V2 : V2 ;
- sea_N : N ;
- seed_N : N ;
- seek_V2 : V2 ;
- see_V2 : V2 ;
- see_V2 : V2 ;
- sell_V3 : V3 ;
- send_V3 : V3 ;
- sew_V : V ;
- sharp_A : A ;
- sheep_N : N ;
- ship_N : N ;
- shirt_N : N ;
- shoe_N : N ;
- shop_N : N ;
- short_A : A ;
- silver_N : N ;
- sing_V : V ;
- sister_N : N ;
- sit_V : V ;
- skin_N : N ;
- sky_N : N ;
- sleep_V : V ;
- small_A : A ;
- smell_V : V ;
- smoke_N : N ;
- smooth_A : A ;
- snake_N : N ;
- snow_N : N ;
- sock_N : N ;
- song_N : N ;
- speak_V2 : V2 ;
- spit_V : V ;
- split_V2 : V2 ;
- squeeze_V2 : V2 ;
- stab_V2 : V2 ;
- stand_V : V ;
- star_N : N ;
- steel_N : N ;
- stick_N : N ;
- stone_N : N ;
- stop_V : V ;
- stove_N : N ;
- straight_A : A ;
- student_N : N ;
- stupid_A : A ;
- suck_V2 : V2 ;
- sun_N : N ;
- swell_V : V ;
- swim_V : V ;
- switch8off_V2 : V2 ;
- switch8on_V2 : V2 ;
- table_N : N ;
- tail_N : N ;
- talk_V3 : V3 ;
- teacher_N : N ;
- teach_V2 : V2 ;
- television_N : N ;
- thick_A : A ;
- thin_A : A ;
- think_V : V ;
- throw_V2 : V2 ;
- tie_V2 : V2 ;
- today_Adv : Adv ;
- tongue_N : N ;
- tooth_N : N ;
- train_N : N ;
- travel_V : V ;
- tree_N : N ;
- turn_V : V ;
- ugly_A : A ;
- uncertain_A : A ;
- understand_V2 : V2 ;
- university_N : N ;
- village_N : N ;
- vomit_V : V ;
- wait_V2 : V2 ;
- walk_V : V ;
- warm_A : A ;
- war_N : N ;
- wash_V2 : V2 ;
- watch_V2 : V2 ;
- water_N : N ;
- wet_A : A ;
- white_A : A ;
- wide_A : A ;
- wife_N : N ;
- wind_N : N ;
- window_N : N ;
- wine_N : N ;
- wing_N : N ;
- win_V2 : V2 ;
- wipe_V2 : V2 ;
- woman_N : N ;
- wonder_VQ : VQ ;
- wood_N : N ;
- worm_N : N ;
- write_V2 : V2 ;
- year_N : N ;
- yellow_A : A ;
- young_A : A ;
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Noun.gf b/deprecated/old-lib/resource/abstract/Noun.gf
deleted file mode 100644
index 9e93f053e..000000000
--- a/deprecated/old-lib/resource/abstract/Noun.gf
+++ /dev/null
@@ -1,144 +0,0 @@
---1 Noun: Nouns, noun phrases, and determiners
-
-abstract Noun = Cat ** {
-
-
---2 Noun phrases
-
--- The three main types of noun phrases are
--- - common nouns with determiners
--- - proper names
--- - pronouns
---
---
- fun
- DetCN : Det -> CN -> NP ; -- the man
- UsePN : PN -> NP ; -- John
- UsePron : Pron -> NP ; -- he
-
--- Pronouns are defined in the module [``Structural`` Structural.html].
-
--- A noun phrase already formed can be modified by a $Predet$erminer.
-
- PredetNP : Predet -> NP -> NP; -- only the man
-
--- A noun phrase can also be postmodified by the past participle of a
--- verb, by an adverb, or by a relative clause
-
- PPartNP : NP -> V2 -> NP ; -- the man seen
- AdvNP : NP -> Adv -> NP ; -- Paris today
- RelNP : NP -> RS -> NP ; -- Paris, which is here
-
--- Determiners can form noun phrases directly.
-
- DetNP : Det -> NP ; -- these five
-
-
---2 Determiners
-
--- The determiner has a fine-grained structure, in which a 'nucleus'
--- quantifier and two optional parts can be discerned: a cardinal and
--- an ordinal numeral.
-
- DetQuantOrd : Quant -> Num -> Ord -> Det ; -- these five best
- DetQuant : Quant -> Num -> Det ; -- these five
-
--- Whether the resulting determiner is singular or plural depends on the
--- cardinal.
-
--- All parts of the determiner can be empty, except $Quant$, which is
--- the "kernel" of a determiner. It is, however, the $Num$ that determines
--- the inherent number.
-
- NumSg : Num ;
- NumPl : Num ;
- NumCard : Card -> Num ;
-
--- $Card$ consists of either digits or numeral words.
-
- NumDigits : Digits -> Card ; -- 51
- NumNumeral : Numeral -> Card ; -- fifty-one
-
--- The construction of numerals is defined in [Numeral Numeral.html].
-
--- A $Card$ can be modified by certain adverbs.
-
- AdNum : AdN -> Card -> Card ; -- almost 51
-
--- An $Ord$ consists of either digits or numeral words.
--- Also superlative forms of adjectives behave syntactically like ordinals.
-
- OrdDigits : Digits -> Ord ; -- 51st
- OrdNumeral : Numeral -> Ord ; -- fifty-first
- OrdSuperl : A -> Ord ; -- warmest
-
--- Definite and indefinite noun phrases are sometimes realized as
--- neatly distinct words (Spanish "un, unos ; el, los") but also without
--- any particular word (Finnish; Swedish definites).
-
- DetArtOrd : Art -> Num -> Ord -> Det ; -- the (five) best
- DetArtCard : Art -> Card -> Det ; -- the five
-
- IndefArt : Art ;
- DefArt : Art ;
-
--- Articles cannot alone form noun phrases, but need a noun.
-
- DetArtSg : Art -> CN -> NP ; -- the man
- DetArtPl : Art -> CN -> NP ; -- the men
-
--- Nouns can be used without an article as mass nouns. The resource does
--- not distinguish mass nouns from other common nouns, which can result
--- in semantically odd expressions.
-
- MassNP : CN -> NP ; -- (beer)
-
--- Pronouns have possessive forms. Genitives of other kinds
--- of noun phrases are not given here, since they are not possible
--- in e.g. Romance languages. They can be found in $Extra$ modules.
-
- PossPron : Pron -> Quant ; -- my (house)
-
--- Other determiners are defined in [Structural Structural.html].
-
-
-
---2 Common nouns
-
--- Simple nouns can be used as nouns outright.
-
- UseN : N -> CN ; -- house
-
--- Relational nouns take one or two arguments.
-
- ComplN2 : N2 -> NP -> CN ; -- mother of the king
- ComplN3 : N3 -> NP -> N2 ; -- distance from this city (to Paris)
-
--- Relational nouns can also be used without their arguments.
--- The semantics is typically derivative of the relational meaning.
-
- UseN2 : N2 -> CN ; -- mother
- Use2N3 : N3 -> N2 ; -- distance (from this city)
- Use3N3 : N3 -> N2 ; -- distance (to Paris)
-
--- Nouns can be modified by adjectives, relative clauses, and adverbs
--- (the last rule will give rise to many 'PP attachment' ambiguities
--- when used in connection with verb phrases).
-
- AdjCN : AP -> CN -> CN ; -- big house
- RelCN : CN -> RS -> CN ; -- house that John bought
- AdvCN : CN -> Adv -> CN ; -- house on the hill
-
--- Nouns can also be modified by embedded sentences and questions.
--- For some nouns this makes little sense, but we leave this for applications
--- to decide. Sentential complements are defined in [Verb Verb.html].
-
- SentCN : CN -> SC -> CN ; -- question where she sleeps
-
---2 Apposition
-
--- This is certainly overgenerating.
-
- ApposCN : CN -> NP -> CN ; -- city Paris (, numbers x and y)
-
-} ;
diff --git a/deprecated/old-lib/resource/abstract/Numeral.gf b/deprecated/old-lib/resource/abstract/Numeral.gf
deleted file mode 100644
index 43c6f8111..000000000
--- a/deprecated/old-lib/resource/abstract/Numeral.gf
+++ /dev/null
@@ -1,60 +0,0 @@
---1 Numerals
-
--- This grammar defines numerals from 1 to 999999.
--- The implementations are adapted from the
--- [numerals library http://www.cs.chalmers.se/~aarne/GF/examples/numerals/]
--- which defines numerals for 88 languages.
--- The resource grammar implementations add to this inflection (if needed)
--- and ordinal numbers.
---
--- *Note* 1. Number 1 as defined
--- in the category $Numeral$ here should not be used in the formation of
--- noun phrases, and should therefore be removed. Instead, one should use
--- [Structural Structural.html]$.one_Quant$. This makes the grammar simpler
--- because we can assume that numbers form plural noun phrases.
---
--- *Note* 2. The implementations introduce spaces between
--- parts of a numeral, which is often incorrect - more work on
--- (un)lexing is needed to solve this problem.
-
-abstract Numeral = Cat ** {
-
-cat
- Digit ; -- 2..9
- Sub10 ; -- 1..9
- Sub100 ; -- 1..99
- Sub1000 ; -- 1..999
- Sub1000000 ; -- 1..999999
-
-fun
- num : Sub1000000 -> Numeral ;
-
- n2, n3, n4, n5, n6, n7, n8, n9 : Digit ;
-
- pot01 : Sub10 ; -- 1
- pot0 : Digit -> Sub10 ; -- d * 1
- pot110 : Sub100 ; -- 10
- pot111 : Sub100 ; -- 11
- pot1to19 : Digit -> Sub100 ; -- 10 + d
- pot0as1 : Sub10 -> Sub100 ; -- coercion of 1..9
- pot1 : Digit -> Sub100 ; -- d * 10
- pot1plus : Digit -> Sub10 -> Sub100 ; -- d * 10 + n
- pot1as2 : Sub100 -> Sub1000 ; -- coercion of 1..99
- pot2 : Sub10 -> Sub1000 ; -- m * 100
- pot2plus : Sub10 -> Sub100 -> Sub1000 ; -- m * 100 + n
- pot2as3 : Sub1000 -> Sub1000000 ; -- coercion of 1..999
- pot3 : Sub1000 -> Sub1000000 ; -- m * 1000
- pot3plus : Sub1000 -> Sub1000 -> Sub1000000 ; -- m * 1000 + n
-
--- Numerals as sequences of digits have a separate, simpler grammar
-
- cat
- Dig ; -- single digit 0..9
-
- fun
- IDig : Dig -> Digits ; -- 8
- IIDig : Dig -> Digits -> Digits ; -- 876
-
- D_0, D_1, D_2, D_3, D_4, D_5, D_6, D_7, D_8, D_9 : Dig ;
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Phrase.gf b/deprecated/old-lib/resource/abstract/Phrase.gf
deleted file mode 100644
index 3606c2d76..000000000
--- a/deprecated/old-lib/resource/abstract/Phrase.gf
+++ /dev/null
@@ -1,44 +0,0 @@
---1 Phrase: Phrases and Utterances
-
-abstract Phrase = Cat ** {
-
--- When a phrase is built from an utterance it can be prefixed
--- with a phrasal conjunction (such as "but", "therefore")
--- and suffixing with a vocative (typically a noun phrase).
-
- fun
- PhrUtt : PConj -> Utt -> Voc -> Phr ; -- but come here, my friend
-
--- Utterances are formed from sentences, questions, and imperatives.
-
- UttS : S -> Utt ; -- John walks
- UttQS : QS -> Utt ; -- is it good
- UttImpSg : Pol -> Imp -> Utt; -- (don't) love yourself
- UttImpPl : Pol -> Imp -> Utt; -- (don't) love yourselves
- UttImpPol : Pol -> Imp -> Utt ; -- (don't) sleep (polite)
-
--- There are also 'one-word utterances'. A typical use of them is
--- as answers to questions.
--- *Note*. This list is incomplete. More categories could be covered.
--- Moreover, in many languages e.g. noun phrases in different cases
--- can be used.
-
- UttIP : IP -> Utt ; -- who
- UttIAdv : IAdv -> Utt ; -- why
- UttNP : NP -> Utt ; -- this man
- UttAdv : Adv -> Utt ; -- here
- UttVP : VP -> Utt ; -- to sleep
-
--- The phrasal conjunction is optional. A sentence conjunction
--- can also used to prefix an utterance.
-
- NoPConj : PConj ;
- PConjConj : Conj -> PConj ; -- and
-
--- The vocative is optional. Any noun phrase can be made into vocative,
--- which may be overgenerating (e.g. "I").
-
- NoVoc : Voc ;
- VocNP : NP -> Voc ; -- my friend
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Question.gf b/deprecated/old-lib/resource/abstract/Question.gf
deleted file mode 100644
index 6b2e3c01d..000000000
--- a/deprecated/old-lib/resource/abstract/Question.gf
+++ /dev/null
@@ -1,41 +0,0 @@
---1 Question: Questions and Interrogative Pronouns
-
-abstract Question = Cat ** {
-
--- A question can be formed from a clause ('yes-no question') or
--- with an interrogative.
-
- fun
- QuestCl : Cl -> QCl ; -- does John walk
- QuestVP : IP -> VP -> QCl ; -- who walks
- QuestSlash : IP -> ClSlash -> QCl ; -- whom does John love
- QuestIAdv : IAdv -> Cl -> QCl ; -- why does John walk
- QuestIComp : IComp -> NP -> QCl ; -- where is John
-
--- Interrogative pronouns can be formed with interrogative
--- determiners, with or without a noun.
-
- IdetCN : IDet -> CN -> IP ; -- which five songs
- IdetIP : IDet -> IP ; -- which five
-
--- They can be modified with adverbs.
-
- AdvIP : IP -> Adv -> IP ; -- who in Paris
-
--- Interrogative quantifiers have number forms and can take number modifiers.
-
- IdetQuant : IQuant -> Num -> IDet ; -- which (five)
-
--- Interrogative adverbs can be formed prepositionally.
-
- PrepIP : Prep -> IP -> IAdv ; -- with whom
-
--- Interrogative complements to copulas can be both adverbs and
--- pronouns.
-
- CompIAdv : IAdv -> IComp ; -- where (is it)
- CompIP : IP -> IComp ; -- who (is it)
-
--- More $IP$, $IDet$, and $IAdv$ are defined in $Structural$.
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Relative.gf b/deprecated/old-lib/resource/abstract/Relative.gf
deleted file mode 100644
index 6db45d085..000000000
--- a/deprecated/old-lib/resource/abstract/Relative.gf
+++ /dev/null
@@ -1,26 +0,0 @@
---1 Relative clauses and pronouns
-
-abstract Relative = Cat ** {
-
- fun
-
--- The simplest way to form a relative clause is from a clause by
--- a pronoun similar to "such that".
-
- RelCl : Cl -> RCl ; -- such that John loves her
-
--- The more proper ways are from a verb phrase
--- (formed in [``Verb`` Verb.html]) or a sentence
--- with a missing noun phrase (formed in [``Sentence`` Sentence.html]).
-
- RelVP : RP -> VP -> RCl ; -- who loves John
- RelSlash : RP -> ClSlash -> RCl ; -- whom John loves
-
--- Relative pronouns are formed from an 'identity element' by prefixing
--- or suffixing (depending on language) prepositional phrases.
-
- IdRP : RP ; -- which
- FunRP : Prep -> NP -> RP -> RP ; -- the mother of whom
-
-}
-
diff --git a/deprecated/old-lib/resource/abstract/Sentence.gf b/deprecated/old-lib/resource/abstract/Sentence.gf
deleted file mode 100644
index 1f771e12c..000000000
--- a/deprecated/old-lib/resource/abstract/Sentence.gf
+++ /dev/null
@@ -1,95 +0,0 @@
---1 Sentence: Sentences, Clauses, and Imperatives
-
-abstract Sentence = Cat ** {
-
---2 Clauses
-
--- The $NP VP$ predication rule form a clause whose linearization
--- gives a table of all tense variants, positive and negative.
--- Clauses are converted to $S$ (with fixed tense) with the
--- $UseCl$ function below.
-
- fun
- PredVP : NP -> VP -> Cl ; -- John walks
-
--- Using an embedded sentence as a subject is treated separately.
--- This can be overgenerating. E.g. "whether you go" as subject
--- is only meaningful for some verb phrases.
-
- PredSCVP : SC -> VP -> Cl ; -- that she goes is good
-
---2 Clauses missing object noun phrases
-
--- This category is a variant of the 'slash category' $S/NP$ of
--- GPSG and categorial grammars, which in turn replaces
--- movement transformations in the formation of questions
--- and relative clauses. Except $SlashV2$, the construction
--- rules can be seen as special cases of function composition, in
--- the style of CCG.
--- *Note* the set is not complete and lacks e.g. verbs with more than 2 places.
-
- SlashVP : NP -> VPSlash -> ClSlash ; -- (whom) he sees
- AdvSlash : ClSlash -> Adv -> ClSlash ; -- (whom) he sees today
- SlashPrep : Cl -> Prep -> ClSlash ; -- (with whom) he walks
- SlashVS : NP -> VS -> SSlash -> ClSlash ; -- (whom) she says that he loves
-
---2 Imperatives
-
--- An imperative is straightforwardly formed from a verb phrase.
--- It has variation over positive and negative, singular and plural.
--- To fix these parameters, see [Phrase Phrase.html].
-
- ImpVP : VP -> Imp ; -- love yourselves
-
---2 Embedded sentences
-
--- Sentences, questions, and infinitival phrases can be used as
--- subjects and (adverbial) complements.
-
- EmbedS : S -> SC ; -- that she goes
- EmbedQS : QS -> SC ; -- who goes
- EmbedVP : VP -> SC ; -- to go
-
---2 Sentences
-
--- These are the 2 x 4 x 4 = 16 forms generated by different
--- combinations of tense, polarity, and
--- anteriority, which are defined in [``Common`` Common.html].
-
- fun
- UseCl : Tense -> Ant -> Pol -> Cl -> S ;
- UseQCl : Tense -> Ant -> Pol -> QCl -> QS ;
- UseRCl : Tense -> Ant -> Pol -> RCl -> RS ;
- UseSlash : Tense -> Ant -> Pol -> ClSlash -> SSlash ;
-
--- An adverb can be added to the beginning of a sentence.
-
- AdvS : Adv -> S -> S ; -- today, I will go home
-
--- A sentence can be modified by a relative clause referring to its contents.
-
- RelS : S -> RS -> S ; -- she sleeps, which is good
-
-}
-
---.
-
--- Examples for English $S$/$Cl$:
-{-
- Pres Simul Pos ODir : he sleeps
- Pres Simul Neg ODir : he doesn't sleep
- Pres Anter Pos ODir : he has slept
- Pres Anter Neg ODir : he hasn't slept
- Past Simul Pos ODir : he slept
- Past Simul Neg ODir : he didn't sleep
- Past Anter Pos ODir : he had slept
- Past Anter Neg ODir : he hadn't slept
- Fut Simul Pos ODir : he will sleep
- Fut Simul Neg ODir : he won't sleep
- Fut Anter Pos ODir : he will have slept
- Fut Anter Neg ODir : he won't have slept
- Cond Simul Pos ODir : he would sleep
- Cond Simul Neg ODir : he wouldn't sleep
- Cond Anter Pos ODir : he would have slept
- Cond Anter Neg ODir : he wouldn't have slept
--}
diff --git a/deprecated/old-lib/resource/abstract/Structural.gf b/deprecated/old-lib/resource/abstract/Structural.gf
deleted file mode 100644
index d616ba9d5..000000000
--- a/deprecated/old-lib/resource/abstract/Structural.gf
+++ /dev/null
@@ -1,111 +0,0 @@
---1 Structural: Structural Words
---
--- Here we have some words belonging to closed classes and appearing
--- in all languages we have considered.
--- Sometimes more distinctions are needed, e.g. $we_Pron$ in Spanish
--- should be replaced by masculine and feminine variants, found in
--- [``ExtraSpa`` ../spanish/ExtraSpa.gf].
-
-abstract Structural = Cat ** {
-
- fun
-
--- This is an alphabetical list of structural words
-
- above_Prep : Prep ;
- after_Prep : Prep ;
- all_Predet : Predet ;
- almost_AdA : AdA ;
- almost_AdN : AdN ;
- although_Subj : Subj ;
- always_AdV : AdV ;
- and_Conj : Conj ;
- because_Subj : Subj ;
- before_Prep : Prep ;
- behind_Prep : Prep ;
- between_Prep : Prep ;
- both7and_DConj : Conj ; -- both...and
----b both7and_DConj : DConj ;
- but_PConj : PConj ;
- by8agent_Prep : Prep ; -- by (agent)
- by8means_Prep : Prep ; -- by (means of)
- can8know_VV : VV ; -- can (capacity)
- can_VV : VV ; -- can (possibility)
- during_Prep : Prep ;
- either7or_DConj : Conj ; -- either...or
----b either7or_DConj : DConj ;
- every_Det : Det ;
- everybody_NP : NP ; -- everybody
- everything_NP : NP ;
- everywhere_Adv : Adv ;
---- first_Ord : Ord ; DEPRECATED
- few_Det : Det ;
- for_Prep : Prep ;
- from_Prep : Prep ;
- he_Pron : Pron ;
- here_Adv : Adv ;
- here7to_Adv : Adv ; -- to here
- here7from_Adv : Adv ; -- from here
- how_IAdv : IAdv ;
- how8many_IDet : IDet ;
- i_Pron : Pron ;
- if_Subj : Subj ;
- in8front_Prep : Prep ; -- in front of
- in_Prep : Prep ;
- it_Pron : Pron ;
- less_CAdv : CAdv ;
- many_Det : Det ;
- more_CAdv : CAdv ;
- most_Predet : Predet ;
- much_Det : Det ;
- must_VV : VV ;
----b no_Phr : Phr ;
- no_Utt : Utt ;
- on_Prep : Prep ;
---- one_Quant : QuantSg ; DEPRECATED
- only_Predet : Predet ;
- or_Conj : Conj ;
- otherwise_PConj : PConj ;
- part_Prep : Prep ;
- please_Voc : Voc ;
- possess_Prep : Prep ; -- of (possessive)
- quite_Adv : AdA ;
- she_Pron : Pron ;
- so_AdA : AdA ;
- someSg_Det : Det ;
- somePl_Det : Det ;
- somebody_NP : NP ;
- something_NP : NP ;
- somewhere_Adv : Adv ;
- that_Quant : Quant ;
- there_Adv : Adv ;
- there7to_Adv : Adv ; -- to there
- there7from_Adv : Adv ; -- from there
- therefore_PConj : PConj ;
- they_Pron : Pron ;
- this_Quant : Quant ;
- through_Prep : Prep ;
- to_Prep : Prep ;
- too_AdA : AdA ;
- under_Prep : Prep ;
- very_AdA : AdA ;
- want_VV : VV ;
- we_Pron : Pron ;
- whatPl_IP : IP ; -- what (plural)
- whatSg_IP : IP ; -- what (singular)
- when_IAdv : IAdv ;
- when_Subj : Subj ;
- where_IAdv : IAdv ;
- which_IQuant : IQuant ;
- whoPl_IP : IP ; -- who (plural)
- whoSg_IP : IP ; -- who (singular)
- why_IAdv : IAdv ;
- with_Prep : Prep ;
- without_Prep : Prep ;
----b yes_Phr : Phr ;
- yes_Utt : Utt ;
- youSg_Pron : Pron ; -- you (singular)
- youPl_Pron : Pron ; -- you (plural)
- youPol_Pron : Pron ; -- you (polite)
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Text.gf b/deprecated/old-lib/resource/abstract/Text.gf
deleted file mode 100644
index d3cfac16f..000000000
--- a/deprecated/old-lib/resource/abstract/Text.gf
+++ /dev/null
@@ -1,15 +0,0 @@
---1 Text: Texts
-
--- Texts are built from an empty text by adding $Phr$ases,
--- using as constructors the punctuation marks ".", "?", and "!".
--- Any punctuation mark can be attached to any kind of phrase.
-
-abstract Text = Common ** {
-
- fun
- TEmpty : Text ; --
- TFullStop : Phr -> Text -> Text ; -- John walks. ...
- TQuestMark : Phr -> Text -> Text ; -- Are they here? ...
- TExclMark : Phr -> Text -> Text ; -- Let's go! ...
-
-}
diff --git a/deprecated/old-lib/resource/abstract/Verb.gf b/deprecated/old-lib/resource/abstract/Verb.gf
deleted file mode 100644
index c1462acc7..000000000
--- a/deprecated/old-lib/resource/abstract/Verb.gf
+++ /dev/null
@@ -1,71 +0,0 @@
---1 The construction of verb phrases
-
-abstract Verb = Cat ** {
-
---2 Complementization rules
-
--- Verb phrases are constructed from verbs by providing their
--- complements. There is one rule for each verb category.
-
- fun
- UseV : V -> VP ; -- sleep
-
- ComplVV : VV -> VP -> VP ; -- want to run
- ComplVS : VS -> S -> VP ; -- say that she runs
- ComplVQ : VQ -> QS -> VP ; -- wonder who runs
- ComplVA : VA -> AP -> VP ; -- they become red
-
- SlashV2a : V2 -> VPSlash ; -- love (it)
- Slash2V3 : V3 -> NP -> VPSlash ; -- give it (to her)
- Slash3V3 : V3 -> NP -> VPSlash ; -- give (it) to her
-
- SlashV2V : V2V -> VP -> VPSlash ; -- beg (her) to go
- SlashV2S : V2S -> S -> VPSlash ; -- answer (to him) that it is good
- SlashV2Q : V2Q -> QS -> VPSlash ; -- ask (him) who came
- SlashV2A : V2A -> AP -> VPSlash ; -- paint (it) red
-
- ComplSlash : VPSlash -> NP -> VP ; -- love it
-
- SlashVV : VV -> VPSlash -> VPSlash ; -- want to buy
- SlashV2VNP : V2V -> NP -> VPSlash -> VPSlash ; -- beg me to buy
-
---2 Other ways of forming verb phrases
-
--- Verb phrases can also be constructed reflexively and from
--- copula-preceded complements.
-
- ReflVP : VPSlash -> VP ; -- love himself
- UseComp : Comp -> VP ; -- be warm
-
--- Passivization of two-place verbs is another way to use
--- them. In many languages, the result is a participle that
--- is used as complement to a copula ("is used"), but other
--- auxiliary verbs are possible (Ger. "wird angewendet", It.
--- "viene usato"), as well as special verb forms (Fin. "kytetn",
--- Swe. "anvnds").
---
--- *Note*. the rule can be overgenerating, since the $V2$ need not
--- take a direct object.
-
- PassV2 : V2 -> VP ; -- be loved
-
--- Adverbs can be added to verb phrases. Many languages make
--- a distinction between adverbs that are attached in the end
--- vs. next to (or before) the verb.
-
- AdvVP : VP -> Adv -> VP ; -- sleep here
- AdVVP : AdV -> VP -> VP ; -- always sleep
-
--- *Agents of passives* are constructed as adverbs with the
--- preposition [Structural Structural.html]$.8agent_Prep$.
-
-
---2 Complements to copula
-
--- Adjectival phrases, noun phrases, and adverbs can be used.
-
- CompAP : AP -> Comp ; -- (be) small
- CompNP : NP -> Comp ; -- (be) a man
- CompAdv : Adv -> Comp ; -- (be) here
-
-}
diff --git a/deprecated/old-lib/resource/api/Combinators.gf b/deprecated/old-lib/resource/api/Combinators.gf
deleted file mode 100644
index 23426df08..000000000
--- a/deprecated/old-lib/resource/api/Combinators.gf
+++ /dev/null
@@ -1,199 +0,0 @@
---1 Combinators: a High-Level Syntax API
-
--- This module defines some "grammatical functions" that give shortcuts to
--- typical constructions. [``Constructors`` Constructors.html] and the
--- language-specific ``Paradigms`` modules are usually needed
--- to construct arguments of these functions.
-
-incomplete resource Combinators = open Grammar in {
-
- oper
-
---2 Predication
-
- pred : overload {
- pred : V -> NP -> Cl ; -- x converges
- pred : V2 -> NP -> NP -> Cl ; -- x intersects y
- pred : V3 -> NP -> NP -> NP -> Cl ; -- x intersects y at z
- pred : V -> NP -> NP -> Cl ; -- x and y intersect
- pred : A -> NP -> Cl ; -- x is even
- pred : A2 -> NP -> NP -> Cl ; -- x is divisible by y
- pred : A -> NP -> NP -> Cl ; -- x and y are equal
- pred : N -> NP -> Cl ; -- x is a maximum
- pred : CN -> NP -> Cl ; -- x is a local maximum
- pred : NP -> NP -> Cl ; -- x is the neutral element
- pred : N -> NP -> NP -> Cl ; -- x and y are inverses
- pred : Adv -> NP -> Cl ; -- x is in scope
- pred : Prep -> NP -> NP -> Cl -- x is outside y
- } ;
-
---2 Function application
-
- app : overload {
- app : N -> NP ;
- app : N2 -> NP -> NP ;
- app : N3 -> NP -> NP -> NP ;
- app : N2 -> NP -> NP -> NP ;
- app : N2 -> N -> CN ;
-
- app : N2 -> NP -> CN ; -- divisor of x
- app : N3 -> NP -> NP -> CN ; -- path from x to y
- app : N2 -> NP -> NP -> CN ; -- path between x and y
- } ;
-
---2 Coordination
-
- coord : overload {
- coord : Conj -> Adv -> Adv -> Adv ;
- coord : Conj -> AP -> AP -> AP ;
- coord : Conj -> NP -> NP -> NP ;
- coord : Conj -> S -> S -> S ;
- coord : Conj -> ListAdv -> Adv ;
- coord : Conj -> ListAP -> AP ;
- coord : Conj -> ListNP -> NP ;
- coord : Conj -> ListS -> S ;
-
- } ;
-
---2 Modification
-
- mod : overload {
- mod : A -> N -> CN ;
- mod : AP -> CN -> CN ;
- mod : AdA -> A -> AP ;
- mod : Det -> N -> NP ;
- mod : Det -> CN -> NP ;
- mod : Quant -> N -> NP ;
- mod : Quant -> CN -> NP ;
- mod : Predet -> N -> NP ;
- mod : Numeral -> N -> NP
-
-
- } ;
-
---2 Negation
-
- neg : overload {
- neg : Imp -> Utt ;
- neg : Cl -> S ;
- neg : QCl -> QS ;
- neg : RCl -> RS
- };
-
---2 Text append
-
--- This is not in ground API, because it would destroy parsing.
-
- appendText : Text -> Text -> Text ;
-
---.
-
- pred = overload {
- pred : V -> NP -> Cl
- = \v,np -> PredVP np (UseV v) ;
- pred : V2 -> NP -> NP -> Cl
- = \v,np,ob -> PredVP np (ComplSlash (SlashV2a v) ob) ;
- pred : V3 -> NP -> NP -> NP -> Cl
- = \v,np,ob,ob2 ->
- PredVP np (ComplSlash (Slash2V3 v ob) ob2) ;
- pred : V -> NP -> NP -> Cl
- = \v,x,y -> PredVP (ConjNP and_Conj (BaseNP x y)) (UseV v) ;
- pred : A -> NP -> Cl
- = \a,np -> PredVP np (UseComp (CompAP (PositA a))) ;
- pred : A2 -> NP -> NP -> Cl
- = \a,x,y -> PredVP x (UseComp (CompAP (ComplA2 a y))) ;
- pred : A -> NP -> NP -> Cl
- = \a,x,y -> PredVP (ConjNP and_Conj (BaseNP x y)) (UseComp (CompAP (PositA a))) ;
- pred : N -> NP -> Cl
- = \n,x -> PredVP x (UseComp (CompNP (DetArtSg (IndefArt) (UseN n)))) ;
- pred : CN -> NP -> Cl
- = \n,x -> PredVP x (UseComp (CompNP (DetArtSg (IndefArt) n))) ;
- pred : NP -> NP -> Cl
- = \n,x -> PredVP x (UseComp (CompNP n)) ; pred : N2 -> NP -> NP -> Cl
- = \n,x,y -> PredVP x (UseComp (CompNP (DetArtSg (IndefArt) (ComplN2 n y)))) ;
- pred : N -> NP -> NP -> Cl
- = \n,x,y -> PredVP (ConjNP and_Conj (BaseNP x y)) (UseComp (CompNP (DetArtPl (IndefArt) (UseN n)))) ;
- pred : Adv -> NP -> Cl
- = \a,x -> PredVP x (UseComp (CompAdv a)) ;
- pred : Prep -> NP -> NP -> Cl
- = \p,x,y -> PredVP x (UseComp (CompAdv (PrepNP p y)))
-
- } ;
-
- app = overload {
- app : N -> NP
- = \n -> (DetArtSg (DefArt) (UseN n)) ;
- app : N2 -> NP -> NP
- = \n,x -> (DetArtSg (DefArt) (ComplN2 n x)) ;
- app : N3 -> NP -> NP -> NP
- = \n,x,y -> (DetArtSg (DefArt) (ComplN2 (ComplN3 n x) y)) ;
- app : N2 -> NP -> NP -> NP
- = \n,x,y -> (DetArtSg DefArt (ComplN2 n (ConjNP and_Conj (BaseNP x y)))) ;
- app : N2 -> N -> CN
- = \f,n -> ComplN2 f (DetArtPl (IndefArt) (UseN n)) ;
-
- app : N2 -> NP -> CN = ComplN2 ;
- app : N3 -> NP -> NP -> CN = \n,x,y -> ComplN2 (ComplN3 n x) y ;
- app : N2 -> NP -> NP -> CN = \n,x,y ->
- ComplN2 n (ConjNP and_Conj (BaseNP x y)) ;
- } ;
-
- coord = overload {
- coord : Conj -> Adv -> Adv -> Adv
- = \c,x,y -> ConjAdv c (BaseAdv x y) ;
- coord : Conj -> AP -> AP -> AP
- = \c,x,y -> ConjAP c (BaseAP x y) ;
- coord : Conj -> NP -> NP -> NP
- = \c,x,y -> ConjNP c (BaseNP x y) ;
- coord : Conj -> S -> S -> S
- = \c,x,y -> ConjS c (BaseS x y) ;
- coord : Conj -> ListAdv -> Adv
- = \c,xy -> ConjAdv c xy ;
- coord : Conj -> ListAP -> AP
- = \c,xy -> ConjAP c xy ;
- coord : Conj -> ListNP -> NP
- = \c,xy -> ConjNP c xy ;
- coord : Conj -> ListS -> S
- = \c,xy -> ConjS c xy
- } ;
-
- mod = overload {
- mod : A -> N -> CN
- = \a,n -> AdjCN (PositA a) (UseN n) ;
- mod : AP -> CN -> CN
- = \a,n -> AdjCN a n ;
- mod : AdA -> A -> AP
- = \m,a -> AdAP m (PositA a) ;
-
- mod : Det -> N -> NP
- = \d,n -> DetCN d (UseN n) ;
- mod : Det -> CN -> NP
- = \d,n -> DetCN d n ;
- mod : Quant -> N -> NP
- = \q,n -> DetCN (DetQuant (q) NumSg) (UseN n) ;
- mod : Quant -> CN -> NP
- = \q,n -> DetCN (DetQuant (q) NumSg) n ;
- mod : Predet -> N -> NP
- = \q,n -> PredetNP q (DetArtPl (IndefArt) (UseN n)) ;
- mod : Numeral -> N -> NP
- = \nu,n -> DetCN (DetArtCard (IndefArt) (NumNumeral nu)) (UseN n)
-
- } ;
-
- neg = overload {
- neg : Imp -> Utt
- = UttImpSg PNeg ;
- neg : Cl -> S
- = UseCl TPres ASimul PNeg;
- neg : QCl -> QS
- = UseQCl TPres ASimul PNeg;
- neg : RCl -> RS
- = UseRCl TPres ASimul PNeg
- };
-
--- This is not in ground API, because it would destroy parsing.
-
- appendText : Text -> Text -> Text
- = \x,y -> {s = x.s ++ y.s ; lock_Text = <>} ;
-
-}
diff --git a/deprecated/old-lib/resource/api/CombinatorsAra.gf b/deprecated/old-lib/resource/api/CombinatorsAra.gf
deleted file mode 100644
index 707b6be7d..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsAra.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsAra = Combinators with (Grammar = GrammarAra) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsBul.gf b/deprecated/old-lib/resource/api/CombinatorsBul.gf
deleted file mode 100644
index 882a7c875..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsBul.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsBul = Combinators with (Grammar = GrammarBul) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsCat.gf b/deprecated/old-lib/resource/api/CombinatorsCat.gf
deleted file mode 100644
index af78ebfda..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsCat.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsCat = Combinators with (Grammar = GrammarCat) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsDan.gf b/deprecated/old-lib/resource/api/CombinatorsDan.gf
deleted file mode 100644
index dff911eba..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsDan.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsDan = Combinators with (Grammar = GrammarDan) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsEng.gf b/deprecated/old-lib/resource/api/CombinatorsEng.gf
deleted file mode 100644
index df539e513..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsEng.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsEng = Combinators with (Grammar = GrammarEng) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsFin.gf b/deprecated/old-lib/resource/api/CombinatorsFin.gf
deleted file mode 100644
index e5da96407..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsFin.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsFin = Combinators with (Grammar = GrammarFin) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsFre.gf b/deprecated/old-lib/resource/api/CombinatorsFre.gf
deleted file mode 100644
index 48d2166e4..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsFre.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsFre = Combinators with (Grammar = GrammarFre) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsGer.gf b/deprecated/old-lib/resource/api/CombinatorsGer.gf
deleted file mode 100644
index e209fa136..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsGer.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsGer = Combinators with (Grammar = GrammarGer) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsHin.gf b/deprecated/old-lib/resource/api/CombinatorsHin.gf
deleted file mode 100644
index e75f470c2..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsHin.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsHin = Combinators with (Grammar = GrammarHin) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsIna.gf b/deprecated/old-lib/resource/api/CombinatorsIna.gf
deleted file mode 100644
index 43db76efb..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsIna.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsIna = Combinators with (Grammar = GrammarIna) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsIta.gf b/deprecated/old-lib/resource/api/CombinatorsIta.gf
deleted file mode 100644
index 40c8ec880..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsIta.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsIta = Combinators with (Grammar = GrammarIta) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsNor.gf b/deprecated/old-lib/resource/api/CombinatorsNor.gf
deleted file mode 100644
index 780c88ab7..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsNor.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsNor = Combinators with (Grammar = GrammarNor) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsRus.gf b/deprecated/old-lib/resource/api/CombinatorsRus.gf
deleted file mode 100644
index b99b55551..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsRus.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsRus = Combinators with (Grammar = GrammarRus) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsSpa.gf b/deprecated/old-lib/resource/api/CombinatorsSpa.gf
deleted file mode 100644
index 43b881b50..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsSpa.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsSpa = Combinators with (Grammar = GrammarSpa) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsSwe.gf b/deprecated/old-lib/resource/api/CombinatorsSwe.gf
deleted file mode 100644
index c3b9a0350..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsSwe.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsSwe = Combinators with (Grammar = GrammarSwe) ;
diff --git a/deprecated/old-lib/resource/api/CombinatorsTha.gf b/deprecated/old-lib/resource/api/CombinatorsTha.gf
deleted file mode 100644
index 5c77348b3..000000000
--- a/deprecated/old-lib/resource/api/CombinatorsTha.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource CombinatorsTha = Combinators with (Grammar = GrammarTha) ;
diff --git a/deprecated/old-lib/resource/api/Constructors.gf b/deprecated/old-lib/resource/api/Constructors.gf
deleted file mode 100644
index 0a540fe7d..000000000
--- a/deprecated/old-lib/resource/api/Constructors.gf
+++ /dev/null
@@ -1,1700 +0,0 @@
---1 Constructors: the Resource Syntax API
-
-incomplete resource Constructors = open Grammar in {
-
- flags optimize=noexpand ;
-
--- This module gives access to the syntactic constructions of the
--- GF Resource Grammar library. Its main principle is simple:
--- to construct an object of type $C$, use the function $mkC$.
---
--- For example, an object of type $S$ corresponding to the string
---
--- $John loves Mary$
---
--- is written
---
--- $mkS (mkCl (mkNP (mkPN "John")) (mkV2 "love") (mkNP (mkPN "Mary")))$
---
--- This module defines the syntactic constructors, which take trees as arguments.
--- Lexical constructors, which take strings as arguments, are defined in the
--- $Paradigms$ modules separately for each language.
---
--- The recommended usage of this module is via the wrapper module $Syntax$,
--- which also contains the $Structural$ (structural words).
--- Together with $Paradigms$, $Syntax$ gives everything that is needed
--- to implement the concrete syntax for a langauge.
-
---2 Principles of organization
-
--- To make the library easier to grasp and navigate, we have followed
--- a set of principles when organizing it:
--- + Each category $C$ has an overloaded constructor $mkC$, with value type $C$.
--- + With $mkC$, it is possible to construct any tree of type $C$, except
--- atomic ones, i.e. those that take no arguments, and
--- those whose argument types are exactly the same as in some other instance
--- + To achieve completeness, the library therefore also has
--- for each atomic tree of type $C$, a constant suffixed $C$, and,
--- for other missing constructions, some operation suffixed $C$.
--- These constructors are listed immediately after the $mkC$ group.
--- + Those atomic constructors that are given in $Structural$ are not repeated here.
--- + In addition to the minimally complete set of constructions, many $mkC$ groups
--- include some frequently needed special cases, with two possible logics:
--- default value (to decrease the number of arguments), and
--- direct arguments of an intervening constructor (to flatten the terms).
--- + If such a special case is applied to some category in some rule, it is
--- also applied to all other rules in which the category appears.
--- + The constructors in a group are listed, roughly,
--- *from the most common to the most general*. This does not of course specify
--- a total order.
--- + Optional argument types are marked in parentheses. Although parentheses make no
--- difference in the way the GF compiler treats the types, their presence indicates
--- to the reader that the corresponding arguments can be left out; internally, the
--- library has an overload case for each such combination.
--- + Each constructor case is equipped with an example that is built by that
--- case but could not be built with any other one.
---
---
-
---2 Texts, phrases, and utterances
-
---3 Text: texts
-
--- A text is a list of phrases separated by punctuation marks.
--- The default punctuation mark is the full stop, and the default
--- continuation of a text is empty.
-
- oper
- mkText : overload {
- mkText : Phr -> Text ; -- 1. But John walks.
- mkText : Phr -> (Punct) -> (Text) -> Text ; -- 2. John walks? Yes.
-
--- A text can also be directly built from utterances, which in turn can
--- be directly built from sentences, present-tense clauses, questions, or
--- positive imperatives.
-
- mkText : Utt -> Text ; -- 3. John.
- mkText : S -> Text ; -- 4. John walked.
- mkText : Cl -> Text ; -- 5. John walks.
- mkText : QS -> Text ; -- 6. Did John walk?
- mkText : Imp -> Text ; -- 7. Walk!
-
--- Finally, two texts can be combined into a text.
-
- mkText : Text -> Text -> Text ; -- 8. Where? When? Here. Now!
-
- } ;
-
--- A text can also be empty.
-
- emptyText : Text ; -- 8. (empty text)
-
-
---3 Punct: punctuation marks
-
--- There are three punctuation marks that can separate phrases in a text.
-
- fullStopPunct : Punct ; -- .
- questMarkPunct : Punct ; -- ?
- exclMarkPunct : Punct ; -- !
-
---3 Phr: phrases in a text
-
--- Phrases are built from utterances by adding a phrasal conjunction
--- and a vocative, both of which are by default empty.
-
- mkPhr : overload {
- mkPhr : Utt -> Phr ; -- 1. why
- mkPhr : (PConj) -> Utt -> (Voc) -> Phr ; -- 2. but why John
-
-
--- A phrase can also be directly built by a sentence, a present-tense
--- clause, a question, or a positive singular imperative.
-
- mkPhr : S -> Phr ; -- 3. John walked
- mkPhr : Cl -> Phr ; -- 4. John walks
- mkPhr : QS -> Phr ; -- 5. did John walk
- mkPhr : Imp -> Phr -- 6. walk
- } ;
-
---3 PConj, phrasal conjunctions
-
--- Any conjunction can be used as a phrasal conjunction.
--- More phrasal conjunctions are defined in $Structural$.
-
- mkPConj : Conj -> PConj ; -- 1. and
-
---3 Voc, vocatives
-
--- Any noun phrase can be turned into a vocative.
--- More vocatives are defined in $Structural$.
-
- mkVoc : NP -> Voc ; -- 1. John
-
---3 Utt, utterances
-
--- Utterances are formed from sentences, clauses, questions, and positive singular imperatives.
-
- mkUtt : overload {
- mkUtt : S -> Utt ; -- 1. John walked
- mkUtt : Cl -> Utt ; -- 2. John walks
- mkUtt : QS -> Utt ; -- 3. did John walk
- mkUtt : Imp -> Utt ; -- 4. love yourself
-
--- Imperatives can also vary in $ImpForm$ (number/politeness) and
--- polarity.
-
- mkUtt : (ImpForm) -> (Pol) -> Imp -> Utt ; -- 5. don't love yourselves
-
--- Utterances can also be formed from interrogative phrases and
--- interrogative adverbials, noun phrases, adverbs, and verb phrases.
-
- mkUtt : IP -> Utt ; -- 6. who
- mkUtt : IAdv -> Utt ; -- 7. why
- mkUtt : NP -> Utt ; -- 8. John
- mkUtt : Adv -> Utt ; -- 9. here
- mkUtt : VP -> Utt -- 10. to walk
- } ;
-
--- The plural first-person imperative is a special construction.
-
- lets_Utt : VP -> Utt ; -- 11. let's walk
-
-
---2 Auxiliary parameters for phrases and sentences
-
---3 Pol, polarity
-
--- Polarity is a parameter that sets a clause to positive or negative
--- form. Since positive is the default, it need never be given explicitly.
-
- positivePol : Pol ; -- (John walks) [default]
- negativePol : Pol ; -- (John doesn't walk)
-
---3 Ant, anteriority
-
--- Anteriority is a parameter that presents an event as simultaneous or
--- anterior to some other reference time.
--- Since simultaneous is the default, it need never be given explicitly.
-
- simultaneousAnt : Ant ; -- (John walks) [default]
- anteriorAnt : Ant ; -- (John has walked) --# notpresent
-
---3 Tense, tense
-
--- Tense is a parameter that relates the time of an event
--- to the time of speaking about it.
--- Since present is the default, it need never be given explicitly.
-
- presentTense : Tense ; -- (John walks) [default]
- pastTense : Tense ; -- (John walked) --# notpresent
- futureTense : Tense ; -- (John will walk) --# notpresent
- conditionalTense : Tense ; -- (John would walk) --# notpresent
-
---3 ImpForm, imperative form
-
--- Imperative form is a parameter that sets the form of imperative
--- by reference to the person or persons addressed.
--- Since singular is the default, it need never be given explicitly.
-
- singularImpForm : ImpForm ; -- (help yourself) [default]
- pluralImpForm : ImpForm ; -- (help yourselves)
- politeImpForm : ImpForm ; -- (help yourself) (polite singular)
-
-
---2 Sentences and clauses
-
---3 S, sentences
-
--- A sentence has a fixed tense, anteriority and polarity.
-
- mkS : overload {
- mkS : Cl -> S ; -- 1. John walks
- mkS : (Tense) -> (Ant) -> (Pol) -> Cl -> S ; -- 2. John wouldn't have walked
-
--- Sentences can be combined with conjunctions. This can apply to a pair
--- of sentences, but also to a list of more than two.
-
- mkS : Conj -> S -> S -> S ; -- 3. John walks and I run
- mkS : Conj -> ListS -> S ; -- 4. John walks, I run and you sleep
-
--- A sentence can be prefixed by an adverb.
-
- mkS : Adv -> S -> S -- 5. today, John walks
- } ;
-
---3 Cl, clauses
-
--- A clause has a variable tense, anteriority and polarity.
--- A clause can be built from a subject noun phrase
--- with a verb and appropriate arguments.
-
- mkCl : overload {
- mkCl : NP -> V -> Cl ; -- 1. John walks
- mkCl : NP -> V2 -> NP -> Cl ; -- 2. John loves her
- mkCl : NP -> V3 -> NP -> NP -> Cl ; -- 3. John sends it to her
- mkCl : NP -> VV -> VP -> Cl ; -- 4. John wants to walk
- mkCl : NP -> VS -> S -> Cl ; -- 5. John says that it is good
- mkCl : NP -> VQ -> QS -> Cl ; -- 6. John wonders if it is good
- mkCl : NP -> VA -> AP -> Cl ; -- 7. John becomes old
- mkCl : NP -> V2A -> NP -> AP -> Cl ; -- 8. John paints it red
- mkCl : NP -> V2S -> NP -> S -> Cl ; -- 9. John tells her that we are here
- mkCl : NP -> V2Q -> NP -> QS -> Cl ; -- 10. John asks her who is here
- mkCl : NP -> V2V -> NP -> VP -> Cl ; -- 11. John forces us to sleep
- mkCl : NP -> A -> Cl ; -- 12. John is old
- mkCl : NP -> A -> NP -> Cl ; -- 13. John is older than her
- mkCl : NP -> A2 -> NP -> Cl ; -- 14. John is married to her
- mkCl : NP -> AP -> Cl ; -- 15. John is very old
- mkCl : NP -> N -> Cl ; -- 16. John is a man
- mkCl : NP -> CN -> Cl ; -- 17. John is an old man
- mkCl : NP -> NP -> Cl ; -- 18. John is the man
- mkCl : NP -> Adv -> Cl ; -- 19. John is here
-
--- As the general rule, a clause can be built from a subject noun phrase and
--- a verb phrase.
-
- mkCl : NP -> VP -> Cl ; -- 20. John walks here
-
--- Subjectless verb phrases are used for impersonal actions.
-
- mkCl : V -> Cl ; -- 21. it rains
- mkCl : VP -> Cl ; -- 22. it is raining
-
--- Existentials are a special form of clauses.
-
- mkCl : N -> Cl ; -- 23. there is a house
- mkCl : CN -> Cl ; -- 24. there is an old houses
- mkCl : NP -> Cl ; -- 25. there are five houses
-
--- There are also special forms in which a noun phrase or an adverb is
--- emphasized.
-
- mkCl : NP -> RS -> Cl ; -- 26. it is John that walks
- mkCl : Adv -> S -> Cl -- 27. it is here John walks
- } ;
-
--- Generic clauses are one with an impersonal subject.
-
- genericCl : VP -> Cl ; -- 28. one walks
-
-
---2 Verb phrases and imperatives
-
---3 VP, verb phrases
-
--- A verb phrase is formed from a verb with appropriate arguments.
-
- mkVP : overload {
- mkVP : V -> VP ; -- 1. walk
- mkVP : V2 -> NP -> VP ; -- 2. love her
- mkVP : V3 -> NP -> NP -> VP ; -- 3. send it to her
- mkVP : VV -> VP -> VP ; -- 4. want to walk
- mkVP : VS -> S -> VP ; -- 5. know that she walks
- mkVP : VQ -> QS -> VP ; -- 6. ask if she walks
- mkVP : VA -> AP -> VP ; -- 7. become old
- mkVP : V2A -> NP -> AP -> VP ; -- 8. paint it red
-
--- The verb can also be a copula ("be"), and the relevant argument is
--- then the complement adjective or noun phrase.
-
- mkVP : A -> VP ; -- 9. be warm
- mkVP : AP -> VP ; -- 12. be very warm
- mkVP : A -> NP -> VP ; -- 10. be older than her
- mkVP : A2 -> NP -> VP ; -- 11. be married to her
- mkVP : N -> VP ; -- 13. be a man
- mkVP : CN -> VP ; -- 14. be an old man
- mkVP : NP -> VP ; -- 15. be the man
- mkVP : Adv -> VP ; -- 16. be here
-
--- A verb phrase can be modified with a postverbal or a preverbal adverb.
-
- mkVP : VP -> Adv -> VP ; -- 17. sleep here
- mkVP : AdV -> VP -> VP ; -- 18. always sleep
-
--- Objectless verb phrases can be taken to verb phrases in two ways.
-
- mkVP : VPSlash -> NP -> VP ; -- 19. paint it black
- mkVP : VPSlash -> VP ; -- 20. paint itself black
-
- } ;
-
--- Two-place verbs can be used reflexively.
-
- reflexiveVP : V2 -> VP ; -- 19. love itself
-
--- Two-place verbs can also be used in the passive, with or without an agent.
-
- passiveVP : overload {
- passiveVP : V2 -> VP ; -- 20. be loved
- passiveVP : V2 -> NP -> VP ; -- 21. be loved by her
- } ;
-
--- A verb phrase can be turned into the progressive form.
-
- progressiveVP : VP -> VP ; -- 22. be sleeping
-
---3 Imp, imperatives
-
--- Imperatives are formed from verbs and their arguments; as the general
--- rule, from verb phrases.
-
- mkImp : overload {
- mkImp : V -> Imp ; -- go
- mkImp : V2 -> NP -> Imp ; -- take it
- mkImp : VP -> Imp -- go there now
- } ;
-
-
---2 Noun phrases and determiners
-
---3 NP, noun phrases
-
--- A noun phrases can be built from a determiner and a common noun ($CN$) .
--- For determiners, the special cases of quantifiers, numerals, integers,
--- and possessive pronouns are provided. For common nouns, the
--- special case of a simple common noun ($N$) is always provided.
-
- mkNP : overload {
- mkNP : Art N -> NP ; -- 1. the man
- mkNP : Art -> (Num) -> CN -> NP ; -- 2. the five old men
- mkNP : Quant -> N -> NP ; -- 3. this men
- mkNP : Quant -> (Num) -> CN -> NP ; -- 4. these five old men
- mkNP : Det -> N -> NP ; -- 5. the first man
- mkNP : Det -> CN -> NP ; -- 6. the first old man
- mkNP : Numeral -> N -> NP ; -- 7. twenty men
- mkNP : Numeral -> CN -> NP ; -- 8. twenty old men
- mkNP : Digits -> N -> NP ; -- 9. 45 men
- mkNP : Digits -> CN -> NP ; -- 10. 45 old men
- mkNP : Card -> N -> NP ; -- 11. almost twenty men
- mkNP : Card -> CN -> NP ; -- 12. almost twenty old men
- mkNP : Pron -> N -> NP ; -- 13. my man
- mkNP : Pron -> CN -> NP ; -- 14. my old man
-
--- Proper names and pronouns can be used as noun phrases.
-
- mkNP : PN -> NP ; -- 15. John
- mkNP : Pron -> NP ; -- 16. he
-
--- Determiners alone can form noun phrases (this excludes articles, $Art$)
-
- mkNP : Quant -> NP ; -- 17. this
- mkNP : Det -> NP ; -- 18. these five
-
--- Determinesless mass noun phrases.
-
- mkNP : N -> NP ; -- 19. beer
- mkNP : CN -> NP ; -- 20. beer
-
--- A noun phrase once formed can be prefixed by a predeterminer and
--- suffixed by a past participle or an adverb.
-
- mkNP : Predet -> NP -> NP ; -- 21. only John
- mkNP : NP -> V2 -> NP ; -- 22. John killed
- mkNP : NP -> Adv -> NP ; -- 23. John in Paris
-
--- A conjunction can be formed both from two noun phrases and a longer
--- list of them.
-
- mkNP : Conj -> NP -> NP -> NP ; -- 22. John and I
- mkNP : Conj -> ListNP -> NP ; -- 23. John, I, and that
-
- } ;
-
-
---3 Det, determiners
-
--- A determiner is either a singular or a plural one.
--- Both have a quantifier and an optional ordinal; the plural
--- determiner also has an optional numeral.
-
- mkDet : overload {
- mkDet : Quant -> Det ; -- 1. this
- mkDet : Quant -> (Ord) -> Det ; -- 2. this first
- mkDet : Quant -> Num -> Det ; -- 3. these
- mkDet : Quant -> Num -> (Ord) -> Det ; -- 4. these five best
-
--- Quantifiers that have both singular and plural forms are by default used as
--- singular determiners. If a numeral is added, the plural form is chosen.
-
- mkDet : Quant -> Det ; -- 5. this
- mkDet : Quant -> Num -> Det ; -- 6. these five
-
--- Numerals, their special cases integers and digits, and possessive pronouns can be
--- used as determiners.
-
- mkDet : Card -> Det ; -- 7. almost twenty
- mkDet : Numeral -> Det ; -- 8. five
- mkDet : Digits -> Det ; -- 9. 51
- mkDet : Pron -> Det ; -- 10. my (house)
- mkDet : Pron -> Num -> Det -- 11. my (houses)
- } ;
-
---3 Art, articles
-
--- There are definite and indefinite articles.
-
- the_Art : Art ; -- the
- a_Art : Art ; -- a
-
---3 Num, cardinal numerals
-
--- Numerals can be formed from number words ($Numeral$), their special case digits,
--- and from symbolic integers.
-
- mkNum : overload {
- mkNum : Numeral -> Num ; -- 1. twenty
- mkNum : Digits -> Num ; -- 2. 51
- mkNum : Card -> Num ; -- 3. twenty
-
--- A numeral can be modified by an adnumeral.
-
- mkNum : AdN -> Card -> Num -- 4. almost ten
- } ;
-
--- Dummy numbers are sometimes to select the grammatical number of a determiner.
-
- sgNum : Num ; -- singular
- plNum : Num ; -- plural
-
---3 Ord, ordinal numerals
-
--- Just like cardinals, ordinals can be formed from number words ($Numeral$)
--- and from symbolic integers.
-
- mkOrd : overload {
- mkOrd : Numeral -> Ord ; -- 1. twentieth
- mkOrd : Digits -> Ord ; -- 2. 51st
-
--- Also adjectives in the superlative form can appear on ordinal positions.
-
- mkOrd : A -> Ord -- 3. best
- } ;
-
---3 AdN, adnumerals
-
--- Comparison adverbs can be used as adnumerals.
-
- mkAdN : CAdv -> AdN ; -- 1. more than
-
---3 Numeral, number words
-
--- Digits and some "round" numbers are here given as shorthands.
-
- n1_Numeral : Numeral ; -- 1. one
- n2_Numeral : Numeral ; -- 2. two
- n3_Numeral : Numeral ; -- 3. three
- n4_Numeral : Numeral ; -- 4. four
- n5_Numeral : Numeral ; -- 5. five
- n6_Numeral : Numeral ; -- 6. six
- n7_Numeral : Numeral ; -- 7. seven
- n8_Numeral : Numeral ; -- 8. eight
- n9_Numeral : Numeral ; -- 9. nine
- n10_Numeral : Numeral ; -- 10. ten
- n20_Numeral : Numeral ; -- 11. twenty
- n100_Numeral : Numeral ; -- 12. hundred
- n1000_Numeral : Numeral ; -- 13. thousand
-
--- See $Numeral$ for the full set of constructors, and use the category
--- $Digits$ for other numbers from one million.
-
- mkDigits : overload {
- mkDigits : Dig -> Digits ; -- 1. 8
- mkDigits : Dig -> Digits -> Digits ; -- 2. 876
- } ;
-
- n1_Digits : Digits ; -- 1. 1
- n2_Digits : Digits ; -- 2. 2
- n3_Digits : Digits ; -- 3. 3
- n4_Digits : Digits ; -- 4. 4
- n5_Digits : Digits ; -- 5. 5
- n6_Digits : Digits ; -- 6. 6
- n7_Digits : Digits ; -- 7. 7
- n8_Digits : Digits ; -- 8. 8
- n9_Digits : Digits ; -- 9. 9
- n10_Digits : Digits ; -- 10. 10
- n20_Digits : Digits ; -- 11. 20
- n100_Digits : Digits ; -- 12. 100
- n1000_Digits : Digits ; -- 13. 1,000
-
---3 Dig, single digits
-
- n0_Dig : Dig ; -- 0. 0
- n1_Dig : Dig ; -- 1. 1
- n2_Dig : Dig ; -- 2. 2
- n3_Dig : Dig ; -- 3. 3
- n4_Dig : Dig ; -- 4. 4
- n5_Dig : Dig ; -- 5. 5
- n6_Dig : Dig ; -- 6. 6
- n7_Dig : Dig ; -- 7. 7
- n8_Dig : Dig ; -- 8. 8
- n9_Dig : Dig ; -- 9. 9
-
-
---2 Nouns
-
---3 CN, common noun phrases
-
- mkCN : overload {
-
--- The most frequent way of forming common noun phrases is from atomic nouns $N$.
-
- mkCN : N -> CN ; -- 1. house
-
--- Common noun phrases can be formed from relational nouns by providing arguments.
-
- mkCN : N2 -> NP -> CN ; -- 2. mother of John
- mkCN : N3 -> NP -> NP -> CN ; -- 3. distance from this city to Paris
-
--- Relational nouns can also be used without their arguments.
-
- mkCN : N2 -> CN ; -- 4. son
- mkCN : N3 -> CN ; -- 5. flight
-
--- A common noun phrase can be modified by adjectival phrase. We give special
--- cases of this, where one or both of the arguments are atomic.
-
- mkCN : A -> N -> CN ; -- 6. big house
- mkCN : A -> CN -> CN ; -- 7. big blue house
- mkCN : AP -> N -> CN ; -- 8. very big house
- mkCN : AP -> CN -> CN ; -- 9. very big blue house
-
--- A common noun phrase can be modified by a relative clause or an adverb.
-
- mkCN : N -> RS -> CN ; -- 10. house that John loves
- mkCN : CN -> RS -> CN ; -- 11. big house that John loves
- mkCN : N -> Adv -> CN ; -- 12. house in the city
- mkCN : CN -> Adv -> CN ; -- 13. big house in the city
-
--- For some nouns it makes sense to modify them by sentences,
--- questions, or infinitives. But syntactically this is possible for
--- all nouns.
-
- mkCN : CN -> S -> CN ; -- 14. rule that John walks
- mkCN : CN -> QS -> CN ; -- 15. question if John walks
- mkCN : CN -> VP -> CN ; -- 16. reason to walk
-
--- A noun can be used in apposition to a noun phrase, especially a proper name.
-
- mkCN : N -> NP -> CN ; -- 17. king John
- mkCN : CN -> NP -> CN -- 18. old king John
- } ;
-
-
---2 Adjectives and adverbs
-
---3 AP, adjectival phrases
-
- mkAP : overload {
-
--- Adjectival phrases can be formed from atomic adjectives by using the positive form or
--- the comparative with a complement
-
- mkAP : A -> AP ; -- 1. old
- mkAP : A -> NP -> AP ; -- 2. older than John
-
--- Relational adjectives can be used with a complement or a reflexive
-
- mkAP : A2 -> NP -> AP ; -- 3. married to her
- mkAP : A2 -> AP ; -- 4. married to myself
-
--- Some adjectival phrases can take as complements sentences,
--- questions, or infinitives. Syntactically this is possible for
--- all adjectives.
-
- mkAP : AP -> S -> AP ; -- 5. probable that John walks
- mkAP : AP -> QS -> AP ; -- 6. uncertain if John walks
- mkAP : AP -> VP -> AP ; -- 7. ready to go
-
--- An adjectival phrase can be modified by an adadjective.
-
- mkAP : AdA -> A -> AP ; -- 8. very old
- mkAP : AdA -> AP -> AP ; -- 9. very very old
-
--- Conjunction can be formed from two or more adjectival phrases.
-
- mkAP : Conj -> AP -> AP -> AP ; -- 10. old and big
- mkAP : Conj -> ListAP -> AP ; -- 11. old, big, and warm
-
- } ;
-
---3 Adv, adverbial phrases
-
- mkAdv : overload {
-
--- Adverbs can be formed from adjectives.
-
- mkAdv : A -> Adv ; -- 1. warmly
-
--- Prepositional phrases are treated as adverbs.
-
- mkAdv : Prep -> NP -> Adv ; -- 2. with John
-
--- Subordinate sentences are treated as adverbs.
-
- mkAdv : Subj -> S -> Adv ; -- 3. when John walks
-
--- An adjectival adverb can be compared to a noun phrase or a sentence.
-
- mkAdv : CAdv -> A -> NP -> Adv ; -- 4. more warmly than John
- mkAdv : CAdv -> A -> S -> Adv ; -- 5. more warmly than John walks
-
--- Adverbs can be modified by adadjectives.
-
- mkAdv : AdA -> Adv -> Adv ; -- 6. very warmly
-
--- Conjunction can be formed from two or more adverbial phrases.
-
- mkAdv : Conj -> Adv -> Adv -> Adv ; -- 7. here and now
- mkAdv : Conj -> ListAdv -> Adv ; -- 8. with John, here and now
- } ;
-
-
---2 Questions and relatives
-
---3 QS, question sentences
-
- mkQS : overload {
-
--- Just like a sentence $S$ is built from a clause $Cl$,
--- a question sentence $QS$ is built from
--- a question clause $QCl$ by fixing tense, anteriority and polarity.
--- Any of these arguments can be omitted, which results in the
--- default (present, simultaneous, and positive, respectively).
-
- mkQS : QCl -> QS ; -- 1. who walks
- mkQS : (Tense) -> (Ant) -> (Pol) -> QCl -> QS ; -- 2. who wouldn't have walked
-
--- Since 'yes-no' question clauses can be built from clauses (see below),
--- we give a shortcut
--- for building a question sentence directly from a clause, using the defaults
--- present, simultaneous, and positive.
-
- mkQS : Cl -> QS -- 3. does John walk
- } ;
-
-
---3 QCl, question clauses
-
- mkQCl : overload {
-
--- 'Yes-no' question clauses are built from 'declarative' clauses.
-
- mkQCl : Cl -> QCl ; -- 1. does John walk
-
--- 'Wh' questions are built from interrogative pronouns in subject
--- or object position. The former uses a verb phrase; we don't give
--- shortcuts for verb-argument sequences as we do for clauses.
--- The latter uses the 'slash' category of objectless clauses
--- (see below); we give the common special case with a two-place verb.
-
- mkQCl : IP -> VP -> QCl ; -- 2. who walks
- mkQCl : IP -> NP -> V2 -> QCl ; -- 3. whom does John love
- mkQCl : IP -> ClSlash -> QCl ; -- 4. whom does John love today
-
--- Adverbial 'wh' questions are built with interrogative adverbials, with the
--- special case of prepositional phrases with interrogative pronouns.
-
- mkQCl : IAdv -> Cl -> QCl ; -- 5. why does John walk
- mkQCl : Prep -> IP -> Cl -> QCl ; -- 6. with who does John walk
-
--- An interrogative adverbial can serve as the complement of a copula.
-
- mkQCl : IAdv -> NP -> QCl ; -- 7. where is John
-
--- Existentials are a special construction.
-
- mkQCl : IP -> QCl -- 8. what is there
- } ;
-
-
---3 IP, interrogative pronouns
-
- mkIP : overload {
-
--- Interrogative pronouns
--- can be formed much like noun phrases, by using interrogative quantifiers.
-
- mkIP : IQuant -> N -> IP ; -- 1. which city
- mkIP : IQuant -> (Num) -> CN -> IP ; -- 2. which five big cities
-
--- An interrogative pronoun can be modified by an adverb.
-
- mkIP : IP -> Adv -> IP -- 3. who in Paris
- } ;
-
--- More interrogative pronouns and determiners can be found in $Structural$.
-
-
-
---3 IAdv, interrogative adverbs.
-
--- In addition to the interrogative adverbs defined in the $Structural$ lexicon, they
--- can be formed as prepositional phrases from interrogative pronouns.
-
- mkIAdv : Prep -> IP -> IAdv ; -- 1. in which city
-
--- More interrogative adverbs are given in $Structural$.
-
-
---3 RS, relative sentences
-
--- Just like a sentence $S$ is built from a clause $Cl$,
--- a relative sentence $RS$ is built from
--- a relative clause $RCl$ by fixing the tense, anteriority and polarity.
--- Any of these arguments
--- can be omitted, which results in the default (present, simultaneous,
--- and positive, respectively).
-
- mkRS : overload {
- mkRS : RCl -> RS ; -- 1. that walk
- mkRS : (Tense) -> (Ant) -> (Pol) -> RCl -> RS -- 2. that wouldn't have walked
- } ;
-
---3 RCl, relative clauses
-
- mkRCl : overload {
-
--- Relative clauses are built from relative pronouns in subject or object position.
--- The former uses a verb phrase; we don't give
--- shortcuts for verb-argument sequences as we do for clauses.
--- The latter uses the 'slash' category of objectless clauses (see below);
--- we give the common special case with a two-place verb.
-
- mkRCl : RP -> VP -> RCl ; -- 1. that walk
- mkRCl : RP -> NP -> V2 -> RCl ; -- 2. which John loves
- mkRCl : RP -> ClSlash -> RCl ; -- 3. which John loves today
-
--- There is a simple 'such that' construction for forming relative
--- clauses from clauses.
-
- mkRCl : Cl -> RCl -- 4. such that John loves her
- } ;
-
---3 RP, relative pronouns
-
--- There is an atomic relative pronoun
-
- which_RP : RP ; -- 1. which
-
--- A relative pronoun can be made into a kind of a prepositional phrase.
-
- mkRP : Prep -> NP -> RP -> RP ; -- 2. all the houses in which
-
-
---3 ClSlash, objectless sentences
-
- mkClSlash : overload {
-
--- Objectless sentences are used in questions and relative clauses.
--- The most common way of constructing them is by using a two-place verb
--- with a subject but without an object.
-
- mkClSlash : NP -> V2 -> ClSlash ; -- 1. (whom) John loves
-
--- The two-place verb can be separated from the subject by a verb-complement verb.
-
- mkClSlash : NP -> VV -> V2 -> ClSlash ; -- 2. (whom) John wants to see
-
--- The missing object can also be the noun phrase in a prepositional phrase.
-
- mkClSlash : Cl -> Prep -> ClSlash ; -- 3. (with whom) John walks
-
--- An objectless sentence can be modified by an adverb.
-
- mkClSlash : ClSlash -> Adv -> ClSlash -- 4. (whom) John loves today
- } ;
-
-
---3 VPSlash, verb phrases missing an object
-
- mkVPSlash : overload {
-
--- This is the deep level of many-argument predication, permitting extraction.
-
- mkVPSlash : V2 -> VPSlash ; -- 1. (whom) (John) loves
- mkVPSlash : V3 -> NP -> VPSlash ; -- 2. (whom) (John) gives an apple
- mkVPSlash : V2A -> AP -> VPSlash ; -- 3. (whom) (John) paints red
- mkVPSlash : V2Q -> QS -> VPSlash ; -- 4. (whom) (John) asks who sleeps
- mkVPSlash : V2S -> S -> VPSlash ; -- 5. (whom) (John) tells that we sleep
- mkVPSlash : V2V -> VP -> VPSlash ; -- 6. (whom) (John) forces to sleep
-
- } ;
-
-
---2 Lists for coordination
-
--- The rules in this section are very uniform: a list can be built from two or more
--- expressions of the same category.
-
---3 ListS, sentence lists
-
- mkListS : overload {
- mkListS : S -> S -> ListS ; -- 1. he walks, I run
- mkListS : S -> ListS -> ListS -- 2. John walks, I run, you sleep
- } ;
-
---3 ListAdv, adverb lists
-
- mkListAdv : overload {
- mkListAdv : Adv -> Adv -> ListAdv ; -- 1. here, now
- mkListAdv : Adv -> ListAdv -> ListAdv -- 2. to me, here, now
- } ;
-
---3 ListAP, adjectival phrase lists
-
- mkListAP : overload {
- mkListAP : AP -> AP -> ListAP ; -- 1. old, big
- mkListAP : AP -> ListAP -> ListAP -- 2. old, big, warm
- } ;
-
-
---3 ListNP, noun phrase lists
-
- mkListNP : overload {
- mkListNP : NP -> NP -> ListNP ; -- 1. John, I
- mkListNP : NP -> ListNP -> ListNP -- 2. John, I, that
- } ;
-
-
---.
--- Definitions
-
- mkAP = overload {
- mkAP : A -> AP -- warm
- = PositA ;
- mkAP : A -> NP -> AP -- warmer than Spain
- = ComparA ;
- mkAP : A2 -> NP -> AP -- divisible by 2
- = ComplA2 ;
- mkAP : A2 -> AP -- divisible by itself
- = ReflA2 ;
- mkAP : AP -> S -> AP -- great that she won
- = \ap,s -> SentAP ap (EmbedS s) ;
- mkAP : AP -> QS -> AP -- great that she won
- = \ap,s -> SentAP ap (EmbedQS s) ;
- mkAP : AP -> VP -> AP -- great that she won
- = \ap,s -> SentAP ap (EmbedVP s) ;
- mkAP : AdA -> A -> AP -- very uncertain
- = \x,y -> AdAP x (PositA y) ;
- mkAP : AdA -> AP -> AP -- very uncertain
- = AdAP ;
- mkAP : Conj -> AP -> AP -> AP
- = \c,x,y -> ConjAP c (BaseAP x y) ;
- mkAP : Conj -> ListAP -> AP
- = \c,xy -> ConjAP c xy ;
- } ;
-
- mkAdv = overload {
- mkAdv : A -> Adv -- quickly
- = PositAdvAdj ;
- mkAdv : Prep -> NP -> Adv -- in the house
- = PrepNP ;
- mkAdv : CAdv -> A -> NP -> Adv -- more quickly than John
- = ComparAdvAdj ;
- mkAdv : CAdv -> A -> S -> Adv -- more quickly than he runs
- = ComparAdvAdjS ;
- mkAdv : AdA -> Adv -> Adv -- very quickly
- = AdAdv ;
- mkAdv : Subj -> S -> Adv -- when he arrives
- = SubjS ;
- mkAdv : Conj -> Adv -> Adv -> Adv
- = \c,x,y -> ConjAdv c (BaseAdv x y) ;
- mkAdv : Conj -> ListAdv -> Adv
- = \c,xy -> ConjAdv c xy ;
- } ;
-
- mkCl = overload {
- mkCl : NP -> VP -> Cl -- John wants to walk walks
- = PredVP ;
- mkCl : NP -> V -> Cl -- John walks
- = \s,v -> PredVP s (UseV v);
- mkCl : NP -> V2 -> NP -> Cl -- John uses it
- = \s,v,o -> PredVP s (ComplV2 v o);
- mkCl : NP -> V3 -> NP -> NP -> Cl
- = \s,v,o,i -> PredVP s (ComplV3 v o i);
-
- mkCl : NP -> VV -> VP -> Cl
- = \s,v,vp -> PredVP s (ComplVV v vp) ;
- mkCl : NP -> VS -> S -> Cl
- = \s,v,p -> PredVP s (ComplVS v p) ;
- mkCl : NP -> VQ -> QS -> Cl
- = \s,v,q -> PredVP s (ComplVQ v q) ;
- mkCl : NP -> VA -> AP -> Cl
- = \s,v,q -> PredVP s (ComplVA v q) ;
- mkCl : NP -> V2A -> NP -> AP -> Cl
- = \s,v,n,q -> PredVP s (ComplV2A v n q) ;
- mkCl : NP -> V2S -> NP -> S -> Cl --n14
- = \s,v,n,q -> PredVP s (ComplSlash (SlashV2S v q) n) ;
- mkCl : NP -> V2Q -> NP -> QS -> Cl --n14
- = \s,v,n,q -> PredVP s (ComplSlash (SlashV2Q v q) n) ;
- mkCl : NP -> V2V -> NP -> VP -> Cl --n14
- = \s,v,n,q -> PredVP s (ComplSlash (SlashV2V v q) n) ;
-
- mkCl : VP -> Cl -- it rains
- = ImpersCl ;
- mkCl : NP -> RS -> Cl -- it is you who did it
- = CleftNP ;
- mkCl : Adv -> S -> Cl -- it is yesterday she arrived
- = CleftAdv ;
- mkCl : N -> Cl -- there is a house
- = \y -> ExistNP (DetArtSg IndefArt (UseN y)) ;
- mkCl : CN -> Cl -- there is a house
- = \y -> ExistNP (DetArtSg IndefArt y) ;
- mkCl : NP -> Cl -- there is a house
- = ExistNP ;
- mkCl : NP -> AP -> Cl -- John is nice and warm
- = \x,y -> PredVP x (UseComp (CompAP y)) ;
- mkCl : NP -> A -> Cl -- John is warm
- = \x,y -> PredVP x (UseComp (CompAP (PositA y))) ;
- mkCl : NP -> A -> NP -> Cl -- John is warmer than Mary
- = \x,y,z -> PredVP x (UseComp (CompAP (ComparA y z))) ;
- mkCl : NP -> A2 -> NP -> Cl -- John is married to Mary
- = \x,y,z -> PredVP x (UseComp (CompAP (ComplA2 y z))) ;
- mkCl : NP -> NP -> Cl -- John is the man
- = \x,y -> PredVP x (UseComp (CompNP y)) ;
- mkCl : NP -> CN -> Cl -- John is a man
- = \x,y -> PredVP x (UseComp (CompNP (DetArtSg IndefArt y))) ;
- mkCl : NP -> N -> Cl -- John is a man
- = \x,y -> PredVP x (UseComp (CompNP (DetArtSg IndefArt (UseN y)))) ;
- mkCl : NP -> Adv -> Cl -- John is here
- = \x,y -> PredVP x (UseComp (CompAdv y)) ;
- mkCl : V -> Cl -- it rains
- = \v -> ImpersCl (UseV v)
- } ;
-
- genericCl : VP -> Cl = GenericCl ;
-
-
- mkNP = overload {
- mkNP : Art -> N -> NP -- the man --n14
- = \d,n -> DetArtSg d (UseN n) ;
- mkNP : Art -> CN -> NP -- the old man --n14
- = DetArtSg ;
- mkNP : Art -> Num -> CN -> NP -- the old men --n14
- = \d,nu,cn -> case nu.n of {
- ParamX.Sg => DetArtSg d cn ;
- Pl => DetArtPl d cn
- } ;
- mkNP : Art -> Num -> N -> NP -- the men --n14
- = \d,nu,cn -> case nu.n of {
- ParamX.Sg => DetArtSg d (UseN cn) ;
- Pl => DetArtPl d (UseN cn)
- } ;
-
- mkNP : Art -> Num -> Ord -> CN -> NP -- the five best men --n14
- = \d,nu,ord,cn -> DetCN (DetArtOrd d nu ord) (cn) ;
- mkNP : Art -> Ord -> CN -> NP -- the best men --n14
- = \d,ord,cn -> DetCN (DetArtOrd d sgNum ord) (cn) ;
- mkNP : Art -> Card -> CN -> NP -- the five men --n14
- = \d,nu,cn -> DetCN (DetArtCard d nu) (cn) ;
-
- mkNP : Art -> Num -> Ord -> N -> NP -- the five best men --n14
- = \d,nu,ord,cn -> DetCN (DetArtOrd d nu ord) (UseN cn) ;
- mkNP : Art -> Ord -> N -> NP -- the best men --n14
- = \d,ord,cn -> DetCN (DetArtOrd d sgNum ord) (UseN cn) ;
- mkNP : Art -> Card -> N -> NP -- the five men --n14
- = \d,nu,cn -> DetCN (DetArtCard d nu) (UseN cn) ;
-
- mkNP : CN -> NP -- old beer --n14
- = MassNP ;
- mkNP : N -> NP -- beer --n14
- = \n -> MassNP (UseN n) ;
-
- mkNP : Det -> CN -> NP -- the old man
- = DetCN ;
- mkNP : Det -> N -> NP -- the man
- = \d,n -> DetCN d (UseN n) ;
- mkNP : Quant -> NP -- this
- = \q -> DetNP (DetQuant q sgNum) ;
- mkNP : Quant -> Num -> NP -- this
- = \q,n -> DetNP (DetQuant q n) ;
- mkNP : Det -> NP -- this
- = DetNP ;
- mkNP : Card -> CN -> NP -- forty-five old men
- = \d,n -> DetCN (DetArtCard IndefArt d) n ;
- mkNP : Card -> N -> NP -- forty-five men
- = \d,n -> DetCN (DetArtCard IndefArt d) (UseN n) ;
- mkNP : Quant -> CN -> NP
- = \q,n -> DetCN (DetQuant q NumSg) n ;
- mkNP : Quant -> N -> NP
- = \q,n -> DetCN (DetQuant q NumSg) (UseN n) ;
- mkNP : Quant -> Num -> CN -> NP
- = \q,nu,n -> DetCN (DetQuant q nu) n ;
- mkNP : Quant -> Num -> N -> NP
- = \q,nu,n -> DetCN (DetQuant q nu) (UseN n) ;
-
- mkNP : Pron -> CN -> NP
- = \p,n -> DetCN (DetQuant (PossPron p) NumSg) n ;
- mkNP : Pron -> N -> NP
- = \p,n -> DetCN (DetQuant (PossPron p) NumSg) (UseN n) ;
-
- mkNP : Numeral -> CN -> NP -- 51 old men
- = \d,n -> DetCN (DetArtCard IndefArt (NumNumeral d)) n ;
-
- mkNP : Numeral -> N -> NP -- 51 men
- = \d,n -> DetCN (DetArtCard IndefArt (NumNumeral d)) (UseN n) ;
- mkNP : Digits -> CN -> NP -- 51 old men
- = \d,n -> DetCN (DetArtCard IndefArt (NumDigits d)) n ;
-
- mkNP : Digits -> N -> NP -- 51 men
- = \d,n -> DetCN (DetArtCard IndefArt (NumDigits d)) (UseN n) ;
-
- mkNP : Digit -> CN -> NP ---- obsol
- = \d,n -> DetCN (DetArtCard IndefArt (NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 d))))))) n ;
- mkNP : Digit -> N -> NP ---- obsol
- = \d,n -> DetCN (DetArtCard IndefArt (NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 d))))))) (UseN n) ;
-
- mkNP : PN -> NP -- John
- = UsePN ;
- mkNP : Pron -> NP -- he
- = UsePron ;
- mkNP : Predet -> NP -> NP -- only the man
- = PredetNP ;
- mkNP : NP -> V2 -> NP -- the number squared
- = PPartNP ;
- mkNP : NP -> Adv -> NP -- Paris at midnight
- = AdvNP ;
- mkNP : Conj -> NP -> NP -> NP
- = \c,x,y -> ConjNP c (BaseNP x y) ;
- mkNP : Conj -> ListNP -> NP
- = \c,xy -> ConjNP c xy ;
--- backward compat
- mkNP : QuantSg -> CN -> NP
- = \q,n -> DetCN (DetQuant q NumSg) n ;
- mkNP : QuantPl -> CN -> NP
- = \q,n -> DetCN (DetQuant q NumPl) n ;
-
- } ;
-
- mkDet = overload {
-
- mkDet : Art -> Num -> Ord -> Det -- the five best men --n14
- = \d,nu,ord -> (DetArtOrd d nu ord) ;
- mkDet : Art -> Ord -> Det -- the best men --n14
- = \d,ord -> (DetArtOrd d sgNum ord) ;
- mkDet : Art -> Card -> Det -- the five men --n14
- = \d,nu -> (DetArtCard d nu) ;
-
-
-
- mkDet : Quant -> Ord -> Det -- this best man
- = \q,o -> DetQuantOrd q NumSg o ;
- mkDet : Quant -> Det -- this man
- = \q -> DetQuant q NumSg ;
- mkDet : Quant -> Num -> Ord -> Det -- these five best men
- = DetQuantOrd ;
- mkDet : Quant -> Num -> Det -- these five man
- = DetQuant ;
- mkDet : Num -> Det -- forty-five men
- = DetArtCard IndefArt ;
- mkDet : Digits -> Det -- 51 (men)
- = \d -> DetArtCard IndefArt (NumDigits d) ;
- mkDet : Numeral -> Det --
- = \d -> DetArtCard IndefArt (NumNumeral d) ;
- mkDet : Pron -> Det -- my (house)
- = \p -> DetQuant (PossPron p) NumSg ;
- mkDet : Pron -> Num -> Det -- my (houses)
- = \p -> DetQuant (PossPron p) ;
- } ;
-
-
- the_Art : Art = DefArt ; -- the
- a_Art : Art = IndefArt ; -- a
-
--- 1.4
--- defSgDet : Det = DetSg (SgQuant DefArt) NoOrd ; -- the (man)
--- defPlDet : Det = DetPl (PlQuant DefArt) NoNum NoOrd ; -- the (man)
--- indefSgDet : Det = DetSg (SgQuant IndefArt) NoOrd ; -- the (man)
--- indefPlDet : Det = DetPl (PlQuant IndefArt) NoNum NoOrd ; -- the (man)
-
- ---- obsol
-
- mkQuantSg : Quant -> QuantSg = SgQuant ;
- mkQuantPl : Quant -> QuantPl = PlQuant ;
-
--- defQuant = DefArt ;
--- indefQuant = IndefArt ;
-
--- massQuant : QuantSg = SgQuant MassDet ;
--- the_QuantSg : QuantSg = SgQuant DefArt ;
--- a_QuantSg : QuantSg = mkQuantSg indefQuant ;
- this_QuantSg : QuantSg = mkQuantSg this_Quant ;
- that_QuantSg : QuantSg = mkQuantSg that_Quant ;
-
--- the_QuantPl : QuantPl = mkQuantPl defQuant ;
--- a_QuantPl : QuantPl = mkQuantPl indefQuant ;
- these_QuantPl : QuantPl = mkQuantPl this_Quant ;
- those_QuantPl : QuantPl = mkQuantPl that_Quant ;
-
- sgNum : Num = NumSg ;
- plNum : Num = NumPl ;
-
-
- mkNum = overload {
- mkNum : Numeral -> Num
- = \d -> NumCard (NumNumeral d) ;
- mkNum : Digits -> Num -- 51
- = \d -> NumCard (NumDigits d) ;
- mkNum : Digit -> Num
- = \d -> NumCard (NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 d)))))) ;
- mkNum : Card -> Num = NumCard ;
- mkNum : AdN -> Card -> Num = \a,c -> NumCard (AdNum a c)
- } ;
-
- singularNum : Num -- [no num]
- = NumSg ;
- pluralNum : Num -- [no num]
- = NumPl ;
-
- mkOrd = overload {
- mkOrd : Numeral -> Ord = OrdNumeral ;
- mkOrd : Digits -> Ord -- 51st
- = OrdDigits ;
- mkOrd : Digit -> Ord -- fifth
- = \d ->
- OrdNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 d))))) ;
- mkOrd : A -> Ord -- largest
- = OrdSuperl
- } ;
-
- n1_Numeral = num (pot2as3 (pot1as2 (pot0as1 pot01))) ;
- n2_Numeral = num (pot2as3 (pot1as2 (pot0as1 (pot0 n2)))) ;
- n3_Numeral = num (pot2as3 (pot1as2 (pot0as1 (pot0 n3)))) ;
- n4_Numeral = num (pot2as3 (pot1as2 (pot0as1 (pot0 n4)))) ;
- n5_Numeral = num (pot2as3 (pot1as2 (pot0as1 (pot0 n5)))) ;
- n6_Numeral = num (pot2as3 (pot1as2 (pot0as1 (pot0 n6)))) ;
- n7_Numeral = num (pot2as3 (pot1as2 (pot0as1 (pot0 n7)))) ;
- n8_Numeral = num (pot2as3 (pot1as2 (pot0as1 (pot0 n8)))) ;
- n9_Numeral = num (pot2as3 (pot1as2 (pot0as1 (pot0 n9)))) ;
- n10_Numeral = num (pot2as3 (pot1as2 pot110)) ;
- n20_Numeral = num (pot2as3 (pot1as2 (pot1 n2))) ;
- n100_Numeral = num (pot2as3 (pot2 pot01)) ;
- n1000_Numeral = num (pot3 (pot1as2 (pot0as1 pot01))) ;
-
- n1_Digits = IDig D_1 ;
- n2_Digits = IDig D_2 ;
- n3_Digits = IDig D_3 ;
- n4_Digits = IDig D_4 ;
- n5_Digits = IDig D_5 ;
- n6_Digits = IDig D_6 ;
- n7_Digits = IDig D_7 ;
- n8_Digits = IDig D_8 ;
- n9_Digits = IDig D_9 ;
- n10_Digits = IIDig D_1 (IDig D_0) ;
- n20_Digits = IIDig D_2 (IDig D_0) ;
- n100_Digits = IIDig D_1 (IIDig D_0 (IDig D_0)) ;
- n1000_Digits = IIDig D_1 (IIDig D_0 (IIDig D_0 (IDig D_0))) ;
-
-
- mkAdN : CAdv -> AdN = AdnCAdv ; -- more (than five)
-
- mkDigits = overload {
- mkDigits : Dig -> Digits = IDig ;
- mkDigits : Dig -> Digits -> Digits = IIDig ;
- } ;
-
- n0_Dig = D_0 ;
- n1_Dig = D_1 ;
- n2_Dig = D_2 ;
- n3_Dig = D_3 ;
- n4_Dig = D_4 ;
- n5_Dig = D_5 ;
- n6_Dig = D_6 ;
- n7_Dig = D_7 ;
- n8_Dig = D_8 ;
- n9_Dig = D_9 ;
-
-
-
-
- mkCN = overload {
- mkCN : N -> CN -- house
- = UseN ;
- mkCN : N2 -> NP -> CN -- son of the king
- = ComplN2 ;
- mkCN : N3 -> NP -> NP -> CN -- flight from Moscow (to Paris)
- = \f,x -> ComplN2 (ComplN3 f x) ;
- mkCN : N2 -> CN -- son
- = UseN2 ;
- mkCN : N3 -> CN -- flight
- = \n -> UseN2 (Use2N3 n) ;
- mkCN : AP -> CN -> CN -- nice and big blue house
- = AdjCN ;
- mkCN : AP -> N -> CN -- nice and big house
- = \x,y -> AdjCN x (UseN y) ;
- mkCN : CN -> AP -> CN -- nice and big blue house
- = \x,y -> AdjCN y x ;
- mkCN : N -> AP -> CN -- nice and big house
- = \x,y -> AdjCN y (UseN x) ;
- mkCN : A -> CN -> CN -- big blue house
- = \x,y -> AdjCN (PositA x) y;
- mkCN : A -> N -> CN -- big house
- = \x,y -> AdjCN (PositA x) (UseN y);
- mkCN : CN -> RS -> CN -- house that John owns
- = RelCN ;
- mkCN : N -> RS -> CN -- house that John owns
- = \x,y -> RelCN (UseN x) y ;
- mkCN : CN -> Adv -> CN -- house on the hill
- = AdvCN ;
- mkCN : N -> Adv -> CN -- house on the hill
- = \x,y -> AdvCN (UseN x) y ;
- mkCN : CN -> S -> CN -- fact that John smokes
- = \cn,s -> SentCN cn (EmbedS s) ;
- mkCN : CN -> QS -> CN -- question if John smokes
- = \cn,s -> SentCN cn (EmbedQS s) ;
- mkCN : CN -> VP -> CN -- reason to smoke
- = \cn,s -> SentCN cn (EmbedVP s) ;
- mkCN : CN -> NP -> CN -- number x, numbers x and y
- = ApposCN ;
- mkCN : N -> NP -> CN -- number x, numbers x and y
- = \x,y -> ApposCN (UseN x) y
- } ;
-
-
- mkPhr = overload {
- mkPhr : PConj -> Utt -> Voc -> Phr -- But go home my friend
- = PhrUtt ;
- mkPhr : Utt -> Voc -> Phr
- = \u,v -> PhrUtt NoPConj u v ;
- mkPhr : PConj -> Utt -> Phr
- = \u,v -> PhrUtt u v NoVoc ;
- mkPhr : Utt -> Phr -- Go home
- = \u -> PhrUtt NoPConj u NoVoc ;
- mkPhr : S -> Phr -- I go home
- = \s -> PhrUtt NoPConj (UttS s) NoVoc ;
- mkPhr : Cl -> Phr -- I go home
- = \s -> PhrUtt NoPConj (UttS (UseCl TPres ASimul PPos s)) NoVoc ;
- mkPhr : QS -> Phr -- I go home
- = \s -> PhrUtt NoPConj (UttQS s) NoVoc ;
- mkPhr : Imp -> Phr -- I go home
- = \s -> PhrUtt NoPConj (UttImpSg PPos s) NoVoc
-
- } ;
-
- mkPConj : Conj -> PConj = PConjConj ;
- noPConj : PConj = NoPConj ;
-
- mkVoc : NP -> Voc = VocNP ;
- noVoc : Voc = NoVoc ;
-
- positivePol : Pol = PPos ;
- negativePol : Pol = PNeg ;
-
- simultaneousAnt : Ant = ASimul ;
- anteriorAnt : Ant = AAnter ; --# notpresent
-
- presentTense : Tense = TPres ;
- pastTense : Tense = TPast ; --# notpresent
- futureTense : Tense = TFut ; --# notpresent
- conditionalTense : Tense = TCond ; --# notpresent
-
- param ImpForm = IFSg | IFPl | IFPol ;
-
- oper
- singularImpForm : ImpForm = IFSg ;
- pluralImpForm : ImpForm = IFPl ;
- politeImpForm : ImpForm = IFPol ;
-
- mkUttImp : ImpForm -> Pol -> Imp -> Utt = \f,p,i -> case f of {
- IFSg => UttImpSg p i ;
- IFPl => UttImpPl p i ;
- IFPol => UttImpPol p i
- } ;
-
- mkUtt = overload {
- mkUtt : S -> Utt -- John walked
- = UttS ;
- mkUtt : Cl -> Utt -- John walks
- = \c -> UttS (UseCl TPres ASimul PPos c);
- mkUtt : QS -> Utt -- is it good
- = UttQS ;
- mkUtt : ImpForm -> Pol -> Imp -> Utt -- don't help yourselves
- = mkUttImp ;
- mkUtt : ImpForm -> Imp -> Utt -- help yourselves
- = \f -> mkUttImp f PPos ;
- mkUtt : Pol -> Imp -> Utt -- (don't) help yourself
- = UttImpSg ;
- mkUtt : Imp -> Utt -- help yourself
- = UttImpSg PPos ;
- mkUtt : IP -> Utt -- who
- = UttIP ;
- mkUtt : IAdv -> Utt -- why
- = UttIAdv ;
- mkUtt : NP -> Utt -- this man
- = UttNP ;
- mkUtt : Adv -> Utt -- here
- = UttAdv ;
- mkUtt : VP -> Utt -- to sleep
- = UttVP
- } ;
-
- lets_Utt : VP -> Utt = ImpPl1 ;
-
- mkQCl = overload {
-
- mkQCl : Cl -> QCl -- does John walk
- = QuestCl ;
- mkQCl : IP -> VP -> QCl -- who walks
- = QuestVP ;
- mkQCl : IP -> ClSlash -> QCl -- who does John love
- = QuestSlash ;
- mkQCl : IP -> NP -> V2 -> QCl -- who does John love
- = \ip,np,v -> QuestSlash ip (SlashVP np (SlashV2a v)) ;
- mkQCl : IAdv -> Cl -> QCl -- why does John walk
- = QuestIAdv ;
- mkQCl : Prep -> IP -> Cl -> QCl -- with whom does John walk
- = \p,ip -> QuestIAdv (PrepIP p ip) ;
- mkQCl : IAdv -> NP -> QCl -- where is John
- = \a -> QuestIComp (CompIAdv a) ;
- mkQCl : IP -> QCl -- which houses are there
- = ExistIP
-
- } ;
-
- mkIP = overload {
- mkIP : IDet -> CN -> IP -- which songs
- = IdetCN ;
- mkIP : IDet -> N -> IP -- which song
- = \i,n -> IdetCN i (UseN n) ;
- mkIP : IQuant -> CN -> IP -- which songs
- = \i,n -> IdetCN (IdetQuant i NumSg) n ;
- mkIP : IQuant -> Num -> CN -> IP -- which songs
- = \i,nu,n -> IdetCN (IdetQuant i nu) n ;
- mkIP : IQuant -> N -> IP -- which song
- = \i,n -> IdetCN (IdetQuant i NumSg) (UseN n) ;
- mkIP : IP -> Adv -> IP -- who in Europe
- = AdvIP
- } ;
-
- whichSg_IDet : IDet = IdetQuant which_IQuant NumSg ;
- whichPl_IDet : IDet = IdetQuant which_IQuant NumPl ;
-
- mkIAdv : Prep -> IP -> IAdv = PrepIP ;
-
- mkRCl = overload {
- mkRCl : Cl -> RCl -- such that John loves her
- = RelCl ;
- mkRCl : RP -> VP -> RCl -- who loves John
- = RelVP ;
- mkRCl : RP -> ClSlash -> RCl -- whom John loves
- = RelSlash ;
- mkRCl : RP -> NP -> V2 -> RCl -- whom John loves
- = \rp,np,v2 -> RelSlash rp (SlashVP np (SlashV2a v2)) ;
- } ;
-
- which_RP : RP -- which
- = IdRP ;
- mkRP : Prep -> NP -> RP -> RP -- all the roots of which
- = FunRP
- ;
-
- mkClSlash = overload {
- mkClSlash : NP -> V2 -> ClSlash -- (whom) he sees
- = \np,v2 -> SlashVP np (SlashV2a v2) ;
- mkClSlash : NP -> VV -> V2 -> ClSlash -- (whom) he wants to see
- = \np,vv,v2 -> SlashVP np (SlashVV vv (SlashV2a v2)) ;
- mkClSlash : ClSlash -> Adv -> ClSlash -- (whom) he sees tomorrow
- = AdvSlash ;
- mkClSlash : Cl -> Prep -> ClSlash -- (with whom) he walks
- = SlashPrep
- } ;
-
- mkImp = overload {
- mkImp : VP -> Imp -- go
- = ImpVP ;
- mkImp : V -> Imp
- = \v -> ImpVP (UseV v) ;
- mkImp : V2 -> NP -> Imp
- = \v,np -> ImpVP (ComplV2 v np)
- } ;
-
- mkS = overload {
- mkS : Cl -> S
- = UseCl TPres ASimul PPos ;
- mkS : Tense -> Cl -> S
- = \t -> UseCl t ASimul PPos ;
- mkS : Ant -> Cl -> S
- = \a -> UseCl TPres a PPos ;
- mkS : Pol -> Cl -> S
- = \p -> UseCl TPres ASimul p ;
- mkS : Tense -> Ant -> Cl -> S
- = \t,a -> UseCl t a PPos ;
- mkS : Tense -> Pol -> Cl -> S
- = \t,p -> UseCl t ASimul p ;
- mkS : Ant -> Pol -> Cl -> S
- = \a,p -> UseCl TPres a p ;
- mkS : Tense -> Ant -> Pol -> Cl -> S
- = UseCl ;
- mkS : Conj -> S -> S -> S
- = \c,x,y -> ConjS c (BaseS x y) ;
- mkS : Conj -> ListS -> S
- = \c,xy -> ConjS c xy ;
- mkS : Adv -> S -> S
- = AdvS
-
- } ;
-
- mkQS = overload {
-
- mkQS : QCl -> QS
- = UseQCl TPres ASimul PPos ;
- mkQS : Tense -> QCl -> QS
- = \t -> UseQCl t ASimul PPos ;
- mkQS : Ant -> QCl -> QS
- = \a -> UseQCl TPres a PPos ;
- mkQS : Pol -> QCl -> QS
- = \p -> UseQCl TPres ASimul p ;
- mkQS : Tense -> Ant -> QCl -> QS
- = \t,a -> UseQCl t a PPos ;
- mkQS : Tense -> Pol -> QCl -> QS
- = \t,p -> UseQCl t ASimul p ;
- mkQS : Ant -> Pol -> QCl -> QS
- = \a,p -> UseQCl TPres a p ;
- mkQS : Tense -> Ant -> Pol -> QCl -> QS
- = UseQCl ;
- mkQS : Cl -> QS
- = \x -> UseQCl TPres ASimul PPos (QuestCl x)
- } ;
-
-
- mkRS = overload {
-
- mkRS : RCl -> RS
- = UseRCl TPres ASimul PPos ;
- mkRS : Tense -> RCl -> RS
- = \t -> UseRCl t ASimul PPos ;
- mkRS : Ant -> RCl -> RS
- = \a -> UseRCl TPres a PPos ;
- mkRS : Pol -> RCl -> RS
- = \p -> UseRCl TPres ASimul p ;
- mkRS : Tense -> Ant -> RCl -> RS
- = \t,a -> UseRCl t a PPos ;
- mkRS : Tense -> Pol -> RCl -> RS
- = \t,p -> UseRCl t ASimul p ;
- mkRS : Ant -> Pol -> RCl -> RS
- = \a,p -> UseRCl TPres a p ;
- mkRS : Tense -> Ant -> Pol -> RCl -> RS
- = UseRCl
- } ;
-
- param Punct = PFullStop | PExclMark | PQuestMark ;
-
- oper
- emptyText : Text = TEmpty ; -- [empty text]
-
- fullStopPunct : Punct = PFullStop ; -- .
- questMarkPunct : Punct = PQuestMark ; -- ?
- exclMarkPunct : Punct = PExclMark ; -- !
-
-
- mkText = overload {
- mkText : Phr -> Punct -> Text -> Text =
- \phr,punct,text -> case punct of {
- PFullStop => TFullStop phr text ;
- PExclMark => TExclMark phr text ;
- PQuestMark => TQuestMark phr text
- } ;
- mkText : Phr -> Punct -> Text =
- \phr,punct -> case punct of {
- PFullStop => TFullStop phr TEmpty ;
- PExclMark => TExclMark phr TEmpty ;
- PQuestMark => TQuestMark phr TEmpty
- } ;
- mkText : Phr -> Text -- John walks.
- = \x -> TFullStop x TEmpty ;
- mkText : Utt -> Text
- = \u -> TFullStop (PhrUtt NoPConj u NoVoc) TEmpty ;
- mkText : S -> Text
- = \s -> TFullStop (PhrUtt NoPConj (UttS s) NoVoc) TEmpty;
- mkText : Cl -> Text
- = \c -> TFullStop (PhrUtt NoPConj (UttS (UseCl TPres ASimul PPos c)) NoVoc) TEmpty;
- mkText : QS -> Text
- = \q -> TQuestMark (PhrUtt NoPConj (UttQS q) NoVoc) TEmpty ;
- mkText : Imp -> Text
- = \i -> TExclMark (PhrUtt NoPConj (UttImpSg PPos i) NoVoc) TEmpty;
- mkText : Pol -> Imp -> Text
- = \p,i -> TExclMark (PhrUtt NoPConj (UttImpSg p i) NoVoc) TEmpty;
- mkText : Phr -> Text -> Text -- John walks. ...
- = TFullStop ;
- mkText : Text -> Text -> Text = \t,u -> {s = t.s ++ u.s ; lock_Text = <>} ;
- } ;
-
- mkVP = overload {
- mkVP : V -> VP -- sleep
- = UseV ;
- mkVP : V2 -> NP -> VP -- use it
- = ComplV2 ;
- mkVP : V3 -> NP -> NP -> VP -- send a message to her
- = ComplV3 ;
- mkVP : VV -> VP -> VP -- want to run
- = ComplVV ;
- mkVP : VS -> S -> VP -- know that she runs
- = ComplVS ;
- mkVP : VQ -> QS -> VP -- ask if she runs
- = ComplVQ ;
- mkVP : VA -> AP -> VP -- look red
- = ComplVA ;
- mkVP : V2A -> NP -> AP -> VP -- paint the house red
- = ComplV2A ;
-
- mkVP : V2S -> NP -> S -> VP --n14
- = \v,n,q -> (ComplSlash (SlashV2S v q) n) ;
- mkVP : V2Q -> NP -> QS -> VP --n14
- = \v,n,q -> (ComplSlash (SlashV2Q v q) n) ;
- mkVP : V2V -> NP -> VP -> VP --n14
- = \v,n,q -> (ComplSlash (SlashV2V v q) n) ;
-
- mkVP : A -> VP -- be warm
- = \a -> UseComp (CompAP (PositA a)) ;
- mkVP : A -> NP -> VP -- John is warmer than Mary
- = \y,z -> (UseComp (CompAP (ComparA y z))) ;
- mkVP : A2 -> NP -> VP -- John is married to Mary
- = \y,z -> (UseComp (CompAP (ComplA2 y z))) ;
- mkVP : AP -> VP -- be warm
- = \a -> UseComp (CompAP a) ;
- mkVP : NP -> VP -- be a man
- = \a -> UseComp (CompNP a) ;
- mkVP : CN -> VP -- be a man
- = \y -> (UseComp (CompNP (DetArtSg IndefArt y))) ;
- mkVP : N -> VP -- be a man
- = \y -> (UseComp (CompNP (DetArtSg IndefArt (UseN y)))) ;
- mkVP : Adv -> VP -- be here
- = \a -> UseComp (CompAdv a) ;
- mkVP : VP -> Adv -> VP -- sleep here
- = AdvVP ;
- mkVP : AdV -> VP -> VP -- always sleep
- = AdVVP ;
- mkVP : VPSlash -> NP -> VP -- always sleep
- = ComplSlash ;
- mkVP : VPSlash -> VP
- = ReflVP
- } ;
-
- reflexiveVP : V2 -> VP = \v -> ReflVP (SlashV2a v) ;
-
- mkVPSlash = overload {
-
- mkVPSlash : V2 -> VPSlash -- 1. (whom) (John) loves
- = SlashV2a ;
- mkVPSlash : V3 -> NP -> VPSlash -- 2. (whom) (John) gives an apple
- = Slash2V3 ;
- mkVPSlash : V2A -> AP -> VPSlash -- 3. (whom) (John) paints red
- = SlashV2A ;
- mkVPSlash : V2Q -> QS -> VPSlash -- 4. (whom) (John) asks who sleeps
- = SlashV2Q ;
- mkVPSlash : V2S -> S -> VPSlash -- 5. (whom) (John) tells that we sleep
- = SlashV2S ;
- mkVPSlash : V2V -> VP -> VPSlash -- 6. (whom) (John) forces to sleep
- = SlashV2V ;
- } ;
-
-
-
- passiveVP = overload {
- passiveVP : V2 -> VP = PassV2 ;
- passiveVP : V2 -> NP -> VP = \v,np ->
- (AdvVP (PassV2 v) (PrepNP by8agent_Prep np))
- } ;
- progressiveVP : VP -> VP = ProgrVP ;
-
-
- mkListS = overload {
- mkListS : S -> S -> ListS = BaseS ;
- mkListS : S -> ListS -> ListS = ConsS
- } ;
-
- mkListAP = overload {
- mkListAP : AP -> AP -> ListAP = BaseAP ;
- mkListAP : AP -> ListAP -> ListAP = ConsAP
- } ;
-
- mkListAdv = overload {
- mkListAdv : Adv -> Adv -> ListAdv = BaseAdv ;
- mkListAdv : Adv -> ListAdv -> ListAdv = ConsAdv
- } ;
-
- mkListNP = overload {
- mkListNP : NP -> NP -> ListNP = BaseNP ;
- mkListNP : NP -> ListNP -> ListNP = ConsNP
- } ;
-
- mkCard = overload {
- mkCard : Numeral -> Card
- = NumNumeral ;
- mkNum : Digits -> Card -- 51
- = NumDigits ;
- } ;
-
-
------------- for backward compatibility
-
- QuantSg : Type = Quant ** {isSg : {}} ;
- QuantPl : Type = Quant ** {isPl : {}} ;
- SgQuant : Quant -> QuantSg = \q -> q ** {isSg = <>} ;
- PlQuant : Quant -> QuantPl = \q -> q ** {isPl = <>} ;
-
--- Pre-1.4 constants defined
-
- DetSg : Quant -> Ord -> Det = \q -> DetQuantOrd q NumSg ;
- DetPl : Quant -> Num -> Ord -> Det = DetQuantOrd ;
-
- ComplV2 : V2 -> NP -> VP = \v,np -> ComplSlash (SlashV2a v) np ;
- ComplV2A : V2A -> NP -> AP -> VP = \v,np,ap -> ComplSlash (SlashV2A v ap) np ;
- ComplV3 : V3 -> NP -> NP -> VP = \v,o,d -> ComplSlash (Slash2V3 v o) d ;
-
- that_NP : NP = DetNP (DetQuant that_Quant sgNum) ;
- this_NP : NP = DetNP (DetQuant this_Quant sgNum) ;
- those_NP : NP = DetNP (DetQuant that_Quant plNum) ;
- these_NP : NP = DetNP (DetQuant this_Quant plNum) ;
-
- ListAdv : Type = Grammar.ListAdv ;
- ListAP : Type = Grammar.ListAP ;
- ListNP : Type = Grammar.ListNP ;
- ListS : Type = Grammar.ListS ;
-
-{-
--- The definite and indefinite articles are commonly used determiners.
-
- defSgDet : Det ; -- 11. the (house)
- defPlDet : Det ; -- 12. the (houses)
- indefSgDet : Det ; -- 13. a (house)
- indefPlDet : Det ; -- 14. (houses)
-
-
---3 QuantSg, singular quantifiers
-
--- From quantifiers that can have both forms, this constructor
--- builds the singular form.
-
- mkQuantSg : Quant -> QuantSg ; -- 1. this
-
--- The mass noun phrase constructor is treated as a singular quantifier.
-
- massQuant : QuantSg ; -- 2. (mass terms)
-
--- More singular quantifiers are available in the $Structural$ module.
--- The following singular cases of quantifiers are often used.
-
- the_QuantSg : QuantSg ; -- 3. the
- a_QuantSg : QuantSg ; -- 4. a
- this_QuantSg : QuantSg ; -- 5. this
- that_QuantSg : QuantSg ; -- 6. that
-
-
---3 QuantPl, plural quantifiers
-
--- From quantifiers that can have both forms, this constructor
--- builds the plural form.
-
- mkQuantPl : Quant -> QuantPl ; -- 1. these
-
--- More plural quantifiers are available in the $Structural$ module.
--- The following plural cases of quantifiers are often used.
-
- the_QuantPl : QuantPl ; -- 2. the
- a_QuantPl : QuantPl ; -- 3. (indefinite plural)
- these_QuantPl : QuantPl ; -- 4. these
- those_QuantPl : QuantPl ; -- 5. those
--}
-
-}
diff --git a/deprecated/old-lib/resource/api/ConstructorsBul.gf b/deprecated/old-lib/resource/api/ConstructorsBul.gf
deleted file mode 100644
index 54a85890c..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsBul.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsBul = Constructors with (Grammar = GrammarBul) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsCat.gf b/deprecated/old-lib/resource/api/ConstructorsCat.gf
deleted file mode 100644
index 4efd5bad4..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsCat.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsCat = Constructors with (Grammar = GrammarCat) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsDan.gf b/deprecated/old-lib/resource/api/ConstructorsDan.gf
deleted file mode 100644
index 0627f96c8..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsDan.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsDan = Constructors with (Grammar = GrammarDan) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsEng.gf b/deprecated/old-lib/resource/api/ConstructorsEng.gf
deleted file mode 100644
index 1d88caa79..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsEng.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsEng = Constructors with (Grammar = GrammarEng) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsFin.gf b/deprecated/old-lib/resource/api/ConstructorsFin.gf
deleted file mode 100644
index 57934b728..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsFin.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsFin = Constructors with (Grammar = GrammarFin) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsFre.gf b/deprecated/old-lib/resource/api/ConstructorsFre.gf
deleted file mode 100644
index b50c55fbc..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsFre.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsFre = Constructors with (Grammar = GrammarFre) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsGer.gf b/deprecated/old-lib/resource/api/ConstructorsGer.gf
deleted file mode 100644
index 907bf90a0..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsGer.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsGer = Constructors with (Grammar = GrammarGer) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsIta.gf b/deprecated/old-lib/resource/api/ConstructorsIta.gf
deleted file mode 100644
index 29724ffee..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsIta.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsIta = Constructors with (Grammar = GrammarIta) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsNor.gf b/deprecated/old-lib/resource/api/ConstructorsNor.gf
deleted file mode 100644
index d95b8b0e0..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsNor.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsNor = Constructors with (Grammar = GrammarNor) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsRus.gf b/deprecated/old-lib/resource/api/ConstructorsRus.gf
deleted file mode 100644
index 3a77d344e..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsRus.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsRus = Constructors with (Grammar = GrammarRus) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsSpa.gf b/deprecated/old-lib/resource/api/ConstructorsSpa.gf
deleted file mode 100644
index 98874982a..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsSpa.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsSpa = Constructors with (Grammar = GrammarSpa) ;
diff --git a/deprecated/old-lib/resource/api/ConstructorsSwe.gf b/deprecated/old-lib/resource/api/ConstructorsSwe.gf
deleted file mode 100644
index 9def2d75f..000000000
--- a/deprecated/old-lib/resource/api/ConstructorsSwe.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource ConstructorsSwe = Constructors with (Grammar = GrammarSwe) ;
diff --git a/deprecated/old-lib/resource/api/Syntax.gf b/deprecated/old-lib/resource/api/Syntax.gf
deleted file mode 100644
index 1302e6391..000000000
--- a/deprecated/old-lib/resource/api/Syntax.gf
+++ /dev/null
@@ -1,4 +0,0 @@
---# -path=.:alltenses:prelude
-
-interface Syntax = Constructors, Cat, Structural, Combinators ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxBul.gf b/deprecated/old-lib/resource/api/SyntaxBul.gf
deleted file mode 100644
index ff11f6888..000000000
--- a/deprecated/old-lib/resource/api/SyntaxBul.gf
+++ /dev/null
@@ -1,4 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxBul of Syntax = ConstructorsBul, CatBul, StructuralBul, CombinatorsBul ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxCat.gf b/deprecated/old-lib/resource/api/SyntaxCat.gf
deleted file mode 100644
index 73ff4829c..000000000
--- a/deprecated/old-lib/resource/api/SyntaxCat.gf
+++ /dev/null
@@ -1,4 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxCat of Syntax = ConstructorsCat, CatCat, StructuralCat, CombinatorsCat ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxDan.gf b/deprecated/old-lib/resource/api/SyntaxDan.gf
deleted file mode 100644
index 83d07d828..000000000
--- a/deprecated/old-lib/resource/api/SyntaxDan.gf
+++ /dev/null
@@ -1,4 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxDan of Syntax = ConstructorsDan, CatDan, StructuralDan, CombinatorsDan ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxEng.gf b/deprecated/old-lib/resource/api/SyntaxEng.gf
deleted file mode 100644
index 940ee0573..000000000
--- a/deprecated/old-lib/resource/api/SyntaxEng.gf
+++ /dev/null
@@ -1,5 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxEng of Syntax =
- ConstructorsEng, CatEng, StructuralEng, CombinatorsEng ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxFin.gf b/deprecated/old-lib/resource/api/SyntaxFin.gf
deleted file mode 100644
index 300c56175..000000000
--- a/deprecated/old-lib/resource/api/SyntaxFin.gf
+++ /dev/null
@@ -1,4 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxFin of Syntax = ConstructorsFin, CatFin, StructuralFin, CombinatorsFin ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxFre.gf b/deprecated/old-lib/resource/api/SyntaxFre.gf
deleted file mode 100644
index 8f5ffa206..000000000
--- a/deprecated/old-lib/resource/api/SyntaxFre.gf
+++ /dev/null
@@ -1,4 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxFre of Syntax = ConstructorsFre, CatFre, StructuralFre, CombinatorsFre ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxGer.gf b/deprecated/old-lib/resource/api/SyntaxGer.gf
deleted file mode 100644
index 59f495279..000000000
--- a/deprecated/old-lib/resource/api/SyntaxGer.gf
+++ /dev/null
@@ -1,4 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxGer of Syntax = ConstructorsGer, CatGer, StructuralGer, CombinatorsGer ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxIta.gf b/deprecated/old-lib/resource/api/SyntaxIta.gf
deleted file mode 100644
index 3bba98dd5..000000000
--- a/deprecated/old-lib/resource/api/SyntaxIta.gf
+++ /dev/null
@@ -1,4 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxIta of Syntax = ConstructorsIta, CatIta, StructuralIta, CombinatorsIta ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxNor.gf b/deprecated/old-lib/resource/api/SyntaxNor.gf
deleted file mode 100644
index 98b4d41cf..000000000
--- a/deprecated/old-lib/resource/api/SyntaxNor.gf
+++ /dev/null
@@ -1,5 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxNor of Syntax = ConstructorsNor, CatNor, StructuralNor, CombinatorsNor
- ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxRus.gf b/deprecated/old-lib/resource/api/SyntaxRus.gf
deleted file mode 100644
index 56f750acb..000000000
--- a/deprecated/old-lib/resource/api/SyntaxRus.gf
+++ /dev/null
@@ -1,4 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxRus of Syntax = ConstructorsRus, CatRus, StructuralRus, CombinatorsRus ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxSpa.gf b/deprecated/old-lib/resource/api/SyntaxSpa.gf
deleted file mode 100644
index 40315b430..000000000
--- a/deprecated/old-lib/resource/api/SyntaxSpa.gf
+++ /dev/null
@@ -1,5 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxSpa of Syntax =
- ConstructorsSpa, CatSpa, StructuralSpa, CombinatorsSpa ;
-
diff --git a/deprecated/old-lib/resource/api/SyntaxSwe.gf b/deprecated/old-lib/resource/api/SyntaxSwe.gf
deleted file mode 100644
index b1b603f8e..000000000
--- a/deprecated/old-lib/resource/api/SyntaxSwe.gf
+++ /dev/null
@@ -1,5 +0,0 @@
---# -path=.:alltenses:prelude
-
-instance SyntaxSwe of Syntax =
- ConstructorsSwe, CatSwe, StructuralSwe, CombinatorsSwe ;
-
diff --git a/deprecated/old-lib/resource/api/TryBul.gf b/deprecated/old-lib/resource/api/TryBul.gf
deleted file mode 100644
index 5b58da938..000000000
--- a/deprecated/old-lib/resource/api/TryBul.gf
+++ /dev/null
@@ -1,13 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TryBul = SyntaxBul, LexiconBul, ParadigmsBul - [mkAdv] **
- open (P = ParadigmsBul) in {
-
-oper
-
- mkAdv = overload SyntaxBul {
- mkAdv : Str -> Adv = P.mkAdv ;
- } ;
-
-
-}
diff --git a/deprecated/old-lib/resource/api/TryCat.gf b/deprecated/old-lib/resource/api/TryCat.gf
deleted file mode 100644
index 872a85395..000000000
--- a/deprecated/old-lib/resource/api/TryCat.gf
+++ /dev/null
@@ -1,13 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TryCat = SyntaxCat, LexiconCat, ParadigmsCat - [mkAdv] **
- open (P = ParadigmsCat) in {
-
-oper
-
- mkAdv = overload SyntaxCat {
- mkAdv : Str -> Adv = P.mkAdv ;
- } ;
-
-
-}
diff --git a/deprecated/old-lib/resource/api/TryDan.gf b/deprecated/old-lib/resource/api/TryDan.gf
deleted file mode 100644
index f92e7285d..000000000
--- a/deprecated/old-lib/resource/api/TryDan.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TryDan = SyntaxDan, LexiconDan, ParadigmsDan - [mkAdv] ;
diff --git a/deprecated/old-lib/resource/api/TryEng.gf b/deprecated/old-lib/resource/api/TryEng.gf
deleted file mode 100644
index 6975e4afa..000000000
--- a/deprecated/old-lib/resource/api/TryEng.gf
+++ /dev/null
@@ -1,13 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TryEng = SyntaxEng, LexiconEng, ParadigmsEng - [mkAdv] **
- open (P = ParadigmsEng) in {
-
-oper
-
- mkAdv = overload SyntaxEng {
- mkAdv : Str -> Adv = P.mkAdv ;
- } ;
-
-
-}
diff --git a/deprecated/old-lib/resource/api/TryFin.gf b/deprecated/old-lib/resource/api/TryFin.gf
deleted file mode 100644
index 75ea25130..000000000
--- a/deprecated/old-lib/resource/api/TryFin.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TryFin = SyntaxFin, LexiconFin-[mkOrd], ParadigmsFin - [mkAdv] ;
diff --git a/deprecated/old-lib/resource/api/TryFre.gf b/deprecated/old-lib/resource/api/TryFre.gf
deleted file mode 100644
index b12983510..000000000
--- a/deprecated/old-lib/resource/api/TryFre.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TryFre = SyntaxFre, LexiconFre, ParadigmsFre - [mkAdv] ;
diff --git a/deprecated/old-lib/resource/api/TryGer.gf b/deprecated/old-lib/resource/api/TryGer.gf
deleted file mode 100644
index 7b4d0ddb5..000000000
--- a/deprecated/old-lib/resource/api/TryGer.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TryGer = SyntaxGer, LexiconGer, ParadigmsGer - [mkAdv] ;
diff --git a/deprecated/old-lib/resource/api/TryIta.gf b/deprecated/old-lib/resource/api/TryIta.gf
deleted file mode 100644
index ff91189bc..000000000
--- a/deprecated/old-lib/resource/api/TryIta.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TryIta = SyntaxIta, LexiconIta, ParadigmsIta - [mkAdv,in_Prep] ;
diff --git a/deprecated/old-lib/resource/api/TryNor.gf b/deprecated/old-lib/resource/api/TryNor.gf
deleted file mode 100644
index 43c9bab63..000000000
--- a/deprecated/old-lib/resource/api/TryNor.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TryNor = SyntaxNor, LexiconNor, ParadigmsNor - [mkAdv] ;
diff --git a/deprecated/old-lib/resource/api/TryRus.gf b/deprecated/old-lib/resource/api/TryRus.gf
deleted file mode 100644
index cb2058ceb..000000000
--- a/deprecated/old-lib/resource/api/TryRus.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TryRus = SyntaxRus, LexiconRus, ParadigmsRus - [mkAdv] ;
diff --git a/deprecated/old-lib/resource/api/TrySpa.gf b/deprecated/old-lib/resource/api/TrySpa.gf
deleted file mode 100644
index 06e74933b..000000000
--- a/deprecated/old-lib/resource/api/TrySpa.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TrySpa = SyntaxSpa, LexiconSpa, ParadigmsSpa - [mkAdv] ;
diff --git a/deprecated/old-lib/resource/api/TrySwe.gf b/deprecated/old-lib/resource/api/TrySwe.gf
deleted file mode 100644
index aac2c9e49..000000000
--- a/deprecated/old-lib/resource/api/TrySwe.gf
+++ /dev/null
@@ -1,12 +0,0 @@
---# -path=.:alltenses:prelude
-
-resource TrySwe = SyntaxSwe, LexiconSwe, ParadigmsSwe - [mkAdv] **
- open (P = ParadigmsSwe) in {
-
-oper
-
- mkAdv = overload SyntaxSwe {
- mkAdv : Str -> Adv = P.mkAdv ;
- } ;
-
-}
\ No newline at end of file
diff --git a/deprecated/old-lib/resource/arabic/AdjectiveAra.gf b/deprecated/old-lib/resource/arabic/AdjectiveAra.gf
deleted file mode 100644
index f324d95d3..000000000
--- a/deprecated/old-lib/resource/arabic/AdjectiveAra.gf
+++ /dev/null
@@ -1,43 +0,0 @@
-concrete AdjectiveAra of Adjective = CatAra ** open ResAra, Prelude in {
-
- lin
-
-
- PositA a = {
- s = \\h,g,n,d,c => case h of {
- Hum => a.s ! APosit g n d c;
- NoHum => case n of {
- Pl => a.s ! APosit Fem Sg d c ;
- _ => a.s ! APosit g n d c
- }
- }
- };
--- ComparA a np = {
--- s = \\_ => a.s ! AAdj Compar ++ "مِنْ" ++ np.s ! Gen ;
--- } ;
---
--- $SuperlA$ belongs to determiner syntax in $Noun$.
---
--- ComplA2 a np = {
--- s = \\_ => a.s ! AAdj Posit ++ a.c2 ++ np.s ! Acc ;
--- isPre = False
--- } ;
---
--- ReflA2 a = {
--- s = \\ag => a.s ! AAdj Posit ++ a.c2 ++ reflPron ! ag ;
--- isPre = False
--- } ;
---
--- SentAP ap sc = {
--- s = \\a => ap.s ! a ++ sc.s ;
--- isPre = False
--- } ;
---
--- AdAP ada ap = {
--- s = \\a => ada.s ++ ap.s ! a ;
--- isPre = ap.isPre
--- } ;
---
--- UseA2 a = a ;
---
-}
diff --git a/deprecated/old-lib/resource/arabic/AdverbAra.gf b/deprecated/old-lib/resource/arabic/AdverbAra.gf
deleted file mode 100644
index 5c2cbdfb6..000000000
--- a/deprecated/old-lib/resource/arabic/AdverbAra.gf
+++ /dev/null
@@ -1,21 +0,0 @@
-concrete AdverbAra of Adverb = CatAra ** open ResAra, Prelude in {
-
- lin
- PositAdvAdj a = {s = a.s ! APosit Masc Sg Indef Acc} ;
--- ComparAdvAdj cadv a np = {
--- s = cadv.s ++ a.s ! AAdv ++ "مِنْ" ++ np.s ! Gen
--- } ;
--- ComparAdvAdjS cadv a s = {
--- s = cadv.s ++ a.s ! AAdv ++ "تهَن" ++ s.s
--- } ;
-
- PrepNP prep np = {s = prep.s ++ np.s ! Gen} ;
-
--- AdAdv = cc2 ;
---
--- SubjS = cc2 ;
--- AdvSC s = s ; --- this rule give stack overflow in ordinary parsing
---
--- AdnCAdv cadv = {s = cadv.s ++ "تهَن"} ;
---
-}
diff --git a/deprecated/old-lib/resource/arabic/AllAra.gf b/deprecated/old-lib/resource/arabic/AllAra.gf
deleted file mode 100644
index d23f9b997..000000000
--- a/deprecated/old-lib/resource/arabic/AllAra.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:../abstract:../common:prelude
-
-concrete AllAra of AllAraAbs = LangAra ;
diff --git a/deprecated/old-lib/resource/arabic/AllAraAbs.gf b/deprecated/old-lib/resource/arabic/AllAraAbs.gf
deleted file mode 100644
index 9889c81ed..000000000
--- a/deprecated/old-lib/resource/arabic/AllAraAbs.gf
+++ /dev/null
@@ -1,3 +0,0 @@
---# -path=.:../abstract:../common:prelude
-
-abstract AllAraAbs = Lang ;
diff --git a/deprecated/old-lib/resource/arabic/CatAra.gf b/deprecated/old-lib/resource/arabic/CatAra.gf
deleted file mode 100644
index dd1790a94..000000000
--- a/deprecated/old-lib/resource/arabic/CatAra.gf
+++ /dev/null
@@ -1,103 +0,0 @@
-concrete CatAra of Cat = CommonX - [Utt] ** open ResAra, Prelude, ParamX in {
-
- flags optimize=all_subs ;
-
- lincat
-
--- Phrase
-
- Utt = {s : Gender => Str};
-
--- Tensed/Untensed
-
- S = {s : Str} ;
- QS = {s : QForm => Str} ;
--- RS = {s : Agr => Str} ;
-
--- Sentence
-
- Cl = {s : ResAra.Tense => Polarity => Order => Str} ;
--- Slash = {s : Tense => Anteriority => Polarity => Order => Str} ** {c2 : Str} ;
- Imp = {s : Polarity => Gender => ResAra.Number => Str} ;
-
--- Question
-
- QCl = {s : ResAra.Tense => Polarity => QForm => Str} ;
- IP = {s : Str ; n : ResAra.Number} ;
--- IAdv = {s : Str} ;
--- IDet = {s : Str ; n : ResAra.Number} ;
---
----- Relative
---
--- RCl = {s : Tense => Anteriority => Polarity => Agr => Str} ;
--- RP = {s : Case => Str ; a : RAgr} ;
---
--- Verb
-
- VP = ResAra.VP ;
- VPSlash = ResAra.VP ** {c2 : Str} ;
- Comp = ResAra.Comp ; --{s : AAgr => Case => Str} ;
--- SC = {s : Str} ;
---
--- Adjective
-
- AP = {s : Species => Gender => NTable } ;
-
--- Noun
-
- CN = ResAra.Noun ** {adj : NTable};
- NP, Pron = ResAra.NP; --{s : Case => Str ; a : Agr } ;
- Num, Ord, Card = {s : Gender => State => Case => Str ;
- n : Size };
- Predet = ResAra.Predet ;
-
--- DEPRECATED
--- QuantSg, QuantPl =
--- {s : Species => Gender => Case => Str;
--- n : ResAra.Number;
--- d : State;
--- isNum : Bool;
--- isPron : Bool} ;
-
- Det = ResAra.Det ;
--- {s : Species => Gender => Case => Str ;
--- d : State; n : Size; isNum : Bool } ;
- Quant = {s : ResAra.Number => Species => Gender => Case => Str;
- d : State;
- isNum : Bool;
- isPron: Bool} ;
- Art = {s : ResAra.Number => Species => Gender => Case => Str;
- d : State} ;
-
--- Numeral
-
- Numeral = {s : CardOrd => Gender => State => Case => Str ;
- n : Size } ;
- Digits = {s : Str;
- n : Size};
-
--- Structural
-
- Conj = {s : Str ; n : ResAra.Number} ;
--- DConj = {s1,s2 : Str ; n : ResAra.Number} ;
--- Subj = {s : Str} ;
- Prep = {s : Str} ;
-
--- Open lexical classes, e.g. Lexicon
-
- V, VS, VQ, VA = ResAra.Verb ; -- = {s : VForm => Str} ;
- V2, V2A = ResAra.Verb ** {c2 : Str} ;
- V2V, V2S, V2Q = ResAra.Verb ** {c2 : Str} ; --- AR
- V3 = ResAra.Verb ** {c2, c3 : Str} ;
--- VV = {s : VVForm => Str ; isAux : Bool} ;
-
- A = ResAra.Adj ;
- A2 = ResAra.Adj ** {c2 : Str} ;
-
- N, N2 = ResAra.Noun ;
---{s : ResAra.Number => State => Case => Str; g : Gender ; h = Species} ;
--- N2 = {s : ResAra.Number => Case => Str} ** {c2 : Str} ;??
- N3 = ResAra.Noun ** {c2,c3 : Str} ;
- PN = {s : Case => Str; g : Gender; h : Species} ;
-
-}
diff --git a/deprecated/old-lib/resource/arabic/ConjunctionAra.gf b/deprecated/old-lib/resource/arabic/ConjunctionAra.gf
deleted file mode 100644
index f7683c6cc..000000000
--- a/deprecated/old-lib/resource/arabic/ConjunctionAra.gf
+++ /dev/null
@@ -1,45 +0,0 @@
-concrete ConjunctionAra of Conjunction =
- CatAra ** open ResAra, Coordination, Prelude in {
---
--- flags optimize=all_subs ;
---
--- lin
---
--- ConjS = conjunctSS ;
--- DConjS = conjunctDistrSS ;
---
--- ConjAdv = conjunctSS ;
--- DConjAdv = conjunctDistrSS ;
---
--- ConjNP conj ss = conjunctTable Case conj ss ** {
--- a = {n = conjNumber conj.n ss.a.n ; p = ss.a.p}
--- } ;
--- DConjNP conj ss = conjunctDistrTable Case conj ss ** {
--- a = {n = conjNumber conj.n ss.a.n ; p = ss.a.p}
--- } ;
---
--- ConjAP conj ss = conjunctTable Agr conj ss ** {
--- isPre = ss.isPre
--- } ;
--- DConjAP conj ss = conjunctDistrTable Agr conj ss ** {
--- isPre = ss.isPre
--- } ;
---
----- These fun's are generated from the list cat's.
---
--- BaseS = twoSS ;
--- ConsS = consrSS comma ;
--- BaseAdv = twoSS ;
--- ConsAdv = consrSS comma ;
--- BaseNP x y = twoTable Case x y ** {a = conjAgr x.a y.a} ;
--- ConsNP xs x = consrTable Case comma xs x ** {a = conjAgr xs.a x.a} ;
--- BaseAP x y = twoTable Agr x y ** {isPre = andB x.isPre y.isPre} ;
--- ConsAP xs x = consrTable Agr comma xs x ** {isPre = andB xs.isPre x.isPre} ;
---
--- lincat
--- [S] = {s1,s2 : Str} ;
--- [Adv] = {s1,s2 : Str} ;
--- [NP] = {s1,s2 : Case => Str ; a : Agr} ;
--- [AP] = {s1,s2 : Agr => Str ; isPre : Bool} ;
---
-}
diff --git a/deprecated/old-lib/resource/arabic/ExtAra.gf b/deprecated/old-lib/resource/arabic/ExtAra.gf
deleted file mode 100644
index 120c7caea..000000000
--- a/deprecated/old-lib/resource/arabic/ExtAra.gf
+++ /dev/null
@@ -1,26 +0,0 @@
-concrete ExtAra of ExtAraAbs = CatAra ** open ResAra in {
---
--- lincat
---
--- Aux = {s : Polarity => Str} ;
---
--- lin
---
--- PredAux np aux vp = mkClause (np.s ! Nom) np.a {
--- s = \\t,ant,b,ord,agr =>
--- let
--- fin = aux.s ! b ;
--- vf : Str -> Str -> {fin, inf : Str} = \x,y ->
--- {fin = x ; inf = y} ;
--- in
--- case ant of {
--- Simul => vf fin [] ;
--- Anter => vf fin "هَثي"
--- } ;
--- s2 = \\agr => infVP vp agr
--- } ;
---
--- can_Aux = {s = \\p => posneg p "عَن"} ; ---- cannt
--- must_Aux = {s = \\p => posneg p "مُست"} ;
---
-}
diff --git a/deprecated/old-lib/resource/arabic/GrammarAra.gf b/deprecated/old-lib/resource/arabic/GrammarAra.gf
deleted file mode 100644
index f276984ad..000000000
--- a/deprecated/old-lib/resource/arabic/GrammarAra.gf
+++ /dev/null
@@ -1,21 +0,0 @@
---# -path=.:../abstract:../common:prelude
-
-concrete GrammarAra of Grammar =
- NounAra,
- VerbAra,
- AdjectiveAra,
- AdverbAra,
- NumeralAra,
- SentenceAra,
- QuestionAra,
- RelativeAra,
- ConjunctionAra,
- PhraseAra,
- TextX - [Utt],
- StructuralAra,
- IdiomAra
- ** {
-
-flags startcat = Phr ; unlexer = text ; lexer = text ;
-
-} ;
diff --git a/deprecated/old-lib/resource/arabic/IdiomAra.gf b/deprecated/old-lib/resource/arabic/IdiomAra.gf
deleted file mode 100644
index d185c5aa7..000000000
--- a/deprecated/old-lib/resource/arabic/IdiomAra.gf
+++ /dev/null
@@ -1,14 +0,0 @@
-concrete IdiomAra of Idiom = CatAra ** open Prelude, ResAra in {
---
--- flags optimize=all_subs ;
---
--- lin
--- ExistNP np =
--- mkClause "تهري" (agrP3 np.a.n) (insertObj (\\_ => np.s ! Acc) (predAux auxBe)) ;
--- ImpersCl vp = mkClause "ِت" (agrP3 Sg) vp ;
--- GenericCl vp = mkClause "ْني" (agrP3 Sg) vp ;
---
--- ProgrVP vp = insertObj (\\a => vp.ad ++ vp.prp ++ vp.s2 ! a) (predAux auxBe) ;
---
-}
-
diff --git a/deprecated/old-lib/resource/arabic/IrregAra.gf b/deprecated/old-lib/resource/arabic/IrregAra.gf
deleted file mode 100644
index 0d463bb83..000000000
--- a/deprecated/old-lib/resource/arabic/IrregAra.gf
+++ /dev/null
@@ -1,181 +0,0 @@
---# -path=.:prelude:../abstract:../common
---
-concrete IrregAra of IrregAraAbs = CatAra ** open ParadigmsAra in {
---
---flags optimize=values ;
---
--- lin
--- awake_V = irregV "َوَكي" "َوْكي" "َوْكن" ;
--- bear_V = irregV "بَر" "بْري" "بْرن" ;
--- beat_V = irregV "بَت" "بَت" "بَت" ;
--- become_V = irregV "بعْمي" "بعَمي" "بعْمي" ;
--- begin_V = irregV "بغِن" "بغَن" "بغُن" ;
--- bend_V = irregV "بند" "بنت" "بنت" ;
--- beset_V = irregV "بست" "بست" "بست" ;
--- bet_V = irregDuplV "بت" "بت" "بت" ;
--- bid_V = irregDuplV "بِد" (variants {"بِد" ; "بَدي"}) (variants {"بِد" ; "بِدّن"}) ;
--- bind_V = irregV "بِند" "بُْند" "بُْند" ;
--- bite_V = irregV "بِتي" "بِت" "بِتّن" ;
--- bleed_V = irregV "بلّد" "بلد" "بلد" ;
--- blow_V = irregV "بلْو" "بلو" "بلْون" ;
--- break_V = irregV "برَك" "برْكي" "برْكن" ;
--- breed_V = irregV "برّد" "برد" "برد" ;
--- bring_V = irregV "برِنغ" "برُْغهت" "برُْغهت" ;
--- broadcast_V = irregV "برَْدعَست" "برَْدعَست" "برَْدعَست" ;
--- build_V = irregV "بُِلد" "بُِلت" "بُِلت" ;
--- burn_V = irregV "بُرن" (variants {"بُرند" ; "بُرنت"}) (variants {"بُرند" ; "بُرنت"}) ;
--- burst_V = irregV "بُرست" "بُرست" "بُرست" ;
--- buy_V = irregV "بُي" "بُْغهت" "بُْغهت" ;
--- cast_V = irregV "عَست" "عَست" "عَست" ;
--- catch_V = irregV "عَتعه" "عَُغهت" "عَُغهت" ;
--- choose_V = irregV "عهّْسي" "عهْسي" "عهْسن" ;
--- cling_V = irregV "علِنغ" "علُنغ" "علُنغ" ;
--- come_V = irregV "عْمي" "عَمي" "عْمي" ;
--- cost_V = irregV "عْست" "عْست" "عْست" ;
--- creep_V = irregV "عرّة" "عرةت" "عرةت" ;
--- cut_V = irregDuplV "عُت" "عُت" "عُت" ;
--- deal_V = irregV "دَل" "دَلت" "دَلت" ;
--- dig_V = irregDuplV "دِغ" "دُغ" "دُغ" ;
--- dive_V = irregV "دِثي" (variants {"دِثد" ; "دْثي"}) "دِثد" ;
--- do_V = mkV "دْ" "دْس" "دِد" "دْني" "دِْنغ" ;
--- draw_V = irregV "درَو" "درو" "درَون" ;
--- dream_V = irregV "درَم" (variants {"درَمد" ; "درَمت"}) (variants {"درَمد" ; "درَمت"}) ;
--- drive_V = irregV "درِثي" "درْثي" "درِثن" ;
--- drink_V = irregV "درِنك" "درَنك" "درُنك" ;
--- eat_V = irregV "َت" "َتي" "َتن" ;
--- fall_V = irregV "فَلّ" "فلّ" "فَلّن" ;
--- feed_V = irregV "فّد" "فد" "فد" ;
--- feel_V = irregV "فّل" "فلت" "فلت" ;
--- fight_V = irregV "فِغهت" "فُْغهت" "فُْغهت" ;
--- find_V = irregV "فِند" "فُْند" "فُْند" ;
--- fit_V = irregDuplV "فِت" "فِت" "فِت" ;
--- flee_V = irregV "فلّ" "فلد" "فلد" ;
--- fling_V = irregV "فلِنغ" "فلُنغ" "فلُنغ" ;
--- fly_V = irregV "فلي" "فلو" "فلْون" ;
--- forbid_V = irregDuplV "فْربِد" "فْربَدي" "فْربِدّن" ;
--- forget_V = irregDuplV "فْرغت" "فْرغْت" "فْرغْتّن" ;
--- forgive_V = irregV "فْرغِثي" "فْرغَثي" "فْرغِثن" ;
--- forsake_V = irregV "فْرسَكي" "فْرسّْك" "فْرسَكن" ;
--- freeze_V = irregV "فرّزي" "فرْزي" "فرْزن" ;
--- get_V = irregDuplV "غت" "غْت" "غْتّن" ;
--- give_V = irregV "غِثي" "غَثي" "غِثن" ;
--- go_V = irregV "غْ" "ونت" "غْني" ;
--- grind_V = irregV "غرِند" "غرُْند" "غرُْند" ;
--- grow_V = irregV "غرْو" "غرو" "غرْون" ;
--- hang_V = irregV "هَنغ" "هُنغ" "هُنغ" ;
--- have_V = mkV "هَثي" "هَس" "هَد" "هَد" "هَثِنغ" ;
--- hear_V = irregV "هَر" "هَرد" "هَرد" ;
--- hide_V = irregV "هِدي" "هِد" "هِدّن" ;
--- hit_V = irregDuplV "هِت" "هِت" "هِت" ;
--- hold_V = irregV "هْلد" "هلد" "هلد" ;
--- hurt_V = irregV "هُرت" "هُرت" "هُرت" ;
--- keep_V = irregV "كّة" "كةت" "كةت" ;
--- kneel_V = irregV "كنّل" "كنلت" "كنلت" ;
--- knit_V = irregDuplV "كنِت" "كنِت" "كنِت" ;
--- know_V = irregV "كنْو" "كنو" "كنْو" ;
--- lay_V = irregV "لَي" "لَِد" "لَِد" ;
--- lead_V = irregV "لَد" "لد" "لد" ;
--- leap_V = irregV "لَة" (variants {"لَةد" ; "لةت"}) (variants {"لَةد" ; "لةت"}) ;
--- learn_V = irregV "لَرن" (variants {"لَرند" ; "لَرنت"}) (variants {"لَرند" ; "لَرنت"}) ;
--- leave_V = irregV "لَثي" "لفت" "لفت" ;
--- lend_V = irregV "لند" "لنت" "لنت" ;
--- let_V = irregDuplV "لت" "لت" "لت" ;
--- lie_V = irregV "لِي" "لَي" "لَِن" ;
--- light_V = irregV "لِغهت" (variants {"لِغهتد" ; "لِت"}) "لِغهتد" ;
--- lose_V = irregV "لْسي" "لْست" "لْست" ;
--- make_V = irregV "مَكي" "مَدي" "مَدي" ;
--- mean_V = irregV "مَن" "مَنت" "مَنت" ;
--- meet_V = irregV "مّت" "مت" "مت" ;
--- misspell_V = irregV "مِسّةلّ" (variants {"مِسّةلّد" ; "مِسّةلت"}) (variants {"مِسّةلّد" ; "مِسّةلت"}) ;
--- mistake_V = irregV "مِستَكي" "مِستّْك" "مِستَكن" ;
--- mow_V = irregV "مْو" "مْود" (variants {"مْود" ; "مْون"}) ;
--- overcome_V = irregV "ْثرعْمي" "ْثرعَمي" "ْثرعْمي" ;
--- overdo_V = mkV "ْثردْ" "ْثردْس" "ْثردِد" "ْثردْني" "ْثردِْنغ" ;
--- overtake_V = irregV "ْثرتَكي" "ْثرتّْك" "ْثرتَكن" ;
--- overthrow_V = irregV "ْثرتهرْو" "ْثرتهرو" "ْثرتهرْون" ;
--- pay_V = irregV "ةَي" "ةَِد" "ةَِد" ;
--- plead_V = irregV "ةلَد" "ةلد" "ةلد" ;
--- prove_V = irregV "ةرْثي" "ةرْثد" (variants {"ةرْثد" ; "ةرْثن"}) ;
--- put_V = irregDuplV "ةُت" "ةُت" "ةُت" ;
--- quit_V = irregDuplV "قُِت" "قُِت" "قُِت" ;
--- read_V = irregV "رَد" "رَد" "رَد" ;
--- rid_V = irregDuplV "رِد" "رِد" "رِد" ;
--- ride_V = irregV "رِدي" "رْدي" "رِدّن" ;
--- ring_V = irregV "رِنغ" "رَنغ" "رُنغ" ;
--- rise_V = irregV "رِسي" "رْسي" "رِسن" ;
--- run_V = irregDuplV "رُن" "رَن" "رُن" ;
--- saw_V = irregV "سَو" "سَود" (variants {"سَود" ; "سَون"}) ;
--- say_V = irregV "سَي" "سَِد" "سَِد" ;
--- see_V = irregV "سّ" "سَو" "سّن" ;
--- seek_V = irregV "سّك" "سُْغهت" "سُْغهت" ;
--- sell_V = irregV "سلّ" "سْلد" "سْلد" ;
--- send_V = irregV "سند" "سنت" "سنت" ;
--- set_V = irregDuplV "ست" "ست" "ست" ;
--- sew_V = irregV "سو" "سود" (variants {"سود" ; "سون"}) ;
--- shake_V = irregV "سهَكي" "سهّْك" "سهَكن" ;
--- shave_V = irregV "سهَثي" "سهَثد" (variants {"سهَثد" ; "سهَثن"}) ;
--- shear_V = irregV "سهَر" "سهْري" "سهْرن" ;
--- shed_V = irregDuplV "سهد" "سهد" "سهد" ;
--- shine_V = irregV "سهِني" "سهْني" "سهْني" ;
--- shoe_V = irregV "سهْي" "سهْد" (variants {"سهْد" ; "سهْد"}) ;
--- shoot_V = irregV "سهّْت" "سهْت" "سهْت" ;
--- show_V = irregV "سهْو" "سهْود" (variants {"سهْود" ; "سهْون"}) ;
--- shrink_V = irregV "سهرِنك" "سهرَنك" "سهرُنك" ;
--- shut_V = irregDuplV "سهُت" "سهُت" "سهُت" ;
--- sing_V = irregV "سِنغ" "سَنغ" "سُنغ" ;
--- sink_V = irregV "سِنك" "سَنك" "سُنك" ;
--- sit_V = irregDuplV "سِت" "سَت" "سَت" ;
--- sleep_V = irregV "سلّة" "سلةت" "سلةت" ;
--- slay_V = irregV "سلَي" "سلو" "سلَِن" ;
--- slide_V = irregV "سلِدي" "سلِد" "سلِد" ;
--- sling_V = irregV "سلِنغ" "سلُنغ" "سلُنغ" ;
--- slit_V = irregDuplV "سلِت" "سلِت" "سلِت" ;
--- smite_V = irregV "سمِتي" "سمْتي" "سمِتّن" ;
--- sow_V = irregV "سْو" "سْود" (variants {"سْود" ; "سْون"}) ;
--- speak_V = irregV "سةَك" "سةْكي" "سةْكن" ;
--- speed_V = irregV "سةّد" "سةد" "سةد" ;
--- spend_V = irregV "سةند" "سةنت" "سةنت" ;
--- spill_V = irregV "سةِلّ" (variants {"سةِلّد" ; "سةِلت"}) (variants {"سةِلّد" ; "سةِلت"}) ;
--- spin_V = irregDuplV "سةِن" "سةُن" "سةُن" ;
--- spit_V = irregDuplV "سةِت" (variants {"سةِت" ; "سةَت"}) "سةِت" ;
--- split_V = irregDuplV "سةلِت" "سةلِت" "سةلِت" ;
--- spread_V = irregV "سةرَد" "سةرَد" "سةرَد" ;
--- spring_V = irregV "سةرِنغ" (variants {"سةرَنغ" ; "سةرُنغ"}) "سةرُنغ" ;
--- stand_V = irregV "ستَند" "ستّْد" "ستّْد" ;
--- steal_V = irregV "ستَل" "ستْلي" "ستْلن" ;
--- stick_V = irregV "ستِعك" "ستُعك" "ستُعك" ;
--- sting_V = irregV "ستِنغ" "ستُنغ" "ستُنغ" ;
--- stink_V = irregV "ستِنك" "ستَنك" "ستُنك" ;
--- stride_V = irregV "سترِدي" "سترْد" "سترِدّن" ;
--- strike_V = irregV "سترِكي" "سترُعك" "سترُعك" ;
--- string_V = irregV "سترِنغ" "سترُنغ" "سترُنغ" ;
--- strive_V = irregV "سترِثي" "سترْثي" "سترِثن" ;
--- swear_V = irregV "سوَر" "سوْري" "سوْرن" ;
--- sweep_V = irregV "سوّة" "سوةت" "سوةت" ;
--- swell_V = irregV "سولّ" "سولّد" (variants {"سولّد" ; "سوْلّن"}) ;
--- swim_V = irregDuplV "سوِم" "سوَم" "سوُم" ;
--- swing_V = irregV "سوِنغ" "سوُنغ" "سوُنغ" ;
--- take_V = irregV "تَكي" "تّْك" "تَكن" ;
--- teach_V = irregV "تَعه" "تَُغهت" "تَُغهت" ;
--- tear_V = irregV "تَر" "تْري" "تْرن" ;
--- tell_V = irregV "تلّ" "تْلد" "تْلد" ;
--- think_V = irregV "تهِنك" "تهُْغهت" "تهُْغهت" ;
--- thrive_V = irregV "تهرِثي" (variants {"تهرِثد" ; "تهرْثي"}) "تهرِثد" ;
--- throw_V = irregV "تهرْو" "تهرو" "تهرْون" ;
--- thrust_V = irregV "تهرُست" "تهرُست" "تهرُست" ;
--- tread_V = irregV "ترَد" "ترْد" "ترْدّن" ;
--- understand_V = irregV "ُندرستَند" "ُندرستّْد" "ُندرستّْد" ;
--- uphold_V = irregV "ُةهْلد" "ُةهلد" "ُةهلد" ;
--- upset_V = irregDuplV "ُةست" "ُةست" "ُةست" ;
--- wake_V = irregV "وَكي" "وْكي" "وْكن" ;
--- wear_V = irregV "وَر" "وْري" "وْرن" ;
--- weave_V = irregV "وَثي" (variants {"وَثد" ; "وْثي"}) (variants {"وَثد" ; "وْثن"}) ;
--- wed_V = irregDuplV "ود" "ود" "ود" ;
--- weep_V = irregV "وّة" "وةت" "وةت" ;
--- wind_V = irregV "وِند" "وُْند" "وُْند" ;
--- win_V = irregDuplV "وِن" "وْن" "وْن" ;
--- withhold_V = irregV "وِتهّْلد" "وِتهّلد" "وِتهّلد" ;
--- withstand_V = irregV "وِتهستَند" "وِتهستّْد" "وِتهستّْد" ;
--- wring_V = irregV "ورِنغ" "ورُنغ" "ورُنغ" ;
--- write_V = irregV "ورِتي" "ورْتي" "ورِتّن" ;
-}
diff --git a/deprecated/old-lib/resource/arabic/LangAra.gf b/deprecated/old-lib/resource/arabic/LangAra.gf
deleted file mode 100644
index 2a1dc95b5..000000000
--- a/deprecated/old-lib/resource/arabic/LangAra.gf
+++ /dev/null
@@ -1,12 +0,0 @@
---# -path=.:../abstract:../common:prelude
-
-concrete LangAra of Lang =
- GrammarAra,
- LexiconAra
- ** {
-
- flags startcat = Phr ; unlexer = text ; lexer = text ; coding = utf8 ;
-
-}
-
-
diff --git a/deprecated/old-lib/resource/arabic/LexiconAra.gf b/deprecated/old-lib/resource/arabic/LexiconAra.gf
deleted file mode 100644
index 6d457e0d8..000000000
--- a/deprecated/old-lib/resource/arabic/LexiconAra.gf
+++ /dev/null
@@ -1,384 +0,0 @@
---# -path=.:prelude
---
-concrete LexiconAra of Lexicon = CatAra ** open
- ParadigmsAra,
- ResAra,
- MorphoAra, --shouldn't open it here, only needed reg &sndf
- Prelude in {
-
-flags
- optimize=values ; coding=utf8 ;
-
- lin
-
- airplane_N = sdfN "ط؟ر" "فاعِلة" Fem NoHum ;
- answer_V2S = dirV2 (v3 "جوب") ;
- apartment_N = brkN "شقّ" "فِعّة" "فِعَل" Fem NoHum ;
- apple_N = sdfN "تفح" "فِعّالة" Fem NoHum ;
- art_N = brkN "فنّ" "فَعّ" "فُعُول" Masc NoHum ;
- ask_V2Q = dirV2 (regV "يَس؟َل") ;
--- ask_V2Q = dirV2 (v1 "س؟ل" a a) ;
- baby_N = brkN "طفل" "فِعل" "أَفعال" Masc Hum;
- bad_A = sndA "سو؟" "فَيِّع" ;
- bank_N = brkN "بنك" "فَعل" "فُعُول" Masc NoHum ;
- beautiful_A = sndA "جمل" "فَعِيل" ;
- become_VA = mkVA (v4 "صبح") ;
- beer_N = sdfN "بير" "فِعلة" Fem NoHum ;
- beg_V2V = dirV2 (v5 "وسل") ;
- big_A = sndA "كبر" "فَعِيل" ;
- bike_N = sdfN "درج" "فَعّالة" Fem NoHum ;
- bird_N = brkN "طير" "فَعل" "فُعُول" Masc NoHum;
- black_A = clrA "سود" ;
- blue_A = clrA "زرق" ;
- boat_N = brkN "قرب" "فاعِل" "فَواعِل" Masc NoHum ;
- book_N = brkN "كتب" "فِعال" "فُعُل" Masc NoHum ;
- boot_N = sdfN "جزم" "فَعلة" Fem NoHum ;
- boss_N = brkN "دور" "مُفِيع" "مُفَعاء" Masc Hum ;
- boy_N = brkN "صبي" "فَعِل" "فُعلان" Masc Hum ;
- bread_N = brkN "خبز" "فُعل" "أَفعال" Masc NoHum ;
- break_V2 = dirV2 (regV "يَكسُر") ;
--- break_V2 = dirV2 (v1 "كسر" a u) ;
- broad_A = sndA "وسع" "فاعِل" ;
- brother_N2 = brkN "؟خو" "فَع" "فِعلة" Masc Hum ; --FIXME
- brown_A = sndA "بني" "فُعِّل";
- butter_N = sdfN "سبد" "فُعلة" Fem NoHum ;
- buy_V2 = dirV2 (v8 "شري") ;
- camera_N = sdfN "كمر" "فاعِيلا" Fem NoHum ; -- |Alö taSwIr
- cap_N = sdfN "قبع" "فُعَّلة" Fem NoHum ; --qalnUsö
- car_N = sdfN "سير" "فَعّالة" Fem NoHum ;
- carpet_N = sdfN "سجد" "فَعّالة" Fem NoHum ;
- cat_N = brkN "هرّ" "فِعّة" "فِعَل" Fem NoHum ;
- ceiling_N = brkN "سقف" "فَعل" "أَفعُل" Masc NoHum ;
- chair_N = brkN "كرس" "فُعلِي" "فَعالِي" Masc NoHum ;
- cheese_N = brkN "جبن" "فُعلة" "أَفعال" Fem NoHum ;
- child_N = brkN "ولد" "فَعَل" "أَفعال" Masc Hum ;
- church_N = brkN "كنس" "فَعِيلة" "فَعاٱِل" Fem Hum ;
- city_N = brkN "مدن" "فَعِيلة" "فُعُل" Fem NoHum ;
- clean_A = sndA "نظف" "فَعِيل" ;
- clever_A = sndA "جهد" "مُفتَعِل" ;
- close_V2 = dirV2 (v4 "غلق") ;
- coat_N = brkN "عطف" "مِفعَل" "مَفاعِل" Masc NoHum ;
- cold_A = sndA "برد" "فاعِل" ;
- come_V = v1 "جي؟" a i ; --check
- computer_N = brkN "حسب" "فاعُول" "فَواعِيل" Masc NoHum ;
- country_N = brkN "بلد" "فَعَل" "فِعال" Masc NoHum ;
- cousin_N = brkN "قرب" "فَعِيل" "أَفعِلاء" Masc Hum ; -- ( of {
- --
-This document contains the most important parts of the GF Resource Grammar API.
-It has been machine-generated from the source files; each chapter gives a link
-to the relevant source files, which give more information. Some of the files have
-not yet been prepared so that the machine generated documentation has the right
-format.
-
-Since the character encoding is UTF-8 for Russian and Latin-1 for other
-languages, you
-may have to change the encoding preference of your browser when reading different
-parts of the document.
-
-The second-last chapter gives instructions on how to "browse" the library by
-loading the grammars into the
-New: Browsing by syntax editor
-directly on the web.
-
-The last chapter contains a brief example of how application grammars can
-import resource modules. At the same time, it illustrates a "design pattern" for
-using the resource API to build functor-based applications
-
-Source 1:
-Source 2:
-The chart below shows the categories in a hierarchical top-down order.
-The edges do not define the complete dependency structure; if they did,
-the graph would have many many more edges, and also many cycles. The precise
-meaning of a directed edge from C to D is: there is a constructor
-of C that takes D as an argument. What the constructors exactly are,
-and what other arguments they take, is described by separate tables for
-each category.
-
-The rectangular boxes mark open lexical categories, which have constructors
-also in the
-Source 1:
-Source 2:
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-Lexical category, constructors given in
-lexical paradigms.
-
-source
-source
-source
-source
-source
-source
-source
-source
-source
-source
-source
-New: Browsing by syntax editor
-directly on the web.
-
-All of the following assume
-
-To try out inflection paradigms:
-
-To try out overloaded syntax, test lexicon, and inflection paradigms:
-
-The standard way of building an application has the following modules.
-
-An abstract syntax:
-
-A domain lexicon interface:
-
-A functor on
-For each language, an instance of the domain lexicon:
-
-For each language, an instantiation of the functor:
- of {
- of {
- <_,Masc,_,Sg> => hava;
- <_,Fem,_,Sg> => havihi;
- <_,Masc,Nom,Dl>=> havAn;
- <_,Masc,_,Dl> => havayn;
- <_,Fem,Nom,Dl> => hAtAn;
- <_,Fem,_,Dl> => hAtayn;
- of {
- <_,Masc,_,Sg> => dalika;
- <_,Fem,_,Sg> => tilka;
- of {
- of {
-
-DemoBul: аз навсякъде съм бърсал Париж
-
-DemoCat: a tot arreu he eixugat Paris
-
-DemoDan: jeg overalt har visket Paris
-
-DemoEng: I everywhere have wiped Paris
-
-DemoFin: minä kaikkialla olen pyyhkinyt Pariisin
-
-DemoFre: je partout ai essuyé Paris
-
-DemoGer: ich überall habe Paris gewischt
-
-DemoIta: dappertutto ho asciugato Parigi
-
-DemoNor: jeg overalt har tørka Paris
-
-DemoRus: я везде вытираю Париж
-
-DemoSpa: en todas partes he secado Paris
-
-DemoSwe: jag överallt har torkat Paris
-
- Demo: UseCl TPres AAnter PNeg (PredAdv somebody_NP (ComparAdvAdjS more_CAdv blue_A (UseCl TCond ASimul PNeg (PredAdv (AdvNP (DetArtSg IndefArt (ComplN2 brother_N2 (DetArtPl DefArt (UseN2 father_N2)))) here7to_Adv) (AdAdv so_AdA here7from_Adv)))))
-
-DemoBul: някой не е бил по - синьо от колкото брат на бащите до тук не би бил толкова от тук
-
-DemoCat: algú no ha estat més blavament que un germà dels pares cap aquí no seria tan d'aquí
-
-DemoDan: nogen har ikke været mer blått end en broder til fædrene hit ikke ville være så herfra
-
-DemoEng: somebody hasn't been more bluely than a brother of the fathers to here wouldn't be so from here
-
-DemoFin: joku ei ole ollut enemmän sinisesti kuin isien veli tänne ei olisi niin täältä
-
-DemoFre: quelqu'un n' a pas été plus bleuement qu' un frère des pères ici ne serait pas si d'ici
-
-DemoGer: jemand ist nicht mehr blau als ein Bruder von den Vätern hierher nicht so hieraus sein würde gewesen
-
-DemoIta: qualcuno non è stato più blumente che un fratello dei padri quì non sarebbe così da quì
-
-DemoNor: noen har ikke vært mer blått enn en bror til fedrene hit ikke ville være så herfra
-
-DemoRus: кто-то не более голубо чем брат отцов сюда не
-
-DemoSpa: algún no ha sido mas azulmente que un hermano de los padres para acá no sería tanto de acá
-
-DemoSwe: någon har inte varit mer blått än en bror till fäderna hit inte skulle vara så härifrån
-
- Demo: UseCl TFut AAnter PPos (PredV (UsePron we_Pron) live_V)
-
-DemoBul: ние ще сме живeли
-
-DemoCat: haurem viscut
-
-DemoDan: vi vil have levet
-
-DemoEng: we will have lived
-
-DemoFin: me olemme eläneet
-
-DemoFre: nous aurons vécu
-
-DemoGer: wir werden gelebt haben
-
-DemoIta: avremo vissuto
-
-DemoNor: vi vil ha levd
-
-DemoRus: мы будем жить
-
-DemoSpa: habremos vivido
-
-DemoSwe: vi ska ha levt
-
- Demo: UseCl TCond ASimul PNeg (PredAdv (UsePN paris_PN) far_Adv)
-
-DemoBul: Париж не би бил далече
-
-DemoCat: Paris no seria lluny
-
-DemoDan: Paris ville ikke være fjern
-
-DemoEng: Paris wouldn't be far
-
-DemoFin: Pariisi ei olisi kaukana
-
-DemoFre: Paris ne serait pas loin
-
-DemoGer: Paris würde nicht weit sein
-
-DemoIta: Parigi non sarebbe lontano
-
-DemoNor: Paris ville ikke være fjern
-
-DemoRus: Париж не
-
-DemoSpa: Paris no sería lejos
-
-DemoSwe: Paris skulle inte vara långt
-
- Demo: UseCl TFut ASimul PNeg (PredAdv (UsePron it_Pron) (PositAdvAdj full_A))
-
-DemoBul: то няма да е пълно
-
-DemoCat: no serà pleament
-
-DemoDan: det vil ikke være fuldt
-
-DemoEng: it won't be fully
-
-DemoFin: se ei ole täydesti
-
-DemoFre: il ne sera pas pleinement
-
-DemoGer: es wird nicht voll sein
-
-DemoIta: non sarà pienamente
-
-DemoNor: det vil ikke være fullt
-
-DemoRus: оно не будет полно
-
-DemoSpa: no será llenamente
-
-DemoSwe: det ska inte vara fullt
-
- Demo: UseCl TPast AAnter PPos (PredAdv (UsePron they_Pron) (PositAdvAdj dull_A))
-
-DemoBul: те бяха били тъпо
-
-DemoCat: havien estat balbament
-
-DemoDan: de havde været sløvt
-
-DemoEng: they had been dully
-
-DemoFin: he olivat olleet tylsästi
-
-DemoFre: ils avaient été émoussément
-
-DemoGer: sie waren stumpf gewesen
-
-DemoIta: erano stati noiosamente
-
-DemoNor: de hadde vært sløvt
-
-DemoRus: они были скучно
-
-DemoSpa: habían sido desafiladamente
-
-DemoSwe: de hade varit slött
-
- Demo: UseCl TPres AAnter PPos (PredAdv (UsePron he_Pron) here_Adv)
-
-DemoBul: той е бил тук
-
-DemoCat: ha estat aquí
-
-DemoDan: han har været her
-
-DemoEng: he has been here
-
-DemoFin: hän on ollut täällä
-
-DemoFre: il a été ici
-
-DemoGer: er ist hier gewesen
-
-DemoIta: è stato quì
-
-DemoNor: han har vært her
-
-DemoRus: он здесь
-
-DemoSpa: ha sido aquí
-
-DemoSwe: han har varit här
-
- Demo: UseCl TPast ASimul PPos (PredV2 (DetArtSg DefArt (UseN car_N)) kill_V2 (UsePN paris_PN))
-
-DemoBul: колата уби Париж
-
-DemoCat: el cotxe matava Paris
-
-DemoDan: bilen dræbede Paris
-
-DemoEng: the car killed Paris
-
-DemoFin: auto tappoi Pariisin
-
-DemoFre: la voiture tuait Paris
-
-DemoGer: der Wagen tötete Paris
-
-DemoIta: la macchina uccideva Parigi
-
-DemoNor: bilen drepte Paris
-
-DemoRus: машина убивала Париж
-
-DemoSpa: el auto mataba Paris
-
-DemoSwe: bilen dödade Paris
-
- Demo: UseCl TFut AAnter PNeg (PredV2 (UsePN paris_PN) watch_V2 (UsePN paris_PN))
-
-DemoBul: Париж няма да е гледал Париж
-
-DemoCat: Paris no haurà mirat Paris
-
-DemoDan: Paris vil ikke have set på Paris
-
-DemoEng: Paris won't have watched Paris
-
-DemoFin: Pariisi ei ole katsellut Pariisia
-
-DemoFre: Paris n' aura pas regardé Paris
-
-DemoGer: Paris wird an Paris nicht geschaut haben
-
-DemoIta: Parigi non avrà guardato Parigi
-
-DemoNor: Paris vil ikke ha sett på Paris
-
-DemoRus: Париж не будет смотреть Париж
-
-DemoSpa: Paris no habrá mirado Paris
-
-DemoSwe: Paris ska inte ha tittat på Paris
-
- Demo: UseCl TPast AAnter PNeg (PredV (DetCN (DetArtCard IndefArt (AdNum almost_AdN (NumNumeral (num (pot2as3 (pot1as2 (pot1to19 n8))))))) (ComplN2 mother_N2 (DetCN every_Det (AdjCN (ComparA narrow_A (DetArtSg IndefArt (ComplN2 brother_N2 (DetArtSg IndefArt (UseN2 father_N2))))) (ComplN2 brother_N2 (UsePron i_Pron)))))) sew_V)
-
-DemoBul: почти осемнадесет майки на всеки по - тесен от брат на баща брат ми не бяха шили
-
-DemoCat: quasi divuit mares cada germà de mi más estret que un germà d' un pare no havien cosit
-
-DemoDan: næsten atten mødre til hver broder til mig smalere end en broder til en far havde ikke syet
-
-DemoEng: almost eighteen mothers of every brother of I narrower than a brother of a father hadn't sewed
-
-DemoFin: melkein kahdeksan toista jokaisen isän veljenä kapeamman minun veljen äitiä eivät olleet kylväneet
-
-DemoFre: presque dix-huit mères chaque frère de moi plus étroit qu' un frère d' un père n' avaient pas cousu
-
-DemoGer: fast achzehn Mütter von jedem schmaleren als ein Bruder von einem Vater Bruder von mir hatten nicht genäht
-
-DemoIta: quasi ottanta madri ogni fratello di me più stretto che un fratello di un padre non avevano cucito
-
-DemoNor: nesten atten mødre til hver bror til meg smalere enn en bror til en far hadde ikke sydd
-
-DemoRus: почти восемнадцать матери каждого уже брата отца моего брата не шили
-
-DemoSpa: casi ochenta madres cada hermano de mí más estrecho que un hermano de un padre no habían cosido
-
-DemoSwe: nästan arton mödrar till varje bror till mig smalare än en bror till en far hade inte sytt
-
- Demo: UseCl TPast ASimul PNeg (PredAP (UsePN paris_PN) (ComparA wide_A (DetArtPl IndefArt (ComplN2 (ComplN3 distance_N3 (DetArtSg IndefArt (AdjCN (ComparA hot_A (UsePN paris_PN)) (ComplN2 (ComplN3 distance_N3 (UsePN john_PN)) (UsePron it_Pron))))) (DetArtSg IndefArt (AdjCN (AdAP too_AdA (ComplA2 easy_A2V somebody_NP)) (UseN2 father_N2)))))))
-
-DemoBul: Париж не беше по - широк от разстояния от по - горещо от Париж разстояние от Джон до него до прекалено лесен за някой баща
-
-DemoCat: Paris no era más extens que unes distàncies d' una distància de Joan a ell más calenta que Paris a un pare massa fácil a algú
-
-DemoDan: Paris var ikke bredere end afstander fra en afstand fra John til det hedere end Paris til en far for nem for nogen
-
-DemoEng: Paris wasn't wider than distances from a distance from John to it hotter than Paris to a father too easy for somebody
-
-DemoFin: Pariisi ei ollut leveämpi kuin etäisyyksiä Pariisia kuumemmasta etäisyydestä Jussista siihen liian jollevulle helppoon isään
-
-DemoFre: Paris n' était pas plus large que des distances d' une distance de Jean à lui plus chaude que Paris à un père trop facile à quelqu'un
-
-DemoGer: Paris war nicht breiter als Entfernungen von einer heißeren als Paris Entfernung von Johann zu ihm zu einem zu leichten für jemanden Vater
-
-DemoIta: Parigi non era più largo che distanze di una distanza di Giovanni a lui più calda che Parigi ad un padre troppo facile a qualcuno
-
-DemoNor: Paris var ikke bredere enn avstander fra en avstand fra John til det heitere enn Paris til en far for grei for noen
-
-DemoRus: Париж не был шире расстояний от горячее Парижа его расстояния от Ивана к слишком лёгкому для кого-то отцу
-
-DemoSpa: Paris no era más ancho que unas distancias de una distancia de Juan a él más caliente que Paris a un padre demasiado fácil a algún
-
-DemoSwe: Paris var inte bredare än avstånd från ett avstånd från Johan till det hetare än Paris till en far för lätt för någon
-
- Demo: UseCl TPast ASimul PNeg (PredAP (AdvNP somebody_NP now_Adv) (ComplA2 married_A2 (DetCN few_Det (UseN2 mother_N2))))
-
-DemoBul: някой сега не беше женен за няколко майки
-
-DemoCat: algú ara no era casat a poques mares
-
-DemoDan: nogen nu var ikke gift med få mødre
-
-DemoEng: somebody now wasn't married to few mothers
-
-DemoFin: joku nyt ei ollut avioitunut harvan äidin kanssa
-
-DemoFre: quelqu'un maintenant n' était pas marié à peu de mères
-
-DemoGer: jemand jetzt war nicht verheiratet mit wenigen Müttern
-
-DemoIta: qualcuno adesso non era sposato a poche madri
-
-DemoNor: noen nå var ikke gift med få mødre
-
-DemoRus: кто-то сейчас не был замужем за немногом матерью
-
-DemoSpa: algún ahora no era casado a pocas madres
-
-DemoSwe: någon nu var inte gift med få mödrar
-
- Demo: UseCl TFut ASimul PPos (PredAP (UsePron it_Pron) (PositA round_A))
-
-DemoBul: то ще е кръгло
-
-DemoCat: serà rodó
-
-DemoDan: det vil være rundt
-
-DemoEng: it will be round
-
-DemoFin: se on pyöreä
-
-DemoFre: il sera rond
-
-DemoGer: es wird rund sein
-
-DemoIta: sarà rotondo
-
-DemoNor: det vil være rundt
-
-DemoRus: оно будет круглое
-
-DemoSpa: será redondo
-
-DemoSwe: det ska vara runt
-
- Demo: UseCl TCond ASimul PPos (PredAdv (DetArtPl IndefArt (UseN song_N)) far_Adv)
-
-DemoBul: песни биха били далече
-
-DemoCat: unes cançons serien lluny
-
-DemoDan: sanger ville være fjern
-
-DemoEng: songs would be far
-
-DemoFin: lauluja olisi kaukana
-
-DemoFre: des chansons seraient loin
-
-DemoGer: Lieder würden weit sein
-
-DemoIta: canzoni sarebbero lontano
-
-DemoNor: sanger ville være fjern
-
-DemoRus: песни
-
-DemoSpa: unas canciones serían lejos
-
-DemoSwe: sånger skulle vara långt
-
- Demo: UseCl TPres ASimul PPos (PredV (DetArtSg DefArt (UseN2 father_N2)) spit_V)
-
-DemoBul: бащата плюе
-
-DemoCat: el pare escup
-
-DemoDan: fadren spytter
-
-DemoEng: the father spits
-
-DemoFin: isä sylkee
-
-DemoFre: le père crache
-
-DemoGer: der Vater spuckt
-
-DemoIta: il padre sputa
-
-DemoNor: faren spytter
-
-DemoRus: отец плюёт
-
-DemoSpa: el padre escupe
-
-DemoSwe: fadern spottar
-
- Demo: UseCl TFut ASimul PPos (PredV2 (UsePron she_Pron) put_V2 (DetArtSg IndefArt (UseN salt_N)))
-
-DemoBul: тя ще сложи сол
-
-DemoCat: posarà una sal
-
-DemoDan: hun vil sætte et salt
-
-DemoEng: she will put a salt
-
-DemoFin: hän panee suolan
-
-DemoFre: elle mettra un sel
-
-DemoGer: sie wird einen Salz setzen
-
-DemoIta: metterà un sale
-
-DemoNor: hun vil sette et salt
-
-DemoRus: она будет класть соль
-
-DemoSpa: pondrá una sal
-
-DemoSwe: hon ska sätta ett salt
-
- Demo: UseCl TPast AAnter PNeg (PredV2 somebody_NP do_V2 (UsePN john_PN))
-
-DemoBul: някой не беше направил Джон
-
-DemoCat: algú no havia fet Joan
-
-DemoDan: nogen havde ikke gjort John
-
-DemoEng: somebody hadn't done John
-
-DemoFin: joku ei ollut tehnyt Jussia
-
-DemoFre: quelqu'un n' avait pas fait Jean
-
-DemoGer: jemand hatte Johann nicht getan
-
-DemoIta: qualcuno non aveva fatto Giovanni
-
-DemoNor: noen hadde ikke gjort John
-
-DemoRus: кто-то не делал Ивана
-
-DemoSpa: algún no había hecho Juan
-
-DemoSwe: någon hade inte gjort Johan
-
- Demo: UseCl TCond ASimul PPos (PredAP (DetArtSg DefArt (UseN louse_N)) (ComparA round_A (DetCN every_Det (UseN2 father_N2))))
-
-DemoBul: въшката би билa по - кръгла от всеки баща
-
-DemoCat: el poll seria más rodó que cada pare
-
-DemoDan: lusen ville være rundere end hver far
-
-DemoEng: the louse would be rounder than every father
-
-DemoFin: lude olisi pyöreämpi kuin jokainen isä
-
-DemoFre: le pou serait plus rond que chaque père
-
-DemoGer: die Laus würde runder als jeder Vater sein
-
-DemoIta: il pidocchio sarebbe più rotondo che ogni padre
-
-DemoNor: lusa ville være rundere enn hver far
-
-DemoRus: вошь
-
-DemoSpa: el piojo sería más redondo que cada padre
-
-DemoSwe: lusen skulle vara rundare än varje far
-
- Demo: UseCl TCond ASimul PPos (PredAP (AdvNP (DetArtSg DefArt (AdjCN (ComparA dull_A (UsePN paris_PN)) (UseN2 mother_N2))) now_Adv) (ComparA black_A (UsePron it_Pron)))
-
-DemoBul: по - тъпата от Париж майка сега би билa по - черна от него
-
-DemoCat: la mare más balba que Paris ara seria más negra que ell
-
-DemoDan: den moder sløvere end Paris nu ville være sortere end det
-
-DemoEng: the mother duller than Paris now would be blacker than it
-
-DemoFin: Pariisia tylsempi äiti nyt olisi mustempi kuin se
-
-DemoFre: la mère plus émoussée que Paris maintenant serait plus noire que lui
-
-DemoGer: die stumpfere als Paris Mutter jetzt würde schwarzer als es sein
-
-DemoIta: la madre più noiosa che Parigi adesso sarebbe più nera che lui
-
-DemoNor: den moren sløvere enn Paris nå ville være svartere enn det
-
-DemoRus: скучнее Парижа мать сейчас
-
-DemoSpa: la madre más desafilada que Paris ahora sería más negra que el
-
-DemoSwe: den modern slöare än Paris nu skulle vara svartare än det
-
- Demo: UseCl TPast AAnter PNeg (PredAP (UsePron it_Pron) (AdAP almost_AdA (ComparA green_A (UsePron it_Pron))))
-
-DemoBul: то не беше било почти по - зелено от него
-
-DemoCat: no havia estat quasi más verd que ell
-
-DemoDan: det havde ikke været næsten grønnere end det
-
-DemoEng: it hadn't been almost greener than it
-
-DemoFin: se ei ollut ollut melkein vihreämpi kuin se
-
-DemoFre: il n' avait pas été presque plus vert que lui
-
-DemoGer: es war nicht fast grüner als es gewesen
-
-DemoIta: non era stato quasi più verde che lui
-
-DemoNor: det hadde ikke vært nesten grønnere enn det
-
-DemoRus: оно не был почти зелёнее него
-
-DemoSpa: no había sido casi más verde que el
-
-DemoSwe: det hade inte varit nästan grönare än det
-
- Demo: UseCl TPres AAnter PPos (PredAP (UsePron youSg_Pron) (PositA beautiful_A))
-
-DemoBul: ти си бил красив
-
-DemoCat: has estat bella
-
-DemoDan: du har været smuk
-
-DemoEng: you have been beautiful
-
-DemoFin: sinä olet ollut kaunis
-
-DemoFre: tu as été joli
-
-DemoGer: du bist schön gewesen
-
-DemoIta: sei stato bello
-
-DemoNor: du har vært vakker
-
-DemoRus: ты красивый
-
-DemoSpa: has sido bello
-
-DemoSwe: du har varit vacker
-
- Demo: UseCl TCond ASimul PNeg (PredAdv (DetArtPl DefArt (AdjCN (ComparA long_A (AdvNP (UsePron i_Pron) there7from_Adv)) (UseN leaf_N))) there_Adv)
-
-DemoBul: по - дългите от мен от там листа не биха били там
-
-DemoCat: les fulles más llarges que jo d'allà no serien allà
-
-DemoDan: de løv længere end jeg derfra ville ikke være der
-
-DemoEng: the leaves longer than I from there wouldn't be there
-
-DemoFin: minua sieltä pitemmät lehdet eivät olisi siellä
-
-DemoFre: les feuilles plus longues que moi de là ne seraient pas là
-
-DemoGer: die längeren als ich daher Blätter würden nicht da sein
-
-DemoIta: le foglie più lunghe che io di là non sarebbero là
-
-DemoNor: de løva lengre enn jeg derfra ville ikke være der
-
-DemoRus: длиннее меня оттуда листы не
-
-DemoSpa: las hojas más largas que yo de allá no serían allí
-
-DemoSwe: de löven längre än jag därifrån skulle inte vara där
-
- Demo: UseCl TPres ASimul PNeg (PredV (AdvNP (DetArtSg IndefArt (UseN2 brother_N2)) far_Adv) die_V)
-
-DemoBul: брат далече не умира
-
-DemoCat: un germà lluny no mor
-
-DemoDan: en broder fjern dør ikke
-
-DemoEng: a brother far doesn't die
-
-DemoFin: veli kaukana ei kuole
-
-DemoFre: un frère loin ne meurt pas
-
-DemoGer: ein Bruder weit stirbt nicht
-
-DemoIta: un fratello lontano non muore
-
-DemoNor: en bror fjern dør ikke
-
-DemoRus: брат далеко не умирает
-
-DemoSpa: un hermano lejos no muere
-
-DemoSwe: en bror långt dör inte
-
- Demo: UseCl TPast ASimul PNeg (PredV (DetArtPl IndefArt (ComplN2 brother_N2 somebody_NP)) go_V)
-
-DemoBul: братя на някой не отидоха
-
-DemoCat: uns germàs de algú no anaven
-
-DemoDan: brødre til nogen gik ikke
-
-DemoEng: brothers of somebody didn't go
-
-DemoFin: jonkun veljissä ei mennyt
-
-DemoFre: des frères de quelqu'un n' allaient pas
-
-DemoGer: Brüder von jemandem gingen nicht
-
-DemoIta: fratelli di qualcuno non andavano
-
-DemoNor: brødre til noen gikk ikke
-
-DemoRus: браты кого-то не ходили
-
-DemoSpa: unos hermanos de algún no iban
-
-DemoSwe: bröder till någon gick inte
-
- Demo: UseCl TFut ASimul PPos (PredV (DetCN (DetArtOrd DefArt NumSg left_Ord) (AdjCN (PositA important_A) (ComplN2 brother_N2 (DetCN (DetQuant this_Quant NumPl) (UseN2 mother_N2))))) blow_V)
-
-DemoBul: левият важен брат на тези майки ще духа
-
-DemoCat: l' esquerra germà de aquestes mares important bufarà
-
-DemoDan: den venstre vigtige broder til disse mødre vil blæse
-
-DemoEng: the left important brother of these mothers will blow
-
-DemoFin: vasenet tärkeä näiden äitien veli puhaltaa
-
-DemoFre: le gauche frère ces mères important soufflera
-
-DemoGer: der linke wichtige Bruder von diesen Müttern wird blasen
-
-DemoIta: il sinistro fratello di queste madri importante soffierà
-
-DemoNor: den venstre viktige broren til disse mødrene vil blåse
-
-DemoRus: левый важный брат этих матерей будет дуть
-
-DemoSpa: el izquierda hermano de estas madres importante soplará
-
-DemoSwe: den vänstra viktiga brodern till de här mödrarna ska blåsa
-
- Demo: UseCl TPast AAnter PNeg (PredV (DetCN few_Det (ComplN2 father_N2 (DetCN much_Det (UseN song_N)))) go_V)
-
-DemoBul: няколко бащи на много песен не бяха отишли
-
-DemoCat: pocs pares de molta cançó no havien anat
-
-DemoDan: få fædre til meget sanger var ikke gået
-
-DemoEng: few fathers of much song hadn't gone
-
-DemoFin: harva paljon laulun isä ei ollut mennyt
-
-DemoFre: peu de pères de beaucoup de chansons n' étaient pas allés
-
-DemoGer: wenige Väter von vielem Lied waren nicht gegangen
-
-DemoIta: pochi padri di molta canzone non erano andati
-
-DemoNor: få fedre til mye sanger var ikke gått
-
-DemoRus: немного отец многа песни не ходил
-
-DemoSpa: pocos padres de mucha canción no habían ido
-
-DemoSwe: få fäder till mycket sånger hade inte gått
-
- Demo: UseCl TPast AAnter PNeg (PredAdv (DetArtSg DefArt (UseN bird_N)) now_Adv)
-
-DemoBul: птицата не беше билa сега
-
-DemoCat: l' ocell no havia estat ara
-
-DemoDan: fuglen havde ikke været nu
-
-DemoEng: the bird hadn't been now
-
-DemoFin: lintu ei ollut ollut nyt
-
-DemoFre: l' oiseau n' avait pas été maintenant
-
-DemoGer: der Vogel war nicht jetzt gewesen
-
-DemoIta: l' uccello non era stato adesso
-
-DemoNor: fuglen hadde ikke vært nå
-
-DemoRus: птица не была сейчас
-
-DemoSpa: el pájaro no había sido ahora
-
-DemoSwe: fågeln hade inte varit nu
-
- Demo: UseCl TPast ASimul PNeg (PredV (UsePron we_Pron) sew_V)
-
-DemoBul: ние не шихме
-
-DemoCat: no cosíem
-
-DemoDan: vi syede ikke
-
-DemoEng: we didn't sew
-
-DemoFin: me emme kylväneet
-
-DemoFre: nous ne cousions pas
-
-DemoGer: wir nähten nicht
-
-DemoIta: non cucivamo
-
-DemoNor: vi sydde ikke
-
-DemoRus: мы не шили
-
-DemoSpa: no cosíamos
-
-DemoSwe: vi sydde inte
-
- Demo: UseCl TPast AAnter PNeg (PredV2 (DetArtPl IndefArt (UseN2 father_N2)) leave_V2 (DetArtPl DefArt (AdjCN (AdAP too_AdA (ComparA dull_A (DetCN every_Det (AdjCN (AdAP so_AdA (PositA ugly_A)) (UseN2 brother_N2))))) (UseN book_N))))
-
-DemoBul: бащи не бяха оставили прекалено по - тъпите от всеки толкова глупав брат книги
-
-DemoCat: uns pares no havien partit els llibres massa más balbs que cada germà tan lleig
-
-DemoDan: fædre havde ikke forladet de bøger for sløvere end hver så grimme broder
-
-DemoEng: fathers hadn't left the books too duller than every so ugly brother
-
-DemoFin: isiä ei ollut jättänyt liian jokaista niin rumaa veljenä tylsempiä kirjoja
-
-DemoFre: des pères n' avaient pas quitté les livres trop plus émoussés que chaque frère si laide
-
-DemoGer: Väter hatten die zu stumpferen als jeder so häßliche Bruder Bücher nicht verlassen
-
-DemoIta: padri non avevano lasciato i libri troppo più noiosi che ogni fratello così brutto
-
-DemoNor: fedre hadde ikke forlatt de bøkene for sløvere enn hver så stygge bror
-
-DemoRus: отцы не уходили слишком скучнее каждого так некрасивого брата книги
-
-DemoSpa: unos padres no habían partido los libros demasiado más desafilados que cada hermano tanto feo
-
-DemoSwe: fäder hade inte lämnat de böckerna för slöare än varje så ful bror
-
- Demo: UseCl TCond ASimul PPos (PredAP (DetCN much_Det (UseN skin_N)) (PositA thick_A))
-
-DemoBul: много кожа би билa дебела
-
-DemoCat: molta pell seria gruixuda
-
-DemoDan: meget skind ville være tykke
-
-DemoEng: much skin would be thick
-
-DemoFin: paljon nahka olisi paksu
-
-DemoFre: beaucoup de peaux seraient épais
-
-DemoGer: vieler Haut würde dick sein
-
-DemoIta: molta pelle sarebbe grossa
-
-DemoNor: mye skinn ville være tykke
-
-DemoRus: много кожи
-
-DemoSpa: mucha piel sería gruesa
-
-DemoSwe: mycket skinn skulle vara tjocka
-
- Demo: UseCl TPast AAnter PPos (PredAdv (UsePron he_Pron) far_Adv)
-
-DemoBul: той беше бил далече
-
-DemoCat: havia estat lluny
-
-DemoDan: han havde været fjern
-
-DemoEng: he had been far
-
-DemoFin: hän oli ollut kaukana
-
-DemoFre: il avait été loin
-
-DemoGer: er war weit gewesen
-
-DemoIta: era stato lontano
-
-DemoNor: han hadde vært fjern
-
-DemoRus: он был далеко
-
-DemoSpa: había sido lejos
-
-DemoSwe: han hade varit långt
-
- Demo: UseCl TPres ASimul PNeg (PredV2 (UsePron he_Pron) break_V2 (DetArtPl DefArt (AdjCN (ComparA rotten_A (DetArtPl IndefArt (UseN2 brother_N2))) (ComplN2 (ComplN3 distance_N3 (DetArtSg IndefArt (AdjCN (PositA green_A) (ComplN2 mother_N2 (UsePron she_Pron))))) (DetArtSg IndefArt (UseN2 brother_N2))))))
-
-DemoBul: той не чупи по - прогнилите от братя разстояния от зелена майка и до брат
-
-DemoCat: no trenca les distàncies d' una mare de ella verda a un germà más podrites que uns germàs
-
-DemoDan: han knuser ikke de afstander fra en grøn moder til hende til en broder rådnere end brødre
-
-DemoEng: he doesn't break the distances from a green mother of she to a brother rottener than brothers
-
-DemoFin: hän ei riko veljissä mädämpiä etäisyyksiä vihreästä hänen äidistä veljeen
-
-DemoFre: il ne casse pas les distances d' une mère d' elle verte à un frère plus pourries que des frères
-
-DemoGer: er zerschlägt die verdorbeneren als Brüder Entfernungen von einer grünen Mutter von ihr zu einem Bruder nicht
-
-DemoIta: non rompe le distanze di una madre di lei verde ad un fratello più marcie che fratelli
-
-DemoNor: han knuser ikke de avstandene fra en grønn mor til henne til en bror råttenere enn brødre
-
-DemoRus: он не прерывает гнилее братов расстояния от зелёной её матери к брату
-
-DemoSpa: no rompe las distancias de una madre de ella verde a un hermano más podridas que unos hermanos
-
-DemoSwe: han slår inte sönder de avstånden från en grön mor till henne till en bror ruttnare än bröder
-
- Demo: UseCl TPast ASimul PNeg (PredAP (UsePron we_Pron) (ComplA2 married_A2 (DetCN few_Det (UseN planet_N))))
-
-DemoBul: ние не бяхме женени за няколко планети
-
-DemoCat: no érem casates a poques planetes
-
-DemoDan: vi var ikke gifte med få planeter
-
-DemoEng: we weren't married to few planets
-
-DemoFin: me emme olleet avioituneita harvan planeetan kanssa
-
-DemoFre: nous n' étions pas mariés à peu de planètes
-
-DemoGer: wir waren nicht verheiratet mit wenigen Planeten
-
-DemoIta: non eravamo sposati a poche pianete
-
-DemoNor: vi var ikke gifte med få planeter
-
-DemoRus: мы не были замужем за немногом планетой
-
-DemoSpa: no éramos casados a pocos planetas
-
-DemoSwe: vi var inte gifta med få planeter
-
- Demo: UseCl TCond AAnter PNeg (PredV (DetCN many_Det (AdjCN (ComplA2 married_A2 (DetCN somePl_Det (UseN bird_N))) (ComplN2 brother_N2 (DetArtPl DefArt (UseN2 (ComplN3 distance_N3 (DetArtSg DefArt (AdjCN (ComplA2 married_A2 (UsePN paris_PN)) (ComplN2 father_N2 (DetCN (DetArtOrd DefArt NumSg (OrdNumeral (num (pot3plus (pot1as2 (pot1 n9)) (pot1as2 (pot0as1 pot01)))))) (UseN person_N))))))))))) spit_V)
-
-DemoBul: много женени за някои птици братя на разстоянита от женения за Париж баща на деветдесет хиляди и първия човек не биха плюли
-
-DemoCat: molts germàs dels distàncies del pare de la norantena mil primera persona casat a Paris casats a alguns ocells no haurien escopit
-
-DemoDan: mange brødre til afstanderne fra den far til halvfems tusind og første personen gifte med Paris gifte med nogle fugler ville ikke have spyttet
-
-DemoEng: many brothers of the distances from the father of the ninety thousand first person married to Paris married to some birds wouldn't have spit
-
-DemoFin: moni joidenkuiden lintujen kanssa avioitunut etäisyyksien Pariisin kanssa avioituneesta yhdeksänsinä kymmenensinä tuhannensina yhdensinä henkilön isästä veli ei olisi sylkenyt
-
-DemoFre: plusieurs frères des distances du père de la quatre-vingt-dix mille unième personne marié à Paris mariés à quelques oiseaux n' auraient pas craché
-
-DemoGer: viele verheirateten mit einigen Vögeln Brüder von den Entfernungen von dem verheirateten mit Paris Vater von dem neunzig tausend ersten Person würden nicht gespuckt haben
-
-DemoIta: molti fratelli delle distanze del padre della novanta mila prima persona sposato a Parigi sposati a qualche uccelli non avrebbero sputato
-
-DemoNor: mange brødre til avstandene fra den faren til nitti tusen og første personen gifte med Paris gifte med noen fugler ville ikke ha spytta
-
-DemoRus:
-
-DemoSpa: muchos hermanos de las distancias del padre de la noventa milésima primera persona casado a Paris casados a algunos pájaros no habrían escupido
-
-DemoSwe: många bröder till avstånden från den fadern till nittio tusen första personen gifta med Paris gifta med några fåglar skulle inte ha spottat
-
- Demo: UseCl TCond AAnter PNeg (PredV (DetCN much_Det (UseN cheese_N)) walk_V)
-
-DemoBul: много сирене не би ходило
-
-DemoCat: molt formatge no hauria caminat
-
-DemoDan: meget oster ville ikke være gået
-
-DemoEng: much cheese wouldn't have walked
-
-DemoFin: paljon juusto ei olisi kävellyt
-
-DemoFre: beaucoup de fromages n' auraient pas marché
-
-DemoGer: viele Käse würde nicht gegangen sein
-
-DemoIta: molto formaggio non avrebbe camminato
-
-DemoNor: mye oster ville ikke være gått
-
-DemoRus: много сыра не гуляло бы
-
-DemoSpa: mucho queso no habría caminado
-
-DemoSwe: mycket ostar skulle inte ha gått
-
- Demo: UseCl TCond ASimul PPos (PredV2 (DetArtPl IndefArt (UseN ear_N)) bite_V2 (DetArtSg DefArt (UseN2 (ComplN3 distance_N3 (UsePN john_PN)))))
-
-DemoBul: уши биха хапали разстоянието от Джон
-
-DemoCat: unes orelles mossegarien la distància de Joan
-
-DemoDan: ører ville bite afstanden fra John
-
-DemoEng: ears would bite the distance from John
-
-DemoFin: korvia purisi etäisyyden Jussista
-
-DemoFre: des oreilles mordraient la distance de Jean
-
-DemoGer: Ohre würden die Entfernung von Johann beißen
-
-DemoIta: orecchi morderebbero la distanza di Giovanni
-
-DemoNor: ører ville bite avstanden fra John
-
-DemoRus: уха кусали бы расстояние от Ивана
-
-DemoSpa: unas orejas moorderían la distancia de Juan
-
-DemoSwe: öron skulle bita avståndet från Johan
-
- Demo: UseCl TPres ASimul PNeg (PredV2 (DetCN much_Det (ComplN2 mother_N2 (UsePron we_Pron))) fear_V2 somebody_NP)
-
-DemoBul: много майка ни не се страхува някой
-
-DemoCat: molta mare de nosaltres no tem algú
-
-DemoDan: meget mødre til os frygter ikke nogen
-
-DemoEng: much mother of we doesn't fear somebody
-
-DemoFin: paljon meidän äiti ei pelkää jotakua
-
-DemoFre: beaucoup de mères de nous ne craignent pas quelqu'un
-
-DemoGer: viele Mutter von uns fürchtet jemanden nicht
-
-DemoIta: molta madre di noi non teme qualcuno
-
-DemoNor: mye mødre til oss frykter ikke noen
-
-DemoRus: много нашей матери не боет кого-то
-
-DemoSpa: mucha madre de nosotros no teme algún
-
-DemoSwe: mycket mödrar till oss fruktar inte någon
-
- Demo: UseCl TPast AAnter PPos (PredV (DetArtSg IndefArt (AdjCN (AdAP almost_AdA (PositA hot_A)) (UseN head_N))) sleep_V)
-
-DemoBul: почти гореща глава беше спалa
-
-DemoCat: un cap quasi calent havia dormit
-
-DemoDan: et næsten hedt hoved havde sovet
-
-DemoEng: an almost hot head had slept
-
-DemoFin: melkein kuuma pää oli nukkunut
-
-DemoFre: une tête presque chaude avait dormi
-
-DemoGer: ein fast heißer Kopf hatte geschlafen
-
-DemoIta: una testa quasi calda aveva dormito
-
-DemoNor: et nesten heitt hode hadde sovet
-
-DemoRus: почти горячая голова спала
-
-DemoSpa: una cabeza casi caliente había dormido
-
-DemoSwe: ett nästan hett huvud hade sovit
-
- Demo: UseCl TCond AAnter PNeg (PredAdv (DetCN someSg_Det (ComplN2 father_N2 (DetArtPl DefArt (AdjCN (PositA ugly_A) (ComplN2 mother_N2 (UsePron youPl_Pron)))))) there7to_Adv)
-
-DemoBul: някой баща на глупавите майки ви не би бил до там
-
-DemoCat: algun pare dels mares de vosaltres lletges no hauria estat cap a allà
-
-DemoDan: nogen far til de grimme mødre til jer ville ikke have været dit
-
-DemoEng: some father of the ugly mothers of you wouldn't have been there
-
-DemoFin: joku rumien teidän äitien isä ei olisi ollut sinne
-
-DemoFre: quelque père des mères de vous laides n' aurait pas été là
-
-DemoGer: ein Vater von den häßlichen Müttern von euch würde nicht dahin gewesen sein
-
-DemoIta: qualche padre delle madri di voi brutte non sarebbe stato là
-
-DemoNor: noen far til de stygge mødrene til dere ville ikke ha vært dit
-
-DemoRus: некоторый отец некрасивых ваших матерей не
-
-DemoSpa: algun padre de las madres de vosotros feas no habría sido para allá
-
-DemoSwe: någon far till de fula mödrarna till er skulle inte ha varit dit
-
- Demo: UseCl TPast AAnter PPos (PredV2 (DetCN (DetArtCard DefArt (AdNum almost_AdN (AdNum almost_AdN (NumNumeral (num (pot2as3 (pot2 pot01))))))) (UseN number_N)) wait_V2 (DetCN somePl_Det (ComplN2 mother_N2 (UsePN john_PN))))
-
-DemoBul: почти почти стоте числа бяха чакали за някои майки на Джон
-
-DemoCat: els quasi quasi cent números havien esperat a algunes mares de Joan
-
-DemoDan: de næsten næsten et hundrede nummerene havde ventet på nogle mødre til John
-
-DemoEng: the almost almost one hundred numbers had waited for some mothers of John
-
-DemoFin: melkein melkein sata numerota olivat odottaneet joitakuita Jussin äitejä
-
-DemoFre: les presque presque cent nombres avaient attendu à quelques mères de Jean
-
-DemoGer: die fast fast ein hundert Zahlen hatten auf einige Mütter von Johann gewartet
-
-DemoIta: i quasi quasi cento numeri avevano aspettato a qualche madri di Giovanni
-
-DemoNor: de nesten nesten ett hundre nummera hadde venta på noen mødre til John
-
-DemoRus: почти почти сто числа ждали некоторых матерей Ивана
-
-DemoSpa: los casi casi cien números habían esperado a algunas madres de Juan
-
-DemoSwe: de nästan nästan ett hundra numren hade väntat på några mödrar till Johan
-
- Demo: UseCl TPast AAnter PNeg (PredV (DetArtPl IndefArt (ComplN2 (ComplN3 distance_N3 (DetArtPl IndefArt (AdjCN (AdAP almost_AdA (ComplA2 easy_A2V somebody_NP)) (ComplN2 brother_N2 (DetArtPl IndefArt (UseN2 (ComplN3 distance_N3 (DetArtPl DefArt (AdjCN (AdAP so_AdA (PositA dirty_A)) (ComplN2 father_N2 (AdvNP (AdvNP (UsePron i_Pron) far_Adv) here7from_Adv))))))))))) (DetArtPl IndefArt (UseN2 mother_N2)))) come_V)
-
-DemoBul: разстояния от почти лесни за някой братя на разстояния от толкова мръсните бащи ми далече от тук до майки не бяха дошли
-
-DemoCat: unes distàncies d' uns germàs d' unes distàncies dels pares de mi lluny d'aquí tan bruts quasi fácils a algú a unes mares no havien vingut
-
-DemoDan: afstander fra brødre til afstander fra de så smudsige fædre til mig fjern herfra næsten neme for nogen til mødre var ikke kommet
-
-DemoEng: distances from brothers of distances from the so dirty fathers of I far from here almost easy for somebody to mothers hadn't come
-
-DemoFin: etäisyyksiä melkein jollevulle helpoista etäisyyksien niin likaisista minun kaukana täältä isistä velstä äiteihin ei ollut tullut
-
-DemoFre: des distances de frères de distances des pères de moi loin d'ici si sales presque faciles à quelqu'un à des mères n' étaient pas venues
-
-DemoGer: Entfernungen von fast leichten für jemanden Brüdern von Entfernungen von den so schmutzigen Vätern von mir weit hieraus zu Müttern waren nicht gekommen
-
-DemoIta: distanze di fratelli di distanze dei padri di me lontano da quì così sporchi quasi facili a qualcuno a madri non erano venute
-
-DemoNor: avstander fra brødre til avstander fra de så skitne fedrene til meg fjern herfra nesten greie for noen til mødre var ikke kommet
-
-DemoRus: расстояния от почти лёгких для кого-то братов расстояний от так грязных моих далеко отсюда отцов к матерям не приходили
-
-DemoSpa: unas distancias de unos hermanos de unas distancias de los padres de mí lejos de acá tanto sucios casi fáciles a algún a unas madres no habían venido
-
-DemoSwe: avstånd från bröder till avstånd från de så smutsiga fäderna till mig långt härifrån nästan lätta för någon till mödrar hade inte kommit
-
- Demo: UseCl TCond AAnter PNeg (PredAP (DetArtSg DefArt (AdjCN (PositA warm_A) (UseN neck_N))) (AdAP quite_Adv (AdAP too_AdA (ComplA2 easy_A2V (UsePN paris_PN)))))
-
-DemoBul: топлият гръб не би бил доста прекалено лесен за Париж
-
-DemoCat: el coll tebi no hauria estat bastant massa fácil a Paris
-
-DemoDan: den varme hals ville ikke have været temmelig for nem for Paris
-
-DemoEng: the warm neck wouldn't have been quite too easy for Paris
-
-DemoFin: lämmin niska ei olisi ollut melko liian helppo Pariisille
-
-DemoFre: le cou chaud n' aurait pas été assez trop facile à Paris
-
-DemoGer: der warme Nacken würde nicht ziemlich zu leicht für Paris gewesen sein
-
-DemoIta: il collo caldo non sarebbe stato assai troppo facile a Parigi
-
-DemoNor: den varme nakken ville ikke ha vært temmelig for grei for Paris
-
-DemoRus: тёплая шея не
-
-DemoSpa: el cuello tibio no habría sido bastante demasiado fácil a Paris
-
-DemoSwe: den varma nacken skulle inte ha varit ganska för lätt för Paris
-
- Demo: UseCl TPres ASimul PPos (PredAP (DetArtSg IndefArt (ComplN2 mother_N2 (UsePron they_Pron))) (ComparA good_A (UsePN paris_PN)))
-
-DemoBul: майка им е по - добра от Париж
-
-DemoCat: una mare de elles és millora que Paris
-
-DemoDan: en moder til dem er bedre end Paris
-
-DemoEng: a mother of they is better than Paris
-
-DemoFin: heidän äiti on parempi kuin Pariisi
-
-DemoFre: une mère d' eux est meilleure que Paris
-
-DemoGer: eine Mutter von ihnen ist besser als Paris
-
-DemoIta: una madre di loro è migliore che Parigi
-
-DemoNor: en mor til dem er bedre enn Paris
-
-DemoRus: их мать лучше Парижа
-
-DemoSpa: una madre de ellos es mejor que Paris
-
-DemoSwe: en mor till dem är bättre än Paris
-
- Demo: UseCl TPres AAnter PPos (PredV (DetCN (DetArtOrd DefArt NumPl (OrdDigits (IIDig D_4 (IDig D_2)))) (UseN2 brother_N2)) vomit_V)
-
-DemoBul: 4 2рите братя са повърнали
-
-DemoCat: els 4 2:o germàs han vomitat
-
-DemoDan: 4 2:e brødrene har kastet op
-
-DemoEng: the 4 2nd brothers have vomited
-
-DemoFin: 4 2. veljet ovat oksentaneet
-
-DemoFre: les 4 2ème frères ont vomi
-
-DemoGer: die 4 2e Brüder haben gekotzt
-
-DemoIta: i 4 2:o fratelli hanno vomitato
-
-DemoNor: 4 2:e brødrene har kasta opp
-
-DemoRus:
-
-DemoSpa: los 4 2:o hermanos han vomitado
-
-DemoSwe: 4 2:a bröderna har spytt
-
- Demo: UseCl TCond ASimul PPos (PredAP somebody_NP (ComparA yellow_A somebody_NP))
-
-DemoBul: някой би бил по - жълт от някой
-
-DemoCat: algú seria más groc que algú
-
-DemoDan: nogen ville være gulere end nogen
-
-DemoEng: somebody would be yellower than somebody
-
-DemoFin: joku olisi keltaisempi kuin joku
-
-DemoFre: quelqu'un serait plus jaune que quelqu'un
-
-DemoGer: jemand würde gelber als jemand sein
-
-DemoIta: qualcuno sarebbe più giallo che qualcuno
-
-DemoNor: noen ville være gulere enn noen
-
-DemoRus: кто-то
-
-DemoSpa: algún sería más amarillo que algún
-
-DemoSwe: någon skulle vara gulare än någon
-
- Demo: UseCl TCond AAnter PPos (PredAdv (AdvNP (UsePN paris_PN) already_Adv) (SubjS if_Subj (UseCl TPast AAnter PNeg (PredV (UsePN john_PN) lie_V))))
-
-DemoBul: Париж вече би бил ако Джон не беше лежал
-
-DemoCat: Paris ja hauria estat si Joan no se havia jagut
-
-DemoDan: Paris allerede ville have været hvis John ikke havde ligget
-
-DemoEng: Paris already would have been if John hadn't lain
-
-DemoFin: Pariisi jo olisi ollut jos Jussi ei ollut maannut
-
-DemoFre: Paris déjà aurait été si Jean ne s' était pas étendu
-
-DemoGer: Paris schon würde wenn Johann nicht gelügt hatte gewesen sein
-
-DemoIta: Parigi già sarebbe stato se Giovanni non aveva giaciuto
-
-DemoNor: Paris allerede ville ha vært hvis John ikke hadde ligget
-
-DemoRus: Париж уже
-
-DemoSpa: Paris ya habría sido si Juan no se había acostado
-
-DemoSwe: Paris redan skulle ha varit om Johan inte hade legat
-
- Demo: UseCl TFut ASimul PNeg (PredAP somebody_NP (ComplA2 married_A2 (UsePron youSg_Pron)))
-
-DemoBul: някой няма да е женен за теб
-
-DemoCat: algú no serà casat a tu
-
-DemoDan: nogen vil ikke være gift med dig
-
-DemoEng: somebody won't be married to you
-
-DemoFin: joku ei ole avioitunut sinun kanssa
-
-DemoFre: quelqu'un ne sera pas marié à toi
-
-DemoGer: jemand wird nicht verheiratet mit dir sein
-
-DemoIta: qualcuno non sarà sposato a te
-
-DemoNor: noen vil ikke være gift med deg
-
-DemoRus: кто-то не будет замужем за тобой
-
-DemoSpa: algún no será casado a tí
-
-DemoSwe: någon ska inte vara gift med dig
-
- Demo: UseCl TFut ASimul PPos (PredV2 (DetCN (DetArtOrd DefArt (NumCard (NumNumeral (num (pot3plus (pot1as2 (pot1to19 n2)) (pot1as2 pot111))))) (OrdNumeral (num (pot3 (pot2 (pot0 n9)))))) (UseN king_N)) open_V2 (DetArtSg DefArt (AdjCN (ComparA wet_A (UsePN john_PN)) (UseN breast_N))))
-
-DemoBul: дванадесет хиляди и единадесетимата деветстотин хиляден царе ще отворят по - мократа от Джон гърда
-
-DemoCat: els dotze mil onze novens -cents mil reis riran la sina más molla que Joan
-
-DemoDan: de tolv tusind og elleve ni hundrede tusinde kongerne vil åbne det bryst vådere end John
-
-DemoEng: the twelve thousand eleven nine hundred thousandth kings will open the breast weter than John
-
-DemoFin: kaksi toista tuhatta yksi toista yhdeksännet sadannet tuhannennet kuningasta avaavat Jussia märemmän rinnan
-
-DemoFre: les douze mille onze neuf cent millième rois ouvriront le sein plus mouillé que Jean
-
-DemoGer: die zwölf tausend elf neun hundert tausendten Könige werden die naßere als Johann Brust öffnen
-
-DemoIta: i venti mila undici nove cento millesimi ré apriranno il seno più bagnato che Giovanni
-
-DemoNor: de tolv tusen og elve ni hundre tusende kongene vil åpne det brystet våtere enn John
-
-DemoRus:
-
-DemoSpa: los veinte mil once novecientos milésimos reyes abrirán el seno más mojado que Juan
-
-DemoSwe: de tolv tusen elva nio hundra tusende kungarna ska öppna det bröstet våtare än Johan
-
- Demo: UseCl TPast AAnter PPos (PredAP (AdvNP (UsePron he_Pron) (ComparAdvAdj more_CAdv short_A (AdvNP (UsePN john_PN) everywhere_Adv))) (AdAP almost_AdA (PositA blue_A)))
-
-DemoBul: той по - късо от Джон навсякъде беше бил почти син
-
-DemoCat: més curtament que Joan a tot arreu havia estat quasi blau
-
-DemoDan: han mer kort end John overalt havde været næsten blå
-
-DemoEng: he more shortly than John everywhere had been almost blue
-
-DemoFin: hän enemmän lyhyesti kuin Jussi kaikkialla oli ollut melkein sininen
-
-DemoFre: il plus courtement que Jean partout avait été presque bleu
-
-DemoGer: er mehr kurz als Johann überall war fast blau gewesen
-
-DemoIta: più cortamente che Giovanni dappertutto era stato quasi blù
-
-DemoNor: han mer kortt enn John overalt hadde vært nesten blå
-
-DemoRus: он более коротко чем Иван везде был почти голубой
-
-DemoSpa: mas cortamente que Juan en todas partes había sido casi azul
-
-DemoSwe: han mer kortt än Johan överallt hade varit nästan blå
-
- Demo: UseCl TFut ASimul PPos (PredAdv (UsePron i_Pron) here7from_Adv)
-
-DemoBul: аз ще съм от тук
-
-DemoCat: seré d'aquí
-
-DemoDan: jeg vil være herfra
-
-DemoEng: I will be from here
-
-DemoFin: minä olen täältä
-
-DemoFre: je serai d'ici
-
-DemoGer: ich werde hieraus sein
-
-DemoIta: sarò da quì
-
-DemoNor: jeg vil være herfra
-
-DemoRus: я будет отсюда
-
-DemoSpa: seré de acá
-
-DemoSwe: jag ska vara härifrån
-
- Demo: UseCl TCond AAnter PNeg (PredV (AdvNP somebody_NP there7from_Adv) flow_V)
-
-DemoBul: някой от там не би текъл
-
-DemoCat: algú d'allà no hauria fluït
-
-DemoDan: nogen derfra ville ikke have strømmet
-
-DemoEng: somebody from there wouldn't have flowed
-
-DemoFin: joku sieltä ei olisi virrannut
-
-DemoFre: quelqu'un de là n' aurait pas coulé
-
-DemoGer: jemand daher würde nicht gefließt haben
-
-DemoIta: qualcuno di là non avrebbe fluito
-
-DemoNor: noen derfra ville ikke ha rent
-
-DemoRus: кто-то оттуда не тёк бы
-
-DemoSpa: algún de allá no habría fluido
-
-DemoSwe: någon därifrån skulle inte ha runnit
-
- Demo: UseCl TPast ASimul PNeg (PredV (DetCN (DetQuantOrd (PossPron youSg_Pron) (NumCard (NumNumeral (num (pot2as3 (pot2plus pot01 pot111))))) right_Ord) (UseN wife_N)) blow_V)
-
-DemoBul: твоите сто и единадесет десни съпруги не духаха
-
-DemoCat: les teves cent onze dretaes esposes no bufaven
-
-DemoDan: dine et hundrede og elleve højre koner blæste ikke
-
-DemoEng: your one hundred and eleven right wives didn't blow
-
-DemoFin: sinun sata yksi toista oikeat vaimoa &+ si eivät puhaltaneet
-
-DemoFre: tes cent onze droites femmes ne soufflaient pas
-
-DemoGer: deine ein hundert elf rechte Ehefraue blasten nicht
-
-DemoIta: le tue cento undici destre donne non soffiavano
-
-DemoNor: dine ett hundre og elve høyre koner blåste ikke
-
-DemoRus: твои сто одиннадцать правые жены не дули
-
-DemoSpa: tus ciento once derechaes esposas no soplaban
-
-DemoSwe: dina ett hundra elva högra fruar blåste inte
-
- Demo: UseCl TPast ASimul PPos (PredAdv (DetArtSg DefArt (UseN2 mother_N2)) somewhere_Adv)
-
-DemoBul: майката беше някъде
-
-DemoCat: la mare era a algun lloc
-
-DemoDan: moderen var et eller annet sted
-
-DemoEng: the mother was somewhere
-
-DemoFin: äiti oli jossain
-
-DemoFre: la mère était quelque part
-
-DemoGer: die Mutter war irgendwo
-
-DemoIta: la madre era qualche parte
-
-DemoNor: moren var et eller annet sted
-
-DemoRus: мать была где-нибудь
-
-DemoSpa: la madre era en ninguna parte
-
-DemoSwe: modern var någonstans
-
- Demo: UseCl TCond AAnter PNeg (PredV2 (UsePN john_PN) open_V2 (DetCN (DetArtOrd IndefArt NumPl (OrdSuperl fun_AV)) (UseN2 mother_N2)))
-
-DemoBul: Джон не би отворил най - забавни майки
-
-DemoCat: Joan no hauria ert unes más divertites mares
-
-DemoDan: John ville ikke have åbnet morsommeste mødre
-
-DemoEng: John wouldn't have opened funest mothers
-
-DemoFin: Jussi ei olisi avannut hauskimpia äitejä
-
-DemoFre: Jean n' aurait pas ouvert des plus marrantes mères
-
-DemoGer: Johann würde tolleste Mütter nicht geöffnet haben
-
-DemoIta: Giovanni non avrebbe aperto più divertenti madri
-
-DemoNor: John ville ikke ha åpna morsomeste mødre
-
-DemoRus: Иван не открывал бы весёлых матерей
-
-DemoSpa: Juan no habría abierto unas más divertidas madres
-
-DemoSwe: Johan skulle inte ha öppnat roligaste mödrar
-
- Demo: UseCl TFut ASimul PPos (PredAdv (UsePron it_Pron) here7from_Adv)
-
-DemoBul: то ще е от тук
-
-DemoCat: serà d'aquí
-
-DemoDan: det vil være herfra
-
-DemoEng: it will be from here
-
-DemoFin: se on täältä
-
-DemoFre: il sera d'ici
-
-DemoGer: es wird hieraus sein
-
-DemoIta: sarà da quì
-
-DemoNor: det vil være herfra
-
-DemoRus: оно будет отсюда
-
-DemoSpa: será de acá
-
-DemoSwe: det ska vara härifrån
-
- Demo: UseCl TPast AAnter PPos (PredAP (DetArtPl DefArt (AdjCN (AdAP so_AdA (PositA black_A)) (UseN meat_N))) (ComparA thick_A (UsePron youSg_Pron)))
-
-DemoBul: толкова черните меса бяха били по - дебели от теб
-
-DemoCat: les carns tan negres havien estat más gruixudes que tu
-
-DemoDan: de så sorte kød havde været tykkere end du
-
-DemoEng: the so black meats had been thicker than you
-
-DemoFin: niin mustat lihat olivat olleet paksumpia kuin sinä
-
-DemoFre: les viandes si noires avaient été plus épaisses que toi
-
-DemoGer: die so schwarzen Fleische waren dicker als du gewesen
-
-DemoIta: le carni così nere erano state più grosse che tu
-
-DemoNor: de så svarte kjøtta hadde vært tykkere enn du
-
-DemoRus: так чёрные мяса были толще тебя
-
-DemoSpa: las carnes tanto negras habían sido más gruesas que tu
-
-DemoSwe: de så svarta kötten hade varit tjockare än du
-
- Demo: UseCl TPast ASimul PNeg (PredAdv somebody_NP (PositAdvAdj narrow_A))
-
-DemoBul: някой не беше тясно
-
-DemoCat: algú no era estretament
-
-DemoDan: nogen var ikke smalt
-
-DemoEng: somebody wasn't narrowly
-
-DemoFin: joku ei ollut kapeasti
-
-DemoFre: quelqu'un n' était pas étroitement
-
-DemoGer: jemand war nicht schmal
-
-DemoIta: qualcuno non era strettamente
-
-DemoNor: noen var ikke smalt
-
-DemoRus: кто-то не был узко
-
-DemoSpa: algún no era estrechamente
-
-DemoSwe: någon var inte smalt
-
- Demo: UseCl TPres AAnter PPos (PredAP (AdvNP (DetCN (DetArtCard IndefArt (AdNum (AdnCAdv more_CAdv) (NumDigits (IDig D_5)))) (UseN2 (ComplN3 distance_N3 (UsePron i_Pron)))) (PrepNP after_Prep (DetArtPl IndefArt (ComplN2 mother_N2 (AdvNP somebody_NP (ComparAdvAdjS more_CAdv stupid_A (UseCl TCond AAnter PPos (PredV (DetArtSg IndefArt (UseN language_N)) sleep_V)))))))) (ComparA wide_A (AdvNP somebody_NP everywhere_Adv)))
-
-DemoBul: повече от 5 разстояния от мен след майки на някой по - глупаво от колкото език би спал са били по - широки от някой навсякъде
-
-DemoCat: més que 5 distàncies de mi després d' unes mares de algú més estúpidament que una llengua hauria dormit han estat más extenses que algú a tot arreu
-
-DemoDan: mer end 5 afstander fra mig efter mødre til nogen mer dumt end et sprog ville have sovet har været bredere end nogen overalt
-
-DemoEng: more than 5 distances from I after mothers of somebody more stupidly than a language would have slept have been wider than somebody everywhere
-
-DemoFin: enemmän kuin 5 etäisyyttä minusta jonkun enemmän tyhmästi kuin kieli olisi nukkunut äitien jälkeen ovat olleet leveämpiä kuin joku kaikkialla
-
-DemoFre: plus que 5 distances de moi après des mères de quelqu'un plus stupidement qu' une langue aurait dormi ont été plus larges que quelqu'un partout
-
-DemoGer: mehr als 5 Entfernungen von mir nach Müttern von jemandem mehr dumm als eine Sprache geschlafen haben würde sind breiter als jemand überall gewesen
-
-DemoIta: più che 5 distanze di me dopo madri di qualcuno più stupidamente che una lingua avrebbe dormito sono state più larghe che qualcuno dappertutto
-
-DemoNor: mer enn 5 avstander fra meg etter mødre til noen mer dumt enn et språk ville ha sovet har vært bredere enn noen overalt
-
-DemoRus: более чем 5 расстояния от меня после матерей кого-то более тупо чем язык спал бы шире кого-то везде
-
-DemoSpa: mas que 5 distancias de mí despues de unas madres de algún mas estúpidamente que una lengua habría dormido han sido más anchas que algún en todas partes
-
-DemoSwe: mer än 5 avstånd från mig efter mödrar till någon mer dumt än ett språk skulle ha sovit har varit bredare än någon överallt
-
- Demo: UseCl TPres AAnter PPos (PredV2 (DetArtPl DefArt (UseN2 father_N2)) know_V2 (UsePron youPl_Pron))
-
-DemoBul: бащите са знаeли вас
-
-DemoCat: els pares us han sabut
-
-DemoDan: fædrene har vidst jer
-
-DemoEng: the fathers have known you
-
-DemoFin: isät ovat tietäneet teidät
-
-DemoFre: les pères vous ont connus
-
-DemoGer: die Väter haben euch gewußt
-
-DemoIta: i padri vi hanno conosciuti
-
-DemoNor: fedrene har visst dere
-
-DemoRus: отцы знают вас
-
-DemoSpa: los padres vos han sabido
-
-DemoSwe: fäderna har vetat er
-
- Demo: UseCl TCond ASimul PPos (PredAdv (UsePron youPol_Pron) already_Adv)
-
-DemoBul: вие бихте били вече
-
-DemoCat: seríeu ja
-
-DemoDan: Dere ville være allerede
-
-DemoEng: you would be already
-
-DemoFin: te olisitte jo
-
-DemoFre: vous seriez déjà
-
-DemoGer: Sie würden schon sein
-
-DemoIta: sarebbe già
-
-DemoNor: Dere ville være allerede
-
-DemoRus: вы
-
-DemoSpa: sería ya
-
-DemoSwe: ni skulle vara redan
-
- Demo: UseCl TPres ASimul PPos (PredV2 (DetArtPl DefArt (ComplN2 mother_N2 (UsePron youPol_Pron))) fear_V2 (DetArtPl IndefArt (UseN dog_N)))
-
-DemoBul: майките ви се страхуват кучета
-
-DemoCat: les mares de vosté temen uns goss
-
-DemoDan: mødrene til Dere frygter hunder
-
-DemoEng: the mothers of you fear dogs
-
-DemoFin: teidän äidit pelkäävät koiria
-
-DemoFre: les mères de vous craignent des chiens
-
-DemoGer: die Mütter von Ihnen fürchten Hunde
-
-DemoIta: le madri di Lei temono cani
-
-DemoNor: mødrene til Dere frykter hunder
-
-DemoRus: ваши матери боют собак
-
-DemoSpa: las madres de usted temen unos perros
-
-DemoSwe: mödrarna till er fruktar hundar
-
- Demo: UseCl TCond AAnter PPos (PredV2 somebody_NP leave_V2 (UsePron we_Pron))
-
-DemoBul: някой би оставил нас
-
-DemoCat: algú ens hauria partit
-
-DemoDan: nogen ville have forladet os
-
-DemoEng: somebody would have left us
-
-DemoFin: joku olisi jättänyt meidät
-
-DemoFre: quelqu'un nous aurait quittés
-
-DemoGer: jemand würde uns verlassen haben
-
-DemoIta: qualcuno ci avrebbe lasciati
-
-DemoNor: noen ville ha forlatt oss
-
-DemoRus: кто-то уходил бы нас
-
-DemoSpa: algún nos habría partido
-
-DemoSwe: någon skulle ha lämnat oss
-
- Demo: UseCl TPast AAnter PPos (PredAP (UsePN paris_PN) (PositA fun_AV))
-
-DemoBul: Париж беше бил забавен
-
-DemoCat: Paris havia estat divertit
-
-DemoDan: Paris havde været morsomt
-
-DemoEng: Paris had been fun
-
-DemoFin: Pariisi oli ollut hauska
-
-DemoFre: Paris avait été marrant
-
-DemoGer: Paris war toll gewesen
-
-DemoIta: Parigi era stato divertente
-
-DemoNor: Paris hadde vært morsomt
-
-DemoRus: Париж был весёлый
-
-DemoSpa: Paris había sido divertido
-
-DemoSwe: Paris hade varit roligt
-
- Demo: UseCl TFut ASimul PNeg (PredV2 (DetArtPl DefArt (ComplN2 (ComplN3 distance_N3 (AdvNP (UsePron youSg_Pron) there7from_Adv)) somebody_NP)) kill_V2 (DetArtPl IndefArt (ComplN2 brother_N2 (DetArtSg DefArt (ComplN2 brother_N2 (UsePN paris_PN))))))
-
-DemoBul: разстоянита от теб от там до някой няма да убият братя на брата на Париж
-
-DemoCat: les distàncies de tu d'allà a algú no mataran uns germàs del germà de Paris
-
-DemoDan: afstanderne fra dig derfra til nogen vil ikke dræbe brødre til brodren til Paris
-
-DemoEng: the distances from you from there to somebody won't kill brothers of the brother of Paris
-
-DemoFin: etäisyydet sinusta sieltä johonkuun eivät tapa Pariisin veljen veljissä
-
-DemoFre: les distances de toi de là à quelqu'un ne tueront pas des frères du frère de Paris
-
-DemoGer: die Entfernungen von dir daher zu jemandem werden Brüder von dem Bruder von Paris nicht töten
-
-DemoIta: le distanze di te di là a qualcuno non uccideranno fratelli del fratello di Parigi
-
-DemoNor: avstandene fra deg derfra til noen vil ikke drepe brødre til broren til Paris
-
-DemoRus: расстояния от тебя оттуда к кому-то не будут убивать братов брата Парижа
-
-DemoSpa: las distancias de tí de allá a algún no matarán unos hermanos del hermano de Paris
-
-DemoSwe: avstånden från dig därifrån till någon ska inte döda bröder till brodern till Paris
-
- Demo: UseCl TPres AAnter PPos (PredV2 (UsePron it_Pron) drink_V2 (UsePron it_Pron))
-
-DemoBul: то е пило него
-
-DemoCat: el ha begut
-
-DemoDan: det har drukket det
-
-DemoEng: it has drunk it
-
-DemoFin: se on juonut sen
-
-DemoFre: il l' a bu
-
-DemoGer: es hat es getrunken
-
-DemoIta: lo ha bevuto
-
-DemoNor: det har drukket det
-
-DemoRus: оно пьёт его
-
-DemoSpa: lo ha tomado
-
-DemoSwe: det har druckit det
-
- Demo: UseCl TFut AAnter PPos (PredAdv (AdvNP (AdvNP (UsePron youPl_Pron) (AdAdv almost_AdA (ComparAdvAdjS less_CAdv new_A (UseCl TPres ASimul PPos (PredAdv (DetArtSg IndefArt (AdjCN (ComparA empty_A (UsePN paris_PN)) (ComplN2 father_N2 (UsePN paris_PN)))) there7from_Adv))))) there7to_Adv) now_Adv)
-
-DemoBul: вие почти не по - ново от колкото по - празен от Париж баща на Париж е от там до там ще сте били сега
-
-DemoCat: quasi menys novament que un pare de Paris más buit que Paris sigui d'allà cap a allà haureu estat ara
-
-DemoDan: i næsten mindre nytt end en far til Paris tømmere end Paris er derfra dit vil have været nu
-
-DemoEng: you almost less newly than a father of Paris emptier than Paris is from there there will have been now
-
-DemoFin: te melkein vähemmän uudesti kuin Pariisia tyhjempi Pariisin isä on sieltä sinne olette olleet nyt
-
-DemoFre: vous presque moins nouvellement qu' un père de Paris plus vide que Paris soit de là là aurez été maintenant
-
-DemoGer: ihr fast weniger neu als ein lererer als Paris Vater von Paris daher ist dahin werdet jetzt gewesen sein
-
-DemoIta: quasi meno nuovamente che un padre di Parigi più vuoto che Parigi sia di là là sarete stati adesso
-
-DemoNor: dere nesten mindre nytt enn en far til Paris tommere enn Paris er derfra dit vil ha vært nå
-
-DemoRus: вы почти менее ново чем пустее Парижа отец Парижа оттуда туда будут сейчас
-
-DemoSpa: casi meno nuevamente que un padre de Paris más vacío que Paris sea de allá para allá habréis sido ahora
-
-DemoSwe: ni nästan mindre nytt än en far till Paris tommare än Paris är därifrån dit ska ha varit nu
-
- Demo: UseCl TCond ASimul PNeg (PredV2 (UsePron he_Pron) close_V2 (DetCN (DetQuantOrd (PossPron she_Pron) (NumCard (AdNum (AdnCAdv less_CAdv) (NumDigits (IDig D_7)))) left_Ord) (AdjCN (PositA full_A) (AdjCN (ComparA green_A (DetArtSg IndefArt (AdjCN (ComplA2 married_A2 (UsePN john_PN)) (ComplN2 father_N2 (DetArtPl DefArt (UseN woman_N)))))) (UseN neck_N)))))
-
-DemoBul: той не би затворил нейните по-малко от 7 леви пълни по - зелени от женен за Джон баща на жените гърба
-
-DemoCat: no tancaria els seus menys que 7 esquerras colls más verds que un pare dels dones casat a Joan ples
-
-DemoDan: han ville ikke lukke hendes mindre end 7 venstre fulde halser grønnere end en far til kvinderne gift med John
-
-DemoEng: he wouldn't close her less than 7 left full necks greener than a father of the women married to John
-
-DemoFin: hän ei sulkisi hänen vähemmän kuin 7 vasenia täyttä Jussin kanssa avioitunutta naisten isää vihreämpää niskaa &+ nsa
-
-DemoFre: il ne fermerait pas ses moins que 7 gauches cous plus verts qu' un père des femmes marié à Jean pleins
-
-DemoGer: er würde ihre weniger als 7 linke volle grünere als ein verheirateter mit Johann Vater von den Frauen Nacken nicht schließen
-
-DemoIta: non chiuderebbe i suoi meno che 7 sinistri colli più verdi che un padre delle donne sposato a Giovanni pieni
-
-DemoNor: han ville ikke lukke hennes mindre enn 7 venstre fulle nakker grønnere enn en far til kvinnene gift med John
-
-DemoRus: он не закрывал бы её менее чем 7 левые полные зелёнее замужем за Иваном отца женщин шеи
-
-DemoSpa: no cerraría sus meno que 7 izquierdaes cuellos más verdes que un padre de las mujeres casado a Juan llenos
-
-DemoSwe: han skulle inte stänga hennes mindre än 7 vänstra fulla nackar grönare än en far till kvinnorna gift med Johan
-
- Demo: UseCl TCond ASimul PNeg (PredAP (DetCN many_Det (UseN oil_N)) (ComplA2 married_A2 (DetArtSg IndefArt (AdjCN (PositA stupid_A) (ComplN2 father_N2 (DetArtSg IndefArt (UseN2 mother_N2)))))))
-
-DemoBul: много олиота не биха били женени за глупав баща на майка
-
-DemoCat: molts olis no serien casats a un pare d' una mare estúpid
-
-DemoDan: mange olier ville ikke være gifte med en dum far til en moder
-
-DemoEng: many oils wouldn't be married to a stupid father of a mother
-
-DemoFin: moni öljy ei olisi avioitunut tyhmän äidin isän kanssa
-
-DemoFre: plusieurs huiles ne seraient pas mariées à un père d' une mère stupide
-
-DemoGer: viele Öle würden nicht verheiratet mit einem dummen Vater von einer Mutter sein
-
-DemoIta: molti oli non sarebbero sposati ad un padre di una madre stupido
-
-DemoNor: mange oljer ville ikke være gifte med en dum far til en mor
-
-DemoRus: много нефти не
-
-DemoSpa: muchos aceites no serían casados a un padre de una madre estúpido
-
-DemoSwe: många oljor skulle inte vara gifta med en dum far till en mor
-
- Demo: UseCl TFut ASimul PNeg (PredAP (DetArtSg IndefArt (UseN2 (ComplN3 distance_N3 (DetArtSg IndefArt (UseN2 mother_N2))))) (ComparA narrow_A (DetArtPl IndefArt (ComplN2 (ComplN3 distance_N3 (DetArtPl IndefArt (UseN egg_N))) (AdvNP (DetArtSg DefArt (AdjCN (ComparA cold_A (DetCN someSg_Det (AdjCN (ComparA beautiful_A (DetArtSg DefArt (UseN day_N))) (UseN2 mother_N2)))) (UseN country_N))) there7from_Adv)))))
-
-DemoBul: разстояние от майка няма да е по - тясно от разстояния от яйца до по - студената от някоя по - красива от деня майка държава от там
-
-DemoCat: una distància d' una mare no serà más estreta que unes distàncies d' uns ous al país más fred que alguna mare más bella que la dia d'allà
-
-DemoDan: en afstand fra en moder vil ikke være smalere end afstander fra æg til det land koldere end nogen moder smukkere end dagen derfra
-
-DemoEng: a distance from a mother won't be narrower than distances from eggs to the country colder than some mother more beautiful than the day from there
-
-DemoFin: etäisyys äidistä ei ole kapeampi kuin etäisyyksiä munista jotakua päivää kauniimpaa äitiä kylmempään maahan sieltä
-
-DemoFre: une distance d' une mère ne sera pas plus étroite que des distances d' oeufs au pays plus froid que quelque mère plus jolie que le jour de là
-
-DemoGer: eine Entfernung von einer Mutter wird nicht schmaler als Entfernungen von Eien zu dem kalteren als eine schönere als der Tag Mutter Land daher sein
-
-DemoIta: una distanza di una madre non sarà più stretta che distanze di uova al paese più freddo che qualche madre più bella che il giorno di lÃ
-
-DemoNor: en avstand fra en mor vil ikke være smalere enn avstander fra egg til det landet kaldere enn noen mor vakkerere enn dagen derfra
-
-DemoRus: расстояние от матери не будет уже расстояний от яйц к холоднее некоторой красивее дня матери стране оттуда
-
-DemoSpa: una distancia de una madre no será más estrecha que unas distancias de unos huevos al país más frío que alguna madre más bella que el día de allá
-
-DemoSwe: ett avstånd från en mor ska inte vara smalare än avstånd från ägg till det landet kallare än någon mor vackrare än dagen därifrån
-
- Demo: UseCl TPres AAnter PPos (PredAP (UsePron she_Pron) (PositA short_A))
-
-DemoBul: тя е билa къса
-
-DemoCat: ha estat curta
-
-DemoDan: hun har været kort
-
-DemoEng: she has been short
-
-DemoFin: hän on ollut lyhyt
-
-DemoFre: elle a été courte
-
-DemoGer: sie ist kurz gewesen
-
-DemoIta: è stata corta
-
-DemoNor: hun har vært kort
-
-DemoRus: она короткая
-
-DemoSpa: ha sido corta
-
-DemoSwe: hon har varit kort
-
- Demo: UseCl TFut AAnter PPos (PredV (DetArtSg DefArt (UseN pen_N)) die_V)
-
-DemoBul: писалката ще е умрялa
-
-DemoCat: el llapis haurà mort
-
-DemoDan: penen vil være død
-
-DemoEng: the pen will have died
-
-DemoFin: kynä on kuollut
-
-DemoFre: le stylo sera mort
-
-DemoGer: der Bleistift wird gestorben sein
-
-DemoIta: la penna avrà morto
-
-DemoNor: pennen vil være dødd
-
-DemoRus: ручка будет умирать
-
-DemoSpa: la lapicera habrá morido
-
-DemoSwe: pennan ska ha dött
-
- Demo: UseCl TPast ASimul PNeg (PredAdv (DetCN (DetQuant (PossPron youPol_Pron) (NumCard (NumDigits (IIDig D_4 (IDig D_1))))) (UseN2 brother_N2)) somewhere_Adv)
-
-DemoBul: вашите 4 1 братя не бяха някъде
-
-DemoCat: els seus 4 1 germàs no eren a algun lloc
-
-DemoDan: Deres 4 1 brødre var ikke et eller annet sted
-
-DemoEng: your 4 1 brothers weren't somewhere
-
-DemoFin: teidän 4 1 veljenä &+ nne eivät olleet jossain
-
-DemoFre: vos 4 1 frères n' étaient pas quelque part
-
-DemoGer: Ihre 4 1 Brüder waren nicht irgendwo
-
-DemoIta: i Suoi 4 1 fratelli non erano qualche parte
-
-DemoNor: Deres 4 1 brødre var ikke et eller annet sted
-
-DemoRus: ваши 4 1 браты не были где-нибудь
-
-DemoSpa: sus 4 1 hermanos no eran en ninguna parte
-
-DemoSwe: era 4 1 bröder var inte någonstans
-
- Demo: UseCl TCond ASimul PPos (PredV2 (UsePN paris_PN) watch_V2 (DetArtPl IndefArt (ComplN2 brother_N2 (UsePN paris_PN))))
-
-DemoBul: Париж би гледал братя на Париж
-
-DemoCat: Paris miraria uns germàs de Paris
-
-DemoDan: Paris ville se på brødre til Paris
-
-DemoEng: Paris would watch brothers of Paris
-
-DemoFin: Pariisi katselisi Pariisin veljissä
-
-DemoFre: Paris regarderait des frères de Paris
-
-DemoGer: Paris würde an Brüder von Paris schauen
-
-DemoIta: Parigi guarderebbe fratelli di Parigi
-
-DemoNor: Paris ville se på brødre til Paris
-
-DemoRus: Париж смотрел бы братов Парижа
-
-DemoSpa: Paris miraría unos hermanos de Paris
-
-DemoSwe: Paris skulle titta på bröder till Paris
-
- Demo: UseCl TPast ASimul PNeg (PredV (UsePron youPl_Pron) smell_V)
-
-DemoBul: вие не мирисахте
-
-DemoCat: no ensumàveu
-
-DemoDan: i lugtede ikke
-
-DemoEng: you didn't smell
-
-DemoFin: te ette haistaneet
-
-DemoFre: vous ne sentiez pas
-
-DemoGer: ihr riechtet nicht
-
-DemoIta: non sentivate
-
-DemoNor: dere lukta ikke
-
-DemoRus: вы не пахнули
-
-DemoSpa: no olíais
-
-DemoSwe: ni luktade inte
-
- Demo: UseCl TPast AAnter PPos (PredV somebody_NP sit_V)
-
-DemoBul: някой беше седял
-
-DemoCat: algú se havia segut
-
-DemoDan: nogen havde siddet
-
-DemoEng: somebody had sat
-
-DemoFin: joku oli istunut
-
-DemoFre: quelqu'un s' était assis
-
-DemoGer: jemand hatte gesessen
-
-DemoIta: qualcuno si era seduto
-
-DemoNor: noen hadde sittet
-
-DemoRus: кто-то сидел
-
-DemoSpa: algún se había sentado
-
-DemoSwe: någon hade suttit
-
- Demo: UseCl TPast AAnter PPos (PredV (DetCN many_Det (ComplN2 (ComplN3 distance_N3 (UsePron youSg_Pron)) (UsePN paris_PN))) smell_V)
-
-DemoBul: много разстояния от теб до Париж бяха мирисали
-
-DemoCat: moltes distàncies de tu a Paris havien ensumat
-
-DemoDan: mange afstander fra dig til Paris havde lugtet
-
-DemoEng: many distances from you to Paris had smelled
-
-DemoFin: moni etäisyys sinusta Pariisiin oli haistanut
-
-DemoFre: plusieurs distances de toi à Paris avaient senti
-
-DemoGer: viele Entfernungen von dir zu Paris hatten geriecht
-
-DemoIta: molte distanze di te a Parigi avevano sentito
-
-DemoNor: mange avstander fra deg til Paris hadde lukta
-
-DemoRus: много расстояния от тебя к Парижу пахнуло
-
-DemoSpa: muchas distancias de tí a Paris habían olido
-
-DemoSwe: många avstånd från dig till Paris hade luktat
-
- Demo: UseCl TPast AAnter PNeg (PredV2 somebody_NP forget_V2 (DetCN (DetArtOrd IndefArt NumPl (OrdSuperl white_A)) (UseN snow_N)))
-
-DemoBul: някой не беше забравил най - бели снегове
-
-DemoCat: algú no havia oblidat unes más blanques neus
-
-DemoDan: nogen havde ikke glemt hvideste snøer
-
-DemoEng: somebody hadn't forgotten whitest snows
-
-DemoFin: joku ei ollut unohtanut valkoisimpia lumia
-
-DemoFre: quelqu'un n' avait pas oublié des plus blanches neiges
-
-DemoGer: jemand hatte weißeste Schneen nicht vergessen
-
-DemoIta: qualcuno non aveva dimenticato più bianche nevi
-
-DemoNor: noen hadde ikke glemt hviteste snøer
-
-DemoRus: кто-то не забывал белые снеги
-
-DemoSpa: algún no había olvidado unas más blancas nieves
-
-DemoSwe: någon hade inte glömt vitaste snöer
-
- Demo: UseCl TPres ASimul PNeg (PredAdv (DetArtSg DefArt (UseN2 mother_N2)) (ComparAdvAdj more_CAdv rotten_A (AdvNP (DetArtPl IndefArt (UseN stick_N)) (PositAdvAdj brown_A))))
-
-DemoBul: майката не е по - прогнило от пръчки кафяво
-
-DemoCat: la mare no és més podritament que uns bastós marronament
-
-DemoDan: moderen er ikke mer råddent end pinder brunt
-
-DemoEng: the mother isn't more rottenly than sticks brownly
-
-DemoFin: äiti ei ole enemmän mädästi kuin keppejä ruskeasti
-
-DemoFre: la mère n' est pas plus pourriment que des bâtons brunement
-
-DemoGer: die Mutter ist nicht mehr verdorben als Stocke braun
-
-DemoIta: la madre non è più marciamente che bastoni marronemente
-
-DemoNor: moren er ikke mer råttent enn pinner brunt
-
-DemoRus: мать не более гнило чем палки коричнево
-
-DemoSpa: la madre no es mas podridamente que unos bastones marrónmente
-
-DemoSwe: modern är inte mer ruttet än pinnar brunt
-
- Demo: UseCl TCond ASimul PPos (PredAP (UsePN john_PN) (PositA broad_A))
-
-DemoBul: Джон би бил обширен
-
-DemoCat: Joan seria ample
-
-DemoDan: John ville være bred
-
-DemoEng: John would be broad
-
-DemoFin: Jussi olisi leveä
-
-DemoFre: Jean serait large
-
-DemoGer: Johann würde breit sein
-
-DemoIta: Giovanni sarebbe largo
-
-DemoNor: John ville være bred
-
-DemoRus: Иван
-
-DemoSpa: Juan sería ancho
-
-DemoSwe: Johan skulle vara bred
-
- Demo: UseCl TPast ASimul PNeg (PredV2 somebody_NP watch_V2 (DetArtPl DefArt (UseN iron_N)))
-
-DemoBul: някой не гледа железата
-
-DemoCat: algú no mirava els ferros
-
-DemoDan: nogen så ikke på jernene
-
-DemoEng: somebody didn't watch the irons
-
-DemoFin: joku ei katsellut rautoja
-
-DemoFre: quelqu'un ne regardait pas les fers
-
-DemoGer: jemand schaute an die Eisen nicht
-
-DemoIta: qualcuno non guardava i ferri
-
-DemoNor: noen så ikke på jerna
-
-DemoRus: кто-то не смотрел железа
-
-DemoSpa: algún no miraba los fierros
-
-DemoSwe: någon tittade inte på järnen
-
- Demo: UseCl TCond ASimul PPos (PredAdv (AdvNP (UsePN paris_PN) (AdAdv quite_Adv there7from_Adv)) there7from_Adv)
-
-DemoBul: Париж доста от там би бил от там
-
-DemoCat: Paris bastant d'allà seria d'allà
-
-DemoDan: Paris temmelig derfra ville være derfra
-
-DemoEng: Paris quite from there would be from there
-
-DemoFin: Pariisi melko sieltä olisi sieltä
-
-DemoFre: Paris assez de là serait de là
-
-DemoGer: Paris ziemlich daher würde daher sein
-
-DemoIta: Parigi assai di là sarebbe di lÃ
-
-DemoNor: Paris temmelig derfra ville være derfra
-
-DemoRus: Париж довольно оттуда
-
-DemoSpa: Paris bastante de allá sería de allá
-
-DemoSwe: Paris ganska därifrån skulle vara därifrån
-
- Demo: UseCl TCond ASimul PNeg (PredV (AdvNP (UsePN paris_PN) (SubjS when_Subj (UseCl TPast AAnter PNeg (PredAdv somebody_NP there7from_Adv)))) dig_V)
-
-DemoBul: Париж когато някой не беше бил от там не би копал
-
-DemoCat: Paris quan algú no havia estat d'allà no cavaria
-
-DemoDan: Paris når nogen ikke havde været derfra ville ikke grave
-
-DemoEng: Paris when somebody hadn't been from there wouldn't dig
-
-DemoFin: Pariisi kun joku ei ollut ollut sieltä ei kaivaisi
-
-DemoFre: Paris quand quelqu'un n' avait pas été de là ne creuserait pas
-
-DemoGer: Paris wenn jemand nicht daher gewesen war würde nicht graben
-
-DemoIta: Parigi quando qualcuno non era stato di là non scaverebbe
-
-DemoNor: Paris når noen ikke hadde vært derfra ville ikke grave
-
-DemoRus: Париж когда кто-то не был оттуда не копал бы
-
-DemoSpa: Paris cuando algún no había sido de allá no escarbaría
-
-DemoSwe: Paris när någon inte hade varit därifrån skulle inte gräva
-
- Demo: UseCl TCond ASimul PPos (PredAdv (AdvNP somebody_NP there7to_Adv) far_Adv)
-
-DemoBul: някой до там би бил далече
-
-DemoCat: algú cap a allà seria lluny
-
-DemoDan: nogen dit ville være fjern
-
-DemoEng: somebody there would be far
-
-DemoFin: joku sinne olisi kaukana
-
-DemoFre: quelqu'un là serait loin
-
-DemoGer: jemand dahin würde weit sein
-
-DemoIta: qualcuno là sarebbe lontano
-
-DemoNor: noen dit ville være fjern
-
-DemoRus: кто-то туда
-
-DemoSpa: algún para allá sería lejos
-
-DemoSwe: någon dit skulle vara långt
-
- Demo: UseCl TFut AAnter PNeg (PredAdv somebody_NP here7from_Adv)
-
-DemoBul: някой няма да е бил от тук
-
-DemoCat: algú no haurà estat d'aquí
-
-DemoDan: nogen vil ikke have været herfra
-
-DemoEng: somebody won't have been from here
-
-DemoFin: joku ei ole ollut täältä
-
-DemoFre: quelqu'un n' aura pas été d'ici
-
-DemoGer: jemand wird nicht hieraus gewesen sein
-
-DemoIta: qualcuno non sarà stato da quì
-
-DemoNor: noen vil ikke ha vært herfra
-
-DemoRus: кто-то не будет отсюда
-
-DemoSpa: algún no habrá sido de acá
-
-DemoSwe: någon ska inte ha varit härifrån
-
- Demo: UseCl TPast AAnter PPos (PredAdv (DetArtSg DefArt (AdjCN (PositA long_A) (AdjCN (PositA ugly_A) (ComplN2 brother_N2 (DetArtPl DefArt (ComplN2 mother_N2 (UsePN john_PN))))))) now_Adv)
-
-DemoBul: дългият глупав брат на майките на Джон беше бил сега
-
-DemoCat: el germà dels mares de Joan lleig llarg havia estat ara
-
-DemoDan: den lange grimme broder til mødrene til John havde været nu
-
-DemoEng: the long ugly brother of the mothers of John had been now
-
-DemoFin: pitkä ruma Jussin äitien veli oli ollut nyt
-
-DemoFre: le frère des mères de Jean laide long avait été maintenant
-
-DemoGer: der lange häßliche Bruder von den Müttern von Johann war jetzt gewesen
-
-DemoIta: il fratello delle madri di Giovanni brutto lungo era stato adesso
-
-DemoNor: den lange stygge broren til mødrene til John hadde vært nå
-
-DemoRus: длинный некрасивый брат матерей Ивана был сейчас
-
-DemoSpa: el hermano de las madres de Juan feo largo había sido ahora
-
-DemoSwe: den långa fula brodern till mödrarna till Johan hade varit nu
-
- Demo: UseCl TPast AAnter PNeg (PredAP (UsePron i_Pron) (ComplA2 married_A2 (AdvNP (UsePron she_Pron) already_Adv)))
-
-DemoBul: аз не бях бил женен за нея вече
-
-DemoCat: no havia estat casata a ella ja
-
-DemoDan: jeg havde ikke været gift med hende allerede
-
-DemoEng: I hadn't been married to her already
-
-DemoFin: minä en ollut ollut avioitunut hänen jo kanssa
-
-DemoFre: je n' avais pas été marié à elle déjà
-
-DemoGer: ich war nicht verheiratet mit ihr schon gewesen
-
-DemoIta: non ero stato sposato a lei già
-
-DemoNor: jeg hadde ikke vært gift med henne allerede
-
-DemoRus: я не был замужем за ей уже
-
-DemoSpa: no había sido casado a ella ya
-
-DemoSwe: jag hade inte varit gift med henne redan
-
- Demo: UseCl TPres ASimul PNeg (PredAP (UsePN john_PN) (ComplA2 married_A2 (UsePN paris_PN)))
-
-DemoBul: Джон не е женен за Париж
-
-DemoCat: Joan no és casat a Paris
-
-DemoDan: John er ikke gift med Paris
-
-DemoEng: John isn't married to Paris
-
-DemoFin: Jussi ei ole avioitunut Pariisin kanssa
-
-DemoFre: Jean n' est pas marié à Paris
-
-DemoGer: Johann ist nicht verheiratet mit Paris
-
-DemoIta: Giovanni non è sposato a Parigi
-
-DemoNor: John er ikke gift med Paris
-
-DemoRus: Иван не замужем за Парижом
-
-DemoSpa: Juan no es casado a Paris
-
-DemoSwe: Johan är inte gift med Paris
-
- Demo: UseCl TCond ASimul PNeg (PredAP somebody_NP (AdAP very_AdA (PositA brown_A)))
-
-DemoBul: някой не би бил много кафяв
-
-DemoCat: algú no seria molt marró
-
-DemoDan: nogen ville ikke være meget brun
-
-DemoEng: somebody wouldn't be very brown
-
-DemoFin: joku ei olisi erittäin ruskea
-
-DemoFre: quelqu'un ne serait pas très brun
-
-DemoGer: jemand würde nicht sehr braun sein
-
-DemoIta: qualcuno non sarebbe molto marrone
-
-DemoNor: noen ville ikke være mye brun
-
-DemoRus: кто-то не
-
-DemoSpa: algún no sería muy marrón
-
-DemoSwe: någon skulle inte vara mycket brun
-
- Demo: UseCl TPres ASimul PPos (PredV2 somebody_NP eat_V2 somebody_NP)
-
-DemoBul: някой яде някой
-
-DemoCat: algú menja algú
-
-DemoDan: nogen spiser nogen
-
-DemoEng: somebody eats somebody
-
-DemoFin: joku syö jonkun
-
-DemoFre: quelqu'un mange quelqu'un
-
-DemoGer: jemand ißt jemanden
-
-DemoIta: qualcuno mangia qualcuno
-
-DemoNor: noen spiser noen
-
-DemoRus: кто-то кушает кого-то
-
-DemoSpa: algún come algún
-
-DemoSwe: någon äter någon
-
- Demo: UseCl TPast ASimul PPos (PredAdv somebody_NP everywhere_Adv)
-
-DemoBul: някой беше навсякъде
-
-DemoCat: algú era a tot arreu
-
-DemoDan: nogen var overalt
-
-DemoEng: somebody was everywhere
-
-DemoFin: joku oli kaikkialla
-
-DemoFre: quelqu'un était partout
-
-DemoGer: jemand war überall
-
-DemoIta: qualcuno era dappertutto
-
-DemoNor: noen var overalt
-
-DemoRus: кто-то был везде
-
-DemoSpa: algún era en todas partes
-
-DemoSwe: någon var överallt
-
- Demo: UseCl TFut AAnter PNeg (PredV (AdvNP (DetCN (DetArtOrd IndefArt NumSg (OrdSuperl small_A)) (AdjCN (ComparA fun_AV (AdvNP (UsePron she_Pron) there7from_Adv)) (UseN fridge_N))) (AdAdv so_AdA there7from_Adv)) walk_V)
-
-DemoBul: най - малък по - забавен от нея от там фризер толкова от там няма да е ходил
-
-DemoCat: una más petita nevera más divertita que ella d'allà tan d'allà no haurà caminat
-
-DemoDan: et mindste køleskab morsommere end hun derfra så derfra vil ikke være gået
-
-DemoEng: a smallest fridge funer than she from there so from there won't have walked
-
-DemoFin: pienimmät häntä sieltä hauskempi jääkaappi niin sieltä ei ole kävellyt
-
-DemoFre: un plus petit frigo plus marrant qu' elle de là si de là n' aura pas marché
-
-DemoGer: ein kleinester tollerer als sie daher Kühlschrank so daher wird nicht gegangen sein
-
-DemoIta: un più piccolo frigorifero più divertente che lei di là così di là non avrà camminato
-
-DemoNor: et minste kjøleskap morsomere enn hun derfra så derfra vil ikke være gått
-
-DemoRus: маленький весёлее неё оттуда холодильник так оттуда не будет гулять
-
-DemoSpa: una más pequeña heladera más divertida que ella de allá tanto de allá no habrá caminado
-
-DemoSwe: ett minsta kylskåp roligare än hon därifrån så därifrån ska inte ha gått
-
- Demo: UseCl TPast ASimul PPos (PredV2 (DetArtPl IndefArt (UseN religion_N)) count_V2 (AdvNP (DetArtSg IndefArt (ComplN2 (ComplN3 distance_N3 (DetArtSg DefArt (UseN apple_N))) (DetCN someSg_Det (UseN2 brother_N2)))) there7to_Adv))
-
-DemoBul: религии броиха разстояние от ябълката до някой брат до там
-
-DemoCat: unes religions comptaven una distància de la poma a algun germà cap a allà
-
-DemoDan: religioner talte en afstand fra æblet til nogen broder dit
-
-DemoEng: religions counted a distance from the apple to some brother there
-
-DemoFin: uskontoja laski etäisyyden omenasta johonkuun veljeen sinne
-
-DemoFre: des religions contaient une distance de la pomme à quelque frère là
-
-DemoGer: Religionen zählten eine Entfernung von dem Apfel zu einem Bruder dahin
-
-DemoIta: religioni contavano una distanza della mela a qualche fratello là
-
-DemoNor: religioner regna en avstand fra eplet til noen bror dit
-
-DemoRus: религии считали расстояние от яблока к некоторому брату туда
-
-DemoSpa: unas religiones contaban una distancia de la manzana a algun hermano para allá
-
-DemoSwe: religioner räknade ett avstånd från äpplet till någon bror dit
-
- Demo: UseCl TFut AAnter PPos (PredV (UsePron youPol_Pron) swim_V)
-
-DemoBul: вие ще сте плували
-
-DemoCat: haureu nedat
-
-DemoDan: Dere vil have svømmet
-
-DemoEng: you will have swum
-
-DemoFin: te olette uineet
-
-DemoFre: vous aurez nagé
-
-DemoGer: Sie werden geschwimmt haben
-
-DemoIta: avrà nuotato
-
-DemoNor: Dere vil ha simma
-
-DemoRus: вы будете плавать
-
-DemoSpa: habrá nadado
-
-DemoSwe: ni ska ha simmat
-
- Demo: UseCl TPres ASimul PPos (PredV2 (UsePron i_Pron) hit_V2 (UsePron he_Pron))
-
-DemoBul: аз удрям него
-
-DemoCat: el pico
-
-DemoDan: jeg slår ham
-
-DemoEng: I hit him
-
-DemoFin: minä lyön häntä
-
-DemoFre: je le frappe
-
-DemoGer: ich schlage ihn
-
-DemoIta: lo colpisco
-
-DemoNor: jeg slår ham
-
-DemoRus: я ударяю его
-
-DemoSpa: lo golpeo
-
-DemoSwe: jag slår honom
-
- Demo: UseCl TPast ASimul PPos (PredV2 somebody_NP teach_V2 (UsePron i_Pron))
-
-DemoBul: някой преподаде мен
-
-DemoCat: algú em ensenyava
-
-DemoDan: nogen underviste mig
-
-DemoEng: somebody taught me
-
-DemoFin: joku opetti minut
-
-DemoFre: quelqu'un m' enseignait
-
-DemoGer: jemand unterrichtete mich
-
-DemoIta: qualcuno mi insegnava
-
-DemoNor: noen underviste meg
-
-DemoRus: кто-то учил меня
-
-DemoSpa: algún me enseñaba
-
-DemoSwe: någon undervisade mig
-
- Demo: UseCl TPast ASimul PNeg (PredAdv (UsePron they_Pron) already_Adv)
-
-DemoBul: те не бяха вече
-
-DemoCat: no eren ja
-
-DemoDan: de var ikke allerede
-
-DemoEng: they weren't already
-
-DemoFin: he eivät olleet jo
-
-DemoFre: ils n' étaient pas déjà
-
-DemoGer: sie waren nicht schon
-
-DemoIta: non erano già
-
-DemoNor: de var ikke allerede
-
-DemoRus: они не были уже
-
-DemoSpa: no eran ya
-
-DemoSwe: de var inte redan
-
- Demo: UseCl TCond AAnter PNeg (PredAP (AdvNP (AdvNP somebody_NP there7from_Adv) there_Adv) (ComparA bad_A (DetArtSg DefArt (UseN oil_N))))
-
-DemoBul: някой от там там не би бил по - лош от олиото
-
-DemoCat: algú d'allà allà no hauria estat pitjor que l' oli
-
-DemoDan: nogen derfra der ville ikke have været dårligere end olien
-
-DemoEng: somebody from there there wouldn't have been worse than the oil
-
-DemoFin: joku sieltä siellä ei olisi ollut pahempi kuin öljy
-
-DemoFre: quelqu'un de là là n' aurait pas été pire que l' huile
-
-DemoGer: jemand daher da würde nicht schlechter als das Öl gewesen sein
-
-DemoIta: qualcuno di là là non sarebbe stato peggio che l' olio
-
-DemoNor: noen derfra der ville ikke ha vært dårligere enn oljen
-
-DemoRus: кто-то оттуда там не
-
-DemoSpa: algún de allá allí no habría sido peor que el aceite
-
-DemoSwe: någon därifrån där skulle inte ha varit sämre än oljan
-
- Demo: UseCl TFut AAnter PPos (PredAP (AdvNP (DetArtSg DefArt (UseN meat_N)) there7from_Adv) (ComplA2 married_A2 (UsePron youPl_Pron)))
-
-DemoBul: месото от там ще е било женено за вас
-
-DemoCat: la carn d'allà haurà estat casata a vosaltres
-
-DemoDan: kødet derfra vil have været gift med jer
-
-DemoEng: the meat from there will have been married to you
-
-DemoFin: liha sieltä on ollut avioitunut teidän kanssa
-
-DemoFre: la viande de là aura été mariée à vous
-
-DemoGer: das Fleisch daher wird verheiratet mit euch gewesen sein
-
-DemoIta: la carne di là sarà stata sposata a voi
-
-DemoNor: kjøttet derfra vil ha vært gift med dere
-
-DemoRus: мясо оттуда будет замужем за вами
-
-DemoSpa: la carne de allá habrá sido casada a vosotros
-
-DemoSwe: köttet därifrån ska ha varit gift med er
-
- Demo: UseCl TCond AAnter PNeg (PredV2 (DetArtPl DefArt (UseN2 father_N2)) suck_V2 (AdvNP (UsePron youPol_Pron) somewhere_Adv))
-
-DemoBul: бащите не биха сукали вас някъде
-
-DemoCat: els pares no haurien xuclat vosté a algun lloc
-
-DemoDan: fædrene ville ikke have suttet Dere et eller annet sted
-
-DemoEng: the fathers wouldn't have sucked you somewhere
-
-DemoFin: isät eivät olisi imeneet teitä jossain
-
-DemoFre: les pères n' auraient pas sucé vous quelque part
-
-DemoGer: die Väter würden Sie irgendwo nicht gesaugt haben
-
-DemoIta: i padri non avrebbero succhiato Lei qualche parte
-
-DemoNor: fedrene ville ikke ha sugd Dere et eller annet sted
-
-DemoRus: отцы не сосали бы вас где-нибудь
-
-DemoSpa: los padres no habrían chupado usted en ninguna parte
-
-DemoSwe: fäderna skulle inte ha sugit er någonstans
-
- Demo: UseCl TFut AAnter PNeg (PredAdv (DetArtPl IndefArt (UseN hat_N)) there7from_Adv)
-
-DemoBul: шапки няма да са били от там
-
-DemoCat: uns barrets no hauran estat d'allà
-
-DemoDan: hatte vil ikke have været derfra
-
-DemoEng: hats won't have been from there
-
-DemoFin: hattuja ei ole ollut sieltä
-
-DemoFre: des chapeaux n' auront pas été de là
-
-DemoGer: Hüte werden nicht daher gewesen sein
-
-DemoIta: capelli non saranno stati di lÃ
-
-DemoNor: hatter vil ikke ha vært derfra
-
-DemoRus: шляпы не будут оттуда
-
-DemoSpa: unos sombreros no habrán sido de allá
-
-DemoSwe: hattar ska inte ha varit därifrån
-
-
diff --git a/deprecated/old-lib/resource/doc/synopsis-browse.txt b/deprecated/old-lib/resource/doc/synopsis-browse.txt
deleted file mode 100644
index 4d26fc600..000000000
--- a/deprecated/old-lib/resource/doc/synopsis-browse.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-=Browsing the libraries with GF commands=
-
-**New**: Browsing by syntax editor
-[directly on the web ../../../demos/resource-api/editor.html].
-
-All of the following assume
-```
- cd $GF_LIB_PATH
-```
-To try out inflection paradigms:
-```
- > i -path=alltenses -retain alltenses/ParadigmsGer.gfo
- > cc mkN "Farbe"
-```
-To try out overloaded syntax, test lexicon, and inflection paradigms:
-```
- > i -path=alltenses -retain alltenses/TryGer.gfo
- > cc mkCl (mkNP this_Quant (mkN "Farbe")) (mkA "dunkel")
-```
-% To look for a syntax tree in the overload API by parsing:
-% ```
-% > i -path=alltenses alltenses/OverLangEng.gf
-% > p -cat=S -overload "this grammar is too big"
-% ```
-% To view linearizations in all languages by parsing from English:
-% ```
-% > i alltenses/langs.gfcm
-% > p -cat=S -lang=LangEng "this grammar is too big" | tb
-% ```
-
diff --git a/deprecated/old-lib/resource/doc/synopsis-example.txt b/deprecated/old-lib/resource/doc/synopsis-example.txt
deleted file mode 100644
index 8c992339e..000000000
--- a/deprecated/old-lib/resource/doc/synopsis-example.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-
-The standard way of building an application has the following modules.
-
-An abstract syntax:
-```
- abstract Music = {
- cat
- Kind,
- Property ;
- fun
- PropKind : Kind -> Property -> Kind ;
- Song : Kind ;
- American : Property ;
- }
-```
-A domain lexicon interface:
-```
- interface LexMusic = open Cat in {
- oper
- song_N : N ;
- american_A : A ;
- }
-```
-A functor on ``Syntax`` and the domain lexicon interface:
-```
- incomplete concrete MusicI of Music = open Syntax, MusicLex in {
- lincat
- Kind = CN ;
- Property = AP ;
- lin
- PropKind k p = mkCN p k ;
- Song = mkCN song_N ;
- American = mkAP american_A ;
- }
-```
-For each language, an instance of the domain lexicon:
-```
- instance LexMusicGer of LexMusic = CatGer ** open ParadigmsGer in {
- oper
- song_N = mkN "Lied" "Lieder" neuter ;
- american_A = mkA "amerikanisch" ;
- }
-```
-For each language, an instantiation of the functor:
-```
- --# -path=.:present:prelude
-
- concrete MusicGer of Music = MusicI with
- (Syntax = SyntaxGer),
- (LexMusic = LexMusicGer) ;
-```
diff --git a/deprecated/old-lib/resource/doc/synopsis-intro.txt b/deprecated/old-lib/resource/doc/synopsis-intro.txt
deleted file mode 100644
index 5a473d241..000000000
--- a/deprecated/old-lib/resource/doc/synopsis-intro.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-=Introduction=
-
-This document contains the most important parts of the GF Resource Grammar API.
-It has been machine-generated from the source files; each chapter gives a link
-to the relevant source files, which give more information. Some of the files have
-not yet been prepared so that the machine generated documentation has the right
-format.
-
-Since the character encoding is UTF-8 for Russian and Latin-1 for other
-languages, you
-may have to change the encoding preference of your browser when reading different
-parts of the document.
-
-The second-last chapter gives instructions on how to "browse" the library by
-loading the grammars into the ``gf`` command editor.
-
-**New**: Browsing by syntax editor
-[directly on the web ../../../demos/resource-api/editor.html].
-
-The last chapter contains a brief example of how application grammars can
-import resource modules. At the same time, it illustrates a "design pattern" for
-using the resource API to build functor-based applications
-
diff --git a/deprecated/old-lib/resource/doc/synopsis.html b/deprecated/old-lib/resource/doc/synopsis.html
deleted file mode 100644
index 0dd6c7b73..000000000
--- a/deprecated/old-lib/resource/doc/synopsis.html
+++ /dev/null
@@ -1,6108 +0,0 @@
-
-
-
-
-GF Resource Grammar Library: Synopsis
-
-B. Bringert and A. Ranta
-
-
-
-
-
-
-
-
-
-
-
-Introduction
-gf command editor.
-Categories
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/abstract/Common.gf
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/abstract/Cat.gf
-A hierarchic view
-
-
-
-
-
-
-
-
Paradigms modules.
-Explanations
-
-
-
-
-
-
-Category
-Explanation
-Example
-
-
-A
-one-place adjective
-warm
-
-
-A2
-two-place adjective
-divisible
-
-
-AP
-adjectival phrase
-very warm
-
-
-AdA
-adjective-modifying adverb
-very
-
-
-AdN
-numeral-modifying adverb
-more than
-
-
-AdV
-adverb directly attached to verb
-always
-
-
-Adv
-verb-phrase-modifying adverb
-in the house
-
-
-Ant
-anteriority
-simultaneous, anterior
-
-
-Art
-article
-the
-
-
-CAdv
-comparative adverb
-more
-
-
-CN
-common noun (without determiner)
-red house
-
-
-Card
-cardinal number
-seven
-
-
-Cl
-declarative clause, with all tenses
-she looks at this
-
-
-Comp
-complement of copula, such as AP
-very warm
-
-
-Conj
-conjunction
-and
-
-
-Det
-determiner phrase
-those seven
-
-
-Digits
-cardinal or ordinal in digits
-1,000/1,000th
-
-
-IAdv
-interrogative adverb
-why
-
-
-IComp
-interrogative complement of copula
-where
-
-
-IDet
-interrogative determiner
-how many
-
-
-IP
-interrogative pronoun
-who
-
-
-Imp
-imperative
-look at this
-
-
-N
-common noun
-house
-
-
-N2
-relational noun
-son
-
-
-N3
-three-place relational noun
-connection
-
-
-NP
-noun phrase (subject or object)
-the red house
-
-
-Num
-number determining element
-seven
-
-
-Numeral
-cardinal or ordinal in words
-five/fifth
-
-
-Ord
-ordinal number (used in Det)
-seventh
-
-
-PConj
-phrase-beginning conjunction
-therefore
-
-
-PN
-proper name
-Paris
-
-
-Phr
-phrase in a text
-but be quiet please
-
-
-Pol
-polarity
-positive, negative
-
-
-Predet
-predeterminer (prefixed Quant)
-all
-
-
-Prep
-preposition, or just case
-in
-
-
-Pron
-personal pronoun
-she
-
-
-QCl
-question clause, with all tenses
-why does she walk
-
-
-QS
-question
-where did she live
-
-
-Quant
-quantifier ('nucleus' of Det)
-this/these
-
-
-RCl
-relative clause, with all tenses
-in which she lives
-
-
-RP
-relative pronoun
-in which
-
-
-RS
-relative
-in which she lived
-
-
-S
-declarative sentence
-she lived here
-
-
-SC
-embedded sentence or question
-that it rains
-
-
-Subj
-subjunction
-if
-
-
-Tense
-tense
-present, past, future
-
-
-Text
-text consisting of several phrases
-He is here. Why?
-
-
-Utt
-sentence, question, word...
-be quiet
-
-
-V
-one-place verb
-sleep
-
-
-V2
-two-place verb
-love
-
-
-V2A
-verb with NP and AP complement
-paint
-
-
-V2Q
-verb with NP and Q complement
-ask
-
-
-V2S
-verb with NP and S complement
-tell
-
-
-V2V
-verb with NP and V complement
-cause
-
-
-V3
-three-place verb
-show
-
-
-VA
-adjective-complement verb
-look
-
-
-VP
-verb phrase
-is very warm
-
-
-VPSlash
-verb phrase missing complement
-give to John
-
-
-VQ
-question-complement verb
-wonder
-
-
-VS
-sentence-complement verb
-claim
-
-
-VV
-verb-phrase-complement verb
-want
-
-
-Voc
-vocative or "please"
-my darling
-Syntax Rules and Structural Words
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/api/Constructors.gf
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/abstract/Structural.gf
-A - one-place adjective
-A2 - two-place adjective
-AP - adjectival phrase
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkAPA
--> APold
-
-
-
-mkAPA
--> NP -> APolder than John
-
-
-
-mkAPA2
--> NP -> APmarried to her
-
-
-
-mkAPA2
--> APmarried to myself
-
-
-
-mkAPAP
--> S -> APprobable that John walks
-
-
-
-mkAPAP
--> QS -> APuncertain if John walks
-
-
-
-mkAPAP
--> VP -> APready to go
-
-
-
-mkAPAdA
--> A -> APvery old
-
-
-
-mkAPAdA
--> AP -> APvery very old
-
-
-
-mkAPConj
--> AP -> AP -> APold and big
-
-
-
-mkAPConj
--> ListAP -> APold, big, and warm
-AdA - adjective-modifying adverb
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-almost_AdAAdA
-almost
-
-
-
-quite_AdvAdA
-quite
-
-
-
-so_AdAAdA
-so
-
-
-
-too_AdAAdA
-too
-
-
-
-very_AdAAdA
-very
-AdN - numeral-modifying adverb
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-almost_AdNAdN
-almost
-
-
-
-mkAdNCAdv
--> AdNmore than
-AdV - adverb directly attached to verb
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-always_AdVAdV
-always
-Adv - verb-phrase-modifying adverb
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-everywhere_AdvAdv
-everywhere
-
-
-
-here7from_AdvAdv
-from here
-
-
-
-here7to_AdvAdv
-to here
-
-
-
-here_AdvAdv
-here
-
-
-
-mkAdvA
--> Advwarmly
-
-
-
-mkAdvPrep
--> NP -> Advwith John
-
-
-
-mkAdvSubj
--> S -> Advwhen John walks
-
-
-
-mkAdvCAdv
--> A -> NP -> Advmore warmly than John
-
-
-
-mkAdvCAdv
--> A -> S -> Advmore warmly than John walks
-
-
-
-mkAdvAdA
--> Adv -> Advvery warmly
-
-
-
-mkAdvConj
--> Adv -> Adv -> Advhere and now
-
-
-
-mkAdvConj
--> ListAdv -> Advwith John, here and now
-
-
-
-somewhere_AdvAdv
-somewhere
-
-
-
-there7from_AdvAdv
-from there
-
-
-
-there7to_AdvAdv
-to there
-
-
-
-there_AdvAdv
-there
-Ant - anteriority
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-anteriorAntAnt
-(John has walked) --# notpresent
-
-
-
-simultaneousAntAnt
-(John walks) [default]
-Art - article
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-a_ArtArt
-a
-
-
-
-the_ArtArt
-the
-CAdv - comparative adverb
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-less_CAdvCAdv
-less
-
-
-
-more_CAdvCAdv
-more
-CN - common noun (without determiner)
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkCNN
--> CNhouse
-
-
-
-mkCNN2
--> NP -> CNmother of John
-
-
-
-mkCNN3
--> NP -> NP -> CNdistance from this city to Paris
-
-
-
-mkCNN2
--> CNson
-
-
-
-mkCNN3
--> CNflight
-
-
-
-mkCNA
--> N -> CNbig house
-
-
-
-mkCNA
--> CN -> CNbig blue house
-
-
-
-mkCNAP
--> N -> CNvery big house
-
-
-
-mkCNAP
--> CN -> CNvery big blue house
-
-
-
-mkCNN
--> RS -> CNhouse that John loves
-
-
-
-mkCNCN
--> RS -> CNbig house that John loves
-
-
-
-mkCNN
--> Adv -> CNhouse in the city
-
-
-
-mkCNCN
--> Adv -> CNbig house in the city
-
-
-
-mkCNCN
--> S -> CNrule that John walks
-
-
-
-mkCNCN
--> QS -> CNquestion if John walks
-
-
-
-mkCNCN
--> VP -> CNreason to walk
-
-
-
-mkCNN
--> NP -> CNking John
-
-
-
-mkCNCN
--> NP -> CNold king John
-Card - cardinal number
-Cl - declarative clause, with all tenses
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-genericClVP
--> Clone walks
-
-
-
-mkClNP
--> V -> ClJohn walks
-
-
-
-mkClNP
--> V2 -> NP -> ClJohn loves her
-
-
-
-mkClNP
--> V3 -> NP -> NP -> ClJohn sends it to her
-
-
-
-mkClNP
--> VV -> VP -> ClJohn wants to walk
-
-
-
-mkClNP
--> VS -> S -> ClJohn says that it is good
-
-
-
-mkClNP
--> VQ -> QS -> ClJohn wonders if it is good
-
-
-
-mkClNP
--> VA -> AP -> ClJohn becomes old
-
-
-
-mkClNP
--> V2A -> NP -> AP -> ClJohn paints it red
-
-
-
-mkClNP
--> V2S -> NP -> S -> ClJohn tells her that we are here
-
-
-
-mkClNP
--> V2Q -> NP -> QS -> ClJohn asks her who is here
-
-
-
-mkClNP
--> V2V -> NP -> VP -> ClJohn forces us to sleep
-
-
-
-mkClNP
--> A -> ClJohn is old
-
-
-
-mkClNP
--> A -> NP -> ClJohn is older than her
-
-
-
-mkClNP
--> A2 -> NP -> ClJohn is married to her
-
-
-
-mkClNP
--> AP -> ClJohn is very old
-
-
-
-mkClNP
--> N -> ClJohn is a man
-
-
-
-mkClNP
--> CN -> ClJohn is an old man
-
-
-
-mkClNP
--> NP -> ClJohn is the man
-
-
-
-mkClNP
--> Adv -> ClJohn is here
-
-
-
-mkClNP
--> VP -> ClJohn walks here
-
-
-
-mkClV
--> Clit rains
-
-
-
-mkClVP
--> Clit is raining
-
-
-
-mkClN
--> Clthere is a house
-
-
-
-mkClCN
--> Clthere is an old houses
-
-
-
-mkClNP
--> Clthere are five houses
-
-
-
-mkClNP
--> RS -> Clit is John that walks
-
-
-
-mkClAdv
--> S -> Clit is here John walks
-ClSlash
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkClSlashNP
--> V2 -> ClSlash(whom) John loves
-
-
-
-mkClSlashNP
--> VV -> V2 -> ClSlash(whom) John wants to see
-
-
-
-mkClSlashCl
--> Prep -> ClSlash(with whom) John walks
-
-
-
-mkClSlashClSlash
--> Adv -> ClSlash(whom) John loves today
-Comp - complement of copula, such as AP
-Conj - conjunction
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-and_ConjConj
-and
-
-
-
-both7and_DConjConj
-both...and
-
-
-
-either7or_DConjConj
-either...or
-
-
-
-or_ConjConj
-or
-Det - determiner phrase
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-every_DetDet
-every
-
-
-
-few_DetDet
-few
-
-
-
-many_DetDet
-many
-
-
-
-mkDetQuant
--> Detthis
-
-
-
-mkDetQuant
--> (Ord) -> Detthis first
-
-
-
-mkDetQuant
--> Num -> Detthese
-
-
-
-mkDetQuant
--> Num -> (Ord) -> Detthese five best
-
-
-
-mkDetQuant
--> Detthis
-
-
-
-mkDetQuant
--> Num -> Detthese five
-
-
-
-mkDetCard
--> Detalmost twenty
-
-
-
-mkDetNumeral
--> Detfive
-
-
-
-mkDetDigits
--> Det51
-
-
-
-mkDetPron
--> Detmy (house)
-
-
-
-mkDetPron
--> Num -> Detmy (houses)
-
-
-
-much_DetDet
-much
-
-
-
-somePl_DetDet
-somePl
-
-
-
-someSg_DetDet
-someSg
-Dig
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-n0_DigDig
-0
-
-
-
-n1_DigDig
-1
-
-
-
-n2_DigDig
-2
-
-
-
-n3_DigDig
-3
-
-
-
-n4_DigDig
-4
-
-
-
-n5_DigDig
-5
-
-
-
-n6_DigDig
-6
-
-
-
-n7_DigDig
-7
-
-
-
-n8_DigDig
-8
-
-
-
-n9_DigDig
-9
-Digits - cardinal or ordinal in digits
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkDigitsDig
--> Digits8
-
-
-
-mkDigitsDig
--> Digits -> Digits876
-
-
-
-n1000_DigitsDigits
-1,000
-
-
-
-n100_DigitsDigits
-100
-
-
-
-n10_DigitsDigits
-10
-
-
-
-n1_DigitsDigits
-1
-
-
-
-n20_DigitsDigits
-20
-
-
-
-n2_DigitsDigits
-2
-
-
-
-n3_DigitsDigits
-3
-
-
-
-n4_DigitsDigits
-4
-
-
-
-n5_DigitsDigits
-5
-
-
-
-n6_DigitsDigits
-6
-
-
-
-n7_DigitsDigits
-7
-
-
-
-n8_DigitsDigits
-8
-
-
-
-n9_DigitsDigits
-9
-IAdv - interrogative adverb
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-how_IAdvIAdv
-how
-
-
-
-mkIAdvPrep
--> IP -> IAdvin which city
-
-
-
-when_IAdvIAdv
-when
-
-
-
-where_IAdvIAdv
-where
-
-
-
-why_IAdvIAdv
-why
-IComp - interrogative complement of copula
-IDet - interrogative determiner
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-how8many_IDetIDet
-how8many
-IP - interrogative pronoun
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkIPIQuant
--> N -> IPwhich city
-
-
-
-mkIPIQuant
--> (Num) -> CN -> IPwhich five big cities
-
-
-
-mkIPIP
--> Adv -> IPwho in Paris
-
-
-
-whatPl_IPIP
-what (plural)
-
-
-
-whatSg_IPIP
-what (singular)
-
-
-
-whoPl_IPIP
-who (plural)
-
-
-
-whoSg_IPIP
-who (singular)
-IQuant
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-which_IQuantIQuant
-which
-Imp - imperative
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkImpV
--> Impgo
-
-
-
-mkImpV2
--> NP -> Imptake it
-
-
-
-mkImpVP
--> Impgo there now
-ImpForm
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-pluralImpFormImpForm
-(help yourselves)
-
-
-
-politeImpFormImpForm
-(help yourself) (polite singular)
-
-
-
-singularImpFormImpForm
-(help yourself) [default]
-ListAP
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkListAPAP
--> AP -> ListAPold, big
-
-
-
-mkListAPAP
--> ListAP -> ListAPold, big, warm
-ListAdv
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkListAdvAdv
--> Adv -> ListAdvhere, now
-
-
-
-mkListAdvAdv
--> ListAdv -> ListAdvto me, here, now
-ListNP
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkListNPNP
--> NP -> ListNPJohn, I
-
-
-
-mkListNPNP
--> ListNP -> ListNPJohn, I, that
-ListS
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkListSS
--> S -> ListShe walks, I run
-
-
-
-mkListSS
--> ListS -> ListSJohn walks, I run, you sleep
-N - common noun
-N2 - relational noun
-N3 - three-place relational noun
-NP - noun phrase (subject or object)
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-everybody_NPNP
-everybody
-
-
-
-everything_NPNP
-everything
-
-
-
-mkNPArt N
--> NPthe man
-
-
-
-mkNPArt
--> (Num) -> CN -> NPthe five old men
-
-
-
-mkNPQuant
--> N -> NPthis men
-
-
-
-mkNPQuant
--> (Num) -> CN -> NPthese five old men
-
-
-
-mkNPDet
--> N -> NPthe first man
-
-
-
-mkNPDet
--> CN -> NPthe first old man
-
-
-
-mkNPNumeral
--> N -> NPtwenty men
-
-
-
-mkNPNumeral
--> CN -> NPtwenty old men
-
-
-
-mkNPDigits
--> N -> NP45 men
-
-
-
-mkNPDigits
--> CN -> NP45 old men
-
-
-
-mkNPCard
--> N -> NPalmost twenty men
-
-
-
-mkNPCard
--> CN -> NPalmost twenty old men
-
-
-
-mkNPPron
--> N -> NPmy man
-
-
-
-mkNPPron
--> CN -> NPmy old man
-
-
-
-mkNPPN
--> NPJohn
-
-
-
-mkNPPron
--> NPhe
-
-
-
-mkNPQuant
--> NPthis
-
-
-
-mkNPDet
--> NPthese five
-
-
-
-mkNPN
--> NPbeer
-
-
-
-mkNPCN
--> NPbeer
-
-
-
-mkNPPredet
--> NP -> NPonly John
-
-
-
-mkNPNP
--> V2 -> NPJohn killed
-
-
-
-mkNPNP
--> Adv -> NPJohn in Paris
-
-
-
-mkNPConj
--> NP -> NP -> NPJohn and I
-
-
-
-mkNPConj
--> ListNP -> NPJohn, I, and that
-
-
-
-somebody_NPNP
-somebody
-
-
-
-something_NPNP
-something
-Num - number determining element
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkNumNumeral
--> Numtwenty
-
-
-
-mkNumDigits
--> Num51
-
-
-
-mkNumAdN
--> Num -> Numalmost ten
-
-
-
-plNumNum
-plural
-
-
-
-sgNumNum
-singular
-Numeral - cardinal or ordinal in words
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-n1000_NumeralNumeral
-thousand
-
-
-
-n100_NumeralNumeral
-hundred
-
-
-
-n10_NumeralNumeral
-ten
-
-
-
-n1_NumeralNumeral
-one
-
-
-
-n20_NumeralNumeral
-twenty
-
-
-
-n2_NumeralNumeral
-two
-
-
-
-n3_NumeralNumeral
-three
-
-
-
-n4_NumeralNumeral
-four
-
-
-
-n5_NumeralNumeral
-five
-
-
-
-n6_NumeralNumeral
-six
-
-
-
-n7_NumeralNumeral
-seven
-
-
-
-n8_NumeralNumeral
-eight
-
-
-
-n9_NumeralNumeral
-nine
-Ord - ordinal number (used in Det)
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkOrdNumeral
--> Ordtwentieth
-
-
-
-mkOrdDigits
--> Ord51st
-
-
-
-mkOrdA
--> Ordbest
-PConj - phrase-beginning conjunction
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-but_PConjPConj
-but
-
-
-
-mkPConjConj
--> PConjand
-
-
-
-otherwise_PConjPConj
-otherwise
-
-
-
-therefore_PConjPConj
-therefore
-PN - proper name
-Phr - phrase in a text
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkPhrUtt
--> Phrwhy
-
-
-
-mkPhr(PConj)
--> Utt -> (Voc) -> Phrbut why John
-
-
-
-mkPhrS
--> PhrJohn walked
-
-
-
-mkPhrCl
--> PhrJohn walks
-
-
-
-mkPhrQS
--> Phrdid John walk
-
-
-
-mkPhrImp
--> Phrwalk
-Pol - polarity
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-negativePolPol
-(John doesn't walk)
-
-
-
-positivePolPol
-(John walks) [default]
-Predet - predeterminer (prefixed Quant)
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-all_PredetPredet
-all
-
-
-
-most_PredetPredet
-most
-
-
-
-only_PredetPredet
-only
-Prep - preposition, or just case
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-above_PrepPrep
-above
-
-
-
-after_PrepPrep
-after
-
-
-
-before_PrepPrep
-before
-
-
-
-behind_PrepPrep
-behind
-
-
-
-between_PrepPrep
-between
-
-
-
-by8agent_PrepPrep
-by (agent)
-
-
-
-by8means_PrepPrep
-by (means of)
-
-
-
-during_PrepPrep
-during
-
-
-
-for_PrepPrep
-for
-
-
-
-from_PrepPrep
-from
-
-
-
-in8front_PrepPrep
-in front of
-
-
-
-in_PrepPrep
-in
-
-
-
-on_PrepPrep
-on
-
-
-
-part_PrepPrep
-part
-
-
-
-possess_PrepPrep
-of (possessive)
-
-
-
-through_PrepPrep
-through
-
-
-
-to_PrepPrep
-to
-
-
-
-under_PrepPrep
-under
-
-
-
-with_PrepPrep
-with
-
-
-
-without_PrepPrep
-without
-Pron - personal pronoun
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-he_PronPron
-he
-
-
-
-i_PronPron
-i
-
-
-
-it_PronPron
-it
-
-
-
-she_PronPron
-she
-
-
-
-they_PronPron
-they
-
-
-
-we_PronPron
-we
-
-
-
-youPl_PronPron
-you (plural)
-
-
-
-youPol_PronPron
-you (polite)
-
-
-
-youSg_PronPron
-you (singular)
-Punct
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-exclMarkPunctPunct
-!
-
-
-
-fullStopPunctPunct
-.
-
-
-
-questMarkPunctPunct
-?
-QCl - question clause, with all tenses
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkQClCl
--> QCldoes John walk
-
-
-
-mkQClIP
--> VP -> QClwho walks
-
-
-
-mkQClIP
--> NP -> V2 -> QClwhom does John love
-
-
-
-mkQClIP
--> ClSlash -> QClwhom does John love today
-
-
-
-mkQClIAdv
--> Cl -> QClwhy does John walk
-
-
-
-mkQClPrep
--> IP -> Cl -> QClwith who does John walk
-
-
-
-mkQClIAdv
--> NP -> QClwhere is John
-
-
-
-mkQClIP
--> QClwhat is there
-QS - question
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkQSQCl
--> QSwho walks
-
-
-
-mkQS(Tense)
--> (Ant) -> (Pol) -> QCl -> QSwho wouldn't have walked
-
-
-
-mkQSCl
--> QSdoes John walk
-Quant - quantifier ('nucleus' of Det)
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-that_QuantQuant
-that
-
-
-
-this_QuantQuant
-this
-RCl - relative clause, with all tenses
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkRClRP
--> VP -> RClthat walk
-
-
-
-mkRClRP
--> NP -> V2 -> RClwhich John loves
-
-
-
-mkRClRP
--> ClSlash -> RClwhich John loves today
-
-
-
-mkRClCl
--> RClsuch that John loves her
-RP - relative pronoun
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkRPPrep
--> NP -> RP -> RPall the houses in which
-
-
-
-which_RPRP
-which
-RS - relative
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkRSRCl
--> RSthat walk
-
-
-
-mkRS(Tense)
--> (Ant) -> (Pol) -> RCl -> RSthat wouldn't have walked
-S - declarative sentence
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkSCl
--> SJohn walks
-
-
-
-mkS(Tense)
--> (Ant) -> (Pol) -> Cl -> SJohn wouldn't have walked
-
-
-
-mkSConj
--> S -> S -> SJohn walks and I run
-
-
-
-mkSConj
--> ListS -> SJohn walks, I run and you sleep
-
-
-
-mkSAdv
--> S -> Stoday, John walks
-SC - embedded sentence or question
-Subj - subjunction
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-although_SubjSubj
-although
-
-
-
-because_SubjSubj
-because
-
-
-
-if_SubjSubj
-if
-
-
-
-when_SubjSubj
-when
-Tense - tense
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-conditionalTenseTense
-(John would walk) --# notpresent
-
-
-
-futureTenseTense
-(John will walk) --# notpresent
-
-
-
-pastTenseTense
-(John walked) --# notpresent
-
-
-
-presentTenseTense
-(John walks) [default]
-Text - text consisting of several phrases
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-emptyTextText
-(empty text)
-
-
-
-mkTextPhr
--> TextBut John walks.
-
-
-
-mkTextPhr
--> (Punct) -> (Text) -> TextJohn walks? Yes.
-
-
-
-mkTextUtt
--> TextJohn.
-
-
-
-mkTextS
--> TextJohn walked.
-
-
-
-mkTextCl
--> TextJohn walks.
-
-
-
-mkTextQS
--> TextDid John walk?
-
-
-
-mkTextImp
--> TextWalk!
-
-
-
-mkTextText
--> Text -> TextWhere? When? Here. Now!
-Utt - sentence, question, word...
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-lets_UttVP
--> Uttlet's walk
-
-
-
-mkUttS
--> UttJohn walked
-
-
-
-mkUttCl
--> UttJohn walks
-
-
-
-mkUttQS
--> Uttdid John walk
-
-
-
-mkUttImp
--> Uttlove yourself
-
-
-
-mkUtt(ImpForm)
--> (Pol) -> Imp -> Uttdon't love yourselves
-
-
-
-mkUttIP
--> Uttwho
-
-
-
-mkUttIAdv
--> Uttwhy
-
-
-
-mkUttNP
--> UttJohn
-
-
-
-mkUttAdv
--> Utthere
-
-
-
-mkUttVP
--> Uttto walk
-
-
-
-no_UttUtt
-no
-
-
-
-yes_UttUtt
-yes
-V - one-place verb
-V2 - two-place verb
-V2A - verb with NP and AP complement
-V2Q - verb with NP and Q complement
-V2S - verb with NP and S complement
-V2V - verb with NP and V complement
-V3 - three-place verb
-VA - adjective-complement verb
-VP - verb phrase
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkVPV
--> VPwalk
-
-
-
-mkVPV2
--> NP -> VPlove her
-
-
-
-mkVPV3
--> NP -> NP -> VPsend it to her
-
-
-
-mkVPVV
--> VP -> VPwant to walk
-
-
-
-mkVPVS
--> S -> VPknow that she walks
-
-
-
-mkVPVQ
--> QS -> VPask if she walks
-
-
-
-mkVPVA
--> AP -> VPbecome old
-
-
-
-mkVPV2A
--> NP -> AP -> VPpaint it red
-
-
-
-mkVPA
--> VPbe warm
-
-
-
-mkVPAP
--> VPbe very warm
-
-
-
-mkVPA
--> NP -> VPbe older than her
-
-
-
-mkVPA2
--> NP -> VPbe married to her
-
-
-
-mkVPN
--> VPbe a man
-
-
-
-mkVPCN
--> VPbe an old man
-
-
-
-mkVPNP
--> VPbe the man
-
-
-
-mkVPAdv
--> VPbe here
-
-
-
-mkVPVP
--> Adv -> VPsleep here
-
-
-
-mkVPAdV
--> VP -> VPalways sleep
-
-
-
-mkVPVPSlash
--> NP -> VPpaint it black
-
-
-
-mkVPVPSlash
--> VPpaint itself black
-
-
-
-passiveVPV2
--> VPbe loved
-
-
-
-passiveVPV2
--> NP -> VPbe loved by her
-
-
-
-progressiveVPVP
--> VPbe sleeping
-
-
-
-reflexiveVPV2
--> VPlove itself
-VPSlash - verb phrase missing complement
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkVPSlashV2
--> VPSlash(whom) (John) loves
-
-
-
-mkVPSlashV3
--> NP -> VPSlash(whom) (John) gives an apple
-
-
-
-mkVPSlashV2A
--> AP -> VPSlash(whom) (John) paints red
-
-
-
-mkVPSlashV2Q
--> QS -> VPSlash(whom) (John) asks who sleeps
-
-
-
-mkVPSlashV2S
--> S -> VPSlash(whom) (John) tells that we sleep
-
-
-
-mkVPSlashV2V
--> VP -> VPSlash(whom) (John) forces to sleep
-VQ - question-complement verb
-VS - sentence-complement verb
-VV - verb-phrase-complement verb
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-can8know_VVVV
-can (capacity)
-
-
-
-can_VVVV
-can (possibility)
-
-
-
-must_VVVV
-must
-
-
-
-want_VVVV
-want
-Voc - vocative or "please"
-
-
-
-
-
-
-Function
-Type
-Example
-
-
-
-mkVocNP
--> VocJohn
-
-
-
-please_VocVoc
-please
-Lexical Paradigms
-
-Paradigms for Bulgarian
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/bulgarian/ParadigmsBul.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-mkN001
-Str -> N
-
-
-mkN002
-Str -> N
-
-
-mkN002a
-Str -> N
-
-
-mkN003
-Str -> N
-
-
-mkN004
-Str -> N
-
-
-mkN005
-Str -> N
-
-
-mkN006
-Str -> N
-
-
-mkN007
-Str -> N
-
-
-mkN007b
-Str -> N
-
-
-mkN007a
-Str -> N
-
-
-mkN008
-Str -> N
-
-
-mkN008a
-Str -> N
-
-
-mkN009
-Str -> N
-
-
-mkN009a
-Str -> N
-
-
-mkN010
-Str -> N
-
-
-mkN011
-Str -> N
-
-
-mkN012
-Str -> N
-
-
-mkN013
-Str -> N
-
-
-mkN014
-Str -> N
-
-
-mkN014a
-Str -> N
-
-
-mkN015
-Str -> N
-
-
-mkN016
-Str -> N
-
-
-mkN017
-Str -> N
-
-
-mkN018
-Str -> N
-
-
-mkN018a
-Str -> N
-
-
-mkN019
-Str -> N
-
-
-mkN019a
-Str -> N
-
-
-mkN020
-Str -> N
-
-
-mkN021
-Str -> N
-
-
-mkN022
-Str -> N
-
-
-mkN023
-Str -> N
-
-
-mkN024a
-Str -> N
-
-
-mkN024
-Str -> N
-
-
-mkN025
-Str -> N
-
-
-mkN026
-Str -> N
-
-
-mkN027
-Str -> N
-
-
-mkN028
-Str -> N
-
-
-mkN028a
-Str -> N
-
-
-mkN029
-Str -> N
-
-
-mkN030
-Str -> N
-
-
-mkN031
-Str -> N
-
-
-mkN031a
-Str -> N
-
-
-mkN032
-Str -> N
-
-
-mkN032a
-Str -> N
-
-
-mkN033
-Str -> N
-
-
-mkN034
-Str -> N
-
-
-mkN035
-Str -> N
-
-
-mkN035a
-Str -> N
-
-
-mkN036
-Str -> N
-
-
-mkN037
-Str -> N
-
-
-mkN038
-Str -> N
-
-
-mkN039
-Str -> N
-
-
-mkN040
-Str -> N
-
-
-mkN040a
-Str -> N
-
-
-mkN041
-Str -> N
-
-
-mkN041a
-Str -> N
-
-
-mkN041b
-Str -> N
-
-
-mkN042
-Str -> N
-
-
-mkN043
-Str -> N
-
-
-mkN043a
-Str -> N
-
-
-mkN044
-Str -> N
-
-
-mkN045
-Str -> N
-
-
-mkN046
-Str -> N
-
-
-mkN047
-Str -> N
-
-
-mkN048
-Str -> N
-
-
-mkN049
-Str -> N
-
-
-mkN050
-Str -> N
-
-
-mkN051
-Str -> N
-
-
-mkN052
-Str -> N
-
-
-mkN052a
-Str -> N
-
-
-mkN053
-Str -> N
-
-
-mkN054
-Str -> N
-
-
-mkN055
-Str -> N
-
-
-mkN056
-Str -> N
-
-
-mkN057
-Str -> N
-
-
-mkN057a
-Str -> N
-
-
-mkN058
-Str -> N
-
-
-mkN059
-Str -> N
-
-
-mkN060
-Str -> N
-
-
-mkN061
-Str -> N
-
-
-mkN062
-Str -> N
-
-
-mkN063
-Str -> N
-
-
-mkN064
-Str -> N
-
-
-mkN065
-Str -> N
-
-
-mkN066
-Str -> N
-
-
-mkN067
-Str -> N
-
-
-mkN068
-Str -> N
-
-
-mkN069
-Str -> N
-
-
-mkN070
-Str -> N
-
-
-mkN071
-Str -> N
-
-
-mkN072
-Str -> N
-
-
-mkN073
-Str -> N
-
-
-mkN074
-Str -> N
-
-
-mkN075
-Str -> N
-
-
-mkA076
-Str -> A
-
-
-mkA077
-Str -> A
-
-
-mkA078
-Str -> A
-
-
-mkA079
-Str -> A
-
-
-mkA080
-Str -> A
-
-
-mkA081
-Str -> A
-
-
-mkA082
-Str -> A
-
-
-mkA082a
-Str -> A
-
-
-mkA083
-Str -> A
-
-
-mkA084
-Str -> A
-
-
-mkA084a
-Str -> A
-
-
-mkA085
-Str -> A
-
-
-mkA086
-Str -> A
-
-
-mkA087
-Str -> A
-
-
-mkA088
-Str -> A
-
-
-mkA089
-Str -> A
-
-
-mkA089a
-Str -> A
-
-
-mkV142
-Str -> VTable
-
-
-mkV143
-Str -> VTable
-
-
-mkV144
-Str -> VTable
-
-
-mkV145
-Str -> VTable
-
-
-mkV145a
-Str -> VTable
-
-
-mkV145b
-Str -> VTable
-
-
-mkV146
-Str -> VTable
-
-
-mkV146a
-Str -> VTable
-
-
-mkV147
-Str -> VTable
-
-
-mkV148
-Str -> VTable
-
-
-mkV149
-Str -> VTable
-
-
-mkV150
-Str -> VTable
-
-
-mkV150a
-Str -> VTable
-
-
-mkV151
-Str -> VTable
-
-
-mkV152
-Str -> VTable
-
-
-mkV152a
-Str -> VTable
-
-
-mkV153
-Str -> VTable
-
-
-mkV154
-Str -> VTable
-
-
-mkV155
-Str -> VTable
-
-
-mkV156
-Str -> VTable
-
-
-mkV157
-Str -> VTable
-
-
-mkV158
-Str -> VTable
-
-
-mkV159
-Str -> VTable
-
-
-mkV160
-Str -> VTable
-
-
-mkV160a
-Str -> VTable
-
-
-mkV161
-Str -> VTable
-
-
-mkV161a
-Str -> VTable
-
-
-mkV162
-Str -> VTable
-
-
-mkV163
-Str -> VTable
-
-
-mkV164
-Str -> VTable
-
-
-mkV165
-Str -> VTable
-
-
-mkV166
-Str -> VTable
-
-
-mkV167
-Str -> VTable
-
-
-mkV168
-Str -> VTable
-
-
-mkV169
-Str -> VTable
-
-
-mkV170
-Str -> VTable
-
-
-mkV171
-Str -> VTable
-
-
-mkV172
-Str -> VTable
-
-
-mkV173
-Str -> VTable
-
-
-mkV174
-Str -> VTable
-
-
-mkV175
-Str -> VTable
-
-
-mkV176
-Str -> VTable
-
-
-mkV177
-Str -> VTable
-
-
-mkV178
-Str -> VTable
-
-
-mkV179
-Str -> VTable
-
-
-mkV180
-Str -> VTable
-
-
-mkV181
-Str -> VTable
-
-
-mkV182
-Str -> VTable
-
-
-mkV183
-Str -> VTable
-
-
-mkV184
-Str -> VTable
-
-
-mkV185
-Str -> VTable
-
-
-mkV186
-Str -> VTable
-
-
-mkV187
-Str -> VTable
-
-
-adjAdvA
--> Str -> A =Paradigms for Danish
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/danish/ParadigmsDan.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-GenderType
-
-
-
-utrumGender
-
-
-
-neutrumGender
-
-
-
-NumberType
-
-
-
-singularNumber
-
-
-
-pluralNumber
-
-
-
-CaseType
-
-
-
-nominativeCase
-
-
-
-genitiveCase
-
-
-
-mkPrep
-Str -> Prep
-
-
-noPrepPrep
-
-
-
-mkN
-(bil : Str) -> N
-
-
-mkN
-(hus : Str) -> Gender -> N
-
-
-mkN
-(bil,bilen : Str) -> N
-
-
-mkN
-(bil,bilen,biler : Str) -> N
-
-
-mkN
-(dreng,drengen,drenge,drengene : Str) -> N
-
-
-mkN2N
--> Prep -> N2
-
-
-regN2
-Str -> Gender -> N2
-
-
-mkN3N
--> Prep -> Prep -> N3
-
-
-mkPN
-Str -> PN
-
-
-mkPN
-Str -> Gender -> PN
-
-
-mkPNN
--> PN
-
-
-mkA
-(fin : Str) -> A
-
-
-mkA
-(fin,fint : Str) -> A
-
-
-mkA
-(galen,galet,galne : Str) -> A
-
-
-mkA
-(stor,stort,store,storre,storst : Str) -> A
-
-
-mkAA
--> A
-
-
-mkA2A
--> Prep -> A2
-
-
-mkAdv
-Str -> Adv
-
-
-mkAdV
-Str -> AdV
-
-
-mkAdA
-Str -> AdA
-
-
-mkV
-(snakke : Str) -> V
-
-
-mkV
-(leve,levde : Str) -> V
-
-
-mkV
-(drikke, drakk, drukket : Str) -> V
-
-
-mkV
-(spise,spiser,spises,spiste,spist,spis : Str) -> V
-
-
-mkVV
--> Str -> V
-
-
-vaereVV
--> V
-
-
-depVV
--> V
-
-
-reflVV
--> V
-
-
-mkV2
-Str -> V2
-
-
-mkV2V
--> V2
-
-
-mkV2V
--> Prep -> V2
-
-
-mkV3V
--> Prep -> Prep -> V3
-
-
-dirV3V
--> Prep -> V3
-
-
-dirdirV3V
--> V3
-
-
-mkV0V
--> V0
-
-
-mkVSV
--> VS
-
-
-mkV2SV
--> Prep -> V2S
-
-
-mkVVV
--> VV
-
-
-mkV2VV
--> Prep -> Prep -> V2V
-
-
-mkVAV
--> VA
-
-
-mkV2AV
--> Prep -> V2A
-
-
-mkVQV
--> VQ
-
-
-mkV2QV
--> Prep -> V2Q
-
-
-mkASA
--> AS
-
-
-mkA2SA
--> Prep -> A2S
-
-
-mkAVA
--> AV
-
-
-mkA2VA
--> Prep -> A2V
-
-
-V0Type
-Paradigms for English
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/english/ParadigmsEng.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-GenderType
-
-
-
-humanGender
-
-
-
-nonhumanGender
-
-
-
-masculineGender
-
-
-
-feminineGender
-
-
-
-NumberType
-
-
-
-singularNumber
-
-
-
-pluralNumber
-
-
-
-CaseType
-
-
-
-nominativeCase
-
-
-
-genitiveCase
-
-
-
-mkN
-(flash : Str) -> N
-
-
-mkN
-(man,men : Str) -> N
-
-
-mkN
-(man,men,man's,men's : Str) -> N
-
-
-mkNGender
--> N -> N
-
-
-mkN
-Str -> N -> N
-
-
-mkN2N
--> Prep -> N2
-
-
-regN2
-Str -> N2
-
-
-mkN3N
--> Prep -> Prep -> N3
-
-
-mkPN
-Str -> PN
-
-
-mkPNN
--> PN
-
-
-mkA
-(happy : Str) -> A
-
-
-mkA
-(fat,fatter : Str) -> A
-
-
-mkA
-(good,better,best,well : Str) -> A
-
-
-compoundAA
--> A
-
-
-mkA2A
--> Prep -> A2
-
-
-mkAdv
-Str -> Adv
-
-
-mkAdV
-Str -> AdV
-
-
-mkAdA
-Str -> AdA
-
-
-mkPrep
-Str -> Prep
-
-
-noPrepPrep
-
-
-
-mkV
-(cry : Str) -> V
-
-
-mkV
-(stop, stopped : Str) -> V
-
-
-mkV
-(drink, drank, drunk : Str) -> V
-
-
-mkV
-(run, ran, run, running : Str) -> V
-
-
-mkV
-(go, goes, went, gone, going : Str) -> V
-
-
-partVV
--> Str -> V
-
-
-reflVV
--> V
-
-
-mkV2V
--> Prep -> V2
-
-
-mkV2V
--> V2
-
-
-mkV3V
--> Prep -> Prep -> V3
-
-
-dirV3V
--> Prep -> V3
-
-
-dirdirV3V
--> V3
-
-
-mkV0V
--> V0
-
-
-mkVSV
--> VS
-
-
-mkV2SV
--> Prep -> V2S
-
-
-mkVVV
--> VV
-
-
-mkV2VV
--> Prep -> Prep -> V2V
-
-
-mkVAV
--> VA
-
-
-mkV2AV
--> Prep -> V2A
-
-
-mkVQV
--> VQ
-
-
-mkV2QV
--> Prep -> V2Q
-
-
-mkASA
--> AS
-
-
-mkA2SA
--> Prep -> A2S
-
-
-mkAVA
--> AV
-
-
-mkA2VA
--> Prep -> A2V
-
-
-V0Type
-Paradigms for Finnish
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/finnish/ParadigmsFin.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-NumberType
-
-
-
-singularNumber
-
-
-
-pluralNumber
-
-
-
-CaseType
-
-
-
-nominativeCase
-
-
-
-genitiveCase
-
-
-
-partitiveCase
-
-
-
-translativeCase
-
-
-
-inessiveCase
-
-
-
-elativeCase
-
-
-
-illativeCase
-
-
-
-adessiveCase
-
-
-
-ablativeCase
-
-
-
-allativeCase
-
-
-
-prePrepCase
--> Str -> Prep
-
-
-postPrepCase
--> Str -> Prep
-
-
-postGenPrep
-Str -> Prep
-
-
-casePrepCase
--> Prep
-
-
-mkN
-(talo : Str) -> N
-
-
-mkN
-(savi,savia : Str) -> N
-
-
-mkN
-(vesi,veden,vesi : Str) -> N
-
-
-mkN
-(vesi,veden,vesi,vett : Str) -> N
-
-
-mkN
-(olo,olon,olona,oloa,oloon,olojen,oloja,oloina,oloissa,oloihin : Str) -> N
-
-
-mkN
-(pika : Str) -> (juna : N) -> N
-
-
-mkN
-(oma : N) -> (tunto : N) -> N
-
-
-mkN2N
--> N2
-
-
-mkN2N
--> Prep -> N2
-
-
-mkN3N
--> Prep -> Prep -> N3
-
-
-mkPN
-Str -> PN
-
-
-mkPNN
--> PN
-
-
-mkA
-Str -> A
-
-
-mkAN
--> A
-
-
-mkAN
--> (kivempaa,kivinta : Str) -> A
-
-
-mkA
-(hyva,parempi,paras : N) -> (hyvin,paremmin,parhaiten : Str) -> A
-
-
-mkA2A
--> Prep -> A2 = \a,p -> a ** {c2 = p lock_A2 = <>};
-
-
-mkV
-(huutaa : Str) -> V
-
-
-mkV
-(huutaa,huusi : Str) -> V
-
-
-mkV
-(huutaa,huudan,huusi : Str) -> V
-
-
-mkV
-(
-
-
-huusin,huusi,huusisi,huutanut,huudettu,huutanee
-Str) -> V
-
-
-caseVCase
--> V -> V
-
-
-vOllaV
-
-
-
-mkV2
-Str -> V2
-
-
-mkV2V
--> V2
-
-
-mkV2V
--> Case -> V2
-
-
-mkV2V
--> Prep -> V2
-
-
-mkV3V
--> Prep -> Prep -> V3
-
-
-dirV3V
--> Case -> V3
-
-
-dirdirV3V
--> V3
-
-
-mkV0V
--> V0
-
-
-mkVSV
--> VS
-
-
-mkV2SV
--> Prep -> V2S
-
-
-mkVVV
--> VV
-
-
-mkVVfV
--> InfForm -> VV
-
-
-mkV2VV
--> Prep -> V2V
-
-
-mkV2VfV
--> Prep -> InfForm -> V2V
-
-
-mkVAV
--> Prep -> VA
-
-
-mkV2AV
--> Prep -> Prep -> V2A
-
-
-mkVQV
--> VQ
-
-
-mkV2QV
--> Prep -> V2Q
-
-
-mkASA
--> AS
-
-
-mkA2SA
--> Prep -> A2S
-
-
-mkAVA
--> AV
-
-
-mkA2VA
--> Prep -> A2V
-
-
-V0Type
-Paradigms for French
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/french/ParadigmsFre.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-GenderType
-
-
-
-masculineGender
-
-
-
-feminineGender
-
-
-
-NumberType
-
-
-
-singularNumber
-
-
-
-pluralNumber
-
-
-
-accusativePrep
-
-
-
-genitivePrep
-
-
-
-dativePrep
-
-
-
-mkPrep
-Str -> Prep
-
-
-mkN
-(cheval : Str) -> N
-
-
-mkN
-(foie : Str) -> Gender -> N
-
-
-mkN
-(oeil,yeux : Str) -> Gender -> N
-
-
-mkNN
--> Str -> N
-
-
-mkN2N
--> Prep -> N2
-
-
-deN2N
--> N2
-
-
-aN2N
--> N2
-
-
-mkN3N
--> Prep -> Prep -> N3
-
-
-mkPN
-Str -> PN
-
-
-mkPN
-Str -> Gender -> PN
-
-
-mkA
-(cher : Str) -> A
-
-
-mkA
-(sec,seche : Str) -> A
-
-
-mkA
-(banal,banale,banaux,banalement : Str) -> A
-
-
-mkAA
--> A -> A
-
-
-prefixAA
--> A
-
-
-mkA2A
--> Prep -> A2
-
-
-mkAdv
-Str -> Adv
-
-
-mkAdV
-Str -> AdV
-
-
-mkAdA
-Str -> AdA
-
-
-mkV
-(finir : Str) -> V
-
-
-mkV
-(jeter,jette,jettera : Str) -> V
-
-
-mkVV2
--> V
-
-
-etreVV
--> V
-
-
-reflVV
--> V
-
-
-mkV2V
--> V2 = dirV2
-
-
-mkV2V
--> Prep -> V2 = mmkV2
-
-
-mkV3V
--> V3
-
-
-mkV3V
--> Prep -> V3
-
-
-mkV3V
--> Prep -> Prep -> V3
-
-
-mkV0V
--> V0
-
-
-mkVSV
--> VS
-
-
-mkV2SV
--> Prep -> V2S
-
-
-mkVVV
--> VV
-
-
-deVVV
--> VV
-
-
-aVVV
--> VV
-
-
-mkV2VV
--> Prep -> Prep -> V2V
-
-
-mkVAV
--> VA
-
-
-mkV2AV
--> Prep -> Prep -> V2A
-
-
-mkVQV
--> VQ
-
-
-mkV2QV
--> Prep -> V2Q
-
-
-mkASA
--> AS
-
-
-mkA2SA
--> Prep -> A2S
-
-
-mkAVA
--> Prep -> AV
-
-
-mkA2VA
--> Prep -> Prep -> A2V
-
-
-V0Type
-Paradigms for German
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/german/ParadigmsGer.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-GenderType
-
-
-
-masculineGender
-
-
-
-feminineGender
-
-
-
-neuterGender
-
-
-
-CaseType
-
-
-
-nominativeCase
-
-
-
-accusativeCase
-
-
-
-dativeCase
-
-
-
-genitiveCase
-
-
-
-NumberType
-
-
-
-singularNumber
-
-
-
-pluralNumber
-
-
-
-mkN
-(Stufe : Str) -> N
-
-
-mkN
-(Bild,Bilder : Str) -> Gender -> N
-
-
-mkN
-(x1,_,_,_,_,x6 : Str) -> Gender -> N
-
-
-mkN2
-Str -> N2
-
-
-mkN2N
--> N2
-
-
-mkN2N
--> Prep -> N2
-
-
-mkN3N
--> Prep -> Prep -> N3
-
-
-mkPN
-Str -> PN
-
-
-mkPN
-(nom,gen : Str) -> PN
-
-
-mkPN
-(nom,acc,dat,gen : Str) -> PN
-
-
-mkA
-Str -> A
-
-
-mkA
-(gut,besser,beste : Str) -> A
-
-
-invarA
-Str -> A
-
-
-mkA2A
--> Prep -> A2
-
-
-mkAdv
-Str -> Adv
-
-
-mkPrep
-Str -> Case -> Prep
-
-
-accPrepPrep
-
-
-
-datPrepPrep
-
-
-
-genPrepPrep
-
-
-
-von_PrepPrep
-
-
-
-zu_PrepPrep
-
-
-
-mkV
-(fhren : Str) -> V
-
-
-mkV
-(sehen,sieht,sah,she,gesehen : Str) -> V
-
-
-mkV
-(geben, gibt, gib, gab, gbe, gegeben : Str) -> V
-
-
-mkV
-Str -> V -> V
-
-
-no_geVV
--> V
-
-
-seinVV
--> V
-
-
-habenVV
--> V
-
-
-reflVV
--> Case -> V
-
-
-mkV2V
--> Prep -> V2
-
-
-mkV2V
--> V2
-
-
-mkV2V
--> Case -> V2
-
-
-mkV3V
--> Prep -> Prep -> V3
-
-
-dirV3V
--> Prep -> V3
-
-
-accdatV3V
--> V3
-
-
-mkV0V
--> V0
-
-
-mkVSV
--> VS
-
-
-mkV2SV
--> Prep -> V2S
-
-
-mkVVV
--> VV
-
-
-mkV2VV
--> Prep -> V2V
-
-
-mkVAV
--> VA
-
-
-mkV2AV
--> Prep -> V2A
-
-
-mkVQV
--> VQ
-
-
-mkV2QV
--> Prep -> V2Q
-
-
-mkASA
--> AS
-
-
-mkA2SA
--> Prep -> A2S
-
-
-mkAVA
--> AV
-
-
-mkA2VA
--> Prep -> A2V
-
-
-V0Type
-Paradigms for Italian
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/italian/ParadigmsIta.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-GenderType
-
-
-
-masculineGender
-
-
-
-feminineGender
-
-
-
-NumberType
-
-
-
-singularNumber
-
-
-
-pluralNumber
-
-
-
---PrepType
-
-
-
-accusativePrep
-
-
-
-genitivePrep
-
-
-
-dativePrep
-
-
-
-mkPrep
-Str -> Prep
-
-
-mkN
-(cane : Str) -> N
-
-
-mkN
-(carne : Str) -> Gender -> N
-
-
-mkN
-(uomo,uomini : Str) -> Gender -> N
-
-
-mkNN
--> Str -> N
-
-
-mkN2
-Str -> N2
-
-
-mkN2N
--> Prep -> N2
-
-
-mkN3N
--> Prep -> Prep -> N3
-
-
-mkPN
-Str -> PN
-
-
-mkPN
-Str -> Gender -> PN
-
-
-mkA
-(bianco : Str) -> A
-
-
-mkA
-(solo,sola,soli,sole,solamente : Str) -> A
-
-
-mkAA
--> A -> A
-
-
-prefixAA
--> A = prefA
-
-
-mkA2A
--> Prep -> A2
-
-
-mkAdv
-Str -> Adv
-
-
-mkAdV
-Str -> AdV
-
-
-mkAdA
-Str -> AdA
-
-
-mkV
-Str -> V
-
-
-mkVVerbo
--> V
-
-
-mkV
-(udire,odo,ode,udiamo,udiro,udii,udisti,udi,udirono,odi,udito : Str) -> V
-
-
-essereVV
--> V
-
-
-reflVV
--> V
-
-
-mkV2
-Str -> V2
-
-
-mkV2V
--> V2
-
-
-mkV2V
--> Prep -> V2
-
-
-v2VV2
--> V
-
-
-mkV3V
--> Prep -> Prep -> V3
-
-
-dirV3V
--> Prep -> V3
-
-
-dirdirV3V
--> V3
-
-
-mkV0V
--> V0
-
-
-mkVSV
--> VS
-
-
-mkV2SV
--> Prep -> V2S
-
-
-mkVVV
--> VV
-
-
-deVVV
--> VV
-
-
-aVVV
--> VV
-
-
-mkV2VV
--> Prep -> Prep -> V2V
-
-
-mkVAV
--> VA
-
-
-mkV2AV
--> Prep -> Prep -> V2A
-
-
-mkVQV
--> VQ
-
-
-mkV2QV
--> Prep -> V2Q
-
-
-mkASA
--> AS
-
-
-mkA2SA
--> Prep -> A2S
-
-
-mkAVA
--> Prep -> AV
-
-
-mkA2VA
--> Prep -> Prep -> A2V
-
-
-V0Type
-Paradigms for Norwegian
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/norwegian/ParadigmsNor.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-GenderType
-
-
-
-masculineGender
-
-
-
-feminineGender
-
-
-
-neutrumGender
-
-
-
-NumberType
-
-
-
-singularNumber
-
-
-
-pluralNumber
-
-
-
-CaseType
-
-
-
-nominativeCase
-
-
-
-genitiveCase
-
-
-
-mkPrep
-Str -> Prep
-
-
-noPrepPrep
-
-
-
-mkN
-Str -> N
-
-
-mkN
-Str -> Gender -> N
-
-
-mkN
-(bil,bilen : Str) -> N
-
-
-mkN
-(dreng,drengen,drenger,drengene : Str) -> N
-
-
-mkN2N
--> Prep -> N2
-
-
-regN2
-Str -> Gender -> N2
-
-
-mkN3N
--> Prep -> Prep -> N3
-
-
-mkPN
-Str -> PN
-
-
-mkPN
-Str -> Gender -> PN
-
-
-mkPNN
--> PN
-
-
-mkA
-(fin : Str) -> A
-
-
-mkA
-(fin,fint : Str) -> A
-
-
-mkA
-(galen,galet,galne : Str) -> A
-
-
-mkA
-(stor,stort,store,storre,storst : Str) -> A
-
-
-mkAA
--> A
-
-
-mkA2A
--> Prep -> A2
-
-
-mkAdv
-Str -> Adv
-
-
-mkAdV
-Str -> AdV
-
-
-mkAdA
-Str -> AdA
-
-
-mkV
-(snakke : Str) -> V
-
-
-mkV
-(leve,levde : Str) -> V
-
-
-mkV
-(drikke, drakk, drukket : Str) -> V
-
-
-mkV
-(spise,spiser,spises,spiste,spist,spis : Str) -> V
-
-
-mkVV
--> Str -> V
-
-
-vaereVV
--> V
-
-
-depVV
--> V
-
-
-reflVV
--> V
-
-
-mkV2
-Str -> V2
-
-
-mkV2V
--> V2
-
-
-mkV2V
--> Prep -> V2
-
-
-mkV3V
--> Prep -> Prep -> V3
-
-
-dirV3V
--> Prep -> V3
-
-
-dirdirV3V
--> V3
-
-
-mkV0V
--> V0
-
-
-mkVSV
--> VS
-
-
-mkV2SV
--> Prep -> V2S
-
-
-mkVVV
--> VV
-
-
-mkV2VV
--> Prep -> Prep -> V2V
-
-
-mkVAV
--> VA
-
-
-mkV2AV
--> Prep -> V2A
-
-
-mkVQV
--> VQ
-
-
-mkV2QV
--> Prep -> V2Q
-
-
-mkASA
--> AS
-
-
-mkA2SA
--> Prep -> A2S
-
-
-mkAVA
--> AV
-
-
-mkA2VA
--> Prep -> A2V
-
-
-V0Type
-Paradigms for Russian
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/russian/ParadigmsRus.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-GenderType
-
-
-
-masculineGender
-
-
-
-feminineGender
-
-
-
-neuterGender
-
-
-
-CaseType
-
-
-
-nominativeCase
-
-
-
-genitiveCase
-
-
-
-dativeCase
-
-
-
-accusativeCase
-
-
-
-instructiveCase
-
-
-
-prepositionalCase
-
-
-
-NumberType
-
-
-
-singularNumber
-
-
-
-pluralNumber
-
-
-
-mkN
-(karta : Str) -> N
-
-
-mkN
-(tigr : Str) -> Animacy -> N
-
-
-mkN
-(nomSg, genSg, datSg, accSg, instSg, preposSg, prepos2Sg, nomPl, genPl, datPl, accPl, instPl, preposPl : Str) -> Gender -> Animacy -> N
-
-
-mkN2N
--> N2
-
-
-mkN2N
--> Prep -> N2
-
-
-mkN3N
--> Prep -> Prep -> N3
-
-
-mkPN
-Str -> Gender -> Animacy -> PN
-
-
-nounPNN
--> PN
-
-
-mkA
-(positive : Str) -> A
-
-
-mkA
-(positive, comparative : Str) -> A
-
-
-mkA2A
--> Str -> Case -> A2
-
-
-mkAdv
-Str -> Adv
-
-
-mkVAspect
--> (presentSgP1,presentSgP2,presentSgP3,
-
-
-pastSgP1,imperative,infinitive
-Str) -> V
-
-
-mkV2V
--> Str -> Case -> V2
-
-
-mkV3V
--> Str -> Str -> Case -> Case -> V3
-
-
-dirV2V
--> V2
-
-
-tvDirDirV
--> V3Paradigms for Spanish
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/spanish/ParadigmsSpa.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-GenderType
-
-
-
-masculineGender
-
-
-
-feminineGender
-
-
-
-NumberType
-
-
-
-singularNumber
-
-
-
-pluralNumber
-
-
-
-accusativePrep
-
-
-
-genitivePrep
-
-
-
-dativePrep
-
-
-
-mkPrep
-Str -> Prep
-
-
-mkN
-(luz : Str) -> N
-
-
-mkN
-Str -> Gender -> N
-
-
-mkN
-(baston,bastones : Str) -> Gender -> N
-
-
-compNN
--> Str -> N
-
-
-mkN2N
--> Prep -> N2
-
-
-deN2N
--> N2
-
-
-aN2N
--> N2
-
-
-mkN3N
--> Prep -> Prep -> N3
-
-
-mkPN
-(Anna : Str) -> PN
-
-
-mkPN
-(Pilar : Str) -> Gender -> PN
-
-
-mkA
-(util : Str) -> A
-
-
-mkA
-(solo,sola,solos,solas,solamente : Str) -> A
-
-
-mkA
-(bueno : A) -> (mejor : A) -> A
-
-
-prefixAA
--> A
-
-
-mkA2A
--> Prep -> A2
-
-
-mkAdv
-Str -> Adv
-
-
-mkAdV
-Str -> AdV
-
-
-mkAdA
-Str -> AdA
-
-
-mkV
-(pagar : Str) -> V
-
-
-mkV
-(mostrar,muestro : Str) -> V
-
-
-mkVVerbum
--> V
-
-
-reflVV
--> V
-
-
-special_ppVV
--> Str -> V
-
-
-mkV2
-Str -> V2
-
-
-mkV2V
--> V2
-
-
-mkV2V
--> Prep -> V2
-
-
-v2VV2
--> V
-
-
-mkV3V
--> Prep -> Prep -> V3
-
-
-dirV3V
--> Prep -> V3
-
-
-dirdirV3V
--> V3
-
-
-mkV0V
--> V0
-
-
-mkVSV
--> VS
-
-
-mkV2SV
--> Prep -> V2S
-
-
-mkVVV
--> VV
-
-
-deVVV
--> VV
-
-
-aVVV
--> VV
-
-
-mkV2VV
--> Prep -> Prep -> V2V
-
-
-mkVAV
--> VA
-
-
-mkV2AV
--> Prep -> Prep -> V2A
-
-
-mkVQV
--> VQ
-
-
-mkV2QV
--> Prep -> V2Q
-
-
-mkASA
--> AS
-
-
-mkA2SA
--> Prep -> A2S
-
-
-mkAVA
--> Prep -> AV
-
-
-mkA2VA
--> Prep -> Prep -> A2V
-
-
-V0Type
-Paradigms for Swedish
-
-http://www.cs.chalmers.se/~aarne/GF/lib/resource/swedish/ParadigmsSwe.gf
-
-
-
-
-
-
-Function
-Type
-
-
-
-GenderType
-
-
-
-utrumGender
-
-
-
-neutrumGender
-
-
-
-NumberType
-
-
-
-singularNumber
-
-
-
-pluralNumber
-
-
-
-CaseType
-
-
-
-nominativeCase
-
-
-
-genitiveCase
-
-
-
-mkPrep
-Str -> Prep
-
-
-noPrepPrep
-
-
-
-mkN
-(apa : Str) -> N
-
-
-mkN
-(lik : Str) -> Gender -> N
-
-
-mkN
-(nyckel,nycklar : Str) -> N
-
-
-mkN
-(museum,museet,museer,museerna : Str) -> N
-
-
-mkN2
-Str -> N2
-
-
-mkN2N
--> Prep -> N2
-
-
-mkN3N
--> Prep -> Prep -> N3
-
-
-mkPN
-Str -> PN
-
-
-mkPN
-Str -> Gender -> PN
-
-
-mkPN
-(jesus,jesu : Str) -> Gender -> PN
-
-
-mkA
-(billig : Str) -> A
-
-
-mkA
-(bred,brett : Str) -> A
-
-
-mkA
-(tung,tyngre,tyngst : Str) -> A
-
-
-mkA
-(god,gott,goda,battre,bast : Str) -> A
-
-
-mkA
-(liten,litet,lilla,sma,mindre,minst,minsta : Str) -> A
-
-
-compoundAA
--> A
-
-
-mkA2A
--> Prep -> A2
-
-
-mkAdv
-Str -> Adv
-
-
-mkAdV
-Str -> AdV
-
-
-mkAdA
-Str -> AdA
-
-
-mkV
-(stmmer : Str) -> V
-
-
-mkV
-(dricka,drack,druckit : Str) -> V
-
-
-mkV
-(g,gr,g,gick,gtt,gngen : Str) -> V
-
-
-mkVV
--> Str -> V
-
-
-depVV
--> V
-
-
-reflVV
--> V
-
-
-mkV2
-Str -> V2
-
-
-mkV2V
--> V2
-
-
-mkV2V
--> Prep -> V2
-
-
-mkV3
-Str -> V3
-
-
-mkV3V
--> V3
-
-
-mkV3V
--> Prep -> V3
-
-
-mkV3V
--> Prep -> Prep -> V3
-
-
-mkV0V
--> V0
-
-
-mkVSV
--> VS
-
-
-mkV2SV
--> Prep -> V2S
-
-
-mkVVV
--> VV
-
-
-mkV2VV
--> Prep -> Prep -> V2V
-
-
-mkVAV
--> VA
-
-
-mkV2AV
--> Prep -> V2A
-
-
-mkVQV
--> VQ
-
-
-mkV2QV
--> Prep -> V2Q
-
-
-mkASA
--> AS
-
-
-mkA2SA
--> Prep -> A2S
-
-
-mkAVA
--> AV
-
-
-mkA2VA
--> Prep -> A2V
-
-
-V0Type
-Browsing the libraries with GF commands
-
- cd $GF_LIB_PATH
-
-
- > i -path=alltenses -retain alltenses/ParadigmsGer.gfo
- > cc mkN "Farbe"
-
-
- > i -path=alltenses -retain alltenses/TryGer.gfo
- > cc mkCl (mkNP this_Quant (mkN "Farbe")) (mkA "dunkel")
-
-
-
-An Example of Usage
-
- abstract Music = {
- cat
- Kind,
- Property ;
- fun
- PropKind : Kind -> Property -> Kind ;
- Song : Kind ;
- American : Property ;
- }
-
-
- interface LexMusic = open Cat in {
- oper
- song_N : N ;
- american_A : A ;
- }
-
-Syntax and the domain lexicon interface:
-
- incomplete concrete MusicI of Music = open Syntax, MusicLex in {
- lincat
- Kind = CN ;
- Property = AP ;
- lin
- PropKind k p = mkCN p k ;
- Song = mkCN song_N ;
- American = mkAP american_A ;
- }
-
-
- instance LexMusicGer of LexMusic = CatGer ** open ParadigmsGer in {
- oper
- song_N = mkN "Lied" "Lieder" neuter ;
- american_A = mkA "amerikanisch" ;
- }
-
-
- --# -path=.:present:prelude
-
- concrete MusicGer of Music = MusicI with
- (Syntax = SyntaxGer),
- (LexMusic = LexMusicGer) ;
-
-
-
-
-
-
diff --git a/deprecated/old-lib/resource/doc/synopsis.txt b/deprecated/old-lib/resource/doc/synopsis.txt
deleted file mode 100644
index 3ed9e21a9..000000000
--- a/deprecated/old-lib/resource/doc/synopsis.txt
+++ /dev/null
@@ -1,1544 +0,0 @@
-GF Resource Grammar Library: Synopsis
-B. Bringert and A. Ranta
-
-
-%!postproc(html): '(SRC="categories.png")' '\1 USEMAP="#categories"'
-%!postproc(html): '#LParadigms' ''
-%!postproc(tex): '#LParadigms' ''
-%!postproc(html): '(?i)(HREF="#A")( TITLE="[^"]*")?' '\1 TITLE="A - one-place adjective"'
-%!postproc(html): '(?i)(HREF="#A2")( TITLE="[^"]*")?' '\1 TITLE="A2 - two-place adjective"'
-%!postproc(html): '(?i)(HREF="#AP")( TITLE="[^"]*")?' '\1 TITLE="AP - adjectival phrase"'
-%!postproc(html): '(?i)(HREF="#AdA")( TITLE="[^"]*")?' '\1 TITLE="AdA - adjective-modifying adverb"'
-%!postproc(html): '(?i)(HREF="#AdN")( TITLE="[^"]*")?' '\1 TITLE="AdN - numeral-modifying adverb"'
-%!postproc(html): '(?i)(HREF="#AdV")( TITLE="[^"]*")?' '\1 TITLE="AdV - adverb directly attached to verb"'
-%!postproc(html): '(?i)(HREF="#Adv")( TITLE="[^"]*")?' '\1 TITLE="Adv - verb-phrase-modifying adverb"'
-%!postproc(html): '(?i)(HREF="#Ant")( TITLE="[^"]*")?' '\1 TITLE="Ant - anteriority"'
-%!postproc(html): '(?i)(HREF="#Art")( TITLE="[^"]*")?' '\1 TITLE="Art - article"'
-%!postproc(html): '(?i)(HREF="#CAdv")( TITLE="[^"]*")?' '\1 TITLE="CAdv - comparative adverb"'
-%!postproc(html): '(?i)(HREF="#CN")( TITLE="[^"]*")?' '\1 TITLE="CN - common noun (without determiner)"'
-%!postproc(html): '(?i)(HREF="#Card")( TITLE="[^"]*")?' '\1 TITLE="Card - cardinal number"'
-%!postproc(html): '(?i)(HREF="#Cl")( TITLE="[^"]*")?' '\1 TITLE="Cl - declarative clause, with all tenses"'
-%!postproc(html): '(?i)(HREF="#Comp")( TITLE="[^"]*")?' '\1 TITLE="Comp - complement of copula, such as AP"'
-%!postproc(html): '(?i)(HREF="#Conj")( TITLE="[^"]*")?' '\1 TITLE="Conj - conjunction"'
-%!postproc(html): '(?i)(HREF="#Det")( TITLE="[^"]*")?' '\1 TITLE="Det - determiner phrase"'
-%!postproc(html): '(?i)(HREF="#Digits")( TITLE="[^"]*")?' '\1 TITLE="Digits - cardinal or ordinal in digits"'
-%!postproc(html): '(?i)(HREF="#IAdv")( TITLE="[^"]*")?' '\1 TITLE="IAdv - interrogative adverb"'
-%!postproc(html): '(?i)(HREF="#IComp")( TITLE="[^"]*")?' '\1 TITLE="IComp - interrogative complement of copula"'
-%!postproc(html): '(?i)(HREF="#IDet")( TITLE="[^"]*")?' '\1 TITLE="IDet - interrogative determiner"'
-%!postproc(html): '(?i)(HREF="#IP")( TITLE="[^"]*")?' '\1 TITLE="IP - interrogative pronoun"'
-%!postproc(html): '(?i)(HREF="#Imp")( TITLE="[^"]*")?' '\1 TITLE="Imp - imperative"'
-%!postproc(html): '(?i)(HREF="#N")( TITLE="[^"]*")?' '\1 TITLE="N - common noun"'
-%!postproc(html): '(?i)(HREF="#N2")( TITLE="[^"]*")?' '\1 TITLE="N2 - relational noun"'
-%!postproc(html): '(?i)(HREF="#N3")( TITLE="[^"]*")?' '\1 TITLE="N3 - three-place relational noun"'
-%!postproc(html): '(?i)(HREF="#NP")( TITLE="[^"]*")?' '\1 TITLE="NP - noun phrase (subject or object)"'
-%!postproc(html): '(?i)(HREF="#Num")( TITLE="[^"]*")?' '\1 TITLE="Num - number determining element"'
-%!postproc(html): '(?i)(HREF="#Numeral")( TITLE="[^"]*")?' '\1 TITLE="Numeral - cardinal or ordinal in words"'
-%!postproc(html): '(?i)(HREF="#Ord")( TITLE="[^"]*")?' '\1 TITLE="Ord - ordinal number (used in Det)"'
-%!postproc(html): '(?i)(HREF="#PConj")( TITLE="[^"]*")?' '\1 TITLE="PConj - phrase-beginning conjunction"'
-%!postproc(html): '(?i)(HREF="#PN")( TITLE="[^"]*")?' '\1 TITLE="PN - proper name"'
-%!postproc(html): '(?i)(HREF="#Phr")( TITLE="[^"]*")?' '\1 TITLE="Phr - phrase in a text"'
-%!postproc(html): '(?i)(HREF="#Pol")( TITLE="[^"]*")?' '\1 TITLE="Pol - polarity"'
-%!postproc(html): '(?i)(HREF="#Predet")( TITLE="[^"]*")?' '\1 TITLE="Predet - predeterminer (prefixed Quant)"'
-%!postproc(html): '(?i)(HREF="#Prep")( TITLE="[^"]*")?' '\1 TITLE="Prep - preposition, or just case"'
-%!postproc(html): '(?i)(HREF="#Pron")( TITLE="[^"]*")?' '\1 TITLE="Pron - personal pronoun"'
-%!postproc(html): '(?i)(HREF="#QCl")( TITLE="[^"]*")?' '\1 TITLE="QCl - question clause, with all tenses"'
-%!postproc(html): '(?i)(HREF="#QS")( TITLE="[^"]*")?' '\1 TITLE="QS - question"'
-%!postproc(html): '(?i)(HREF="#Quant")( TITLE="[^"]*")?' '\1 TITLE="Quant - quantifier ('nucleus' of Det)"'
-%!postproc(html): '(?i)(HREF="#RCl")( TITLE="[^"]*")?' '\1 TITLE="RCl - relative clause, with all tenses"'
-%!postproc(html): '(?i)(HREF="#RP")( TITLE="[^"]*")?' '\1 TITLE="RP - relative pronoun"'
-%!postproc(html): '(?i)(HREF="#RS")( TITLE="[^"]*")?' '\1 TITLE="RS - relative"'
-%!postproc(html): '(?i)(HREF="#S")( TITLE="[^"]*")?' '\1 TITLE="S - declarative sentence"'
-%!postproc(html): '(?i)(HREF="#SC")( TITLE="[^"]*")?' '\1 TITLE="SC - embedded sentence or question"'
-%!postproc(html): '(?i)(HREF="#Subj")( TITLE="[^"]*")?' '\1 TITLE="Subj - subjunction"'
-%!postproc(html): '(?i)(HREF="#Tense")( TITLE="[^"]*")?' '\1 TITLE="Tense - tense"'
-%!postproc(html): '(?i)(HREF="#Text")( TITLE="[^"]*")?' '\1 TITLE="Text - text consisting of several phrases"'
-%!postproc(html): '(?i)(HREF="#Utt")( TITLE="[^"]*")?' '\1 TITLE="Utt - sentence, question, word..."'
-%!postproc(html): '(?i)(HREF="#V")( TITLE="[^"]*")?' '\1 TITLE="V - one-place verb"'
-%!postproc(html): '(?i)(HREF="#V2")( TITLE="[^"]*")?' '\1 TITLE="V2 - two-place verb"'
-%!postproc(html): '(?i)(HREF="#V2A")( TITLE="[^"]*")?' '\1 TITLE="V2A - verb with NP and AP complement"'
-%!postproc(html): '(?i)(HREF="#V2Q")( TITLE="[^"]*")?' '\1 TITLE="V2Q - verb with NP and Q complement"'
-%!postproc(html): '(?i)(HREF="#V2S")( TITLE="[^"]*")?' '\1 TITLE="V2S - verb with NP and S complement"'
-%!postproc(html): '(?i)(HREF="#V2V")( TITLE="[^"]*")?' '\1 TITLE="V2V - verb with NP and V complement"'
-%!postproc(html): '(?i)(HREF="#V3")( TITLE="[^"]*")?' '\1 TITLE="V3 - three-place verb"'
-%!postproc(html): '(?i)(HREF="#VA")( TITLE="[^"]*")?' '\1 TITLE="VA - adjective-complement verb"'
-%!postproc(html): '(?i)(HREF="#VP")( TITLE="[^"]*")?' '\1 TITLE="VP - verb phrase"'
-%!postproc(html): '(?i)(HREF="#VPSlash")( TITLE="[^"]*")?' '\1 TITLE="VPSlash - verb phrase missing complement"'
-%!postproc(html): '(?i)(HREF="#VQ")( TITLE="[^"]*")?' '\1 TITLE="VQ - question-complement verb"'
-%!postproc(html): '(?i)(HREF="#VS")( TITLE="[^"]*")?' '\1 TITLE="VS - sentence-complement verb"'
-%!postproc(html): '(?i)(HREF="#VV")( TITLE="[^"]*")?' '\1 TITLE="VV - verb-phrase-complement verb"'
-%!postproc(html): '(?i)(HREF="#Voc")( TITLE="[^"]*")?' '\1 TITLE="Voc - vocative or "please""'
-%!include: synopsis-intro.txt
-=Categories=
-
-
-Source 1: [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/abstract/Common.gf`` ../abstract/Common.gf]
-
-
-Source 2: [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/abstract/Cat.gf`` ../abstract/Cat.gf]
-
-
-==A hierarchic view==
-
-%!include: categories-intro.txt
-==Explanations==
-
-|| Category | Explanation | Example ||
-| [A #A] | one-place adjective | //warm// |
-| [A2 #A2] | two-place adjective | //divisible// |
-| [AP #AP] | adjectival phrase | //very warm// |
-| [AdA #AdA] | adjective-modifying adverb | //very// |
-| [AdN #AdN] | numeral-modifying adverb | //more than// |
-| [AdV #AdV] | adverb directly attached to verb | //always// |
-| [Adv #Adv] | verb-phrase-modifying adverb | //in the house// |
-| [Ant #Ant] | anteriority | simultaneous, anterior |
-| [Art #Art] | article | //the// |
-| [CAdv #CAdv] | comparative adverb | //more// |
-| [CN #CN] | common noun (without determiner) | //red house// |
-| [Card #Card] | cardinal number | //seven// |
-| [Cl #Cl] | declarative clause, with all tenses | //she looks at this// |
-| [Comp #Comp] | complement of copula, such as AP | //very warm// |
-| [Conj #Conj] | conjunction | //and// |
-| [Det #Det] | determiner phrase | //those seven// |
-| [Digits #Digits] | cardinal or ordinal in digits | //1,000/1,000th// |
-| [IAdv #IAdv] | interrogative adverb | //why// |
-| [IComp #IComp] | interrogative complement of copula | //where// |
-| [IDet #IDet] | interrogative determiner | //how many// |
-| [IP #IP] | interrogative pronoun | //who// |
-| [Imp #Imp] | imperative | //look at this// |
-| [N #N] | common noun | //house// |
-| [N2 #N2] | relational noun | //son// |
-| [N3 #N3] | three-place relational noun | //connection// |
-| [NP #NP] | noun phrase (subject or object) | //the red house// |
-| [Num #Num] | number determining element | //seven// |
-| [Numeral #Numeral] | cardinal or ordinal in words | //five/fifth// |
-| [Ord #Ord] | ordinal number (used in Det) | //seventh// |
-| [PConj #PConj] | phrase-beginning conjunction | //therefore// |
-| [PN #PN] | proper name | //Paris// |
-| [Phr #Phr] | phrase in a text | //but be quiet please// |
-| [Pol #Pol] | polarity | positive, negative |
-| [Predet #Predet] | predeterminer (prefixed Quant) | //all// |
-| [Prep #Prep] | preposition, or just case | //in// |
-| [Pron #Pron] | personal pronoun | //she// |
-| [QCl #QCl] | question clause, with all tenses | //why does she walk// |
-| [QS #QS] | question | //where did she live// |
-| [Quant #Quant] | quantifier ('nucleus' of Det) | //this/these// |
-| [RCl #RCl] | relative clause, with all tenses | //in which she lives// |
-| [RP #RP] | relative pronoun | //in which// |
-| [RS #RS] | relative | //in which she lived// |
-| [S #S] | declarative sentence | //she lived here// |
-| [SC #SC] | embedded sentence or question | //that it rains// |
-| [Subj #Subj] | subjunction | //if// |
-| [Tense #Tense] | tense | present, past, future |
-| [Text #Text] | text consisting of several phrases | //He is here. Why?// |
-| [Utt #Utt] | sentence, question, word... | //be quiet// |
-| [V #V] | one-place verb | //sleep// |
-| [V2 #V2] | two-place verb | //love// |
-| [V2A #V2A] | verb with NP and AP complement | //paint// |
-| [V2Q #V2Q] | verb with NP and Q complement | //ask// |
-| [V2S #V2S] | verb with NP and S complement | //tell// |
-| [V2V #V2V] | verb with NP and V complement | //cause// |
-| [V3 #V3] | three-place verb | //show// |
-| [VA #VA] | adjective-complement verb | //look// |
-| [VP #VP] | verb phrase | //is very warm// |
-| [VPSlash #VPSlash] | verb phrase missing complement | //give to John// |
-| [VQ #VQ] | question-complement verb | //wonder// |
-| [VS #VS] | sentence-complement verb | //claim// |
-| [VV #VV] | verb-phrase-complement verb | //want// |
-| [Voc #Voc] | vocative or "please" | //my darling// |
-
-
-=Syntax Rules and Structural Words=
-
-
-Source 1: [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/api/Constructors.gf`` ../api/Constructors.gf]
-
-
-Source 2: [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/abstract/Structural.gf`` ../abstract/Structural.gf]
-
-
-==A - one-place adjective==[A]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==A2 - two-place adjective==[A2]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==AP - adjectival phrase==[AP]
-|| Function | Type | Example ||
-| ``mkAP`` | [A #A] ``->`` [AP #AP] | //old// |
-| ``mkAP`` | [A #A] ``->`` [NP #NP] ``->`` [AP #AP] | //older than John// |
-| ``mkAP`` | [A2 #A2] ``->`` [NP #NP] ``->`` [AP #AP] | //married to her// |
-| ``mkAP`` | [A2 #A2] ``->`` [AP #AP] | //married to myself// |
-| ``mkAP`` | [AP #AP] ``->`` [S #S] ``->`` [AP #AP] | //probable that John walks// |
-| ``mkAP`` | [AP #AP] ``->`` [QS #QS] ``->`` [AP #AP] | //uncertain if John walks// |
-| ``mkAP`` | [AP #AP] ``->`` [VP #VP] ``->`` [AP #AP] | //ready to go// |
-| ``mkAP`` | [AdA #AdA] ``->`` [A #A] ``->`` [AP #AP] | //very old// |
-| ``mkAP`` | [AdA #AdA] ``->`` [AP #AP] ``->`` [AP #AP] | //very very old// |
-| ``mkAP`` | [Conj #Conj] ``->`` [AP #AP] ``->`` [AP #AP] ``->`` [AP #AP] | //old and big// |
-| ``mkAP`` | [Conj #Conj] ``->`` [ListAP #ListAP] ``->`` [AP #AP] | //old, big, and warm// |
-==AdA - adjective-modifying adverb==[AdA]
-|| Function | Type | Example ||
-| ``almost_AdA`` | [AdA #AdA] | //almost// |
-| ``quite_Adv`` | [AdA #AdA] | //quite// |
-| ``so_AdA`` | [AdA #AdA] | //so// |
-| ``too_AdA`` | [AdA #AdA] | //too// |
-| ``very_AdA`` | [AdA #AdA] | //very// |
-==AdN - numeral-modifying adverb==[AdN]
-|| Function | Type | Example ||
-| ``almost_AdN`` | [AdN #AdN] | //almost// |
-| ``mkAdN`` | [CAdv #CAdv] ``->`` [AdN #AdN] | //more than// |
-==AdV - adverb directly attached to verb==[AdV]
-|| Function | Type | Example ||
-| ``always_AdV`` | [AdV #AdV] | //always// |
-==Adv - verb-phrase-modifying adverb==[Adv]
-|| Function | Type | Example ||
-| ``everywhere_Adv`` | [Adv #Adv] | //everywhere// |
-| ``here7from_Adv`` | [Adv #Adv] | //from here// |
-| ``here7to_Adv`` | [Adv #Adv] | //to here// |
-| ``here_Adv`` | [Adv #Adv] | //here// |
-| ``mkAdv`` | [A #A] ``->`` [Adv #Adv] | //warmly// |
-| ``mkAdv`` | [Prep #Prep] ``->`` [NP #NP] ``->`` [Adv #Adv] | //with John// |
-| ``mkAdv`` | [Subj #Subj] ``->`` [S #S] ``->`` [Adv #Adv] | //when John walks// |
-| ``mkAdv`` | [CAdv #CAdv] ``->`` [A #A] ``->`` [NP #NP] ``->`` [Adv #Adv] | //more warmly than John// |
-| ``mkAdv`` | [CAdv #CAdv] ``->`` [A #A] ``->`` [S #S] ``->`` [Adv #Adv] | //more warmly than John walks// |
-| ``mkAdv`` | [AdA #AdA] ``->`` [Adv #Adv] ``->`` [Adv #Adv] | //very warmly// |
-| ``mkAdv`` | [Conj #Conj] ``->`` [Adv #Adv] ``->`` [Adv #Adv] ``->`` [Adv #Adv] | //here and now// |
-| ``mkAdv`` | [Conj #Conj] ``->`` [ListAdv #ListAdv] ``->`` [Adv #Adv] | //with John, here and now// |
-| ``somewhere_Adv`` | [Adv #Adv] | //somewhere// |
-| ``there7from_Adv`` | [Adv #Adv] | //from there// |
-| ``there7to_Adv`` | [Adv #Adv] | //to there// |
-| ``there_Adv`` | [Adv #Adv] | //there// |
-==Ant - anteriority==[Ant]
-|| Function | Type | Example ||
-| ``anteriorAnt`` | [Ant #Ant] | //(John has walked) --# notpresent// |
-| ``simultaneousAnt`` | [Ant #Ant] | //(John walks) [default]// |
-==Art - article==[Art]
-|| Function | Type | Example ||
-| ``a_Art`` | [Art #Art] | //a// |
-| ``the_Art`` | [Art #Art] | //the// |
-==CAdv - comparative adverb==[CAdv]
-|| Function | Type | Example ||
-| ``less_CAdv`` | [CAdv #CAdv] | //less// |
-| ``more_CAdv`` | [CAdv #CAdv] | //more// |
-==CN - common noun (without determiner)==[CN]
-|| Function | Type | Example ||
-| ``mkCN`` | [N #N] ``->`` [CN #CN] | //house// |
-| ``mkCN`` | [N2 #N2] ``->`` [NP #NP] ``->`` [CN #CN] | //mother of John// |
-| ``mkCN`` | [N3 #N3] ``->`` [NP #NP] ``->`` [NP #NP] ``->`` [CN #CN] | //distance from this city to Paris// |
-| ``mkCN`` | [N2 #N2] ``->`` [CN #CN] | //son// |
-| ``mkCN`` | [N3 #N3] ``->`` [CN #CN] | //flight// |
-| ``mkCN`` | [A #A] ``->`` [N #N] ``->`` [CN #CN] | //big house// |
-| ``mkCN`` | [A #A] ``->`` [CN #CN] ``->`` [CN #CN] | //big blue house// |
-| ``mkCN`` | [AP #AP] ``->`` [N #N] ``->`` [CN #CN] | //very big house// |
-| ``mkCN`` | [AP #AP] ``->`` [CN #CN] ``->`` [CN #CN] | //very big blue house// |
-| ``mkCN`` | [N #N] ``->`` [RS #RS] ``->`` [CN #CN] | //house that John loves// |
-| ``mkCN`` | [CN #CN] ``->`` [RS #RS] ``->`` [CN #CN] | //big house that John loves// |
-| ``mkCN`` | [N #N] ``->`` [Adv #Adv] ``->`` [CN #CN] | //house in the city// |
-| ``mkCN`` | [CN #CN] ``->`` [Adv #Adv] ``->`` [CN #CN] | //big house in the city// |
-| ``mkCN`` | [CN #CN] ``->`` [S #S] ``->`` [CN #CN] | //rule that John walks// |
-| ``mkCN`` | [CN #CN] ``->`` [QS #QS] ``->`` [CN #CN] | //question if John walks// |
-| ``mkCN`` | [CN #CN] ``->`` [VP #VP] ``->`` [CN #CN] | //reason to walk// |
-| ``mkCN`` | [N #N] ``->`` [NP #NP] ``->`` [CN #CN] | //king John// |
-| ``mkCN`` | [CN #CN] ``->`` [NP #NP] ``->`` [CN #CN] | //old king John// |
-==Card - cardinal number==[Card]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==Cl - declarative clause, with all tenses==[Cl]
-|| Function | Type | Example ||
-| ``genericCl`` | [VP #VP] ``->`` [Cl #Cl] | //one walks// |
-| ``mkCl`` | [NP #NP] ``->`` [V #V] ``->`` [Cl #Cl] | //John walks// |
-| ``mkCl`` | [NP #NP] ``->`` [V2 #V2] ``->`` [NP #NP] ``->`` [Cl #Cl] | //John loves her// |
-| ``mkCl`` | [NP #NP] ``->`` [V3 #V3] ``->`` [NP #NP] ``->`` [NP #NP] ``->`` [Cl #Cl] | //John sends it to her// |
-| ``mkCl`` | [NP #NP] ``->`` [VV #VV] ``->`` [VP #VP] ``->`` [Cl #Cl] | //John wants to walk// |
-| ``mkCl`` | [NP #NP] ``->`` [VS #VS] ``->`` [S #S] ``->`` [Cl #Cl] | //John says that it is good// |
-| ``mkCl`` | [NP #NP] ``->`` [VQ #VQ] ``->`` [QS #QS] ``->`` [Cl #Cl] | //John wonders if it is good// |
-| ``mkCl`` | [NP #NP] ``->`` [VA #VA] ``->`` [AP #AP] ``->`` [Cl #Cl] | //John becomes old// |
-| ``mkCl`` | [NP #NP] ``->`` [V2A #V2A] ``->`` [NP #NP] ``->`` [AP #AP] ``->`` [Cl #Cl] | //John paints it red// |
-| ``mkCl`` | [NP #NP] ``->`` [V2S #V2S] ``->`` [NP #NP] ``->`` [S #S] ``->`` [Cl #Cl] | //John tells her that we are here// |
-| ``mkCl`` | [NP #NP] ``->`` [V2Q #V2Q] ``->`` [NP #NP] ``->`` [QS #QS] ``->`` [Cl #Cl] | //John asks her who is here// |
-| ``mkCl`` | [NP #NP] ``->`` [V2V #V2V] ``->`` [NP #NP] ``->`` [VP #VP] ``->`` [Cl #Cl] | //John forces us to sleep// |
-| ``mkCl`` | [NP #NP] ``->`` [A #A] ``->`` [Cl #Cl] | //John is old// |
-| ``mkCl`` | [NP #NP] ``->`` [A #A] ``->`` [NP #NP] ``->`` [Cl #Cl] | //John is older than her// |
-| ``mkCl`` | [NP #NP] ``->`` [A2 #A2] ``->`` [NP #NP] ``->`` [Cl #Cl] | //John is married to her// |
-| ``mkCl`` | [NP #NP] ``->`` [AP #AP] ``->`` [Cl #Cl] | //John is very old// |
-| ``mkCl`` | [NP #NP] ``->`` [N #N] ``->`` [Cl #Cl] | //John is a man// |
-| ``mkCl`` | [NP #NP] ``->`` [CN #CN] ``->`` [Cl #Cl] | //John is an old man// |
-| ``mkCl`` | [NP #NP] ``->`` [NP #NP] ``->`` [Cl #Cl] | //John is the man// |
-| ``mkCl`` | [NP #NP] ``->`` [Adv #Adv] ``->`` [Cl #Cl] | //John is here// |
-| ``mkCl`` | [NP #NP] ``->`` [VP #VP] ``->`` [Cl #Cl] | //John walks here// |
-| ``mkCl`` | [V #V] ``->`` [Cl #Cl] | //it rains// |
-| ``mkCl`` | [VP #VP] ``->`` [Cl #Cl] | //it is raining// |
-| ``mkCl`` | [N #N] ``->`` [Cl #Cl] | //there is a house// |
-| ``mkCl`` | [CN #CN] ``->`` [Cl #Cl] | //there is an old houses// |
-| ``mkCl`` | [NP #NP] ``->`` [Cl #Cl] | //there are five houses// |
-| ``mkCl`` | [NP #NP] ``->`` [RS #RS] ``->`` [Cl #Cl] | //it is John that walks// |
-| ``mkCl`` | [Adv #Adv] ``->`` [S #S] ``->`` [Cl #Cl] | //it is here John walks// |
-==ClSlash==[ClSlash]
-|| Function | Type | Example ||
-| ``mkClSlash`` | [NP #NP] ``->`` [V2 #V2] ``->`` [ClSlash #ClSlash] | //(whom) John loves// |
-| ``mkClSlash`` | [NP #NP] ``->`` [VV #VV] ``->`` [V2 #V2] ``->`` [ClSlash #ClSlash] | //(whom) John wants to see// |
-| ``mkClSlash`` | [Cl #Cl] ``->`` [Prep #Prep] ``->`` [ClSlash #ClSlash] | //(with whom) John walks// |
-| ``mkClSlash`` | [ClSlash #ClSlash] ``->`` [Adv #Adv] ``->`` [ClSlash #ClSlash] | //(whom) John loves today// |
-==Comp - complement of copula, such as AP==[Comp]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==Conj - conjunction==[Conj]
-|| Function | Type | Example ||
-| ``and_Conj`` | [Conj #Conj] | //and// |
-| ``both7and_DConj`` | [Conj #Conj] | //both...and// |
-| ``either7or_DConj`` | [Conj #Conj] | //either...or// |
-| ``or_Conj`` | [Conj #Conj] | //or// |
-==Det - determiner phrase==[Det]
-|| Function | Type | Example ||
-| ``every_Det`` | [Det #Det] | //every// |
-| ``few_Det`` | [Det #Det] | //few// |
-| ``many_Det`` | [Det #Det] | //many// |
-| ``mkDet`` | [Quant #Quant] ``->`` [Det #Det] | //this// |
-| ``mkDet`` | [Quant #Quant] ``->`` ([Ord #Ord]) ``->`` [Det #Det] | //this first// |
-| ``mkDet`` | [Quant #Quant] ``->`` [Num #Num] ``->`` [Det #Det] | //these// |
-| ``mkDet`` | [Quant #Quant] ``->`` [Num #Num] ``->`` ([Ord #Ord]) ``->`` [Det #Det] | //these five best// |
-| ``mkDet`` | [Quant #Quant] ``->`` [Det #Det] | //this// |
-| ``mkDet`` | [Quant #Quant] ``->`` [Num #Num] ``->`` [Det #Det] | //these five// |
-| ``mkDet`` | [Card #Card] ``->`` [Det #Det] | //almost twenty// |
-| ``mkDet`` | [Numeral #Numeral] ``->`` [Det #Det] | //five// |
-| ``mkDet`` | [Digits #Digits] ``->`` [Det #Det] | //51// |
-| ``mkDet`` | [Pron #Pron] ``->`` [Det #Det] | //my (house)// |
-| ``mkDet`` | [Pron #Pron] ``->`` [Num #Num] ``->`` [Det #Det] | //my (houses)// |
-| ``much_Det`` | [Det #Det] | //much// |
-| ``somePl_Det`` | [Det #Det] | //somePl// |
-| ``someSg_Det`` | [Det #Det] | //someSg// |
-==Dig==[Dig]
-|| Function | Type | Example ||
-| ``n0_Dig`` | [Dig #Dig] | //0// |
-| ``n1_Dig`` | [Dig #Dig] | //1// |
-| ``n2_Dig`` | [Dig #Dig] | //2// |
-| ``n3_Dig`` | [Dig #Dig] | //3// |
-| ``n4_Dig`` | [Dig #Dig] | //4// |
-| ``n5_Dig`` | [Dig #Dig] | //5// |
-| ``n6_Dig`` | [Dig #Dig] | //6// |
-| ``n7_Dig`` | [Dig #Dig] | //7// |
-| ``n8_Dig`` | [Dig #Dig] | //8// |
-| ``n9_Dig`` | [Dig #Dig] | //9// |
-==Digits - cardinal or ordinal in digits==[Digits]
-|| Function | Type | Example ||
-| ``mkDigits`` | [Dig #Dig] ``->`` [Digits #Digits] | //8// |
-| ``mkDigits`` | [Dig #Dig] ``->`` [Digits #Digits] ``->`` [Digits #Digits] | //876// |
-| ``n1000_Digits`` | [Digits #Digits] | //1,000// |
-| ``n100_Digits`` | [Digits #Digits] | //100// |
-| ``n10_Digits`` | [Digits #Digits] | //10// |
-| ``n1_Digits`` | [Digits #Digits] | //1// |
-| ``n20_Digits`` | [Digits #Digits] | //20// |
-| ``n2_Digits`` | [Digits #Digits] | //2// |
-| ``n3_Digits`` | [Digits #Digits] | //3// |
-| ``n4_Digits`` | [Digits #Digits] | //4// |
-| ``n5_Digits`` | [Digits #Digits] | //5// |
-| ``n6_Digits`` | [Digits #Digits] | //6// |
-| ``n7_Digits`` | [Digits #Digits] | //7// |
-| ``n8_Digits`` | [Digits #Digits] | //8// |
-| ``n9_Digits`` | [Digits #Digits] | //9// |
-==IAdv - interrogative adverb==[IAdv]
-|| Function | Type | Example ||
-| ``how_IAdv`` | [IAdv #IAdv] | //how// |
-| ``mkIAdv`` | [Prep #Prep] ``->`` [IP #IP] ``->`` [IAdv #IAdv] | //in which city// |
-| ``when_IAdv`` | [IAdv #IAdv] | //when// |
-| ``where_IAdv`` | [IAdv #IAdv] | //where// |
-| ``why_IAdv`` | [IAdv #IAdv] | //why// |
-==IComp - interrogative complement of copula==[IComp]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==IDet - interrogative determiner==[IDet]
-|| Function | Type | Example ||
-| ``how8many_IDet`` | [IDet #IDet] | //how8many// |
-==IP - interrogative pronoun==[IP]
-|| Function | Type | Example ||
-| ``mkIP`` | [IQuant #IQuant] ``->`` [N #N] ``->`` [IP #IP] | //which city// |
-| ``mkIP`` | [IQuant #IQuant] ``->`` ([Num #Num]) ``->`` [CN #CN] ``->`` [IP #IP] | //which five big cities// |
-| ``mkIP`` | [IP #IP] ``->`` [Adv #Adv] ``->`` [IP #IP] | //who in Paris// |
-| ``whatPl_IP`` | [IP #IP] | //what (plural)// |
-| ``whatSg_IP`` | [IP #IP] | //what (singular)// |
-| ``whoPl_IP`` | [IP #IP] | //who (plural)// |
-| ``whoSg_IP`` | [IP #IP] | //who (singular)// |
-==IQuant==[IQuant]
-|| Function | Type | Example ||
-| ``which_IQuant`` | [IQuant #IQuant] | //which// |
-==Imp - imperative==[Imp]
-|| Function | Type | Example ||
-| ``mkImp`` | [V #V] ``->`` [Imp #Imp] | //go// |
-| ``mkImp`` | [V2 #V2] ``->`` [NP #NP] ``->`` [Imp #Imp] | //take it// |
-| ``mkImp`` | [VP #VP] ``->`` [Imp #Imp] | //go there now// |
-==ImpForm==[ImpForm]
-|| Function | Type | Example ||
-| ``pluralImpForm`` | [ImpForm #ImpForm] | //(help yourselves)// |
-| ``politeImpForm`` | [ImpForm #ImpForm] | //(help yourself) (polite singular)// |
-| ``singularImpForm`` | [ImpForm #ImpForm] | //(help yourself) [default]// |
-==ListAP==[ListAP]
-|| Function | Type | Example ||
-| ``mkListAP`` | [AP #AP] ``->`` [AP #AP] ``->`` [ListAP #ListAP] | //old, big// |
-| ``mkListAP`` | [AP #AP] ``->`` [ListAP #ListAP] ``->`` [ListAP #ListAP] | //old, big, warm// |
-==ListAdv==[ListAdv]
-|| Function | Type | Example ||
-| ``mkListAdv`` | [Adv #Adv] ``->`` [Adv #Adv] ``->`` [ListAdv #ListAdv] | //here, now// |
-| ``mkListAdv`` | [Adv #Adv] ``->`` [ListAdv #ListAdv] ``->`` [ListAdv #ListAdv] | //to me, here, now// |
-==ListNP==[ListNP]
-|| Function | Type | Example ||
-| ``mkListNP`` | [NP #NP] ``->`` [NP #NP] ``->`` [ListNP #ListNP] | //John, I// |
-| ``mkListNP`` | [NP #NP] ``->`` [ListNP #ListNP] ``->`` [ListNP #ListNP] | //John, I, that// |
-==ListS==[ListS]
-|| Function | Type | Example ||
-| ``mkListS`` | [S #S] ``->`` [S #S] ``->`` [ListS #ListS] | //he walks, I run// |
-| ``mkListS`` | [S #S] ``->`` [ListS #ListS] ``->`` [ListS #ListS] | //John walks, I run, you sleep// |
-==N - common noun==[N]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==N2 - relational noun==[N2]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==N3 - three-place relational noun==[N3]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==NP - noun phrase (subject or object)==[NP]
-|| Function | Type | Example ||
-| ``everybody_NP`` | [NP #NP] | //everybody// |
-| ``everything_NP`` | [NP #NP] | //everything// |
-| ``mkNP`` | [Art #Art] [N #N] ``->`` [NP #NP] | //the man// |
-| ``mkNP`` | [Art #Art] ``->`` ([Num #Num]) ``->`` [CN #CN] ``->`` [NP #NP] | //the five old men// |
-| ``mkNP`` | [Quant #Quant] ``->`` [N #N] ``->`` [NP #NP] | //this men// |
-| ``mkNP`` | [Quant #Quant] ``->`` ([Num #Num]) ``->`` [CN #CN] ``->`` [NP #NP] | //these five old men// |
-| ``mkNP`` | [Det #Det] ``->`` [N #N] ``->`` [NP #NP] | //the first man// |
-| ``mkNP`` | [Det #Det] ``->`` [CN #CN] ``->`` [NP #NP] | //the first old man// |
-| ``mkNP`` | [Numeral #Numeral] ``->`` [N #N] ``->`` [NP #NP] | //twenty men// |
-| ``mkNP`` | [Numeral #Numeral] ``->`` [CN #CN] ``->`` [NP #NP] | //twenty old men// |
-| ``mkNP`` | [Digits #Digits] ``->`` [N #N] ``->`` [NP #NP] | //45 men// |
-| ``mkNP`` | [Digits #Digits] ``->`` [CN #CN] ``->`` [NP #NP] | //45 old men// |
-| ``mkNP`` | [Card #Card] ``->`` [N #N] ``->`` [NP #NP] | //almost twenty men// |
-| ``mkNP`` | [Card #Card] ``->`` [CN #CN] ``->`` [NP #NP] | //almost twenty old men// |
-| ``mkNP`` | [Pron #Pron] ``->`` [N #N] ``->`` [NP #NP] | //my man// |
-| ``mkNP`` | [Pron #Pron] ``->`` [CN #CN] ``->`` [NP #NP] | //my old man// |
-| ``mkNP`` | [PN #PN] ``->`` [NP #NP] | //John// |
-| ``mkNP`` | [Pron #Pron] ``->`` [NP #NP] | //he// |
-| ``mkNP`` | [Quant #Quant] ``->`` [NP #NP] | //this// |
-| ``mkNP`` | [Det #Det] ``->`` [NP #NP] | //these five// |
-| ``mkNP`` | [N #N] ``->`` [NP #NP] | //beer// |
-| ``mkNP`` | [CN #CN] ``->`` [NP #NP] | //beer// |
-| ``mkNP`` | [Predet #Predet] ``->`` [NP #NP] ``->`` [NP #NP] | //only John// |
-| ``mkNP`` | [NP #NP] ``->`` [V2 #V2] ``->`` [NP #NP] | //John killed// |
-| ``mkNP`` | [NP #NP] ``->`` [Adv #Adv] ``->`` [NP #NP] | //John in Paris// |
-| ``mkNP`` | [Conj #Conj] ``->`` [NP #NP] ``->`` [NP #NP] ``->`` [NP #NP] | //John and I// |
-| ``mkNP`` | [Conj #Conj] ``->`` [ListNP #ListNP] ``->`` [NP #NP] | //John, I, and that// |
-| ``somebody_NP`` | [NP #NP] | //somebody// |
-| ``something_NP`` | [NP #NP] | //something// |
-==Num - number determining element==[Num]
-|| Function | Type | Example ||
-| ``mkNum`` | [Numeral #Numeral] ``->`` [Num #Num] | //twenty// |
-| ``mkNum`` | [Digits #Digits] ``->`` [Num #Num] | //51// |
-| ``mkNum`` | [AdN #AdN] ``->`` [Num #Num] ``->`` [Num #Num] | //almost ten// |
-| ``plNum`` | [Num #Num] | //plural// |
-| ``sgNum`` | [Num #Num] | //singular// |
-==Numeral - cardinal or ordinal in words==[Numeral]
-|| Function | Type | Example ||
-| ``n1000_Numeral`` | [Numeral #Numeral] | //thousand// |
-| ``n100_Numeral`` | [Numeral #Numeral] | //hundred// |
-| ``n10_Numeral`` | [Numeral #Numeral] | //ten// |
-| ``n1_Numeral`` | [Numeral #Numeral] | //one// |
-| ``n20_Numeral`` | [Numeral #Numeral] | //twenty// |
-| ``n2_Numeral`` | [Numeral #Numeral] | //two// |
-| ``n3_Numeral`` | [Numeral #Numeral] | //three// |
-| ``n4_Numeral`` | [Numeral #Numeral] | //four// |
-| ``n5_Numeral`` | [Numeral #Numeral] | //five// |
-| ``n6_Numeral`` | [Numeral #Numeral] | //six// |
-| ``n7_Numeral`` | [Numeral #Numeral] | //seven// |
-| ``n8_Numeral`` | [Numeral #Numeral] | //eight// |
-| ``n9_Numeral`` | [Numeral #Numeral] | //nine// |
-==Ord - ordinal number (used in Det)==[Ord]
-|| Function | Type | Example ||
-| ``mkOrd`` | [Numeral #Numeral] ``->`` [Ord #Ord] | //twentieth// |
-| ``mkOrd`` | [Digits #Digits] ``->`` [Ord #Ord] | //51st// |
-| ``mkOrd`` | [A #A] ``->`` [Ord #Ord] | //best// |
-==PConj - phrase-beginning conjunction==[PConj]
-|| Function | Type | Example ||
-| ``but_PConj`` | [PConj #PConj] | //but// |
-| ``mkPConj`` | [Conj #Conj] ``->`` [PConj #PConj] | //and// |
-| ``otherwise_PConj`` | [PConj #PConj] | //otherwise// |
-| ``therefore_PConj`` | [PConj #PConj] | //therefore// |
-==PN - proper name==[PN]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==Phr - phrase in a text==[Phr]
-|| Function | Type | Example ||
-| ``mkPhr`` | [Utt #Utt] ``->`` [Phr #Phr] | //why// |
-| ``mkPhr`` | ([PConj #PConj]) ``->`` [Utt #Utt] ``->`` ([Voc #Voc]) ``->`` [Phr #Phr] | //but why John// |
-| ``mkPhr`` | [S #S] ``->`` [Phr #Phr] | //John walked// |
-| ``mkPhr`` | [Cl #Cl] ``->`` [Phr #Phr] | //John walks// |
-| ``mkPhr`` | [QS #QS] ``->`` [Phr #Phr] | //did John walk// |
-| ``mkPhr`` | [Imp #Imp] ``->`` [Phr #Phr] | //walk// |
-==Pol - polarity==[Pol]
-|| Function | Type | Example ||
-| ``negativePol`` | [Pol #Pol] | //(John doesn't walk)// |
-| ``positivePol`` | [Pol #Pol] | //(John walks) [default]// |
-==Predet - predeterminer (prefixed Quant)==[Predet]
-|| Function | Type | Example ||
-| ``all_Predet`` | [Predet #Predet] | //all// |
-| ``most_Predet`` | [Predet #Predet] | //most// |
-| ``only_Predet`` | [Predet #Predet] | //only// |
-==Prep - preposition, or just case==[Prep]
-|| Function | Type | Example ||
-| ``above_Prep`` | [Prep #Prep] | //above// |
-| ``after_Prep`` | [Prep #Prep] | //after// |
-| ``before_Prep`` | [Prep #Prep] | //before// |
-| ``behind_Prep`` | [Prep #Prep] | //behind// |
-| ``between_Prep`` | [Prep #Prep] | //between// |
-| ``by8agent_Prep`` | [Prep #Prep] | //by (agent)// |
-| ``by8means_Prep`` | [Prep #Prep] | //by (means of)// |
-| ``during_Prep`` | [Prep #Prep] | //during// |
-| ``for_Prep`` | [Prep #Prep] | //for// |
-| ``from_Prep`` | [Prep #Prep] | //from// |
-| ``in8front_Prep`` | [Prep #Prep] | //in front of// |
-| ``in_Prep`` | [Prep #Prep] | //in// |
-| ``on_Prep`` | [Prep #Prep] | //on// |
-| ``part_Prep`` | [Prep #Prep] | //part// |
-| ``possess_Prep`` | [Prep #Prep] | //of (possessive)// |
-| ``through_Prep`` | [Prep #Prep] | //through// |
-| ``to_Prep`` | [Prep #Prep] | //to// |
-| ``under_Prep`` | [Prep #Prep] | //under// |
-| ``with_Prep`` | [Prep #Prep] | //with// |
-| ``without_Prep`` | [Prep #Prep] | //without// |
-==Pron - personal pronoun==[Pron]
-|| Function | Type | Example ||
-| ``he_Pron`` | [Pron #Pron] | //he// |
-| ``i_Pron`` | [Pron #Pron] | //i// |
-| ``it_Pron`` | [Pron #Pron] | //it// |
-| ``she_Pron`` | [Pron #Pron] | //she// |
-| ``they_Pron`` | [Pron #Pron] | //they// |
-| ``we_Pron`` | [Pron #Pron] | //we// |
-| ``youPl_Pron`` | [Pron #Pron] | //you (plural)// |
-| ``youPol_Pron`` | [Pron #Pron] | //you (polite)// |
-| ``youSg_Pron`` | [Pron #Pron] | //you (singular)// |
-==Punct==[Punct]
-|| Function | Type | Example ||
-| ``exclMarkPunct`` | [Punct #Punct] | //!// |
-| ``fullStopPunct`` | [Punct #Punct] | //.// |
-| ``questMarkPunct`` | [Punct #Punct] | //?// |
-==QCl - question clause, with all tenses==[QCl]
-|| Function | Type | Example ||
-| ``mkQCl`` | [Cl #Cl] ``->`` [QCl #QCl] | //does John walk// |
-| ``mkQCl`` | [IP #IP] ``->`` [VP #VP] ``->`` [QCl #QCl] | //who walks// |
-| ``mkQCl`` | [IP #IP] ``->`` [NP #NP] ``->`` [V2 #V2] ``->`` [QCl #QCl] | //whom does John love// |
-| ``mkQCl`` | [IP #IP] ``->`` [ClSlash #ClSlash] ``->`` [QCl #QCl] | //whom does John love today// |
-| ``mkQCl`` | [IAdv #IAdv] ``->`` [Cl #Cl] ``->`` [QCl #QCl] | //why does John walk// |
-| ``mkQCl`` | [Prep #Prep] ``->`` [IP #IP] ``->`` [Cl #Cl] ``->`` [QCl #QCl] | //with who does John walk// |
-| ``mkQCl`` | [IAdv #IAdv] ``->`` [NP #NP] ``->`` [QCl #QCl] | //where is John// |
-| ``mkQCl`` | [IP #IP] ``->`` [QCl #QCl] | //what is there// |
-==QS - question==[QS]
-|| Function | Type | Example ||
-| ``mkQS`` | [QCl #QCl] ``->`` [QS #QS] | //who walks// |
-| ``mkQS`` | ([Tense #Tense]) ``->`` ([Ant #Ant]) ``->`` ([Pol #Pol]) ``->`` [QCl #QCl] ``->`` [QS #QS] | //who wouldn't have walked// |
-| ``mkQS`` | [Cl #Cl] ``->`` [QS #QS] | //does John walk// |
-==Quant - quantifier ('nucleus' of Det)==[Quant]
-|| Function | Type | Example ||
-| ``that_Quant`` | [Quant #Quant] | //that// |
-| ``this_Quant`` | [Quant #Quant] | //this// |
-==RCl - relative clause, with all tenses==[RCl]
-|| Function | Type | Example ||
-| ``mkRCl`` | [RP #RP] ``->`` [VP #VP] ``->`` [RCl #RCl] | //that walk// |
-| ``mkRCl`` | [RP #RP] ``->`` [NP #NP] ``->`` [V2 #V2] ``->`` [RCl #RCl] | //which John loves// |
-| ``mkRCl`` | [RP #RP] ``->`` [ClSlash #ClSlash] ``->`` [RCl #RCl] | //which John loves today// |
-| ``mkRCl`` | [Cl #Cl] ``->`` [RCl #RCl] | //such that John loves her// |
-==RP - relative pronoun==[RP]
-|| Function | Type | Example ||
-| ``mkRP`` | [Prep #Prep] ``->`` [NP #NP] ``->`` [RP #RP] ``->`` [RP #RP] | //all the houses in which// |
-| ``which_RP`` | [RP #RP] | //which// |
-==RS - relative==[RS]
-|| Function | Type | Example ||
-| ``mkRS`` | [RCl #RCl] ``->`` [RS #RS] | //that walk// |
-| ``mkRS`` | ([Tense #Tense]) ``->`` ([Ant #Ant]) ``->`` ([Pol #Pol]) ``->`` [RCl #RCl] ``->`` [RS #RS] | //that wouldn't have walked// |
-==S - declarative sentence==[S]
-|| Function | Type | Example ||
-| ``mkS`` | [Cl #Cl] ``->`` [S #S] | //John walks// |
-| ``mkS`` | ([Tense #Tense]) ``->`` ([Ant #Ant]) ``->`` ([Pol #Pol]) ``->`` [Cl #Cl] ``->`` [S #S] | //John wouldn't have walked// |
-| ``mkS`` | [Conj #Conj] ``->`` [S #S] ``->`` [S #S] ``->`` [S #S] | //John walks and I run// |
-| ``mkS`` | [Conj #Conj] ``->`` [ListS #ListS] ``->`` [S #S] | //John walks, I run and you sleep// |
-| ``mkS`` | [Adv #Adv] ``->`` [S #S] ``->`` [S #S] | //today, John walks// |
-==SC - embedded sentence or question==[SC]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==Subj - subjunction==[Subj]
-|| Function | Type | Example ||
-| ``although_Subj`` | [Subj #Subj] | //although// |
-| ``because_Subj`` | [Subj #Subj] | //because// |
-| ``if_Subj`` | [Subj #Subj] | //if// |
-| ``when_Subj`` | [Subj #Subj] | //when// |
-==Tense - tense==[Tense]
-|| Function | Type | Example ||
-| ``conditionalTense`` | [Tense #Tense] | //(John would walk) --# notpresent// |
-| ``futureTense`` | [Tense #Tense] | //(John will walk) --# notpresent// |
-| ``pastTense`` | [Tense #Tense] | //(John walked) --# notpresent// |
-| ``presentTense`` | [Tense #Tense] | //(John walks) [default]// |
-==Text - text consisting of several phrases==[Text]
-|| Function | Type | Example ||
-| ``emptyText`` | [Text #Text] | //(empty text)// |
-| ``mkText`` | [Phr #Phr] ``->`` [Text #Text] | //But John walks.// |
-| ``mkText`` | [Phr #Phr] ``->`` ([Punct #Punct]) ``->`` ([Text #Text]) ``->`` [Text #Text] | //John walks? Yes.// |
-| ``mkText`` | [Utt #Utt] ``->`` [Text #Text] | //John.// |
-| ``mkText`` | [S #S] ``->`` [Text #Text] | //John walked.// |
-| ``mkText`` | [Cl #Cl] ``->`` [Text #Text] | //John walks.// |
-| ``mkText`` | [QS #QS] ``->`` [Text #Text] | //Did John walk?// |
-| ``mkText`` | [Imp #Imp] ``->`` [Text #Text] | //Walk!// |
-| ``mkText`` | [Text #Text] ``->`` [Text #Text] ``->`` [Text #Text] | //Where? When? Here. Now!// |
-==Utt - sentence, question, word...==[Utt]
-|| Function | Type | Example ||
-| ``lets_Utt`` | [VP #VP] ``->`` [Utt #Utt] | //let's walk// |
-| ``mkUtt`` | [S #S] ``->`` [Utt #Utt] | //John walked// |
-| ``mkUtt`` | [Cl #Cl] ``->`` [Utt #Utt] | //John walks// |
-| ``mkUtt`` | [QS #QS] ``->`` [Utt #Utt] | //did John walk// |
-| ``mkUtt`` | [Imp #Imp] ``->`` [Utt #Utt] | //love yourself// |
-| ``mkUtt`` | ([ImpForm #ImpForm]) ``->`` ([Pol #Pol]) ``->`` [Imp #Imp] ``->`` [Utt #Utt] | //don't love yourselves// |
-| ``mkUtt`` | [IP #IP] ``->`` [Utt #Utt] | //who// |
-| ``mkUtt`` | [IAdv #IAdv] ``->`` [Utt #Utt] | //why// |
-| ``mkUtt`` | [NP #NP] ``->`` [Utt #Utt] | //John// |
-| ``mkUtt`` | [Adv #Adv] ``->`` [Utt #Utt] | //here// |
-| ``mkUtt`` | [VP #VP] ``->`` [Utt #Utt] | //to walk// |
-| ``no_Utt`` | [Utt #Utt] | //no// |
-| ``yes_Utt`` | [Utt #Utt] | //yes// |
-==V - one-place verb==[V]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==V2 - two-place verb==[V2]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==V2A - verb with NP and AP complement==[V2A]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==V2Q - verb with NP and Q complement==[V2Q]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==V2S - verb with NP and S complement==[V2S]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==V2V - verb with NP and V complement==[V2V]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==V3 - three-place verb==[V3]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==VA - adjective-complement verb==[VA]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==VP - verb phrase==[VP]
-|| Function | Type | Example ||
-| ``mkVP`` | [V #V] ``->`` [VP #VP] | //walk// |
-| ``mkVP`` | [V2 #V2] ``->`` [NP #NP] ``->`` [VP #VP] | //love her// |
-| ``mkVP`` | [V3 #V3] ``->`` [NP #NP] ``->`` [NP #NP] ``->`` [VP #VP] | //send it to her// |
-| ``mkVP`` | [VV #VV] ``->`` [VP #VP] ``->`` [VP #VP] | //want to walk// |
-| ``mkVP`` | [VS #VS] ``->`` [S #S] ``->`` [VP #VP] | //know that she walks// |
-| ``mkVP`` | [VQ #VQ] ``->`` [QS #QS] ``->`` [VP #VP] | //ask if she walks// |
-| ``mkVP`` | [VA #VA] ``->`` [AP #AP] ``->`` [VP #VP] | //become old// |
-| ``mkVP`` | [V2A #V2A] ``->`` [NP #NP] ``->`` [AP #AP] ``->`` [VP #VP] | //paint it red// |
-| ``mkVP`` | [A #A] ``->`` [VP #VP] | //be warm// |
-| ``mkVP`` | [AP #AP] ``->`` [VP #VP] | //be very warm// |
-| ``mkVP`` | [A #A] ``->`` [NP #NP] ``->`` [VP #VP] | //be older than her// |
-| ``mkVP`` | [A2 #A2] ``->`` [NP #NP] ``->`` [VP #VP] | //be married to her// |
-| ``mkVP`` | [N #N] ``->`` [VP #VP] | //be a man// |
-| ``mkVP`` | [CN #CN] ``->`` [VP #VP] | //be an old man// |
-| ``mkVP`` | [NP #NP] ``->`` [VP #VP] | //be the man// |
-| ``mkVP`` | [Adv #Adv] ``->`` [VP #VP] | //be here// |
-| ``mkVP`` | [VP #VP] ``->`` [Adv #Adv] ``->`` [VP #VP] | //sleep here// |
-| ``mkVP`` | [AdV #AdV] ``->`` [VP #VP] ``->`` [VP #VP] | //always sleep// |
-| ``mkVP`` | [VPSlash #VPSlash] ``->`` [NP #NP] ``->`` [VP #VP] | //paint it black// |
-| ``mkVP`` | [VPSlash #VPSlash] ``->`` [VP #VP] | //paint itself black// |
-| ``passiveVP`` | [V2 #V2] ``->`` [VP #VP] | //be loved// |
-| ``passiveVP`` | [V2 #V2] ``->`` [NP #NP] ``->`` [VP #VP] | //be loved by her// |
-| ``progressiveVP`` | [VP #VP] ``->`` [VP #VP] | //be sleeping// |
-| ``reflexiveVP`` | [V2 #V2] ``->`` [VP #VP] | //love itself// |
-==VPSlash - verb phrase missing complement==[VPSlash]
-|| Function | Type | Example ||
-| ``mkVPSlash`` | [V2 #V2] ``->`` [VPSlash #VPSlash] | //(whom) (John) loves// |
-| ``mkVPSlash`` | [V3 #V3] ``->`` [NP #NP] ``->`` [VPSlash #VPSlash] | //(whom) (John) gives an apple// |
-| ``mkVPSlash`` | [V2A #V2A] ``->`` [AP #AP] ``->`` [VPSlash #VPSlash] | //(whom) (John) paints red// |
-| ``mkVPSlash`` | [V2Q #V2Q] ``->`` [QS #QS] ``->`` [VPSlash #VPSlash] | //(whom) (John) asks who sleeps// |
-| ``mkVPSlash`` | [V2S #V2S] ``->`` [S #S] ``->`` [VPSlash #VPSlash] | //(whom) (John) tells that we sleep// |
-| ``mkVPSlash`` | [V2V #V2V] ``->`` [VP #VP] ``->`` [VPSlash #VPSlash] | //(whom) (John) forces to sleep// |
-==VQ - question-complement verb==[VQ]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==VS - sentence-complement verb==[VS]
-Lexical category, constructors given in
-[lexical paradigms #RParadigms].
-==VV - verb-phrase-complement verb==[VV]
-|| Function | Type | Example ||
-| ``can8know_VV`` | [VV #VV] | //can (capacity)// |
-| ``can_VV`` | [VV #VV] | //can (possibility)// |
-| ``must_VV`` | [VV #VV] | //must// |
-| ``want_VV`` | [VV #VV] | //want// |
-==Voc - vocative or "please"==[Voc]
-|| Function | Type | Example ||
-| ``mkVoc`` | [NP #NP] ``->`` [Voc #Voc] | //John// |
-| ``please_Voc`` | [Voc #Voc] | //please// |
-
-
-
-
-=Lexical Paradigms=
-==Paradigms for Bulgarian==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/bulgarian/ParadigmsBul.gf`` ../bulgarian/ParadigmsBul.gf]
-
-
-
-
-|| Function | Type ||
-| ``mkN001`` | ``Str`` ``->`` [N #N] |
-| ``mkN002`` | ``Str`` ``->`` [N #N] |
-| ``mkN002a`` | ``Str`` ``->`` [N #N] |
-| ``mkN003`` | ``Str`` ``->`` [N #N] |
-| ``mkN004`` | ``Str`` ``->`` [N #N] |
-| ``mkN005`` | ``Str`` ``->`` [N #N] |
-| ``mkN006`` | ``Str`` ``->`` [N #N] |
-| ``mkN007`` | ``Str`` ``->`` [N #N] |
-| ``mkN007b`` | ``Str`` ``->`` [N #N] |
-| ``mkN007a`` | ``Str`` ``->`` [N #N] |
-| ``mkN008`` | ``Str`` ``->`` [N #N] |
-| ``mkN008a`` | ``Str`` ``->`` [N #N] |
-| ``mkN009`` | ``Str`` ``->`` [N #N] |
-| ``mkN009a`` | ``Str`` ``->`` [N #N] |
-| ``mkN010`` | ``Str`` ``->`` [N #N] |
-| ``mkN011`` | ``Str`` ``->`` [N #N] |
-| ``mkN012`` | ``Str`` ``->`` [N #N] |
-| ``mkN013`` | ``Str`` ``->`` [N #N] |
-| ``mkN014`` | ``Str`` ``->`` [N #N] |
-| ``mkN014a`` | ``Str`` ``->`` [N #N] |
-| ``mkN015`` | ``Str`` ``->`` [N #N] |
-| ``mkN016`` | ``Str`` ``->`` [N #N] |
-| ``mkN017`` | ``Str`` ``->`` [N #N] |
-| ``mkN018`` | ``Str`` ``->`` [N #N] |
-| ``mkN018a`` | ``Str`` ``->`` [N #N] |
-| ``mkN019`` | ``Str`` ``->`` [N #N] |
-| ``mkN019a`` | ``Str`` ``->`` [N #N] |
-| ``mkN020`` | ``Str`` ``->`` [N #N] |
-| ``mkN021`` | ``Str`` ``->`` [N #N] |
-| ``mkN022`` | ``Str`` ``->`` [N #N] |
-| ``mkN023`` | ``Str`` ``->`` [N #N] |
-| ``mkN024a`` | ``Str`` ``->`` [N #N] |
-| ``mkN024`` | ``Str`` ``->`` [N #N] |
-| ``mkN025`` | ``Str`` ``->`` [N #N] |
-| ``mkN026`` | ``Str`` ``->`` [N #N] |
-| ``mkN027`` | ``Str`` ``->`` [N #N] |
-| ``mkN028`` | ``Str`` ``->`` [N #N] |
-| ``mkN028a`` | ``Str`` ``->`` [N #N] |
-| ``mkN029`` | ``Str`` ``->`` [N #N] |
-| ``mkN030`` | ``Str`` ``->`` [N #N] |
-| ``mkN031`` | ``Str`` ``->`` [N #N] |
-| ``mkN031a`` | ``Str`` ``->`` [N #N] |
-| ``mkN032`` | ``Str`` ``->`` [N #N] |
-| ``mkN032a`` | ``Str`` ``->`` [N #N] |
-| ``mkN033`` | ``Str`` ``->`` [N #N] |
-| ``mkN034`` | ``Str`` ``->`` [N #N] |
-| ``mkN035`` | ``Str`` ``->`` [N #N] |
-| ``mkN035a`` | ``Str`` ``->`` [N #N] |
-| ``mkN036`` | ``Str`` ``->`` [N #N] |
-| ``mkN037`` | ``Str`` ``->`` [N #N] |
-| ``mkN038`` | ``Str`` ``->`` [N #N] |
-| ``mkN039`` | ``Str`` ``->`` [N #N] |
-| ``mkN040`` | ``Str`` ``->`` [N #N] |
-| ``mkN040a`` | ``Str`` ``->`` [N #N] |
-| ``mkN041`` | ``Str`` ``->`` [N #N] |
-| ``mkN041a`` | ``Str`` ``->`` [N #N] |
-| ``mkN041b`` | ``Str`` ``->`` [N #N] |
-| ``mkN042`` | ``Str`` ``->`` [N #N] |
-| ``mkN043`` | ``Str`` ``->`` [N #N] |
-| ``mkN043a`` | ``Str`` ``->`` [N #N] |
-| ``mkN044`` | ``Str`` ``->`` [N #N] |
-| ``mkN045`` | ``Str`` ``->`` [N #N] |
-| ``mkN046`` | ``Str`` ``->`` [N #N] |
-| ``mkN047`` | ``Str`` ``->`` [N #N] |
-| ``mkN048`` | ``Str`` ``->`` [N #N] |
-| ``mkN049`` | ``Str`` ``->`` [N #N] |
-| ``mkN050`` | ``Str`` ``->`` [N #N] |
-| ``mkN051`` | ``Str`` ``->`` [N #N] |
-| ``mkN052`` | ``Str`` ``->`` [N #N] |
-| ``mkN052a`` | ``Str`` ``->`` [N #N] |
-| ``mkN053`` | ``Str`` ``->`` [N #N] |
-| ``mkN054`` | ``Str`` ``->`` [N #N] |
-| ``mkN055`` | ``Str`` ``->`` [N #N] |
-| ``mkN056`` | ``Str`` ``->`` [N #N] |
-| ``mkN057`` | ``Str`` ``->`` [N #N] |
-| ``mkN057a`` | ``Str`` ``->`` [N #N] |
-| ``mkN058`` | ``Str`` ``->`` [N #N] |
-| ``mkN059`` | ``Str`` ``->`` [N #N] |
-| ``mkN060`` | ``Str`` ``->`` [N #N] |
-| ``mkN061`` | ``Str`` ``->`` [N #N] |
-| ``mkN062`` | ``Str`` ``->`` [N #N] |
-| ``mkN063`` | ``Str`` ``->`` [N #N] |
-| ``mkN064`` | ``Str`` ``->`` [N #N] |
-| ``mkN065`` | ``Str`` ``->`` [N #N] |
-| ``mkN066`` | ``Str`` ``->`` [N #N] |
-| ``mkN067`` | ``Str`` ``->`` [N #N] |
-| ``mkN068`` | ``Str`` ``->`` [N #N] |
-| ``mkN069`` | ``Str`` ``->`` [N #N] |
-| ``mkN070`` | ``Str`` ``->`` [N #N] |
-| ``mkN071`` | ``Str`` ``->`` [N #N] |
-| ``mkN072`` | ``Str`` ``->`` [N #N] |
-| ``mkN073`` | ``Str`` ``->`` [N #N] |
-| ``mkN074`` | ``Str`` ``->`` [N #N] |
-| ``mkN075`` | ``Str`` ``->`` [N #N] |
-| ``mkA076`` | ``Str`` ``->`` [A #A] |
-| ``mkA077`` | ``Str`` ``->`` [A #A] |
-| ``mkA078`` | ``Str`` ``->`` [A #A] |
-| ``mkA079`` | ``Str`` ``->`` [A #A] |
-| ``mkA080`` | ``Str`` ``->`` [A #A] |
-| ``mkA081`` | ``Str`` ``->`` [A #A] |
-| ``mkA082`` | ``Str`` ``->`` [A #A] |
-| ``mkA082a`` | ``Str`` ``->`` [A #A] |
-| ``mkA083`` | ``Str`` ``->`` [A #A] |
-| ``mkA084`` | ``Str`` ``->`` [A #A] |
-| ``mkA084a`` | ``Str`` ``->`` [A #A] |
-| ``mkA085`` | ``Str`` ``->`` [A #A] |
-| ``mkA086`` | ``Str`` ``->`` [A #A] |
-| ``mkA087`` | ``Str`` ``->`` [A #A] |
-| ``mkA088`` | ``Str`` ``->`` [A #A] |
-| ``mkA089`` | ``Str`` ``->`` [A #A] |
-| ``mkA089a`` | ``Str`` ``->`` [A #A] |
-| ``mkV142`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV143`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV144`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV145`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV145a`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV145b`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV146`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV146a`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV147`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV148`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV149`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV150`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV150a`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV151`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV152`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV152a`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV153`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV154`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV155`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV156`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV157`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV158`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV159`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV160`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV160a`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV161`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV161a`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV162`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV163`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV164`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV165`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV166`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV167`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV168`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV169`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV170`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV171`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV172`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV173`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV174`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV175`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV176`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV177`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV178`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV179`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV180`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV181`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV182`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV183`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV184`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV185`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV186`` | ``Str`` ``->`` [VTable #VTable] |
-| ``mkV187`` | ``Str`` ``->`` [VTable #VTable] |
-| ``adjAdv`` | [A #A] ``->`` ``Str`` ``->`` [A #A] ``=`` |
-
-
-==Paradigms for Danish==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/danish/ParadigmsDan.gf`` ../danish/ParadigmsDan.gf]
-
-
-
-
-|| Function | Type ||
-| ``Gender`` | [Type #Type] |
-| ``utrum`` | [Gender #Gender] |
-| ``neutrum`` | [Gender #Gender] |
-| ``Number`` | [Type #Type] |
-| ``singular`` | [Number #Number] |
-| ``plural`` | [Number #Number] |
-| ``Case`` | [Type #Type] |
-| ``nominative`` | [Case #Case] |
-| ``genitive`` | [Case #Case] |
-| ``mkPrep`` | ``Str`` ``->`` [Prep #Prep] |
-| ``noPrep`` | [Prep #Prep] |
-| ``mkN`` | ``(bil`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(hus`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``mkN`` | ``(bil,bilen`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(bil,bilen,biler`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(dreng,drengen,drenge,drengene`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN2`` | [N #N] ``->`` [Prep #Prep] ``->`` [N2 #N2] |
-| ``regN2`` | ``Str`` ``->`` [Gender #Gender] ``->`` [N2 #N2] |
-| ``mkN3`` | [N #N] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [N3 #N3] |
-| ``mkPN`` | ``Str`` ``->`` [PN #PN] |
-| ``mkPN`` | ``Str`` ``->`` [Gender #Gender] ``->`` [PN #PN] |
-| ``mkPN`` | [N #N] ``->`` [PN #PN] |
-| ``mkA`` | ``(fin`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(fin,fint`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(galen,galet,galne`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(stor,stort,store,storre,storst`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | [A #A] ``->`` [A #A] |
-| ``mkA2`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2 #A2] |
-| ``mkAdv`` | ``Str`` ``->`` [Adv #Adv] |
-| ``mkAdV`` | ``Str`` ``->`` [AdV #AdV] |
-| ``mkAdA`` | ``Str`` ``->`` [AdA #AdA] |
-| ``mkV`` | ``(snakke`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(leve,levde`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(drikke,`` ``drakk,`` ``drukket`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(spise,spiser,spises,spiste,spist,spis`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | [V #V] ``->`` ``Str`` ``->`` [V #V] |
-| ``vaereV`` | [V #V] ``->`` [V #V] |
-| ``depV`` | [V #V] ``->`` [V #V] |
-| ``reflV`` | [V #V] ``->`` [V #V] |
-| ``mkV2`` | ``Str`` ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2 #V2] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirdirV3`` | [V #V] ``->`` [V3 #V3] |
-| ``mkV0`` | [V #V] ``->`` [V0 #V0] |
-| ``mkVS`` | [V #V] ``->`` [VS #VS] |
-| ``mkV2S`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2S #V2S] |
-| ``mkVV`` | [V #V] ``->`` [VV #VV] |
-| ``mkV2V`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2V #V2V] |
-| ``mkVA`` | [V #V] ``->`` [VA #VA] |
-| ``mkV2A`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2A #V2A] |
-| ``mkVQ`` | [V #V] ``->`` [VQ #VQ] |
-| ``mkV2Q`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2Q #V2Q] |
-| ``mkAS`` | [A #A] ``->`` [AS #AS] |
-| ``mkA2S`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2S #A2S] |
-| ``mkAV`` | [A #A] ``->`` [AV #AV] |
-| ``mkA2V`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2V #A2V] |
-| ``V0`` | [Type #Type] |
-
-
-==Paradigms for English==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/english/ParadigmsEng.gf`` ../english/ParadigmsEng.gf]
-
-
-
-
-|| Function | Type ||
-| ``Gender`` | [Type #Type] |
-| ``human`` | [Gender #Gender] |
-| ``nonhuman`` | [Gender #Gender] |
-| ``masculine`` | [Gender #Gender] |
-| ``feminine`` | [Gender #Gender] |
-| ``Number`` | [Type #Type] |
-| ``singular`` | [Number #Number] |
-| ``plural`` | [Number #Number] |
-| ``Case`` | [Type #Type] |
-| ``nominative`` | [Case #Case] |
-| ``genitive`` | [Case #Case] |
-| ``mkN`` | ``(flash`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(man,men`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(man,men,man's,men's`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | [Gender #Gender] ``->`` [N #N] ``->`` [N #N] |
-| ``mkN`` | ``Str`` ``->`` [N #N] ``->`` [N #N] |
-| ``mkN2`` | [N #N] ``->`` [Prep #Prep] ``->`` [N2 #N2] |
-| ``regN2`` | ``Str`` ``->`` [N2 #N2] |
-| ``mkN3`` | [N #N] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [N3 #N3] |
-| ``mkPN`` | ``Str`` ``->`` [PN #PN] |
-| ``mkPN`` | [N #N] ``->`` [PN #PN] |
-| ``mkA`` | ``(happy`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(fat,fatter`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(good,better,best,well`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``compoundA`` | [A #A] ``->`` [A #A] |
-| ``mkA2`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2 #A2] |
-| ``mkAdv`` | ``Str`` ``->`` [Adv #Adv] |
-| ``mkAdV`` | ``Str`` ``->`` [AdV #AdV] |
-| ``mkAdA`` | ``Str`` ``->`` [AdA #AdA] |
-| ``mkPrep`` | ``Str`` ``->`` [Prep #Prep] |
-| ``noPrep`` | [Prep #Prep] |
-| ``mkV`` | ``(cry`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(stop,`` ``stopped`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(drink,`` ``drank,`` ``drunk`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(run,`` ``ran,`` ``run,`` ``running`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(go,`` ``goes,`` ``went,`` ``gone,`` ``going`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``partV`` | [V #V] ``->`` ``Str`` ``->`` [V #V] |
-| ``reflV`` | [V #V] ``->`` [V #V] |
-| ``mkV2`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [V2 #V2] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirdirV3`` | [V #V] ``->`` [V3 #V3] |
-| ``mkV0`` | [V #V] ``->`` [V0 #V0] |
-| ``mkVS`` | [V #V] ``->`` [VS #VS] |
-| ``mkV2S`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2S #V2S] |
-| ``mkVV`` | [V #V] ``->`` [VV #VV] |
-| ``mkV2V`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2V #V2V] |
-| ``mkVA`` | [V #V] ``->`` [VA #VA] |
-| ``mkV2A`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2A #V2A] |
-| ``mkVQ`` | [V #V] ``->`` [VQ #VQ] |
-| ``mkV2Q`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2Q #V2Q] |
-| ``mkAS`` | [A #A] ``->`` [AS #AS] |
-| ``mkA2S`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2S #A2S] |
-| ``mkAV`` | [A #A] ``->`` [AV #AV] |
-| ``mkA2V`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2V #A2V] |
-| ``V0`` | [Type #Type] |
-
-
-==Paradigms for Finnish==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/finnish/ParadigmsFin.gf`` ../finnish/ParadigmsFin.gf]
-
-
-
-
-|| Function | Type ||
-| ``Number`` | [Type #Type] |
-| ``singular`` | [Number #Number] |
-| ``plural`` | [Number #Number] |
-| ``Case`` | [Type #Type] |
-| ``nominative`` | [Case #Case] |
-| ``genitive`` | [Case #Case] |
-| ``partitive`` | [Case #Case] |
-| ``translative`` | [Case #Case] |
-| ``inessive`` | [Case #Case] |
-| ``elative`` | [Case #Case] |
-| ``illative`` | [Case #Case] |
-| ``adessive`` | [Case #Case] |
-| ``ablative`` | [Case #Case] |
-| ``allative`` | [Case #Case] |
-| ``prePrep`` | [Case #Case] ``->`` ``Str`` ``->`` [Prep #Prep] |
-| ``postPrep`` | [Case #Case] ``->`` ``Str`` ``->`` [Prep #Prep] |
-| ``postGenPrep`` | ``Str`` ``->`` [Prep #Prep] |
-| ``casePrep`` | [Case #Case] ``->`` [Prep #Prep] |
-| ``mkN`` | ``(talo`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(savi,savia`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(vesi,veden,vesi`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(vesi,veden,vesi,vett`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(olo,olon,olona,oloa,oloon,olojen,oloja,oloina,oloissa,oloihin`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(pika`` ``:`` ``Str)`` ``->`` ``(juna`` ``:`` ``N)`` ``->`` [N #N] |
-| ``mkN`` | ``(oma`` ``:`` ``N)`` ``->`` ``(tunto`` ``:`` ``N)`` ``->`` [N #N] |
-| ``mkN2`` | [N #N] ``->`` [N2 #N2] |
-| ``mkN2`` | [N #N] ``->`` [Prep #Prep] ``->`` [N2 #N2] |
-| ``mkN3`` | [N #N] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [N3 #N3] |
-| ``mkPN`` | ``Str`` ``->`` [PN #PN] |
-| ``mkPN`` | [N #N] ``->`` [PN #PN] |
-| ``mkA`` | ``Str`` ``->`` [A #A] |
-| ``mkA`` | [N #N] ``->`` [A #A] |
-| ``mkA`` | [N #N] ``->`` ``(kivempaa,kivinta`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(hyva,parempi,paras`` ``:`` ``N)`` ``->`` ``(hyvin,paremmin,parhaiten`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA2`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2 #A2] ``=`` ``\a,p`` ``->`` ``a`` ``**`` ``{c2`` ``=`` ``p`` ``lock_A2`` ``=`` ``<>};`` |
-| ``mkV`` | ``(huutaa`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(huutaa,huusi`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(huutaa,huudan,huusi`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(`` |
-| ``huusin,huusi,huusisi,huutanut,huudettu,huutanee`` | ``Str)`` ``->`` [V #V] |
-| ``caseV`` | [Case #Case] ``->`` [V #V] ``->`` [V #V] |
-| ``vOlla`` | [V #V] |
-| ``mkV2`` | ``Str`` ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [Case #Case] ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2 #V2] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirV3`` | [V #V] ``->`` [Case #Case] ``->`` [V3 #V3] |
-| ``dirdirV3`` | [V #V] ``->`` [V3 #V3] |
-| ``mkV0`` | [V #V] ``->`` [V0 #V0] |
-| ``mkVS`` | [V #V] ``->`` [VS #VS] |
-| ``mkV2S`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2S #V2S] |
-| ``mkVV`` | [V #V] ``->`` [VV #VV] |
-| ``mkVVf`` | [V #V] ``->`` [InfForm #InfForm] ``->`` [VV #VV] |
-| ``mkV2V`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2V #V2V] |
-| ``mkV2Vf`` | [V #V] ``->`` [Prep #Prep] ``->`` [InfForm #InfForm] ``->`` [V2V #V2V] |
-| ``mkVA`` | [V #V] ``->`` [Prep #Prep] ``->`` [VA #VA] |
-| ``mkV2A`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2A #V2A] |
-| ``mkVQ`` | [V #V] ``->`` [VQ #VQ] |
-| ``mkV2Q`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2Q #V2Q] |
-| ``mkAS`` | [A #A] ``->`` [AS #AS] |
-| ``mkA2S`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2S #A2S] |
-| ``mkAV`` | [A #A] ``->`` [AV #AV] |
-| ``mkA2V`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2V #A2V] |
-| ``V0`` | [Type #Type] |
-
-
-==Paradigms for French==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/french/ParadigmsFre.gf`` ../french/ParadigmsFre.gf]
-
-
-
-
-|| Function | Type ||
-| ``Gender`` | [Type #Type] |
-| ``masculine`` | [Gender #Gender] |
-| ``feminine`` | [Gender #Gender] |
-| ``Number`` | [Type #Type] |
-| ``singular`` | [Number #Number] |
-| ``plural`` | [Number #Number] |
-| ``accusative`` | [Prep #Prep] |
-| ``genitive`` | [Prep #Prep] |
-| ``dative`` | [Prep #Prep] |
-| ``mkPrep`` | ``Str`` ``->`` [Prep #Prep] |
-| ``mkN`` | ``(cheval`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(foie`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``mkN`` | ``(oeil,yeux`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``mkN`` | [N #N] ``->`` ``Str`` ``->`` [N #N] |
-| ``mkN2`` | [N #N] ``->`` [Prep #Prep] ``->`` [N2 #N2] |
-| ``deN2`` | [N #N] ``->`` [N2 #N2] |
-| ``aN2`` | [N #N] ``->`` [N2 #N2] |
-| ``mkN3`` | [N #N] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [N3 #N3] |
-| ``mkPN`` | ``Str`` ``->`` [PN #PN] |
-| ``mkPN`` | ``Str`` ``->`` [Gender #Gender] ``->`` [PN #PN] |
-| ``mkA`` | ``(cher`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(sec,seche`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(banal,banale,banaux,banalement`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | [A #A] ``->`` [A #A] ``->`` [A #A] |
-| ``prefixA`` | [A #A] ``->`` [A #A] |
-| ``mkA2`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2 #A2] |
-| ``mkAdv`` | ``Str`` ``->`` [Adv #Adv] |
-| ``mkAdV`` | ``Str`` ``->`` [AdV #AdV] |
-| ``mkAdA`` | ``Str`` ``->`` [AdA #AdA] |
-| ``mkV`` | ``(finir`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(jeter,jette,jettera`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | [V2 #V2] ``->`` [V #V] |
-| ``etreV`` | [V #V] ``->`` [V #V] |
-| ``reflV`` | [V #V] ``->`` [V #V] |
-| ``mkV2`` | [V #V] ``->`` [V2 #V2] ``=`` ``dirV2`` |
-| ``mkV2`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2 #V2] ``=`` ``mmkV2`` |
-| ``mkV3`` | [V #V] ``->`` [V3 #V3] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``mkV0`` | [V #V] ``->`` [V0 #V0] |
-| ``mkVS`` | [V #V] ``->`` [VS #VS] |
-| ``mkV2S`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2S #V2S] |
-| ``mkVV`` | [V #V] ``->`` [VV #VV] |
-| ``deVV`` | [V #V] ``->`` [VV #VV] |
-| ``aVV`` | [V #V] ``->`` [VV #VV] |
-| ``mkV2V`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2V #V2V] |
-| ``mkVA`` | [V #V] ``->`` [VA #VA] |
-| ``mkV2A`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2A #V2A] |
-| ``mkVQ`` | [V #V] ``->`` [VQ #VQ] |
-| ``mkV2Q`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2Q #V2Q] |
-| ``mkAS`` | [A #A] ``->`` [AS #AS] |
-| ``mkA2S`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2S #A2S] |
-| ``mkAV`` | [A #A] ``->`` [Prep #Prep] ``->`` [AV #AV] |
-| ``mkA2V`` | [A #A] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [A2V #A2V] |
-| ``V0`` | [Type #Type] |
-
-
-==Paradigms for German==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/german/ParadigmsGer.gf`` ../german/ParadigmsGer.gf]
-
-
-
-
-|| Function | Type ||
-| ``Gender`` | [Type #Type] |
-| ``masculine`` | [Gender #Gender] |
-| ``feminine`` | [Gender #Gender] |
-| ``neuter`` | [Gender #Gender] |
-| ``Case`` | [Type #Type] |
-| ``nominative`` | [Case #Case] |
-| ``accusative`` | [Case #Case] |
-| ``dative`` | [Case #Case] |
-| ``genitive`` | [Case #Case] |
-| ``Number`` | [Type #Type] |
-| ``singular`` | [Number #Number] |
-| ``plural`` | [Number #Number] |
-| ``mkN`` | ``(Stufe`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(Bild,Bilder`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``mkN`` | ``(x1,_,_,_,_,x6`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``mkN2`` | ``Str`` ``->`` [N2 #N2] |
-| ``mkN2`` | [N #N] ``->`` [N2 #N2] |
-| ``mkN2`` | [N #N] ``->`` [Prep #Prep] ``->`` [N2 #N2] |
-| ``mkN3`` | [N #N] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [N3 #N3] |
-| ``mkPN`` | ``Str`` ``->`` [PN #PN] |
-| ``mkPN`` | ``(nom,gen`` ``:`` ``Str)`` ``->`` [PN #PN] |
-| ``mkPN`` | ``(nom,acc,dat,gen`` ``:`` ``Str)`` ``->`` [PN #PN] |
-| ``mkA`` | ``Str`` ``->`` [A #A] |
-| ``mkA`` | ``(gut,besser,beste`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``invarA`` | ``Str`` ``->`` [A #A] |
-| ``mkA2`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2 #A2] |
-| ``mkAdv`` | ``Str`` ``->`` [Adv #Adv] |
-| ``mkPrep`` | ``Str`` ``->`` [Case #Case] ``->`` [Prep #Prep] |
-| ``accPrep`` | [Prep #Prep] |
-| ``datPrep`` | [Prep #Prep] |
-| ``genPrep`` | [Prep #Prep] |
-| ``von_Prep`` | [Prep #Prep] |
-| ``zu_Prep`` | [Prep #Prep] |
-| ``mkV`` | ``(fhren`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(sehen,sieht,sah,she,gesehen`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(geben,`` ``gibt,`` ``gib,`` ``gab,`` ``gbe,`` ``gegeben`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``Str`` ``->`` [V #V] ``->`` [V #V] |
-| ``no_geV`` | [V #V] ``->`` [V #V] |
-| ``seinV`` | [V #V] ``->`` [V #V] |
-| ``habenV`` | [V #V] ``->`` [V #V] |
-| ``reflV`` | [V #V] ``->`` [Case #Case] ``->`` [V #V] |
-| ``mkV2`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [Case #Case] ``->`` [V2 #V2] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``accdatV3`` | [V #V] ``->`` [V3 #V3] |
-| ``mkV0`` | [V #V] ``->`` [V0 #V0] |
-| ``mkVS`` | [V #V] ``->`` [VS #VS] |
-| ``mkV2S`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2S #V2S] |
-| ``mkVV`` | [V #V] ``->`` [VV #VV] |
-| ``mkV2V`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2V #V2V] |
-| ``mkVA`` | [V #V] ``->`` [VA #VA] |
-| ``mkV2A`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2A #V2A] |
-| ``mkVQ`` | [V #V] ``->`` [VQ #VQ] |
-| ``mkV2Q`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2Q #V2Q] |
-| ``mkAS`` | [A #A] ``->`` [AS #AS] |
-| ``mkA2S`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2S #A2S] |
-| ``mkAV`` | [A #A] ``->`` [AV #AV] |
-| ``mkA2V`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2V #A2V] |
-| ``V0`` | [Type #Type] |
-
-
-==Paradigms for Italian==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/italian/ParadigmsIta.gf`` ../italian/ParadigmsIta.gf]
-
-
-
-
-|| Function | Type ||
-| ``Gender`` | [Type #Type] |
-| ``masculine`` | [Gender #Gender] |
-| ``feminine`` | [Gender #Gender] |
-| ``Number`` | [Type #Type] |
-| ``singular`` | [Number #Number] |
-| ``plural`` | [Number #Number] |
-| ``--Prep`` | [Type #Type] |
-| ``accusative`` | [Prep #Prep] |
-| ``genitive`` | [Prep #Prep] |
-| ``dative`` | [Prep #Prep] |
-| ``mkPrep`` | ``Str`` ``->`` [Prep #Prep] |
-| ``mkN`` | ``(cane`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(carne`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``mkN`` | ``(uomo,uomini`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``mkN`` | [N #N] ``->`` ``Str`` ``->`` [N #N] |
-| ``mkN2`` | ``Str`` ``->`` [N2 #N2] |
-| ``mkN2`` | [N #N] ``->`` [Prep #Prep] ``->`` [N2 #N2] |
-| ``mkN3`` | [N #N] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [N3 #N3] |
-| ``mkPN`` | ``Str`` ``->`` [PN #PN] |
-| ``mkPN`` | ``Str`` ``->`` [Gender #Gender] ``->`` [PN #PN] |
-| ``mkA`` | ``(bianco`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(solo,sola,soli,sole,solamente`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | [A #A] ``->`` [A #A] ``->`` [A #A] |
-| ``prefixA`` | [A #A] ``->`` [A #A] ``=`` ``prefA`` |
-| ``mkA2`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2 #A2] |
-| ``mkAdv`` | ``Str`` ``->`` [Adv #Adv] |
-| ``mkAdV`` | ``Str`` ``->`` [AdV #AdV] |
-| ``mkAdA`` | ``Str`` ``->`` [AdA #AdA] |
-| ``mkV`` | ``Str`` ``->`` [V #V] |
-| ``mkV`` | [Verbo #Verbo] ``->`` [V #V] |
-| ``mkV`` | ``(udire,odo,ode,udiamo,udiro,udii,udisti,udi,udirono,odi,udito`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``essereV`` | [V #V] ``->`` [V #V] |
-| ``reflV`` | [V #V] ``->`` [V #V] |
-| ``mkV2`` | ``Str`` ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2 #V2] |
-| ``v2V`` | [V2 #V2] ``->`` [V #V] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirdirV3`` | [V #V] ``->`` [V3 #V3] |
-| ``mkV0`` | [V #V] ``->`` [V0 #V0] |
-| ``mkVS`` | [V #V] ``->`` [VS #VS] |
-| ``mkV2S`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2S #V2S] |
-| ``mkVV`` | [V #V] ``->`` [VV #VV] |
-| ``deVV`` | [V #V] ``->`` [VV #VV] |
-| ``aVV`` | [V #V] ``->`` [VV #VV] |
-| ``mkV2V`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2V #V2V] |
-| ``mkVA`` | [V #V] ``->`` [VA #VA] |
-| ``mkV2A`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2A #V2A] |
-| ``mkVQ`` | [V #V] ``->`` [VQ #VQ] |
-| ``mkV2Q`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2Q #V2Q] |
-| ``mkAS`` | [A #A] ``->`` [AS #AS] |
-| ``mkA2S`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2S #A2S] |
-| ``mkAV`` | [A #A] ``->`` [Prep #Prep] ``->`` [AV #AV] |
-| ``mkA2V`` | [A #A] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [A2V #A2V] |
-| ``V0`` | [Type #Type] |
-
-
-==Paradigms for Norwegian==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/norwegian/ParadigmsNor.gf`` ../norwegian/ParadigmsNor.gf]
-
-
-
-
-|| Function | Type ||
-| ``Gender`` | [Type #Type] |
-| ``masculine`` | [Gender #Gender] |
-| ``feminine`` | [Gender #Gender] |
-| ``neutrum`` | [Gender #Gender] |
-| ``Number`` | [Type #Type] |
-| ``singular`` | [Number #Number] |
-| ``plural`` | [Number #Number] |
-| ``Case`` | [Type #Type] |
-| ``nominative`` | [Case #Case] |
-| ``genitive`` | [Case #Case] |
-| ``mkPrep`` | ``Str`` ``->`` [Prep #Prep] |
-| ``noPrep`` | [Prep #Prep] |
-| ``mkN`` | ``Str`` ``->`` [N #N] |
-| ``mkN`` | ``Str`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``mkN`` | ``(bil,bilen`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(dreng,drengen,drenger,drengene`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN2`` | [N #N] ``->`` [Prep #Prep] ``->`` [N2 #N2] |
-| ``regN2`` | ``Str`` ``->`` [Gender #Gender] ``->`` [N2 #N2] |
-| ``mkN3`` | [N #N] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [N3 #N3] |
-| ``mkPN`` | ``Str`` ``->`` [PN #PN] |
-| ``mkPN`` | ``Str`` ``->`` [Gender #Gender] ``->`` [PN #PN] |
-| ``mkPN`` | [N #N] ``->`` [PN #PN] |
-| ``mkA`` | ``(fin`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(fin,fint`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(galen,galet,galne`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(stor,stort,store,storre,storst`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | [A #A] ``->`` [A #A] |
-| ``mkA2`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2 #A2] |
-| ``mkAdv`` | ``Str`` ``->`` [Adv #Adv] |
-| ``mkAdV`` | ``Str`` ``->`` [AdV #AdV] |
-| ``mkAdA`` | ``Str`` ``->`` [AdA #AdA] |
-| ``mkV`` | ``(snakke`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(leve,levde`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(drikke,`` ``drakk,`` ``drukket`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(spise,spiser,spises,spiste,spist,spis`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | [V #V] ``->`` ``Str`` ``->`` [V #V] |
-| ``vaereV`` | [V #V] ``->`` [V #V] |
-| ``depV`` | [V #V] ``->`` [V #V] |
-| ``reflV`` | [V #V] ``->`` [V #V] |
-| ``mkV2`` | ``Str`` ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2 #V2] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirdirV3`` | [V #V] ``->`` [V3 #V3] |
-| ``mkV0`` | [V #V] ``->`` [V0 #V0] |
-| ``mkVS`` | [V #V] ``->`` [VS #VS] |
-| ``mkV2S`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2S #V2S] |
-| ``mkVV`` | [V #V] ``->`` [VV #VV] |
-| ``mkV2V`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2V #V2V] |
-| ``mkVA`` | [V #V] ``->`` [VA #VA] |
-| ``mkV2A`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2A #V2A] |
-| ``mkVQ`` | [V #V] ``->`` [VQ #VQ] |
-| ``mkV2Q`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2Q #V2Q] |
-| ``mkAS`` | [A #A] ``->`` [AS #AS] |
-| ``mkA2S`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2S #A2S] |
-| ``mkAV`` | [A #A] ``->`` [AV #AV] |
-| ``mkA2V`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2V #A2V] |
-| ``V0`` | [Type #Type] |
-
-
-==Paradigms for Russian==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/russian/ParadigmsRus.gf`` ../russian/ParadigmsRus.gf]
-
-
-
-
-|| Function | Type ||
-| ``Gender`` | [Type #Type] |
-| ``masculine`` | [Gender #Gender] |
-| ``feminine`` | [Gender #Gender] |
-| ``neuter`` | [Gender #Gender] |
-| ``Case`` | [Type #Type] |
-| ``nominative`` | [Case #Case] |
-| ``genitive`` | [Case #Case] |
-| ``dative`` | [Case #Case] |
-| ``accusative`` | [Case #Case] |
-| ``instructive`` | [Case #Case] |
-| ``prepositional`` | [Case #Case] |
-| ``Number`` | [Type #Type] |
-| ``singular`` | [Number #Number] |
-| ``plural`` | [Number #Number] |
-| ``mkN`` | ``(karta`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(tigr`` ``:`` ``Str)`` ``->`` [Animacy #Animacy] ``->`` [N #N] |
-| ``mkN`` | ``(nomSg,`` ``genSg,`` ``datSg,`` ``accSg,`` ``instSg,`` ``preposSg,`` ``prepos2Sg,`` ``nomPl,`` ``genPl,`` ``datPl,`` ``accPl,`` ``instPl,`` ``preposPl`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [Animacy #Animacy] ``->`` [N #N] |
-| ``mkN2`` | [N #N] ``->`` [N2 #N2] |
-| ``mkN2`` | [N #N] ``->`` [Prep #Prep] ``->`` [N2 #N2] |
-| ``mkN3`` | [N #N] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [N3 #N3] |
-| ``mkPN`` | ``Str`` ``->`` [Gender #Gender] ``->`` [Animacy #Animacy] ``->`` [PN #PN] |
-| ``nounPN`` | [N #N] ``->`` [PN #PN] |
-| ``mkA`` | ``(positive`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(positive,`` ``comparative`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA2`` | [A #A] ``->`` ``Str`` ``->`` [Case #Case] ``->`` [A2 #A2] |
-| ``mkAdv`` | ``Str`` ``->`` [Adv #Adv] |
-| ``mkV`` | [Aspect #Aspect] ``->`` ``(presentSgP1,presentSgP2,presentSgP3,`` |
-| ``pastSgP1,imperative,infinitive`` | ``Str)`` ``->`` [V #V] |
-| ``mkV2`` | [V #V] ``->`` ``Str`` ``->`` [Case #Case] ``->`` [V2 #V2] |
-| ``mkV3`` | [V #V] ``->`` ``Str`` ``->`` ``Str`` ``->`` [Case #Case] ``->`` [Case #Case] ``->`` [V3 #V3] |
-| ``dirV2`` | [V #V] ``->`` [V2 #V2] |
-| ``tvDirDir`` | [V #V] ``->`` [V3 #V3] |
-
-
-==Paradigms for Spanish==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/spanish/ParadigmsSpa.gf`` ../spanish/ParadigmsSpa.gf]
-
-
-
-
-|| Function | Type ||
-| ``Gender`` | [Type #Type] |
-| ``masculine`` | [Gender #Gender] |
-| ``feminine`` | [Gender #Gender] |
-| ``Number`` | [Type #Type] |
-| ``singular`` | [Number #Number] |
-| ``plural`` | [Number #Number] |
-| ``accusative`` | [Prep #Prep] |
-| ``genitive`` | [Prep #Prep] |
-| ``dative`` | [Prep #Prep] |
-| ``mkPrep`` | ``Str`` ``->`` [Prep #Prep] |
-| ``mkN`` | ``(luz`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``Str`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``mkN`` | ``(baston,bastones`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``compN`` | [N #N] ``->`` ``Str`` ``->`` [N #N] |
-| ``mkN2`` | [N #N] ``->`` [Prep #Prep] ``->`` [N2 #N2] |
-| ``deN2`` | [N #N] ``->`` [N2 #N2] |
-| ``aN2`` | [N #N] ``->`` [N2 #N2] |
-| ``mkN3`` | [N #N] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [N3 #N3] |
-| ``mkPN`` | ``(Anna`` ``:`` ``Str)`` ``->`` [PN #PN] |
-| ``mkPN`` | ``(Pilar`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [PN #PN] |
-| ``mkA`` | ``(util`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(solo,sola,solos,solas,solamente`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(bueno`` ``:`` ``A)`` ``->`` ``(mejor`` ``:`` ``A)`` ``->`` [A #A] |
-| ``prefixA`` | [A #A] ``->`` [A #A] |
-| ``mkA2`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2 #A2] |
-| ``mkAdv`` | ``Str`` ``->`` [Adv #Adv] |
-| ``mkAdV`` | ``Str`` ``->`` [AdV #AdV] |
-| ``mkAdA`` | ``Str`` ``->`` [AdA #AdA] |
-| ``mkV`` | ``(pagar`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(mostrar,muestro`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | [Verbum #Verbum] ``->`` [V #V] |
-| ``reflV`` | [V #V] ``->`` [V #V] |
-| ``special_ppV`` | [V #V] ``->`` ``Str`` ``->`` [V #V] |
-| ``mkV2`` | ``Str`` ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2 #V2] |
-| ``v2V`` | [V2 #V2] ``->`` [V #V] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``dirdirV3`` | [V #V] ``->`` [V3 #V3] |
-| ``mkV0`` | [V #V] ``->`` [V0 #V0] |
-| ``mkVS`` | [V #V] ``->`` [VS #VS] |
-| ``mkV2S`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2S #V2S] |
-| ``mkVV`` | [V #V] ``->`` [VV #VV] |
-| ``deVV`` | [V #V] ``->`` [VV #VV] |
-| ``aVV`` | [V #V] ``->`` [VV #VV] |
-| ``mkV2V`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2V #V2V] |
-| ``mkVA`` | [V #V] ``->`` [VA #VA] |
-| ``mkV2A`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2A #V2A] |
-| ``mkVQ`` | [V #V] ``->`` [VQ #VQ] |
-| ``mkV2Q`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2Q #V2Q] |
-| ``mkAS`` | [A #A] ``->`` [AS #AS] |
-| ``mkA2S`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2S #A2S] |
-| ``mkAV`` | [A #A] ``->`` [Prep #Prep] ``->`` [AV #AV] |
-| ``mkA2V`` | [A #A] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [A2V #A2V] |
-| ``V0`` | [Type #Type] |
-
-
-==Paradigms for Swedish==
-#LParadigms
-
-
-source [``http://www.cs.chalmers.se/~aarne/GF/lib/resource/swedish/ParadigmsSwe.gf`` ../swedish/ParadigmsSwe.gf]
-
-
-
-
-|| Function | Type ||
-| ``Gender`` | [Type #Type] |
-| ``utrum`` | [Gender #Gender] |
-| ``neutrum`` | [Gender #Gender] |
-| ``Number`` | [Type #Type] |
-| ``singular`` | [Number #Number] |
-| ``plural`` | [Number #Number] |
-| ``Case`` | [Type #Type] |
-| ``nominative`` | [Case #Case] |
-| ``genitive`` | [Case #Case] |
-| ``mkPrep`` | ``Str`` ``->`` [Prep #Prep] |
-| ``noPrep`` | [Prep #Prep] |
-| ``mkN`` | ``(apa`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(lik`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [N #N] |
-| ``mkN`` | ``(nyckel,nycklar`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN`` | ``(museum,museet,museer,museerna`` ``:`` ``Str)`` ``->`` [N #N] |
-| ``mkN2`` | ``Str`` ``->`` [N2 #N2] |
-| ``mkN2`` | [N #N] ``->`` [Prep #Prep] ``->`` [N2 #N2] |
-| ``mkN3`` | [N #N] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [N3 #N3] |
-| ``mkPN`` | ``Str`` ``->`` [PN #PN] |
-| ``mkPN`` | ``Str`` ``->`` [Gender #Gender] ``->`` [PN #PN] |
-| ``mkPN`` | ``(jesus,jesu`` ``:`` ``Str)`` ``->`` [Gender #Gender] ``->`` [PN #PN] |
-| ``mkA`` | ``(billig`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(bred,brett`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(tung,tyngre,tyngst`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(god,gott,goda,battre,bast`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``mkA`` | ``(liten,litet,lilla,sma,mindre,minst,minsta`` ``:`` ``Str)`` ``->`` [A #A] |
-| ``compoundA`` | [A #A] ``->`` [A #A] |
-| ``mkA2`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2 #A2] |
-| ``mkAdv`` | ``Str`` ``->`` [Adv #Adv] |
-| ``mkAdV`` | ``Str`` ``->`` [AdV #AdV] |
-| ``mkAdA`` | ``Str`` ``->`` [AdA #AdA] |
-| ``mkV`` | ``(stmmer`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(dricka,drack,druckit`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | ``(g,gr,g,gick,gtt,gngen`` ``:`` ``Str)`` ``->`` [V #V] |
-| ``mkV`` | [V #V] ``->`` ``Str`` ``->`` [V #V] |
-| ``depV`` | [V #V] ``->`` [V #V] |
-| ``reflV`` | [V #V] ``->`` [V #V] |
-| ``mkV2`` | ``Str`` ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [V2 #V2] |
-| ``mkV2`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2 #V2] |
-| ``mkV3`` | ``Str`` ``->`` [V3 #V3] |
-| ``mkV3`` | [V #V] ``->`` [V3 #V3] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``mkV3`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V3 #V3] |
-| ``mkV0`` | [V #V] ``->`` [V0 #V0] |
-| ``mkVS`` | [V #V] ``->`` [VS #VS] |
-| ``mkV2S`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2S #V2S] |
-| ``mkVV`` | [V #V] ``->`` [VV #VV] |
-| ``mkV2V`` | [V #V] ``->`` [Prep #Prep] ``->`` [Prep #Prep] ``->`` [V2V #V2V] |
-| ``mkVA`` | [V #V] ``->`` [VA #VA] |
-| ``mkV2A`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2A #V2A] |
-| ``mkVQ`` | [V #V] ``->`` [VQ #VQ] |
-| ``mkV2Q`` | [V #V] ``->`` [Prep #Prep] ``->`` [V2Q #V2Q] |
-| ``mkAS`` | [A #A] ``->`` [AS #AS] |
-| ``mkA2S`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2S #A2S] |
-| ``mkAV`` | [A #A] ``->`` [AV #AV] |
-| ``mkA2V`` | [A #A] ``->`` [Prep #Prep] ``->`` [A2V #A2V] |
-| ``V0`` | [Type #Type] |
-
-
-
-
-%!include: synopsis-browse.txt
-
-
-=An Example of Usage=
-
-
-%!include: synopsis-example.txt
-
diff --git a/deprecated/old-lib/resource/english/AdjectiveEng.gf b/deprecated/old-lib/resource/english/AdjectiveEng.gf
deleted file mode 100644
index 19dd5dddc..000000000
--- a/deprecated/old-lib/resource/english/AdjectiveEng.gf
+++ /dev/null
@@ -1,38 +0,0 @@
-concrete AdjectiveEng of Adjective = CatEng ** open ResEng, Prelude in {
-
- lin
-
- PositA a = {
- s = \\_ => a.s ! AAdj Posit ;
- isPre = True
- } ;
- ComparA a np = {
- s = \\_ => a.s ! AAdj Compar ++ "than" ++ np.s ! Nom ;
- isPre = False
- } ;
-
--- $SuperlA$ belongs to determiner syntax in $Noun$.
-
- ComplA2 a np = {
- s = \\_ => a.s ! AAdj Posit ++ a.c2 ++ np.s ! Acc ;
- isPre = False
- } ;
-
- ReflA2 a = {
- s = \\ag => a.s ! AAdj Posit ++ a.c2 ++ reflPron ! ag ;
- isPre = False
- } ;
-
- SentAP ap sc = {
- s = \\a => ap.s ! a ++ sc.s ;
- isPre = False
- } ;
-
- AdAP ada ap = {
- s = \\a => ada.s ++ ap.s ! a ;
- isPre = ap.isPre
- } ;
-
- UseA2 a = a ;
-
-}
diff --git a/deprecated/old-lib/resource/english/AdverbEng.gf b/deprecated/old-lib/resource/english/AdverbEng.gf
deleted file mode 100644
index ec7d46321..000000000
--- a/deprecated/old-lib/resource/english/AdverbEng.gf
+++ /dev/null
@@ -1,21 +0,0 @@
-concrete AdverbEng of Adverb = CatEng ** open ResEng, Prelude in {
-
- lin
- PositAdvAdj a = {s = a.s ! AAdv} ;
- ComparAdvAdj cadv a np = {
- s = cadv.s ++ a.s ! AAdv ++ "than" ++ np.s ! Nom
- } ;
- ComparAdvAdjS cadv a s = {
- s = cadv.s ++ a.s ! AAdv ++ "than" ++ s.s
- } ;
-
- PrepNP prep np = {s = prep.s ++ np.s ! Acc} ;
-
- AdAdv = cc2 ;
-
- SubjS = cc2 ;
----b AdvSC s = s ; --- this rule give stack overflow in ordinary parsing
-
- AdnCAdv cadv = {s = cadv.s ++ "than"} ;
-
-}
diff --git a/deprecated/old-lib/resource/english/AllEng.gf b/deprecated/old-lib/resource/english/AllEng.gf
deleted file mode 100644
index 88b6e21f6..000000000
--- a/deprecated/old-lib/resource/english/AllEng.gf
+++ /dev/null
@@ -1,9 +0,0 @@
---# -path=.:../abstract:../common:prelude
-
-concrete AllEng of AllEngAbs =
- LangEng,
- IrregEng-[
- blow_V,burn_V,come_V,dig_V,fall_V,fly_V,freeze_V,go_V,lie_V,run_V,
- sew_V,sing_V,sit_V,sleep_V,spit_V,stand_V,swell_V,swim_V,think_V],
- ExtraEng
- ** {} ;
diff --git a/deprecated/old-lib/resource/english/AllEngAbs.gf b/deprecated/old-lib/resource/english/AllEngAbs.gf
deleted file mode 100644
index 687d573a5..000000000
--- a/deprecated/old-lib/resource/english/AllEngAbs.gf
+++ /dev/null
@@ -1,9 +0,0 @@
---# -path=.:../abstract:../common:prelude
-
-abstract AllEngAbs =
- Lang,
- IrregEngAbs-[
- blow_V,burn_V,come_V,dig_V,fall_V,fly_V,freeze_V,go_V,lie_V,run_V,
- sew_V,sing_V,sit_V,sleep_V,spit_V,stand_V,swell_V,swim_V,think_V],
- ExtraEngAbs
- ** {} ;
diff --git a/deprecated/old-lib/resource/english/BackwardEng.gf b/deprecated/old-lib/resource/english/BackwardEng.gf
deleted file mode 100644
index 630626f0b..000000000
--- a/deprecated/old-lib/resource/english/BackwardEng.gf
+++ /dev/null
@@ -1,76 +0,0 @@
-concrete BackwardEng of Backward = CatEng ** open ResEng in {
-
- flags optimize=all_subs ;
-
- lin
-
--- A repository of obsolete constructs, needed for backward compatibility.
--- They create spurious ambiguities if used in combination with Lang.
-
--- from Verb 19/4/2008
-
- ComplV2 v np = insertObj (\\_ => v.c2 ++ np.s ! Acc) (predV v) ;
- ComplV3 v np np2 =
- insertObj (\\_ => v.c2 ++ np.s ! Acc ++ v.c3 ++ np2.s ! Acc) (predV v) ;
- ComplV2V v np vp =
- insertObj (\\a => infVP v.isAux vp a)
- (insertObj (\\_ => v.c2 ++ np.s ! Acc) (predV v)) ;
- ComplV2S v np s =
- insertObj (\\_ => conjThat ++ s.s)
- (insertObj (\\_ => v.c2 ++ np.s ! Acc) (predV v)) ;
- ComplV2Q v np q =
- insertObj (\\_ => q.s ! QIndir)
- (insertObj (\\_ => v.c2 ++ np.s ! Acc) (predV v)) ;
- ComplV2A v np ap =
- insertObj (\\_ => v.c2 ++ np.s ! Acc ++ ap.s ! np.a) (predV v) ;
-
- ReflV2 v = insertObj (\\a => v.c2 ++ reflPron ! a) (predV v) ;
-
--- from Sentence 19/4/2008
-
- SlashV2 np v2 =
- mkClause (np.s ! Nom) np.a (predV v2) ** {c2 = v2.c2} ;
-
- SlashVVV2 np vv v2 =
- mkClause (np.s ! Nom) np.a
- (insertObj (\\a => infVP vv.isAux (predV v2) a) (predVV vv)) **
- {c2 = v2.c2} ;
-
--- from Noun 19/4/2008
-
- NumInt n = {s = n.s ; n = Pl} ;
- OrdInt n = {s = n.s ++ "th"} ; --- DEPRECATED
-
- DetSg quant ord = {
- s = quant.s ! Sg ++ ord.s ;
- n = Sg
- } ;
-
- DetPl quant num ord = {
- s = quant.s ! num.n ++ num.s ++ ord.s ;
- n = num.n
- } ;
-
- NoNum = {s = []; n = Pl } ;
-
- DefArt = {s = \\_ => artDef} ;
-
- IndefArt = {
- s = table {
- Sg => artIndef ;
- Pl => []
- }
- } ;
-
- MassDet = {s = \\_ => []} ;
-
-
-
--- from Structural 19/4/2008
-
- that_NP = regNP "that" Sg ;
- these_NP = regNP "these" Pl ;
- this_NP = regNP "this" Sg ;
- those_NP = regNP "those" Pl ;
-
-}
diff --git a/deprecated/old-lib/resource/english/CatEng.gf b/deprecated/old-lib/resource/english/CatEng.gf
deleted file mode 100644
index bbc367f6c..000000000
--- a/deprecated/old-lib/resource/english/CatEng.gf
+++ /dev/null
@@ -1,89 +0,0 @@
-concrete CatEng of Cat = CommonX ** open ResEng, Prelude in {
-
- flags optimize=all_subs ;
-
- lincat
-
--- Tensed/Untensed
-
- S = {s : Str} ;
- QS = {s : QForm => Str} ;
- RS = {s : Agr => Str ; c : Case} ; -- c for it clefts
- SSlash = {s : Str ; c2 : Str} ;
-
--- Sentence
-
- Cl = {s : ResEng.Tense => Anteriority => CPolarity => Order => Str} ;
- ClSlash = {
- s : ResEng.Tense => Anteriority => CPolarity => Order => Str ;
- c2 : Str
- } ;
- Imp = {s : CPolarity => ImpForm => Str} ;
-
--- Question
-
- QCl = {s : ResEng.Tense => Anteriority => CPolarity => QForm => Str} ;
- IP = {s : Case => Str ; n : Number} ;
- IComp = {s : Str} ;
- IDet = {s : Str ; n : Number} ;
- IQuant = {s : Number => Str} ;
-
--- Relative
-
- RCl = {
- s : ResEng.Tense => Anteriority => CPolarity => Agr => Str ;
- c : Case
- } ;
- RP = {s : RCase => Str ; a : RAgr} ;
-
--- Verb
-
- VP = ResEng.VP ;
- VPSlash = ResEng.VP ** {c2 : Str} ;
- Comp = {s : Agr => Str} ;
-
--- Adjective
-
- AP = {s : Agr => Str ; isPre : Bool} ;
-
--- Noun
-
- CN = {s : Number => Case => Str ; g : Gender} ;
- NP, Pron = {s : Case => Str ; a : Agr} ;
- Det = {s : Str ; n : Number} ;
- Predet, Ord = {s : Str} ;
- Num = {s : Str; n : Number ; hasCard : Bool} ;
- Card = {s : Str; n : Number} ;
- Quant = {s : Number => Str} ;
- Art = {s : Bool => Number => Str} ;
-
--- Numeral
-
- Numeral = {s : CardOrd => Str ; n : Number} ;
- Digits = {s : CardOrd => Str ; n : Number ; tail : DTail} ;
-
--- Structural
-
- Conj = {s1,s2 : Str ; n : Number} ;
----b Conj = {s : Str ; n : Number} ;
----b DConj = {s1,s2 : Str ; n : Number} ;
- Subj = {s : Str} ;
- Prep = {s : Str} ;
-
--- Open lexical classes, e.g. Lexicon
-
- V, VS, VQ, VA = Verb ; -- = {s : VForm => Str} ;
- V2, V2A, V2Q, V2S = Verb ** {c2 : Str} ;
- V3 = Verb ** {c2, c3 : Str} ;
- VV = {s : VVForm => Str ; isAux : Bool} ;
- V2V = Verb ** {c2 : Str ; isAux : Bool} ;
-
- A = {s : AForm => Str} ;
- A2 = {s : AForm => Str ; c2 : Str} ;
-
- N = {s : Number => Case => Str ; g : Gender} ;
- N2 = {s : Number => Case => Str ; g : Gender} ** {c2 : Str} ;
- N3 = {s : Number => Case => Str ; g : Gender} ** {c2,c3 : Str} ;
- PN = {s : Case => Str ; g : Gender} ;
-
-}
diff --git a/deprecated/old-lib/resource/english/CompatibilityEng.gf b/deprecated/old-lib/resource/english/CompatibilityEng.gf
deleted file mode 100644
index 28ede2a17..000000000
--- a/deprecated/old-lib/resource/english/CompatibilityEng.gf
+++ /dev/null
@@ -1,11 +0,0 @@
---# -path=.:../abstract:../common
-
-concrete CompatibilityEng of Compatibility = CatEng ** open Prelude, ResEng in {
-
--- from Noun 19/4/2008
-
-lin
- NumInt n = {s = n.s ; n = Pl ; hasCard = True} ;
- OrdInt n = {s = n.s ++ "th"} ;
-
-}
diff --git a/deprecated/old-lib/resource/english/ConjunctionEng.gf b/deprecated/old-lib/resource/english/ConjunctionEng.gf
deleted file mode 100644
index 269ae5f80..000000000
--- a/deprecated/old-lib/resource/english/ConjunctionEng.gf
+++ /dev/null
@@ -1,60 +0,0 @@
-concrete ConjunctionEng of Conjunction =
- CatEng ** open ResEng, Coordination, Prelude in {
-
- flags optimize=all_subs ;
-
- lin
-
- ConjS = conjunctDistrSS ;
-
- ConjAdv = conjunctDistrSS ;
-
- ConjNP conj ss = conjunctDistrTable Case conj ss ** {
- a = conjAgr (agrP3 conj.n) ss.a
- } ;
-
- ConjAP conj ss = conjunctDistrTable Agr conj ss ** {
- isPre = ss.isPre
- } ;
-
-{---b
-
- ConjS = conjunctSS ;
- DConjS = conjunctDistrSS ;
-
- ConjAdv = conjunctSS ;
- DConjAdv = conjunctDistrSS ;
-
- ConjNP conj ss = conjunctTable Case conj ss ** {
- a = conjAgr (agrP3 conj.n) ss.a
- } ;
- DConjNP conj ss = conjunctDistrTable Case conj ss ** {
- a = conjAgr (agrP3 conj.n) ss.a
- } ;
-
- ConjAP conj ss = conjunctTable Agr conj ss ** {
- isPre = ss.isPre
- } ;
- DConjAP conj ss = conjunctDistrTable Agr conj ss ** {
- isPre = ss.isPre
- } ;
--}
-
--- These fun's are generated from the list cat's.
-
- BaseS = twoSS ;
- ConsS = consrSS comma ;
- BaseAdv = twoSS ;
- ConsAdv = consrSS comma ;
- BaseNP x y = twoTable Case x y ** {a = conjAgr x.a y.a} ;
- ConsNP xs x = consrTable Case comma xs x ** {a = conjAgr xs.a x.a} ;
- BaseAP x y = twoTable Agr x y ** {isPre = andB x.isPre y.isPre} ;
- ConsAP xs x = consrTable Agr comma xs x ** {isPre = andB xs.isPre x.isPre} ;
-
- lincat
- [S] = {s1,s2 : Str} ;
- [Adv] = {s1,s2 : Str} ;
- [NP] = {s1,s2 : Case => Str ; a : Agr} ;
- [AP] = {s1,s2 : Agr => Str ; isPre : Bool} ;
-
-}
diff --git a/deprecated/old-lib/resource/english/ExtraEng.gf b/deprecated/old-lib/resource/english/ExtraEng.gf
deleted file mode 100644
index 7f6b3fde3..000000000
--- a/deprecated/old-lib/resource/english/ExtraEng.gf
+++ /dev/null
@@ -1,53 +0,0 @@
-concrete ExtraEng of ExtraEngAbs = CatEng **
- open ResEng, Coordination, Prelude in {
-
- lin
- GenNP np = {s = \\_ => np.s ! Gen} ;
- ComplBareVS v s = insertObj (\\_ => s.s) (predV v) ;
-
- StrandRelSlash rp slash = {
- s = \\t,a,p,ag =>
- rp.s ! RC (fromAgr ag).g Acc ++ slash.s ! t ! a ! p ! ODir ++ slash.c2 ;
- c = Acc
- } ;
- EmptyRelSlash rp slash = {
- s = \\t,a,p,_ => slash.s ! t ! a ! p ! ODir ++ slash.c2 ;
- c = Acc
- } ;
-
- StrandQuestSlash ip slash =
- {s = \\t,a,b,q =>
- (mkQuestion (ss (ip.s ! Acc)) slash).s ! t ! a ! b ! q ++ slash.c2
- };
-
- lincat
- VPI = {s : VPIForm => Agr => Str} ;
- [VPI] = {s1,s2 : VPIForm => Agr => Str} ;
-
- lin
- BaseVPI = twoTable2 VPIForm Agr ;
- ConsVPI = consrTable2 VPIForm Agr comma ;
-
- MkVPI vp = {
- s = \\v,a => vp.ad ++ vp.inf ++ vp.s2 ! a
- } ;
- ConjVPI = conjunctDistrTable2 VPIForm Agr ;
- ComplVPIVV vv vpi =
- insertObj (\\a => (if_then_Str vv.isAux [] "to") ++ vpi.s ! VPIInf ! a) (predVV vv) ;
-
- UncNegCl t a cl = {s = t.s ++ a.s ++ cl.s ! t.t ! a.a ! neg ! ODir} ;
- UncNegQCl t a cl = {s = \\q => t.s ++ a.s ++ cl.s ! t.t ! a.a ! neg !q} ;
- UncNegRCl t a cl = {
- s = \\r => t.s ++ a.s ++ cl.s ! t.t ! a.a ! neg ! r ;
- c = cl.c
- } ;
- UncNegImpSg imp = {s = imp.s ! neg ! ImpF Sg False} ;
- UncNegImpPl imp = {s = imp.s ! neg ! ImpF Pl False} ;
-
- CompoundCN a b = {s = \\n,c => a.s ! Sg ! Nom ++ b.s ! n ! c ; g = b.g} ;
-
-
- oper
- neg = CNeg False ;
-
-}
diff --git a/deprecated/old-lib/resource/english/ExtraEngAbs.gf b/deprecated/old-lib/resource/english/ExtraEngAbs.gf
deleted file mode 100644
index 9ee849627..000000000
--- a/deprecated/old-lib/resource/english/ExtraEngAbs.gf
+++ /dev/null
@@ -1,16 +0,0 @@
-abstract ExtraEngAbs = Extra ** {
-
--- uncontracted negations; contracted are the default
- fun
- UncNegCl : Tense -> Ant -> Cl -> S ;
- UncNegQCl : Tense -> Ant -> QCl -> QS ;
- UncNegRCl : Tense -> Ant -> RCl -> RS ;
-
- UncNegImpSg : Imp -> Utt; -- do not help yourself
- UncNegImpPl : Imp -> Utt; -- do not help yourselves
-
--- freely compounded nouns
-
- CompoundCN : CN -> CN -> CN ; -- rock album
-
-}
diff --git a/deprecated/old-lib/resource/english/GrammarEng.gf b/deprecated/old-lib/resource/english/GrammarEng.gf
deleted file mode 100644
index 932dd9821..000000000
--- a/deprecated/old-lib/resource/english/GrammarEng.gf
+++ /dev/null
@@ -1,21 +0,0 @@
---# -path=.:../abstract:../common:prelude
-
-concrete GrammarEng of Grammar =
- NounEng,
- VerbEng,
- AdjectiveEng,
- AdverbEng,
- NumeralEng,
- SentenceEng,
- QuestionEng,
- RelativeEng,
- ConjunctionEng,
- PhraseEng,
- TextX,
- StructuralEng,
- IdiomEng
- ** {
-
-flags startcat = Phr ; unlexer = text ; lexer = text ;
-
-} ;
diff --git a/deprecated/old-lib/resource/english/IdiomEng.gf b/deprecated/old-lib/resource/english/IdiomEng.gf
deleted file mode 100644
index 87fb03136..000000000
--- a/deprecated/old-lib/resource/english/IdiomEng.gf
+++ /dev/null
@@ -1,30 +0,0 @@
-concrete IdiomEng of Idiom = CatEng ** open Prelude, ResEng in {
-
- flags optimize=all_subs ;
-
- lin
- ImpersCl vp = mkClause "it" (agrP3 Sg) vp ;
- GenericCl vp = mkClause "one" (agrP3 Sg) vp ;
-
- CleftNP np rs = mkClause "it" (agrP3 Sg)
- (insertObj (\\_ => rs.s ! np.a)
- (insertObj (\\_ => np.s ! rs.c) (predAux auxBe))) ;
-
- CleftAdv ad s = mkClause "it" (agrP3 Sg)
- (insertObj (\\_ => conjThat ++ s.s)
- (insertObj (\\_ => ad.s) (predAux auxBe))) ;
-
- ExistNP np =
- mkClause "there" (agrP3 (fromAgr np.a).n)
- (insertObj (\\_ => np.s ! Acc) (predAux auxBe)) ;
-
- ExistIP ip =
- mkQuestion (ss (ip.s ! Nom))
- (mkClause "there" (agrP3 ip.n) (predAux auxBe)) ;
-
- ProgrVP vp = insertObj (\\a => vp.ad ++ vp.prp ++ vp.s2 ! a) (predAux auxBe) ;
-
- ImpPl1 vp = {s = "let's" ++ infVP True vp (AgP1 Pl)} ;
-
-}
-
diff --git a/deprecated/old-lib/resource/english/IrregEng.gf b/deprecated/old-lib/resource/english/IrregEng.gf
deleted file mode 100644
index 2b90da1c4..000000000
--- a/deprecated/old-lib/resource/english/IrregEng.gf
+++ /dev/null
@@ -1,181 +0,0 @@
---# -path=.:prelude:../abstract:../common
-
-concrete IrregEng of IrregEngAbs = CatEng ** open ParadigmsEng in {
-
-flags optimize=values ;
-
- lin
- awake_V = irregV "awake" "awoke" "awoken" ;
- bear_V = irregV "bear" "bore" "born" ;
- beat_V = irregV "beat" "beat" "beat" ;
- become_V = irregV "become" "became" "become" ;
- begin_V = irregV "begin" "began" "begun" ;
- bend_V = irregV "bend" "bent" "bent" ;
- beset_V = irregV "beset" "beset" "beset" ;
- bet_V = irregDuplV "bet" "bet" "bet" ;
- bid_V = irregDuplV "bid" (variants {"bid" ; "bade"}) (variants {"bid" ; "bidden"}) ;
- bind_V = irregV "bind" "bound" "bound" ;
- bite_V = irregV "bite" "bit" "bitten" ;
- bleed_V = irregV "bleed" "bled" "bled" ;
- blow_V = irregV "blow" "blew" "blown" ;
- break_V = irregV "break" "broke" "broken" ;
- breed_V = irregV "breed" "bred" "bred" ;
- bring_V = irregV "bring" "brought" "brought" ;
- broadcast_V = irregV "broadcast" "broadcast" "broadcast" ;
- build_V = irregV "build" "built" "built" ;
- burn_V = irregV "burn" (variants {"burned" ; "burnt"}) (variants {"burned" ; "burnt"}) ;
- burst_V = irregV "burst" "burst" "burst" ;
- buy_V = irregV "buy" "bought" "bought" ;
- cast_V = irregV "cast" "cast" "cast" ;
- catch_V = irregV "catch" "caught" "caught" ;
- choose_V = irregV "choose" "chose" "chosen" ;
- cling_V = irregV "cling" "clung" "clung" ;
- come_V = irregV "come" "came" "come" ;
- cost_V = irregV "cost" "cost" "cost" ;
- creep_V = irregV "creep" "crept" "crept" ;
- cut_V = irregDuplV "cut" "cut" "cut" ;
- deal_V = irregV "deal" "dealt" "dealt" ;
- dig_V = irregDuplV "dig" "dug" "dug" ;
- dive_V = irregV "dive" (variants {"dived" ; "dove"}) "dived" ;
- do_V = mk5V "do" "does" "did" "done" "doing" ;
- draw_V = irregV "draw" "drew" "drawn" ;
- dream_V = irregV "dream" (variants {"dreamed" ; "dreamt"}) (variants {"dreamed" ; "dreamt"}) ;
- drive_V = irregV "drive" "drove" "driven" ;
- drink_V = irregV "drink" "drank" "drunk" ;
- eat_V = irregV "eat" "ate" "eaten" ;
- fall_V = irregV "fall" "fell" "fallen" ;
- feed_V = irregV "feed" "fed" "fed" ;
- feel_V = irregV "feel" "felt" "felt" ;
- fight_V = irregV "fight" "fought" "fought" ;
- find_V = irregV "find" "found" "found" ;
- fit_V = irregDuplV "fit" "fit" "fit" ;
- flee_V = irregV "flee" "fled" "fled" ;
- fling_V = irregV "fling" "flung" "flung" ;
- fly_V = irregV "fly" "flew" "flown" ;
- forbid_V = irregDuplV "forbid" "forbade" "forbidden" ;
- forget_V = irregDuplV "forget" "forgot" "forgotten" ;
- forgive_V = irregV "forgive" "forgave" "forgiven" ;
- forsake_V = irregV "forsake" "forsook" "forsaken" ;
- freeze_V = irregV "freeze" "froze" "frozen" ;
- get_V = irregDuplV "get" "got" "gotten" ;
- give_V = irregV "give" "gave" "given" ;
- go_V = mk5V "go" "goes" "went" "gone" "going" ;
- grind_V = irregV "grind" "ground" "ground" ;
- grow_V = irregV "grow" "grew" "grown" ;
- hang_V = irregV "hang" "hung" "hung" ;
- have_V = mk5V "have" "has" "had" "had" "having" ;
- hear_V = irregV "hear" "heard" "heard" ;
- hide_V = irregV "hide" "hid" "hidden" ;
- hit_V = irregDuplV "hit" "hit" "hit" ;
- hold_V = irregV "hold" "held" "held" ;
- hurt_V = irregV "hurt" "hurt" "hurt" ;
- keep_V = irregV "keep" "kept" "kept" ;
- kneel_V = irregV "kneel" "knelt" "knelt" ;
- knit_V = irregDuplV "knit" "knit" "knit" ;
- know_V = irregV "know" "knew" "know" ;
- lay_V = irregV "lay" "laid" "laid" ;
- lead_V = irregV "lead" "led" "led" ;
- leap_V = irregV "leap" (variants {"leaped" ; "lept"}) (variants {"leaped" ; "lept"}) ;
- learn_V = irregV "learn" (variants {"learned" ; "learnt"}) (variants {"learned" ; "learnt"}) ;
- leave_V = irregV "leave" "left" "left" ;
- lend_V = irregV "lend" "lent" "lent" ;
- let_V = irregDuplV "let" "let" "let" ;
- lie_V = irregV "lie" "lay" "lain" ;
- light_V = irregV "light" (variants {"lighted" ; "lit"}) "lighted" ;
- lose_V = irregV "lose" "lost" "lost" ;
- make_V = irregV "make" "made" "made" ;
- mean_V = irregV "mean" "meant" "meant" ;
- meet_V = irregV "meet" "met" "met" ;
- misspell_V = irregV "misspell" (variants {"misspelled" ; "misspelt"}) (variants {"misspelled" ; "misspelt"}) ;
- mistake_V = irregV "mistake" "mistook" "mistaken" ;
- mow_V = irregV "mow" "mowed" (variants {"mowed" ; "mown"}) ;
- overcome_V = irregV "overcome" "overcame" "overcome" ;
- overdo_V = mk5V "overdo" "overdoes" "overdid" "overdone" "overdoing" ;
- overtake_V = irregV "overtake" "overtook" "overtaken" ;
- overthrow_V = irregV "overthrow" "overthrew" "overthrown" ;
- pay_V = irregV "pay" "paid" "paid" ;
- plead_V = irregV "plead" "pled" "pled" ;
- prove_V = irregV "prove" "proved" (variants {"proved" ; "proven"}) ;
- put_V = irregDuplV "put" "put" "put" ;
- quit_V = irregDuplV "quit" "quit" "quit" ;
- read_V = irregV "read" "read" "read" ;
- rid_V = irregDuplV "rid" "rid" "rid" ;
- ride_V = irregV "ride" "rode" "ridden" ;
- ring_V = irregV "ring" "rang" "rung" ;
- rise_V = irregV "rise" "rose" "risen" ;
- run_V = irregDuplV "run" "ran" "run" ;
- saw_V = irregV "saw" "sawed" (variants {"sawed" ; "sawn"}) ;
- say_V = irregV "say" "said" "said" ;
- see_V = irregV "see" "saw" "seen" ;
- seek_V = irregV "seek" "sought" "sought" ;
- sell_V = irregV "sell" "sold" "sold" ;
- send_V = irregV "send" "sent" "sent" ;
- set_V = irregDuplV "set" "set" "set" ;
- sew_V = irregV "sew" "sewed" (variants {"sewed" ; "sewn"}) ;
- shake_V = irregV "shake" "shook" "shaken" ;
- shave_V = irregV "shave" "shaved" (variants {"shaved" ; "shaven"}) ;
- shear_V = irregV "shear" "shore" "shorn" ;
- shed_V = irregDuplV "shed" "shed" "shed" ;
- shine_V = irregV "shine" "shone" "shone" ;
- shoe_V = irregV "shoe" "shoed" (variants {"shoed" ; "shod"}) ;
- shoot_V = irregV "shoot" "shot" "shot" ;
- show_V = irregV "show" "showed" (variants {"showed" ; "shown"}) ;
- shrink_V = irregV "shrink" "shrank" "shrunk" ;
- shut_V = irregDuplV "shut" "shut" "shut" ;
- sing_V = irregV "sing" "sang" "sung" ;
- sink_V = irregV "sink" "sank" "sunk" ;
- sit_V = irregDuplV "sit" "sat" "sat" ;
- sleep_V = irregV "sleep" "slept" "slept" ;
- slay_V = irregV "slay" "slew" "slain" ;
- slide_V = irregV "slide" "slid" "slid" ;
- sling_V = irregV "sling" "slung" "slung" ;
- slit_V = irregDuplV "slit" "slit" "slit" ;
- smite_V = irregV "smite" "smote" "smitten" ;
- sow_V = irregV "sow" "sowed" (variants {"sowed" ; "sown"}) ;
- speak_V = irregV "speak" "spoke" "spoken" ;
- speed_V = irregV "speed" "sped" "sped" ;
- spend_V = irregV "spend" "spent" "spent" ;
- spill_V = irregV "spill" (variants {"spilled" ; "spilt"}) (variants {"spilled" ; "spilt"}) ;
- spin_V = irregDuplV "spin" "spun" "spun" ;
- spit_V = irregDuplV "spit" (variants {"spit" ; "spat"}) "spit" ;
- split_V = irregDuplV "split" "split" "split" ;
- spread_V = irregV "spread" "spread" "spread" ;
- spring_V = irregV "spring" (variants {"sprang" ; "sprung"}) "sprung" ;
- stand_V = irregV "stand" "stood" "stood" ;
- steal_V = irregV "steal" "stole" "stolen" ;
- stick_V = irregV "stick" "stuck" "stuck" ;
- sting_V = irregV "sting" "stung" "stung" ;
- stink_V = irregV "stink" "stank" "stunk" ;
- stride_V = irregV "stride" "strod" "stridden" ;
- strike_V = irregV "strike" "struck" "struck" ;
- string_V = irregV "string" "strung" "strung" ;
- strive_V = irregV "strive" "strove" "striven" ;
- swear_V = irregV "swear" "swore" "sworn" ;
- sweep_V = irregV "sweep" "swept" "swept" ;
- swell_V = irregV "swell" "swelled" (variants {"swelled" ; "swollen"}) ;
- swim_V = irregDuplV "swim" "swam" "swum" ;
- swing_V = irregV "swing" "swung" "swung" ;
- take_V = irregV "take" "took" "taken" ;
- teach_V = irregV "teach" "taught" "taught" ;
- tear_V = irregV "tear" "tore" "torn" ;
- tell_V = irregV "tell" "told" "told" ;
- think_V = irregV "think" "thought" "thought" ;
- thrive_V = irregV "thrive" (variants {"thrived" ; "throve"}) "thrived" ;
- throw_V = irregV "throw" "threw" "thrown" ;
- thrust_V = irregV "thrust" "thrust" "thrust" ;
- tread_V = irregV "tread" "trod" "trodden" ;
- understand_V = irregV "understand" "understood" "understood" ;
- uphold_V = irregV "uphold" "upheld" "upheld" ;
- upset_V = irregDuplV "upset" "upset" "upset" ;
- wake_V = irregV "wake" "woke" "woken" ;
- wear_V = irregV "wear" "wore" "worn" ;
- weave_V = irregV "weave" (variants {"weaved" ; "wove"}) (variants {"weaved" ; "woven"}) ;
- wed_V = irregDuplV "wed" "wed" "wed" ;
- weep_V = irregV "weep" "wept" "wept" ;
- wind_V = irregV "wind" "wound" "wound" ;
- win_V = irregDuplV "win" "won" "won" ;
- withhold_V = irregV "withhold" "withheld" "withheld" ;
- withstand_V = irregV "withstand" "withstood" "withstood" ;
- wring_V = irregV "wring" "wrung" "wrung" ;
- write_V = irregV "write" "wrote" "written" ;
-}
diff --git a/deprecated/old-lib/resource/english/IrregEngAbs.gf b/deprecated/old-lib/resource/english/IrregEngAbs.gf
deleted file mode 100644
index 103fe3278..000000000
--- a/deprecated/old-lib/resource/english/IrregEngAbs.gf
+++ /dev/null
@@ -1,176 +0,0 @@
-abstract IrregEngAbs = Cat ** {
-fun
- awake_V : V ;
- bear_V : V ;
- beat_V : V ;
- become_V : V ;
- begin_V : V ;
- bend_V : V ;
- beset_V : V ;
- bet_V : V ;
- bid_V : V ;
- bind_V : V ;
- bite_V : V ;
- bleed_V : V ;
- blow_V : V ;
- break_V : V ;
- breed_V : V ;
- bring_V : V ;
- broadcast_V : V ;
- build_V : V ;
- burn_V : V ;
- burst_V : V ;
- buy_V : V ;
- cast_V : V ;
- catch_V : V ;
- choose_V : V ;
- cling_V : V ;
- come_V : V ;
- cost_V : V ;
- creep_V : V ;
- cut_V : V ;
- deal_V : V ;
- dig_V : V ;
- dive_V : V ;
- do_V : V ;
- draw_V : V ;
- dream_V : V ;
- drive_V : V ;
- drink_V : V ;
- eat_V : V ;
- fall_V : V ;
- feed_V : V ;
- feel_V : V ;
- fight_V : V ;
- find_V : V ;
- fit_V : V ;
- flee_V : V ;
- fling_V : V ;
- fly_V : V ;
- forbid_V : V ;
- forget_V : V ;
- forgive_V : V ;
- forsake_V : V ;
- freeze_V : V ;
- get_V : V ;
- give_V : V ;
- go_V : V ;
- grind_V : V ;
- grow_V : V ;
- hang_V : V ;
- have_V : V ;
- hear_V : V ;
- hide_V : V ;
- hit_V : V ;
- hold_V : V ;
- hurt_V : V ;
- keep_V : V ;
- kneel_V : V ;
- knit_V : V ;
- know_V : V ;
- lay_V : V ;
- lead_V : V ;
- leap_V : V ;
- learn_V : V ;
- leave_V : V ;
- lend_V : V ;
- let_V : V ;
- lie_V : V ;
- light_V : V ;
- lose_V : V ;
- make_V : V ;
- mean_V : V ;
- meet_V : V ;
- misspell_V : V ;
- mistake_V : V ;
- mow_V : V ;
- overcome_V : V ;
- overdo_V : V ;
- overtake_V : V ;
- overthrow_V : V ;
- pay_V : V ;
- plead_V : V ;
- prove_V : V ;
- put_V : V ;
- quit_V : V ;
- read_V : V ;
- rid_V : V ;
- ride_V : V ;
- ring_V : V ;
- rise_V : V ;
- run_V : V ;
- saw_V : V ;
- say_V : V ;
- see_V : V ;
- seek_V : V ;
- sell_V : V ;
- send_V : V ;
- set_V : V ;
- sew_V : V ;
- shake_V : V ;
- shave_V : V ;
- shear_V : V ;
- shed_V : V ;
- shine_V : V ;
- shoe_V : V ;
- shoot_V : V ;
- show_V : V ;
- shrink_V : V ;
- shut_V : V ;
- sing_V : V ;
- sink_V : V ;
- sit_V : V ;
- sleep_V : V ;
- slay_V : V ;
- slide_V : V ;
- sling_V : V ;
- slit_V : V ;
- smite_V : V ;
- sow_V : V ;
- speak_V : V ;
- speed_V : V ;
- spend_V : V ;
- spill_V : V ;
- spin_V : V ;
- spit_V : V ;
- split_V : V ;
- spread_V : V ;
- spring_V : V ;
- stand_V : V ;
- steal_V : V ;
- stick_V : V ;
- sting_V : V ;
- stink_V : V ;
- stride_V : V ;
- strike_V : V ;
- string_V : V ;
- strive_V : V ;
- swear_V : V ;
- sweep_V : V ;
- swell_V : V ;
- swim_V : V ;
- swing_V : V ;
- take_V : V ;
- teach_V : V ;
- tear_V : V ;
- tell_V : V ;
- think_V : V ;
- thrive_V : V ;
- throw_V : V ;
- thrust_V : V ;
- tread_V : V ;
- understand_V : V ;
- uphold_V : V ;
- upset_V : V ;
- wake_V : V ;
- wear_V : V ;
- weave_V : V ;
- wed_V : V ;
- weep_V : V ;
- wind_V : V ;
- win_V : V ;
- withhold_V : V ;
- withstand_V : V ;
- wring_V : V ;
- write_V : V ;
-}
diff --git a/deprecated/old-lib/resource/english/LangEng.gf b/deprecated/old-lib/resource/english/LangEng.gf
deleted file mode 100644
index 966308a2b..000000000
--- a/deprecated/old-lib/resource/english/LangEng.gf
+++ /dev/null
@@ -1,10 +0,0 @@
---# -path=.:../abstract:../common:prelude
-
-concrete LangEng of Lang =
- GrammarEng,
- LexiconEng
- ** {
-
-flags startcat = Phr ; unlexer = text ; lexer = text ;
-
-} ;
diff --git a/deprecated/old-lib/resource/english/LexiconEng.gf b/deprecated/old-lib/resource/english/LexiconEng.gf
deleted file mode 100644
index a92058c90..000000000
--- a/deprecated/old-lib/resource/english/LexiconEng.gf
+++ /dev/null
@@ -1,375 +0,0 @@
---# -path=.:prelude
-
-concrete LexiconEng of Lexicon = CatEng **
- open ParadigmsEng, IrregEng, Prelude in {
-
-flags
- optimize=values ;
-
-lin
- airplane_N = regN "airplane" ;
- answer_V2S = mkV2S (regV "answer") toP ;
- apartment_N = regN "apartment" ;
- apple_N = regN "apple" ;
- art_N = regN "art" ;
- ask_V2Q = mkV2Q (regV "ask") noPrep ;
- baby_N = regN "baby" ;
- bad_A = mkADeg "bad" "worse" "worst" "badly" ;
- bank_N = regN "bank" ;
- beautiful_A = compoundADeg (regA "beautiful") ;
- become_VA = mkVA (irregV "become" "became" "become") ;
- beer_N = regN "beer" ;
- beg_V2V = mkV2V (regDuplV "beg") noPrep toP ;
- big_A = duplADeg "big" ;
- bike_N = regN "bike" ;
- bird_N = regN "bird" ;
- black_A = regADeg "black" ;
- blue_A = regADeg "blue" ;
- boat_N = regN "boat" ;
- book_N = regN "book" ;
- boot_N = regN "boot" ;
- boss_N = mkN human (regN "boss") ;
- boy_N = mkN masculine (regN "boy") ;
- bread_N = regN "bread" ;
- break_V2 = dirV2 (irregV "break" "broke" "broken") ;
- broad_A = regADeg "broad" ;
- brother_N2 = mkN2 (mkN masculine (mkN "brother")) (mkPrep "of") ;
- brown_A = regADeg "brown" ;
- butter_N = regN "butter" ;
- buy_V2 = dirV2 (irregV "buy" "bought" "bought") ;
- camera_N = regN "camera" ;
- cap_N = regN "cap" ;
- car_N = regN "car" ;
- carpet_N = regN "carpet" ;
- cat_N = regN "cat" ;
- ceiling_N = regN "ceiling" ;
- chair_N = regN "chair" ;
- cheese_N = regN "cheese" ;
- child_N = mk2N "child" "children" ;
- church_N = regN "church" ;
- city_N = regN "city" ;
- clean_A = regADeg "clean" ;
- clever_A = regADeg "clever" ;
- close_V2 = dirV2 (regV "close") ;
- coat_N = regN "coat" ;
- cold_A = regADeg "cold" ;
- come_V = (irregV "come" "came" "come") ;
- computer_N = regN "computer" ;
- country_N = regN "country" ;
- cousin_N = mkN human (regN "cousin") ;
- cow_N = regN "cow" ;
- die_V = (regV "die") ;
- dirty_A = regADeg "dirty" ;
- distance_N3 = mkN3 (regN "distance") fromP toP ;
- doctor_N = mkN human (regN "doctor") ;
- dog_N = regN "dog" ;
- door_N = regN "door" ;
- drink_V2 = dirV2 (irregV "drink" "drank" "drunk") ;
- easy_A2V = mkA2V (regA "easy") forP ;
- eat_V2 = dirV2 (irregV "eat" "ate" "eaten") ;
- empty_A = regADeg "empty" ;
- enemy_N = regN "enemy" ;
- factory_N = regN "factory" ;
- father_N2 = mkN2 (mkN masculine (mkN "father")) (mkPrep "of") ;
- fear_VS = mkVS (regV "fear") ;
- find_V2 = dirV2 (irregV "find" "found" "found") ;
- fish_N = mk2N "fish" "fish" ;
- floor_N = regN "floor" ;
- forget_V2 = dirV2 (irregDuplV "forget" "forgot" "forgotten") ;
- fridge_N = regN "fridge" ;
- friend_N = mkN human (regN "friend") ;
- fruit_N = regN "fruit" ;
- fun_AV = mkAV (regA "fun") ;
- garden_N = regN "garden" ;
- girl_N = mkN feminine (regN "girl") ;
- glove_N = regN "glove" ;
- gold_N = regN "gold" ;
- good_A = mkADeg "good" "better" "best" "well" ;
- go_V = mk5V "go" "goes" "went" "gone" "going" ;
- green_A = regADeg "green" ;
- harbour_N = regN "harbour" ;
- hate_V2 = dirV2 (regV "hate") ;
- hat_N = regN "hat" ;
- have_V2 = dirV2 (mk5V "have" "has" "had" "had" "having") ;
- hear_V2 = dirV2 (irregV "hear" "heard" "heard") ;
- hill_N = regN "hill" ;
- hope_VS = mkVS (regV "hope") ;
- horse_N = regN "horse" ;
- hot_A = duplADeg "hot" ;
- house_N = regN "house" ;
- important_A = compoundADeg (regA "important") ;
- industry_N = regN "industry" ;
- iron_N = regN "iron" ;
- king_N = mkN masculine (regN "king") ;
- know_V2 = dirV2 (irregV "know" "knew" "known") ;
- lake_N = regN "lake" ;
- lamp_N = regN "lamp" ;
- learn_V2 = dirV2 (regV "learn") ;
- leather_N = regN "leather" ;
- leave_V2 = dirV2 (irregV "leave" "left" "left") ;
- like_V2 = dirV2 (regV "like") ;
- listen_V2 = prepV2 (regV "listen") toP ;
- live_V = (regV "live") ;
- long_A = regADeg "long" ;
- lose_V2 = dirV2 (irregV "lose" "lost" "lost") ;
- love_N = regN "love" ;
- love_V2 = dirV2 (regV "love") ;
- man_N = mkN masculine (mk2N "man" "men") ;
- married_A2 = mkA2 (regA "married") toP ;
- meat_N = regN "meat" ;
- milk_N = regN "milk" ;
- moon_N = regN "moon" ;
- mother_N2 = mkN2 (mkN feminine (mkN "mother")) (mkPrep "of") ;
- mountain_N = regN "mountain" ;
- music_N = regN "music" ;
- narrow_A = regADeg "narrow" ;
- new_A = regADeg "new" ;
- newspaper_N = regN "newspaper" ;
- oil_N = regN "oil" ;
- old_A = regADeg "old" ;
- open_V2 = dirV2 (regV "open") ;
- paint_V2A = mkV2A (regV "paint") noPrep ;
- paper_N = regN "paper" ;
- paris_PN = mkPN (mkN nonhuman (mkN "Paris")) ;
- peace_N = regN "peace" ;
- pen_N = regN "pen" ;
- planet_N = regN "planet" ;
- plastic_N = regN "plastic" ;
- play_V2 = dirV2 (regV "play") ;
- policeman_N = mkN masculine (mkN "policeman" "policemen") ;
- priest_N = mkN human (regN "priest") ;
- probable_AS = mkAS (regA "probable") ;
- queen_N = mkN feminine (regN "queen") ;
- radio_N = regN "radio" ;
- rain_V0 = mkV0 (regV "rain") ;
- read_V2 = dirV2 (irregV "read" "read" "read") ;
- red_A = duplADeg "red" ;
- religion_N = regN "religion" ;
- restaurant_N = regN "restaurant" ;
- river_N = regN "river" ;
- rock_N = regN "rock" ;
- roof_N = regN "roof" ;
- rubber_N = regN "rubber" ;
- run_V = (irregDuplV "run" "ran" "run") ;
- say_VS = mkVS (irregV "say" "said" "said") ;
- school_N = regN "school" ;
- science_N = regN "science" ;
- sea_N = regN "sea" ;
- seek_V2 = dirV2 (irregV "seek" "sought" "sought") ;
- see_V2 = dirV2 (irregV "see" "saw" "seen") ;
- sell_V3 = dirV3 (irregV "sell" "sold" "sold") toP ;
- send_V3 = dirV3 (irregV "send" "sent" "sent") toP ;
- sheep_N = mk2N "sheep" "sheep" ;
- ship_N = regN "ship" ;
- shirt_N = regN "shirt" ;
- shoe_N = regN "shoe" ;
- shop_N = regN "shop" ;
- short_A = regADeg "short" ;
- silver_N = regN "silver" ;
- sister_N = mkN2 (mkN feminine (mkN "sister")) (mkPrep "of") ;
- sleep_V = (irregV "sleep" "slept" "slept") ;
- small_A = regADeg "small" ;
- snake_N = regN "snake" ;
- sock_N = regN "sock" ;
- speak_V2 = dirV2 (irregV "speak" "spoke" "spoken") ;
- star_N = regN "star" ;
- steel_N = regN "steel" ;
- stone_N = regN "stone" ;
- stove_N = regN "stove" ;
- student_N = mkN human (regN "student") ;
- stupid_A = regADeg "stupid" ;
- sun_N = regN "sun" ;
- switch8off_V2 = dirV2 (partV (regV "switch") "off") ;
- switch8on_V2 = dirV2 (partV (regV "switch") "on") ;
- table_N = regN "table" ;
- talk_V3 = mkV3 (regV "talk") toP aboutP ;
- teacher_N = mkN human (regN "teacher") ;
- teach_V2 = dirV2 (irregV "teach" "taught" "taught") ;
- television_N = regN "television" ;
- thick_A = regADeg "thick" ;
- thin_A = duplADeg "thin" ;
- train_N = regN "train" ;
- travel_V = (regDuplV "travel") ;
- tree_N = regN "tree" ;
- ---- trousers_N = regN "trousers" ;
- ugly_A = regADeg "ugly" ;
- understand_V2 = dirV2 (irregV "understand" "understood" "understood") ;
- university_N = regN "university" ;
- village_N = regN "village" ;
- wait_V2 = prepV2 (regV "wait") forP ;
- walk_V = (regV "walk") ;
- warm_A = regADeg "warm" ;
- war_N = regN "war" ;
- watch_V2 = dirV2 (regV "watch") ;
- water_N = regN "water" ;
- white_A = regADeg "white" ;
- window_N = regN "window" ;
- wine_N = regN "wine" ;
- win_V2 = dirV2 (irregDuplV "win" "won" "won") ;
- woman_N = mkN feminine (mk2N "woman" "women") ;
- wonder_VQ = mkVQ (regV "wonder") ;
- wood_N = regN "wood" ;
- write_V2 = dirV2 (irregV "write" "wrote" "written") ;
- yellow_A = regADeg "yellow" ;
- young_A = regADeg "young" ;
-
- do_V2 = dirV2 (mk5V "do" "does" "did" "done" "doing") ;
- now_Adv = mkAdv "now" ;
- already_Adv = mkAdv "already" ;
- song_N = regN "song" ;
- add_V3 = dirV3 (regV "add") toP ;
- number_N = regN "number" ;
- put_V2 = prepV2 (irregDuplV "put" "put" "put") noPrep ;
- stop_V = regDuplV "stop" ;
- jump_V = regV "jump" ;
-
- left_Ord = ss "left" ;
- right_Ord = ss "right" ;
- far_Adv = mkAdv "far" ;
- correct_A = (regA "correct") ;
- dry_A = regA "dry" ;
- dull_A = regA "dull" ;
- full_A = regA "full" ;
- heavy_A = regA "heavy" ;
- near_A = regA "near" ;
- rotten_A = (regA "rotten") ;
- round_A = regA "round" ;
- sharp_A = regA "sharp" ;
- smooth_A = regA "smooth" ;
- straight_A = regA "straight" ;
- wet_A = regA "wet" ; ----
- wide_A = regA "wide" ;
- animal_N = regN "animal" ;
- ashes_N = regN "ash" ; -- FIXME: plural only?
- back_N = regN "back" ;
- bark_N = regN "bark" ;
- belly_N = regN "belly" ;
- blood_N = regN "blood" ;
- bone_N = regN "bone" ;
- breast_N = regN "breast" ;
- cloud_N = regN "cloud" ;
- day_N = regN "day" ;
- dust_N = regN "dust" ;
- ear_N = regN "ear" ;
- earth_N = regN "earth" ;
- egg_N = regN "egg" ;
- eye_N = regN "eye" ;
- fat_N = regN "fat" ;
- feather_N = regN "feather" ;
- fingernail_N = regN "fingernail" ;
- fire_N = regN "fire" ;
- flower_N = regN "flower" ;
- fog_N = regN "fog" ;
- foot_N = mk2N "foot" "feet" ;
- forest_N = regN "forest" ;
- grass_N = regN "grass" ;
- guts_N = regN "gut" ; -- FIXME: no singular
- hair_N = regN "hair" ;
- hand_N = regN "hand" ;
- head_N = regN "head" ;
- heart_N = regN "heart" ;
- horn_N = regN "horn" ;
- husband_N = mkN masculine (regN "husband") ;
- ice_N = regN "ice" ;
- knee_N = regN "knee" ;
- leaf_N = mk2N "leaf" "leaves" ;
- leg_N = regN "leg" ;
- liver_N = regN "liver" ;
- louse_N = mk2N "louse" "lice" ;
- mouth_N = regN "mouth" ;
- name_N = regN "name" ;
- neck_N = regN "neck" ;
- night_N = regN "night" ;
- nose_N = regN "nose" ;
- person_N = mkN human (regN "person") ;
- rain_N = regN "rain" ;
- road_N = regN "road" ;
- root_N = regN "root" ;
- rope_N = regN "rope" ;
- salt_N = regN "salt" ;
- sand_N = regN "sand" ;
- seed_N = regN "seed" ;
- skin_N = regN "skin" ;
- sky_N = regN "sky" ;
- smoke_N = regN "smoke" ;
- snow_N = regN "snow" ;
- stick_N = regN "stick" ;
- tail_N = regN "tail" ;
- tongue_N = regN "tongue" ;
- tooth_N = mk2N "tooth" "teeth" ;
- wife_N = mkN feminine (mk2N "wife" "wives") ;
- wind_N = regN "wind" ;
- wing_N = regN "wing" ;
- worm_N = regN "worm" ;
- year_N = regN "year" ;
- blow_V = IrregEng.blow_V ;
- breathe_V = dirV2 (regV "breathe") ;
- burn_V = IrregEng.burn_V ;
- dig_V = IrregEng.dig_V ;
- fall_V = IrregEng.fall_V ;
- float_V = regV "float" ;
- flow_V = regV "flow" ;
- fly_V = IrregEng.fly_V ;
- freeze_V = IrregEng.freeze_V ;
- give_V3 = dirV3 give_V toP ;
- laugh_V = regV "laugh" ;
- lie_V = IrregEng.lie_V ;
- play_V = regV "play" ;
- sew_V = IrregEng.sew_V ;
- sing_V = IrregEng.sing_V ;
- sit_V = IrregEng.sit_V ;
- smell_V = regV "smell" ;
- spit_V = IrregEng.spit_V ;
- stand_V = IrregEng.stand_V ;
- swell_V = IrregEng.swell_V ;
- swim_V = IrregEng.swim_V ;
- think_V = IrregEng.think_V ;
- turn_V = regV "turn" ;
- vomit_V = regV "vomit" ;
-
- bite_V2 = dirV2 IrregEng.bite_V ;
- count_V2 = dirV2 (regV "count") ;
- cut_V2 = dirV2 IrregEng.cut_V ;
- fear_V2 = dirV2 (regV "fear") ;
- fight_V2 = dirV2 fight_V ;
- hit_V2 = dirV2 hit_V ;
- hold_V2 = dirV2 hold_V ;
- hunt_V2 = dirV2 (regV "hunt") ;
- kill_V2 = dirV2 (regV "kill") ;
- pull_V2 = dirV2 (regV "pull") ;
- push_V2 = dirV2 (regV "push") ;
- rub_V2 = dirV2 (regDuplV "rub") ;
- scratch_V2 = dirV2 (regV "scratch") ;
- split_V2 = dirV2 split_V ;
- squeeze_V2 = dirV2 (regV "squeeze") ;
- stab_V2 = dirV2 (regDuplV "stab") ;
- suck_V2 = dirV2 (regV "suck") ;
- throw_V2 = dirV2 throw_V ;
- tie_V2 = dirV2 (regV "tie") ;
- wash_V2 = dirV2 (regV "wash") ;
- wipe_V2 = dirV2 (regV "wipe") ;
-
--- other_A = regA "other" ;
-
- grammar_N = regN "grammar" ;
- language_N = regN "language" ;
- rule_N = regN "rule" ;
-
--- added 4/6/2007
- john_PN = mkPN (mkN masculine (mkN "John")) ;
- question_N = regN "question" ;
- ready_A = regA "ready" ;
- reason_N = regN "reason" ;
- today_Adv = mkAdv "today" ;
- uncertain_A = regA "uncertain" ;
-
-oper
- aboutP = mkPrep "about" ;
- atP = mkPrep "at" ;
- forP = mkPrep "for" ;
- fromP = mkPrep "from" ;
- inP = mkPrep "in" ;
- onP = mkPrep "on" ;
- toP = mkPrep "to" ;
-
-} ;
diff --git a/deprecated/old-lib/resource/english/MorphoEng.gf b/deprecated/old-lib/resource/english/MorphoEng.gf
deleted file mode 100644
index ec8dc58df..000000000
--- a/deprecated/old-lib/resource/english/MorphoEng.gf
+++ /dev/null
@@ -1,197 +0,0 @@
---# -path=.:../../prelude
-
---1 A Simple English Resource Morphology
---
--- Aarne Ranta 2002 -- 2005
---
--- This resource morphology contains definitions needed in the resource
--- syntax. To build a lexicon, it is better to use $ParadigmsEng$, which
--- gives a higher-level access to this module.
-
-resource MorphoEng = ResEng ** open Prelude, (Predef=Predef) in {
-
- flags optimize=all ;
-
---2 Phonology
---
--- To regulate the use of endings for both nouns, adjectives, and verbs:
-
-oper
- y2ie : Str -> Str -> Str = \fly,s ->
- let y = last (init fly) in
- case y of {
- "a" => fly + s ;
- "e" => fly + s ;
- "o" => fly + s ;
- "u" => fly + s ;
- _ => init fly + "ie" + s
- } ;
-
-
---2 Nouns
---
--- For conciseness and abstraction, we define a worst-case macro for
--- noun inflection. It is used for defining special case that
--- only need one string as argument.
-
-oper
- CommonNoun : Type = {s : Number => Case => Str} ;
-
- nounGen : Str -> CommonNoun = \dog -> case last dog of {
- "y" => nounY "dog" ;
- "s" => nounS (init "dog") ;
- _ => nounReg "dog"
- } ;
-
--- These are auxiliaries to $nounGen$.
-
- nounReg : Str -> CommonNoun = \dog ->
- mkNoun dog (dog + "s") (dog + "'s") (dog + "s'");
- nounS : Str -> CommonNoun = \kiss ->
- mkNoun kiss (kiss + "es") (kiss + "'s") (kiss + "es'") ;
- nounY : Str -> CommonNoun = \fl ->
- mkNoun (fl + "y") (fl + "ies") (fl + "y's") (fl + "ies'") ;
-
-
---3 Proper names
---
--- Regular proper names are inflected with "'s" in the genitive.
-
- nameReg : Str -> Gender -> {s : Case => Str} = \john,g ->
- {s = table {Gen => john + "'s" ; _ => john} ; g = g} ;
-
---2 Determiners
-
- mkDeterminer : Number -> Str -> {s : Str ; n : Number} = \n,s ->
- {s = s ; n = n} ;
-
---2 Pronouns
---
--- Here we define personal pronouns.
---
--- We record the form "mine" and the gender for later use.
-
- Pronoun : Type =
- {s : Case => Str ; a : Agr} ;
-
- mkPronoun : (_,_,_,_ : Str) -> Number -> Person -> Gender -> Pronoun =
- \I,me,my,mine,n,p,g ->
- {s = table {Nom => I ; Acc => me ; Gen => my} ;
- a = toAgr n p g
- } ;
-
- human : Gender = Masc ; --- doesn't matter
-
- pronI = mkPronoun "I" "me" "my" "mine" Sg P1 human ;
- pronYouSg = mkPronoun "you" "you" "your" "yours" Sg P2 human ; -- verb agr OK
- pronHe = mkPronoun "he" "him" "his" "his" Sg P3 Masc ;
- pronShe = mkPronoun "she" "her" "her" "hers" Sg P3 Fem ;
- pronIt = mkPronoun "it" "it" "its" "it" Sg P3 Neutr ;
-
- pronWe = mkPronoun "we" "us" "our" "ours" Pl P1 human ;
- pronYouPl = mkPronoun "you" "you" "your" "yours" Pl P2 human ;
- pronThey = mkPronoun "they" "them" "their" "theirs" Pl P3 human ; ---
-
-
---2 Adjectives
---
--- To form the adjectival and the adverbial forms, two strings are needed
--- in the worst case. (First without degrees.)
-
- Adjective = {s : AForm => Str} ;
-
--- However, most adjectives can be inflected using the final character.
--- N.B. this is not correct for "shy", but $mkAdjective$ has to be used.
-
- regAdjective : Str -> Adjective = \free ->
- let
- e = last free ;
- fre = init free ;
- freely = case e of {
- "y" => fre + "ily" ;
- _ => free + "ly"
- } ;
- fre = case e of {
- "e" => fre ;
- "y" => fre + "i" ;
- _ => free
- }
- in
- mkAdjective free (fre + "er") (fre + "est") freely ;
-
--- Many adjectives are 'inflected' by adding a comparison word.
-
- adjDegrLong : Str -> Adjective = \ridiculous ->
- mkAdjective
- ridiculous
- ("more" ++ ridiculous)
- ("most" ++ ridiculous)
- ((regAdjective ridiculous).s ! AAdv) ;
-
-
---3 Verbs
---
--- The worst case needs five forms. (The verb "be" is treated separately.)
-
- mkVerb4 : (_,_,_,_: Str) -> Verb = \go,goes,went,gone ->
- let going = case last go of {
- "e" => init go + "ing" ;
- _ => go + "ing"
- }
- in
- mkVerb go goes went gone going ;
-
--- This is what we use to derive the irregular forms in almost all cases
-
- mkVerbIrreg : (_,_,_ : Str) -> Verb = \bite,bit,bitten ->
- let bites = case last bite of {
- "y" => y2ie bite "s" ;
- "s" => init bite + "es" ;
- _ => bite + "s"
- }
- in mkVerb4 bite bites bit bitten ;
-
--- This is used to derive regular forms.
-
- mkVerbReg : Str -> Verb = \soak ->
- let
- soaks = case last soak of {
- "y" => y2ie soak "s" ;
- "s" => init soak + "es" ;
- _ => soak + "s"
- } ;
- soaked = case last soak of {
- "e" => init soak + "s" ;
- _ => soak + "ed"
- }
- in
- mkVerb4 soak soaks soaked soaked ;
-
- verbGen : Str -> Verb = \kill -> case last kill of {
- "y" => verbP3y (init kill) ;
- "e" => verbP3e (init kill) ;
- "s" => verbP3s (init kill) ;
- _ => regVerbP3 kill
- } ;
-
--- These are just auxiliary to $verbGen$.
-
- regVerbP3 : Str -> Verb = \walk ->
- mkVerbIrreg walk (walk + "ed") (walk + "ed") ;
- verbP3s : Str -> Verb = \kiss ->
- mkVerb4 kiss (kiss + "es") (kiss + "ed") (kiss + "ed") ;
- verbP3e : Str -> Verb = \love ->
- mkVerb4 love (love + "s") (love + "d") (love + "d") ;
- verbP3y : Str -> Verb = \cr ->
- mkVerb4 (cr + "y") (cr + "ies") (cr + "ied") (cr + "ied") ;
-
---- The particle always appears right after the verb.
-
- verbPart : Verb -> Str -> Verb = \v,p ->
- {s = \\f => v.s ! f ++ p ; isRefl = v.isRefl} ;
-
- verbNoPart : Verb -> Verb = \v -> verbPart v [] ;
-
-
-} ;
-
diff --git a/deprecated/old-lib/resource/english/NounEng.gf b/deprecated/old-lib/resource/english/NounEng.gf
deleted file mode 100644
index cc7427930..000000000
--- a/deprecated/old-lib/resource/english/NounEng.gf
+++ /dev/null
@@ -1,137 +0,0 @@
-concrete NounEng of Noun = CatEng ** open ResEng, Prelude in {
-
- flags optimize=all_subs ;
-
- lin
- DetCN det cn = {
- s = \\c => det.s ++ cn.s ! det.n ! c ;
- a = agrgP3 det.n cn.g
- } ;
-
- UsePN pn = pn ** {a = agrgP3 Sg pn.g} ;
- UsePron p = p ;
-
- PredetNP pred np = {
- s = \\c => pred.s ++ np.s ! c ;
- a = np.a
- } ;
-
- PPartNP np v2 = {
- s = \\c => np.s ! c ++ v2.s ! VPPart ;
- a = np.a
- } ;
-
- RelNP np rs = {
- s = \\c => np.s ! c ++ "," ++ rs.s ! np.a ;
- a = np.a
- } ;
-
- AdvNP np adv = {
- s = \\c => np.s ! c ++ adv.s ;
- a = np.a
- } ;
-
- DetQuantOrd quant num ord = {
- s = quant.s ! num.n ++ num.s ++ ord.s ;
- n = num.n
- } ;
-
- DetQuant quant num = {
- s = quant.s ! num.n ++ num.s ;
- n = num.n
- } ;
-
- DetNP det = {
- s = \\c => det.s ; ---- case
- a = agrP3 det.n
- } ;
-
- PossPron p = {s = \\_ => p.s ! Gen} ;
-
- NumSg = {s = []; n = Sg ; hasCard = False} ;
- NumPl = {s = []; n = Pl ; hasCard = False} ;
----b NoOrd = {s = []} ;
-
- NumCard n = n ** {hasCard = True} ;
-
- NumDigits n = {s = n.s ! NCard ; n = n.n} ;
- OrdDigits n = {s = n.s ! NOrd} ;
-
- NumNumeral numeral = {s = numeral.s ! NCard; n = numeral.n} ;
- OrdNumeral numeral = {s = numeral.s ! NOrd} ;
-
- AdNum adn num = {s = adn.s ++ num.s ; n = num.n} ;
-
- OrdSuperl a = {s = a.s ! AAdj Superl} ;
-
- DetArtOrd art num ord = {
- s = art.s ! num.hasCard ! num.n ++ num.s ++ ord.s ;
- n = num.n
- } ;
-
- DetArtCard art card = {
- s = art.s ! True ! card.n ++ card.s ;
- n = card.n
- } ;
-
- DetArtSg art cn = {
- s = \\c => art.s ! False ! Sg ++ cn.s ! Sg ! c ;
- a = agrgP3 Sg cn.g
- } ;
-
- DetArtPl art cn = {
- s = \\c => art.s ! False ! Pl ++ cn.s ! Pl ! c ;
- a = agrgP3 Pl cn.g
- } ;
-
- DefArt = {s = \\c,n => artDef} ;
-
- IndefArt = {s = \\c,n => case