packages feed

pandoc 1.3 → 1.4

raw patch · 110 files changed

+7599/−7310 lines, 110 filesdep ~utf8-stringdep ~zip-archivesetup-changedbinary-addedPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: utf8-string, zip-archive

API changes (from Hackage documentation)

- Text.Pandoc: writerHeader :: WriterOptions -> String
- Text.Pandoc: writerTitlePrefix :: WriterOptions -> String
- Text.Pandoc.DefaultHeaders: defaultConTeXtHeader :: String
- Text.Pandoc.DefaultHeaders: defaultDocbookHeader :: String
- Text.Pandoc.DefaultHeaders: defaultLaTeXHeader :: String
- Text.Pandoc.DefaultHeaders: defaultOpenDocumentHeader :: String
- Text.Pandoc.DefaultHeaders: defaultRTFHeader :: String
- Text.Pandoc.DefaultHeaders: defaultS5Header :: String
- Text.Pandoc.Shared: writerHeader :: WriterOptions -> String
- Text.Pandoc.Shared: writerTitlePrefix :: WriterOptions -> String
- Text.Pandoc.Writers.S5: s5CSS :: String
- Text.Pandoc.Writers.S5: s5Javascript :: String
- Text.Pandoc.Writers.S5: s5Meta :: String
+ Text.Pandoc: writerTemplate :: WriterOptions -> String
+ Text.Pandoc: writerVariables :: WriterOptions -> [(String, String)]
+ Text.Pandoc: writerXeTeX :: WriterOptions -> Bool
+ Text.Pandoc.Shared: readDataFile :: FilePath -> IO String
+ Text.Pandoc.Shared: writerTemplate :: WriterOptions -> String
+ Text.Pandoc.Shared: writerVariables :: WriterOptions -> [(String, String)]
+ Text.Pandoc.Shared: writerXeTeX :: WriterOptions -> Bool
+ Text.Pandoc.Templates: class TemplateTarget a
+ Text.Pandoc.Templates: getDefaultTemplate :: String -> IO (Either IOException String)
+ Text.Pandoc.Templates: instance TemplateTarget ByteString
+ Text.Pandoc.Templates: instance TemplateTarget Doc
+ Text.Pandoc.Templates: instance TemplateTarget Html
+ Text.Pandoc.Templates: instance TemplateTarget String
+ Text.Pandoc.Templates: renderTemplate :: (TemplateTarget a) => [(String, String)] -> String -> a
+ Text.Pandoc.Writers.S5: s5HeaderIncludes :: IO String
- Text.Pandoc: ParserState :: Bool -> ParserContext -> QuoteContext -> Bool -> KeyTable -> NoteTable -> Int -> Bool -> [Inline] -> [String] -> String -> Bool -> Bool -> Bool -> Int -> [HeaderType] -> [String] -> ParserState
+ Text.Pandoc: ParserState :: Bool -> ParserContext -> QuoteContext -> Bool -> KeyTable -> NoteTable -> Int -> Bool -> [Inline] -> [[Inline]] -> [Inline] -> Bool -> Bool -> Bool -> Int -> [HeaderType] -> [String] -> ParserState
- Text.Pandoc: WriterOptions :: Bool -> String -> String -> Int -> Bool -> Bool -> HTMLMathMethod -> Bool -> Bool -> Bool -> String -> String -> Bool -> Bool -> Bool -> Bool -> ObfuscationMethod -> String -> WriterOptions
+ Text.Pandoc: WriterOptions :: Bool -> String -> [(String, String)] -> String -> String -> Int -> Bool -> Bool -> Bool -> HTMLMathMethod -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> ObfuscationMethod -> String -> WriterOptions
- Text.Pandoc: stateAuthors :: ParserState -> [String]
+ Text.Pandoc: stateAuthors :: ParserState -> [[Inline]]
- Text.Pandoc: stateDate :: ParserState -> String
+ Text.Pandoc: stateDate :: ParserState -> [Inline]
- Text.Pandoc.Definition: Meta :: [Inline] -> [String] -> String -> Meta
+ Text.Pandoc.Definition: Meta :: [Inline] -> [[Inline]] -> [Inline] -> Meta
- Text.Pandoc.LaTeXMathML: latexMathMLScript :: String
+ Text.Pandoc.LaTeXMathML: latexMathMLScript :: IO String
- Text.Pandoc.ODT: saveOpenDocumentAsODT :: FilePath -> FilePath -> String -> IO ()
+ Text.Pandoc.ODT: saveOpenDocumentAsODT :: FilePath -> FilePath -> Maybe FilePath -> String -> IO ()
- Text.Pandoc.Shared: ParserState :: Bool -> ParserContext -> QuoteContext -> Bool -> KeyTable -> NoteTable -> Int -> Bool -> [Inline] -> [String] -> String -> Bool -> Bool -> Bool -> Int -> [HeaderType] -> [String] -> ParserState
+ Text.Pandoc.Shared: ParserState :: Bool -> ParserContext -> QuoteContext -> Bool -> KeyTable -> NoteTable -> Int -> Bool -> [Inline] -> [[Inline]] -> [Inline] -> Bool -> Bool -> Bool -> Int -> [HeaderType] -> [String] -> ParserState
- Text.Pandoc.Shared: WriterOptions :: Bool -> String -> String -> Int -> Bool -> Bool -> HTMLMathMethod -> Bool -> Bool -> Bool -> String -> String -> Bool -> Bool -> Bool -> Bool -> ObfuscationMethod -> String -> WriterOptions
+ Text.Pandoc.Shared: WriterOptions :: Bool -> String -> [(String, String)] -> String -> String -> Int -> Bool -> Bool -> Bool -> HTMLMathMethod -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> ObfuscationMethod -> String -> WriterOptions
- Text.Pandoc.Shared: stateAuthors :: ParserState -> [String]
+ Text.Pandoc.Shared: stateAuthors :: ParserState -> [[Inline]]
- Text.Pandoc.Shared: stateDate :: ParserState -> String
+ Text.Pandoc.Shared: stateDate :: ParserState -> [Inline]

Files

README view
@@ -1,6 +1,6 @@ % Pandoc User's Guide % John MacFarlane-% December 7, 2009 +% December 7, 2009  Pandoc is a [Haskell] library for converting from one markup format to another, and a command-line tool that uses this library. It can read@@ -123,17 +123,18 @@ convert it to HTML, then convert back to the local encoding, putting the output in `output.html`. -The shell scripts (described below) automatically convert the input +The wrapper scripts (described below) automatically convert the input from the local encoding to UTF-8 before running them through `pandoc`, then convert the output back to the local encoding. -Shell scripts-=============+Wrappers+======== -Three shell scripts, `markdown2pdf`, `html2markdown`, and `hsmarkdown`,-are included in the standard Pandoc installation. (They are not included-in the Windows binary package, as they require a POSIX shell, but they-may be used in Windows under Cygwin.)+Three wrapper scripts, `markdown2pdf`, `html2markdown`, and+`hsmarkdown`, are included in the standard Pandoc installation. (The+Windows binary package does not include `html2markdown`, which is+a POSIX shell script. It does include portable Haskell versions of+`markdown2pdf` and `hsmarkdown`.)  1.  `markdown2pdf` produces a PDF file from markdown-formatted     text, using `pandoc` and `pdflatex`.  The default@@ -198,7 +199,7 @@     options are allowed.  (In fact, options will be interpreted as     filenames.) -    As an alternative to using the `hsmarkdown` shell script, the+    As an alternative to using the `hsmarkdown` script, the     user may create a symbolic link to `pandoc` called `hsmarkdown`.     When invoked under the name `hsmarkdown`, `pandoc` will behave     as if the `--strict` flag had been selected, and no command-line@@ -282,6 +283,20 @@     one) in the output document. This option has no effect with `man`,     `docbook`, or `s5` output formats. +`--template=`*file*+:   uses *file* as a custom template for the generated document. Implies+    `-s`. See [Templates](#templates) below for a description+    of template syntax. If this option is not used, a default+    template appropriate for the output format will be used. See also+    `-D/--print-default-template`.++`-V` *key=val*, `--variable=`*key:val*+:   sets the template variable *key* to the value *val* when rendering the+    document in standalone mode. This is only useful when the+    `--template` option is used to specify a custom template, since+    pandoc automatically sets the variables used in the default+    templates.+ `-c` or `--css` *filename* :   allows the user to specify a custom stylesheet that will be linked to     in HTML and S5 output.  This option can be used repeatedly to include@@ -310,6 +325,27 @@     repeatedly to include multiple files. They will be included in the     order specified. +`--reference-odt` *filename*+:   uses the specified file as a style reference in producing an ODT.+    For best results, the reference ODT should be a modified version+    of an ODT produced using pandoc.  The contents of the reference ODT+    are ignored, but its stylesheets are used in the new ODT. If no+    reference ODT is specified on the command line, pandoc will look+    for a file `reference.odt` in++        $HOME/.pandoc++    (on unix) or++        C:\Documents And Settings\USERNAME\Application Data\pandoc++    (on Windows). If this is not found either, sensible defaults will be+    used.++`-D` or `--print-default-template` *format*+:   prints the default template for an output *format*. (See `-t`+    for a list of possible *format*s.)+ `-T` or `--title-prefix` *string* :   includes *string* as a prefix at the beginning of the title that     appears in the HTML header (but not in the title as it appears at@@ -362,6 +398,9 @@     default (one item at a time). The normal default is for lists to be     displayed all at once. +`--xetex`+:   creates LaTeX outut suitable for processing by XeTeX.+ `-N` or `--number-sections` :   causes sections to be numbered in LaTeX, ConTeXt, or HTML output.     By default, sections are not numbered.@@ -433,6 +472,88 @@ [gladTeX]:  http://www.math.uio.no/~martingu/gladtex/index.html [mimeTeX]: http://www.forkosh.com/mimetex.html  +Templates+=========++When the `-s/--standalone` option is used, pandoc uses a template to+add header and footer material that is needed for a self-standing+document.  To see the default template that is used, just type++    pandoc --print-default-template=FORMAT++where `FORMAT` is the name of the output format. A custom template+can be specified using the `--template` option.  You can also override+the system default templates for a given output format `FORMAT`+by putting a file `FORMAT.template` in++    $HOME/.pandoc/templates++(on unix) or++    C:\Documents And Settings\USERNAME\Application Data\pandoc\templates++(on Windows).++Templates may contain *variables*.  Variable names are sequences of+alphanumerics, `-`, and `_`, starting with a letter.  A variable name+surrounded by `$` signs will be replaced by its value.  For example,+the string `$title$` in++    <title>$title$</title>++will be replaced by the document title.++To write a literal `$` in a template, use `$$`.++Some variables are set automatically by pandoc.  These vary somewhat+depending on the output format, but include:++`legacy-header`+:   contents specified by `-C/--custom-header`+`header-includes`+:   contents specified by `-H/--include-in-header` (may have multiple+    values)+`toc`+:   non-null value if `--toc/--table-of-contents` was specified+`body`+:   body of document+`title`+:   title of document, as specified in title block+`author`+:   author of document, as specified in title block (may have+    multiple values)+`date`+:   date of document, as specified in title block++Variables may be set at the command line using the `-V/--variable`+option. This allows users to include custom variables in their+templates.++Templates may contain conditionals.  The syntax is as follows:++    $if(variable)$+    X +    $else$+    Y+    $endif$++This will include `X` in the template if `variable` has a non-null+value; otherwise it will include `Y`. `X` and `Y` are placeholders for+any valid template text, and may include interpolated variables or other+conditionals. The `$else$` section may be omitted.++When variables can have multiple values (for example, `author` in+a multi-author document), you can use the `$for$` keyword:++    $for(author)$+    <meta name="author" content="$author$" />+    $endfor$++You can optionally specify a separator to be used between+consecutive items:++    $for(author)$$author$$sep$, $endfor$+ Pandoc's markdown vs. standard markdown ======================================= @@ -583,42 +704,43 @@ ----------------  Pandoc supports definition lists, using a syntax inspired by-[PHP Markdown Extra] and [reStructuredText]:--  [PHP Markdown Extra]: http://www.michelf.com/projects/php-markdown/extra/+[PHP Markdown Extra] and [reStructuredText]:[^3]      Term 1-    :   Definition 1 -    Term 2-    :   Definition 2+    :   Definition 1 -    :   Second paragraph of definition 2.+    Term 2 with *inline markup* -Each term must fit on one line. The definition must begin on the line-after the term. The definition consists of one or more block elements-(paragraph, code block, list, etc.), each beginning with a colon and-(aside from the colon) indented one tab stop.+    :   Definition 2 -    Term *with inline markup*-    :   Here is the definition.  It may contain multiple blocks.-        Here is some code:+            { some code, part of Definition 2 } -    :       {* my code *} +        Third paragraph of definition 2. -    :   Here is the third paragraph of this definition.+Each term must fit on one line, which may optionally be followed by+a blank line, and must be followed by one or more definitions.+A definition begins with a colon or tilde, which may be indented one+or two spaces. A term may have multiple definitions, and each definition+may consist of one or more block elements (paragraph, code block, list,+etc.), each indented four spaces or one tab stop. -If you leave space after the definition (as in the first example above),-the definitions will be considered paragraphs. In some output formats,-this will mean greater spacing between term/definition pairs. For a-compact definition list, do not leave space between the definition and-the next term:+If you leave space after the definition (as in the example above),+the blocks of the definitions will be considered paragraphs. In some+output formats, this will mean greater spacing between term/definition+pairs. For a compact definition list, do not leave space between the+definition and the next term:      Term 1-    :   Definition 1+      ~ Definition 1     Term 2-    :   Definition 2+      ~ Definition 2a+      ~ Definition 2b +[^3]:  I have also been influenced by the suggestions of [David Wheeler](http://www.justatheory.com/computers/markup/modest-markdown-proposal.html).++[PHP Markdown Extra]: http://www.michelf.com/projects/php-markdown/extra/+ Reference links --------------- @@ -691,7 +813,7 @@  The headers and table rows must each fit on one line.  Column alignments are determined by the position of the header text relative-to the dashed line below it:[^3]+to the dashed line below it:[^4]    - If the dashed line is flush with the header text on the right side     but extends beyond it on the left, the column is right-aligned.@@ -702,7 +824,7 @@   - If the dashed line is flush with the header text on both sides,     the default alignment is used (in most cases, this will be left). -[^3]:  This scheme is due to Michel Fortin, who proposed it on the+[^4]:  This scheme is due to Michel Fortin, who proposed it on the        [Markdown discussion list](http://six.pairlist.net/pipermail/markdown-discuss/2005-March/001097.html).  The table must end with a blank line, or a line of dashes followed by@@ -1122,8 +1244,22 @@ without the `-s` option to produce the body of the S5 document, which can then be inserted into an HTML template that links to the javascript and CSS files required by S5. (See the instructions on the S5 website.)-Alternatively, you may use `-s` together with the `-C/--custom-header`-option.+Alternatively, you may use `-s` together with the `--template`+option to specify a custom template.++You can change the style of the slides by putting customized CSS files+in++    $HOME/.pandoc/s5/default++(on unix) or++    C:\Documents And Settings\USERNAME\Application Data\pandoc\reference.odt++(on Windows).  The originals may be found in pandoc's system+data directory (generally `$CABALDIR/pandoc-VERSION/s5/default`).+Pandoc will look there for any files it does not find in the user's+pandoc data directory.  Literate Haskell support ========================
Setup.hs view
@@ -39,7 +39,8 @@   let source = manDir </> manpage <.> "md"   modifiedDeps <- modifiedDependencies page [source]   unless (null modifiedDeps) $ do-    ec <- runProcess pandoc ["-s", "-S", "-r", "markdown", "-w", "man", "-o", page, source]+    ec <- runProcess pandoc ["-s", "-S", "-r", "markdown", "-w", "man",+                "--template=templates/man.template", "-o", page, source]                 Nothing Nothing Nothing Nothing (Just stderr) >>= waitForProcess     case ec of          ExitSuccess -> putStrLn $ "Created " ++ manDir </> manpage
changelog view
@@ -1,3 +1,114 @@+pandoc (1.4)++  [ John MacFarlane ]++  * Pandoc will now compile with either GHC 6.10 or 6.12.+    + Don't use System.IO.UTF8 when compiling with 6.12+    + Use -fno-warn-unused-do-bind option when compiling with 6.12++  * Replaced old headers with templates.  Now users have much more+    control over the way documents appear in --standalone mode,+    and writer code is simplified.  Resolves Issues #59, 147.+    Every effort has been made to retain backwards compatibilty.+    So, the --custom-header option should still work as before.++    + Added Text.Pandoc.Templates.  This provides functions for+      retrieving default templates and for rendering templates.+    + System templates (in the pandoc data directory) can be+      overridden by user templates in $HOME/.pandoc/templates.+    + Removed Text.Pandoc.DefaultHeaders.+    + Removed data/headers directory.+    + Added templates directory.+    + Added writerTemplate and writerVariables fields to WriterOptions.+    + Removed writerTitlePrefix, writerHeader fields from WriterOptions.+    + Changed --print-default-header to --print-default-template.+    + Added --template option.+    + Added -V/--variable option to set custom template variables.++  * Pandoc no longer requires Template Haskell.  Resolves Issue #186.++    + Removed need for TH in ODT module. Instead get reference.odt from+	  data file at run time.+    + Removed TH dependency from S5 module. S5 module now exports+      s5HeaderIncludes, which pandoc.hs includes if writer is s5 and+      standalone.+    + Refactored LaTeXMathML not to use TH.++  * Meta is now Meta [Inline] [[Inline]] [Inline] rather than+    Meta [Inline] [String] String. Authors and date in Meta are now lists+    of Inline elements rather than raw strings. This means that they can+    be formatted and can include footnotes. NOTE: This may be a breaking+    change for those using pandoc as a library.++  * Added readDataFile to Text.Pandoc.Shared.  This retrieves+    a data file from the user pandoc data directory (~/.pandoc+    on unix), or, if not found there, from the system data+    directory ($CABALDIR/shared/pandoc-VERSION/). All data+    files, including templates, LaTeXMathML.js, s5 styles,+	and reference.odt, can be overridden by the user.++  * s5 files moved from data/ui/default to s5/default.++  * Use unicode instead of entities in HTML and XML output.  Resolves+    Issue #163.++  * Prettier HTML footnote references:  put anchor inside sup,+    instead of other way.  Resolves Issue #191. Thanks to+    infinity0x.++  * Added --xetex option to pandoc and markdown2pdf.+    If --xetex is specified, pandoc produces latex suitable for+    processing by xelatex, and markdown2pdf uses xelatex to create+    the PDF. Resolves Issue #185.++  * RTF writer: multiple authors now occupy multiple paragraphs rather+    than using a line break.++  * Man writer: now the "--after-body" will come after the "AUTHORS"+    section, whereas before it would come before it.  This is a+    slight break from backwards compatibility.++  * Added --reference-odt option, so users may customize the styles+    used in pandoc-generated ODT files.  Users may also place a+	default reference.odt in the ~\.pandoc directory.++  * ODT writer:+    + Indented and line-broke styles.xml so it can be modified more easily.+    + Omitted some unnecessary style declarations.+    + Don't wrap text in OpenDocument writer.  The tags are too long, making+      wrapping ugly and pointless.++  * LaTeX reader: use \\ to separate multiple authors.++  * Markdown reader: use ; as separator between authors.+    This allows you to use ',' within author names: e.g. "John Jones, Jr."++  * S5 writer: use linebreak to separate authors in title page.++  * RST reader: Allow :: before lhs code block. The RST spec requires the+    :: before verbatim blocks. This :: should not be treated as literal+    colons. Resolves Issue #189.++  * Documented pandoc 1.3's new definition list syntax in README.+    (An oversight in the last release.)++  * markdown2pdf.hs:+    + interpret ! in a log as an error line.+    + --toc now works properly.++  * Changes in RunTests.hs:+    + Use the Diff library rather than a local copy of Diff.hs.+      (This vastly increases performance.) This change means that 'cabal+      test' presupposes that the Diff library is installed.+    + Removed tests/Diff.hs from cabal file.+    + Changed RunTests to use local environment. We need at least HOME, so+      pandoc can find its data directory.++  * Updated windows installer to install data files in the app directory.++  * Windows installer now installs portable wrappers hsmarkdown and+    markdown2pdf.+ pandoc (1.3)    [ John MacFarlane ]
data/LaTeXMathML.js.packed view
− data/headers/ConTeXt.header
@@ -1,70 +0,0 @@-\enableregime[utf]  % use UTF-8--\setupcolors[state=start]-\setupinteraction[state=start, color=middleblue] % needed for hyperlinks--\setuppapersize[letter][letter]  % use letter paper-\setuplayout[width=middle, backspace=1.5in, cutspace=1.5in,-             height=middle, header=0.75in, footer=0.75in] % page layout-\setuppagenumbering[location={footer,center}]  % number pages-\setupbodyfont[11pt]  % 11pt font-\setupwhitespace[medium]  % inter-paragraph spacing--\setuphead[section][style=\tfc]-\setuphead[subsection][style=\tfb]-\setuphead[subsubsection][style=\bf]--% define title block commands-\unprotect-\def\doctitle#1{\gdef\@title{#1}}-\def\author#1{\gdef\@author{#1}}-\def\date#1{\gdef\@date{#1}}-\date{\currentdate}  % Default to today unless specified otherwise.-\def\maketitle{%-  \startalignment[center]-    \blank[2*big]-      {\tfd \@title}-    \blank[3*medium]-      {\tfa \@author}-    \blank[2*medium]-      {\tfa \@date}-    \blank[3*medium]-  \stopalignment}-\protect--% define descr (for definition lists)-\definedescription[descr][-  headstyle=bold,style=normal,align=left,location=hanging,-  width=broad,margin=1cm]--% prevent orphaned list intros-\setupitemize[autointro]--% define defaults for bulleted lists -\setupitemize[1][symbol=1][indentnext=no]-\setupitemize[2][symbol=2][indentnext=no]-\setupitemize[3][symbol=3][indentnext=no]-\setupitemize[4][symbol=4][indentnext=no]--\setupthinrules[width=15em]  % width of horizontal rules--% for block quotations-\unprotect--\startvariables all-blockquote: blockquote-\stopvariables--\definedelimitedtext-[\v!blockquote][\v!quotation]--\setupdelimitedtext-[\v!blockquote]-[\c!left=,-\c!right=,-before={\blank[medium]},-after={\blank[medium]},-]--\protect-	
− data/headers/Docbook.header
@@ -1,3 +0,0 @@-<?xml version="1.0" encoding="utf-8" ?>-<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"-                  "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
− data/headers/LaTeX.header
@@ -1,8 +0,0 @@-\documentclass{article}-\usepackage{amsmath}-\usepackage[mathletters]{ucs}-\usepackage[utf8x]{inputenc}-\usepackage{listings}-\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{}-\setlength{\parindent}{0pt}-\setlength{\parskip}{6pt plus 2pt minus 1pt}
− data/headers/OpenDocument.header
@@ -1,1 +0,0 @@-<?xml version="1.0" encoding="utf-8" ?>
− data/headers/RTF.header
@@ -1,4 +0,0 @@-{\rtf1\ansi\deff0{\fonttbl{\f0 \fswiss Helvetica;}{\f1 Courier;}}-{\colortbl;\red255\green0\blue0;\red0\green0\blue255;}-\widowctrl\hyphauto-
− data/headers/S5.header
@@ -1,3 +0,0 @@-<!-- configuration parameters -->-<meta name="defaultView" content="slideshow" />-<meta name="controlVis" content="hidden" />
− data/odt-styles/META-INF/manifest.xml
@@ -1,22 +0,0 @@-<?xml version="1.0" encoding="UTF-8"?>-<manifest:manifest xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0">- <manifest:file-entry manifest:media-type="application/vnd.oasis.opendocument.text" manifest:full-path="/"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Configurations2/statusbar/"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Configurations2/accelerator/current.xml"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Configurations2/accelerator/"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Configurations2/floater/"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Configurations2/popupmenu/"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Configurations2/progressbar/"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Configurations2/menubar/"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Configurations2/toolbar/"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Configurations2/images/Bitmaps/"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Configurations2/images/"/>- <manifest:file-entry manifest:media-type="application/vnd.sun.xml.ui.configuration" manifest:full-path="Configurations2/"/>- <manifest:file-entry manifest:media-type="application/binary" manifest:full-path="layout-cache"/>- <manifest:file-entry manifest:media-type="text/xml" manifest:full-path="content.xml"/>- <manifest:file-entry manifest:media-type="text/xml" manifest:full-path="styles.xml"/>- <manifest:file-entry manifest:media-type="text/xml" manifest:full-path="meta.xml"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Thumbnails/thumbnail.png"/>- <manifest:file-entry manifest:media-type="" manifest:full-path="Thumbnails/"/>- <manifest:file-entry manifest:media-type="text/xml" manifest:full-path="settings.xml"/>-</manifest:manifest>
− data/odt-styles/Thumbnails/thumbnail.png

binary file changed (1943 → absent bytes)

− data/odt-styles/meta.xml
@@ -1,1 +0,0 @@-<?xml version="1.0" encoding="UTF-8"?><office:document-meta xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:ooo="http://openoffice.org/2004/office" office:version="1.1"><office:meta><meta:generator></meta:generator><dc:title></dc:title><dc:subject></dc:subject><meta:creation-date></meta:creation-date><dc:date></dc:date><meta:editing-cycles></meta:editing-cycles><meta:editing-duration></meta:editing-duration><meta:user-defined meta:name="Info 1"/><meta:user-defined meta:name="Info 2"/><meta:user-defined meta:name="Info 3"/><meta:user-defined meta:name="Info 4"/><meta:document-statistic meta:table-count="0" meta:image-count="0" meta:object-count="0" meta:page-count="0" meta:paragraph-count="0" meta:word-count="0" meta:character-count="0"/></office:meta></office:document-meta>
− data/odt-styles/mimetype
@@ -1,1 +0,0 @@-application/vnd.oasis.opendocument.text
− data/odt-styles/settings.xml
@@ -1,2 +0,0 @@-<?xml version="1.0" encoding="UTF-8"?>-<office:document-settings xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" xmlns:ooo="http://openoffice.org/2004/office" office:version="1.1"><office:settings><config:config-item-set config:name="ooo:view-settings"><config:config-item config:name="ViewAreaTop" config:type="int">40640</config:config-item><config:config-item config:name="ViewAreaLeft" config:type="int">-1058</config:config-item><config:config-item config:name="ViewAreaWidth" config:type="int">25693</config:config-item><config:config-item config:name="ViewAreaHeight" config:type="int">15242</config:config-item><config:config-item config:name="ShowRedlineChanges" config:type="boolean">true</config:config-item><config:config-item config:name="InBrowseMode" config:type="boolean">false</config:config-item><config:config-item-map-indexed config:name="Views"><config:config-item-map-entry><config:config-item config:name="ViewId" config:type="string">view2</config:config-item><config:config-item config:name="ViewLeft" config:type="int">8936</config:config-item><config:config-item config:name="ViewTop" config:type="int">54975</config:config-item><config:config-item config:name="VisibleLeft" config:type="int">-1058</config:config-item><config:config-item config:name="VisibleTop" config:type="int">40640</config:config-item><config:config-item config:name="VisibleRight" config:type="int">24633</config:config-item><config:config-item config:name="VisibleBottom" config:type="int">55880</config:config-item><config:config-item config:name="ZoomType" config:type="short">0</config:config-item><config:config-item config:name="ZoomFactor" config:type="short">100</config:config-item><config:config-item config:name="IsSelectedFrame" config:type="boolean">false</config:config-item></config:config-item-map-entry></config:config-item-map-indexed></config:config-item-set><config:config-item-set config:name="ooo:configuration-settings"><config:config-item config:name="AddParaTableSpacing" config:type="boolean">true</config:config-item><config:config-item config:name="PrintReversed" config:type="boolean">false</config:config-item><config:config-item config:name="OutlineLevelYieldsNumbering" config:type="boolean">false</config:config-item><config:config-item config:name="LinkUpdateMode" config:type="short">1</config:config-item><config:config-item config:name="PrintEmptyPages" config:type="boolean">true</config:config-item><config:config-item config:name="IgnoreFirstLineIndentInNumbering" config:type="boolean">false</config:config-item><config:config-item config:name="CharacterCompressionType" config:type="short">0</config:config-item><config:config-item config:name="PrintSingleJobs" config:type="boolean">false</config:config-item><config:config-item config:name="UpdateFromTemplate" config:type="boolean">true</config:config-item><config:config-item config:name="PrintPaperFromSetup" config:type="boolean">false</config:config-item><config:config-item config:name="AddFrameOffsets" config:type="boolean">false</config:config-item><config:config-item config:name="PrintLeftPages" config:type="boolean">true</config:config-item><config:config-item config:name="RedlineProtectionKey" config:type="base64Binary"/><config:config-item config:name="PrintTables" config:type="boolean">true</config:config-item><config:config-item config:name="ChartAutoUpdate" config:type="boolean">true</config:config-item><config:config-item config:name="PrintControls" config:type="boolean">true</config:config-item><config:config-item config:name="PrinterSetup" config:type="base64Binary"/><config:config-item config:name="IgnoreTabsAndBlanksForLineCalculation" config:type="boolean">false</config:config-item><config:config-item config:name="PrintAnnotationMode" config:type="short">0</config:config-item><config:config-item config:name="LoadReadonly" config:type="boolean">false</config:config-item><config:config-item config:name="AddParaSpacingToTableCells" config:type="boolean">true</config:config-item><config:config-item config:name="AddExternalLeading" config:type="boolean">true</config:config-item><config:config-item config:name="ApplyUserData" config:type="boolean">true</config:config-item><config:config-item config:name="FieldAutoUpdate" config:type="boolean">true</config:config-item><config:config-item config:name="SaveVersionOnClose" config:type="boolean">false</config:config-item><config:config-item config:name="SaveGlobalDocumentLinks" config:type="boolean">false</config:config-item><config:config-item config:name="IsKernAsianPunctuation" config:type="boolean">false</config:config-item><config:config-item config:name="AlignTabStopPosition" config:type="boolean">true</config:config-item><config:config-item config:name="ClipAsCharacterAnchoredWriterFlyFrames" config:type="boolean">false</config:config-item><config:config-item config:name="CurrentDatabaseDataSource" config:type="string"/><config:config-item config:name="DoNotCaptureDrawObjsOnPage" config:type="boolean">false</config:config-item><config:config-item config:name="TableRowKeep" config:type="boolean">false</config:config-item><config:config-item config:name="PrinterName" config:type="string"/><config:config-item config:name="PrintFaxName" config:type="string"/><config:config-item config:name="ConsiderTextWrapOnObjPos" config:type="boolean">false</config:config-item><config:config-item config:name="UseOldPrinterMetrics" config:type="boolean">false</config:config-item><config:config-item config:name="PrintRightPages" config:type="boolean">true</config:config-item><config:config-item config:name="IsLabelDocument" config:type="boolean">false</config:config-item><config:config-item config:name="UseFormerLineSpacing" config:type="boolean">false</config:config-item><config:config-item config:name="AddParaTableSpacingAtStart" config:type="boolean">true</config:config-item><config:config-item config:name="UseFormerTextWrapping" config:type="boolean">false</config:config-item><config:config-item config:name="DoNotResetParaAttrsForNumFont" config:type="boolean">false</config:config-item><config:config-item config:name="PrintProspect" config:type="boolean">false</config:config-item><config:config-item config:name="PrintGraphics" config:type="boolean">true</config:config-item><config:config-item config:name="AllowPrintJobCancel" config:type="boolean">true</config:config-item><config:config-item config:name="CurrentDatabaseCommandType" config:type="int">0</config:config-item><config:config-item config:name="DoNotJustifyLinesWithManualBreak" config:type="boolean">false</config:config-item><config:config-item config:name="UseFormerObjectPositioning" config:type="boolean">false</config:config-item><config:config-item config:name="PrinterIndependentLayout" config:type="string">high-resolution</config:config-item><config:config-item config:name="UseOldNumbering" config:type="boolean">false</config:config-item><config:config-item config:name="PrintPageBackground" config:type="boolean">true</config:config-item><config:config-item config:name="CurrentDatabaseCommand" config:type="string"/><config:config-item config:name="PrintDrawings" config:type="boolean">true</config:config-item><config:config-item config:name="PrintBlackFonts" config:type="boolean">false</config:config-item><config:config-item config:name="UnxForceZeroExtLeading" config:type="boolean">false</config:config-item></config:config-item-set></office:settings></office:document-settings>
− data/odt-styles/styles.xml
@@ -1,2 +0,0 @@-<?xml version="1.0" encoding="UTF-8"?>-<office:document-styles xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" office:version="1.1"><office:font-face-decls><style:font-face style:name="StarSymbol" svg:font-family="StarSymbol"/><style:font-face style:name="Tahoma1" svg:font-family="Tahoma"/><style:font-face style:name="Courier New" svg:font-family="&apos;Courier New&apos;" style:font-family-generic="modern" style:font-pitch="fixed"/><style:font-face style:name="Times New Roman" svg:font-family="&apos;Times New Roman&apos;" style:font-family-generic="roman" style:font-pitch="variable"/><style:font-face style:name="Arial" svg:font-family="Arial" style:font-family-generic="swiss" style:font-pitch="variable"/><style:font-face style:name="Lucida Sans Unicode" svg:font-family="&apos;Lucida Sans Unicode&apos;" style:font-family-generic="system" style:font-pitch="variable"/><style:font-face style:name="Tahoma" svg:font-family="Tahoma" style:font-family-generic="system" style:font-pitch="variable"/></office:font-face-decls><office:styles><style:default-style style:family="graphic"><style:graphic-properties draw:shadow-offset-x="0.1181in" draw:shadow-offset-y="0.1181in" draw:start-line-spacing-horizontal="0.1114in" draw:start-line-spacing-vertical="0.1114in" draw:end-line-spacing-horizontal="0.1114in" draw:end-line-spacing-vertical="0.1114in" style:flow-with-text="false"/><style:paragraph-properties style:text-autospace="ideograph-alpha" style:line-break="strict" style:writing-mode="lr-tb" style:font-independent-line-spacing="false"><style:tab-stops/></style:paragraph-properties><style:text-properties style:use-window-font-color="true" fo:font-size="12pt" fo:language="en" fo:country="US" style:letter-kerning="true" style:font-size-asian="12pt" style:language-asian="zxx" style:country-asian="none" style:font-size-complex="12pt" style:language-complex="zxx" style:country-complex="none"/></style:default-style><style:default-style style:family="paragraph"><style:paragraph-properties fo:hyphenation-ladder-count="no-limit" style:text-autospace="ideograph-alpha" style:punctuation-wrap="hanging" style:line-break="strict" style:tab-stop-distance="0.4925in" style:writing-mode="page"/><style:text-properties style:use-window-font-color="true" style:font-name="Times New Roman" fo:font-size="12pt" fo:language="en" fo:country="US" style:letter-kerning="true" style:font-name-asian="Lucida Sans Unicode" style:font-size-asian="12pt" style:language-asian="zxx" style:country-asian="none" style:font-name-complex="Tahoma" style:font-size-complex="12pt" style:language-complex="zxx" style:country-complex="none" fo:hyphenate="false" fo:hyphenation-remain-char-count="2" fo:hyphenation-push-char-count="2"/></style:default-style><style:default-style style:family="table"><style:table-properties table:border-model="collapsing"/></style:default-style><style:default-style style:family="table-row"><style:table-row-properties fo:keep-together="auto"/></style:default-style><style:style style:name="Standard" style:family="paragraph" style:class="text"/><style:style style:name="Heading" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text_20_body" style:class="text"><style:paragraph-properties fo:margin-top="0.1665in" fo:margin-bottom="0.0835in" fo:keep-with-next="always"/><style:text-properties style:font-name="Arial" fo:font-size="14pt" style:font-name-asian="Lucida Sans Unicode" style:font-size-asian="14pt" style:font-name-complex="Tahoma" style:font-size-complex="14pt"/></style:style><style:style style:name="Text_20_body" style:display-name="Text body" style:family="paragraph" style:parent-style-name="Standard" style:class="text"><style:paragraph-properties fo:margin-top="0.0598in" fo:margin-bottom="0.0598in"/></style:style><style:style style:name="List" style:family="paragraph" style:parent-style-name="Text_20_body" style:class="list"><style:text-properties style:font-name-complex="Tahoma1"/></style:style><style:style style:name="Caption" style:family="paragraph" style:parent-style-name="Standard" style:class="extra"><style:paragraph-properties fo:margin-top="0.0835in" fo:margin-bottom="0.0835in" text:number-lines="false" text:line-number="0"/><style:text-properties fo:font-size="12pt" fo:font-style="italic" style:font-size-asian="12pt" style:font-style-asian="italic" style:font-name-complex="Tahoma1" style:font-size-complex="12pt" style:font-style-complex="italic"/></style:style><style:style style:name="Index" style:family="paragraph" style:parent-style-name="Standard" style:class="index"><style:paragraph-properties text:number-lines="false" text:line-number="0"/><style:text-properties style:font-name-complex="Tahoma1"/></style:style><style:style style:name="Heading_20_1" style:display-name="Heading 1" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:class="text" style:default-outline-level="1"><style:text-properties fo:font-size="115%" fo:font-weight="bold" style:font-size-asian="115%" style:font-weight-asian="bold" style:font-size-complex="115%" style:font-weight-complex="bold"/></style:style><style:style style:name="Heading_20_2" style:display-name="Heading 2" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:class="text" style:default-outline-level="2"><style:text-properties fo:font-size="14pt" fo:font-style="italic" fo:font-weight="bold" style:font-size-asian="14pt" style:font-style-asian="italic" style:font-weight-asian="bold" style:font-size-complex="14pt" style:font-style-complex="italic" style:font-weight-complex="bold"/></style:style><style:style style:name="Heading_20_3" style:display-name="Heading 3" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:class="text" style:default-outline-level="3"><style:text-properties fo:font-size="14pt" fo:font-weight="bold" style:font-size-asian="14pt" style:font-weight-asian="bold" style:font-size-complex="14pt" style:font-weight-complex="bold"/></style:style><style:style style:name="Heading_20_4" style:display-name="Heading 4" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:class="text" style:default-outline-level="4"><style:text-properties fo:font-size="85%" fo:font-style="italic" fo:font-weight="bold" style:font-size-asian="85%" style:font-style-asian="italic" style:font-weight-asian="bold" style:font-size-complex="85%" style:font-style-complex="italic" style:font-weight-complex="bold"/></style:style><style:style style:name="Heading_20_5" style:display-name="Heading 5" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:class="text" style:default-outline-level="5"><style:text-properties fo:font-size="85%" fo:font-weight="bold" style:font-size-asian="85%" style:font-weight-asian="bold" style:font-size-complex="85%" style:font-weight-complex="bold"/></style:style><style:style style:name="Heading_20_6" style:display-name="Heading 6" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:class="text" style:default-outline-level="6"><style:text-properties fo:font-size="75%" fo:font-weight="bold" style:font-size-asian="75%" style:font-weight-asian="bold" style:font-size-complex="75%" style:font-weight-complex="bold"/></style:style><style:style style:name="Quotations" style:family="paragraph" style:parent-style-name="Standard" style:class="html"><style:paragraph-properties fo:margin-left="0.3937in" fo:margin-right="0.3937in" fo:margin-top="0.1in" fo:margin-bottom="0.1in" fo:text-indent="0in" style:auto-text-indent="false"/></style:style><style:style style:name="Preformatted_20_Text" style:display-name="Preformatted Text" style:family="paragraph" style:parent-style-name="Standard" style:class="html"><style:paragraph-properties fo:margin-top="0in" fo:margin-bottom="0in"/><style:text-properties style:font-name="Courier New" fo:font-size="10pt" style:font-name-asian="Courier New" style:font-size-asian="10pt" style:font-name-complex="Courier New" style:font-size-complex="10pt"/></style:style><style:style style:name="Definition_20_Term" style:display-name="Definition Term" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Definition_20_Definition"><style:paragraph-properties fo:margin-top="0.0598in" fo:margin-bottom="0.0598in"/></style:style><style:style style:name="Definition_20_Definition" style:display-name="Definition Definition" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text_20_body"><style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false"/></style:style><style:style style:name="Table_20_Contents" style:display-name="Table Contents" style:family="paragraph" style:parent-style-name="Standard" style:class="extra"><style:paragraph-properties fo:margin-left="0.0299in" fo:margin-right="0.0299in" fo:text-indent="0in" style:auto-text-indent="false" text:number-lines="false" text:line-number="0"/></style:style><style:style style:name="Table_20_Heading" style:display-name="Table Heading" style:family="paragraph" style:parent-style-name="Table_20_Contents" style:class="extra"><style:paragraph-properties fo:margin-left="0.0299in" fo:margin-right="0.0299in" fo:text-align="start" style:justify-single-word="false" fo:text-indent="0in" style:auto-text-indent="false" style:shadow="none" text:number-lines="false" text:line-number="0"/><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold"/></style:style><style:style style:name="Footnote" style:family="paragraph" style:parent-style-name="Standard" style:class="extra"><style:paragraph-properties fo:margin-left="0.1965in" fo:margin-right="0in" fo:text-indent="-0.1965in" style:auto-text-indent="false" text:number-lines="false" text:line-number="0"/><style:text-properties fo:font-size="10pt" style:font-size-asian="10pt" style:font-size-complex="10pt"/></style:style><style:style style:name="Footer" style:family="paragraph" style:parent-style-name="Standard" style:class="extra"><style:paragraph-properties text:number-lines="false" text:line-number="0"><style:tab-stops><style:tab-stop style:position="3.25in" style:type="center"/><style:tab-stop style:position="6.5in" style:type="right"/></style:tab-stops></style:paragraph-properties></style:style><style:style style:name="Definition_20_Term_20_Tight" style:display-name="Definition Term Tight" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Definition_20_Definition_20_Tight"><style:paragraph-properties fo:margin-top="0.0799in" fo:margin-bottom="0.0799in"/></style:style><style:style style:name="Definition_20_Definition_20_Tight" style:display-name="Definition Definition Tight" style:family="paragraph" style:parent-style-name="Standard"><style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:margin-top="0in" fo:margin-bottom="0in" fo:text-indent="0in" style:auto-text-indent="false"/></style:style><style:style style:name="Date" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text_20_body"><style:text-properties fo:font-style="italic"/></style:style><style:style style:name="Author" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Date" style:master-page-name=""><style:paragraph-properties style:page-number="auto"/><style:text-properties fo:font-style="italic"/></style:style><style:style style:name="Numbering_20_Symbols" style:display-name="Numbering Symbols" style:family="text"/><style:style style:name="Bullet_20_Symbols" style:display-name="Bullet Symbols" style:family="text"><style:text-properties style:font-name="StarSymbol" fo:font-size="9pt" style:font-name-asian="StarSymbol" style:font-size-asian="9pt" style:font-name-complex="StarSymbol" style:font-size-complex="9pt"/></style:style><style:style style:name="Emphasis" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic"/></style:style><style:style style:name="Strong_20_Emphasis" style:display-name="Strong Emphasis" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold"/></style:style><style:style style:name="Strikeout" style:family="text"><style:text-properties style:text-line-through-style="solid"/></style:style><style:style style:name="Superscript" style:family="text"><style:text-properties style:text-position="super 58%"/></style:style><style:style style:name="Subscript" style:family="text"><style:text-properties style:text-position="sub 58%"/></style:style><style:style style:name="Citation" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic"/></style:style><style:style style:name="Teletype" style:family="text"><style:text-properties style:font-name="Courier New" style:font-name-asian="Courier New" style:font-name-complex="Courier New"/></style:style><style:style style:name="Internet_20_link" style:display-name="Internet link" style:family="text"><style:text-properties fo:color="#000080" style:text-underline-style="solid" style:text-underline-width="auto" style:text-underline-color="font-color"/></style:style><style:style style:name="Footnote_20_Symbol" style:display-name="Footnote Symbol" style:family="text"/><style:style style:name="Footnote_20_anchor" style:display-name="Footnote anchor" style:family="text"><style:text-properties style:text-position="super 58%"/></style:style><style:style style:name="Definition" style:family="text"/><text:outline-style><text:outline-level-style text:level="1" style:num-format=""><style:list-level-properties text:min-label-distance="0.15in"/></text:outline-level-style><text:outline-level-style text:level="2" style:num-format=""><style:list-level-properties text:min-label-distance="0.15in"/></text:outline-level-style><text:outline-level-style text:level="3" style:num-format=""><style:list-level-properties text:min-label-distance="0.15in"/></text:outline-level-style><text:outline-level-style text:level="4" style:num-format=""><style:list-level-properties text:min-label-distance="0.15in"/></text:outline-level-style><text:outline-level-style text:level="5" style:num-format=""><style:list-level-properties text:min-label-distance="0.15in"/></text:outline-level-style><text:outline-level-style text:level="6" style:num-format=""><style:list-level-properties text:min-label-distance="0.15in"/></text:outline-level-style><text:outline-level-style text:level="7" style:num-format=""><style:list-level-properties text:min-label-distance="0.15in"/></text:outline-level-style><text:outline-level-style text:level="8" style:num-format=""><style:list-level-properties text:min-label-distance="0.15in"/></text:outline-level-style><text:outline-level-style text:level="9" style:num-format=""><style:list-level-properties text:min-label-distance="0.15in"/></text:outline-level-style><text:outline-level-style text:level="10" style:num-format=""><style:list-level-properties text:min-label-distance="0.15in"/></text:outline-level-style></text:outline-style><text:list-style style:name="Numbering_20_1" style:display-name="Numbering 1"><text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:space-before="0.1972in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="3" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:space-before="0.3937in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="4" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:space-before="0.5909in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="5" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:space-before="0.7874in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="6" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:space-before="0.9846in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="7" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:space-before="1.1815in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="8" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:space-before="1.3787in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="9" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:space-before="1.5752in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="10" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:space-before="1.7724in" text:min-label-width="0.1965in"/></text:list-level-style-number></text:list-style><text:list-style style:name="Numbering_20_2" style:display-name="Numbering 2"><text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1"><style:list-level-properties text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="2"><style:list-level-properties text:space-before="0.1965in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="3" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="3"><style:list-level-properties text:space-before="0.3929in" text:min-label-width="0.3937in"/></text:list-level-style-number><text:list-level-style-number text:level="4" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="4"><style:list-level-properties text:space-before="0.7866in" text:min-label-width="0.4925in"/></text:list-level-style-number><text:list-level-style-number text:level="5" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="5"><style:list-level-properties text:space-before="1.2791in" text:min-label-width="0.5902in"/></text:list-level-style-number><text:list-level-style-number text:level="6" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="6"><style:list-level-properties text:space-before="1.8693in" text:min-label-width="0.7091in"/></text:list-level-style-number><text:list-level-style-number text:level="7" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="7"><style:list-level-properties text:space-before="2.5783in" text:min-label-width="0.9055in"/></text:list-level-style-number><text:list-level-style-number text:level="8" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="8"><style:list-level-properties text:space-before="3.4839in" text:min-label-width="1.0236in"/></text:list-level-style-number><text:list-level-style-number text:level="9" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="9"><style:list-level-properties text:space-before="4.5075in" text:min-label-width="1.1028in"/></text:list-level-style-number><text:list-level-style-number text:level="10" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="10"><style:list-level-properties text:space-before="5.6102in" text:min-label-width="1.2209in"/></text:list-level-style-number></text:list-style><text:list-style style:name="Numbering_20_3" style:display-name="Numbering 3"><text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1"><style:list-level-properties text:min-label-width="1.1811in"/></text:list-level-style-number><text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="2"><style:list-level-properties text:space-before="1.1815in" text:min-label-width="1.1811in"/></text:list-level-style-number><text:list-level-style-number text:level="3" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="3"><style:list-level-properties text:space-before="2.3626in" text:min-label-width="1.1811in"/></text:list-level-style-number><text:list-level-style-number text:level="4" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="4"><style:list-level-properties text:space-before="3.5441in" text:min-label-width="1.1811in"/></text:list-level-style-number><text:list-level-style-number text:level="5" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="5"><style:list-level-properties text:space-before="4.7252in" text:min-label-width="1.1811in"/></text:list-level-style-number><text:list-level-style-number text:level="6" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="6"><style:list-level-properties text:space-before="5.9063in" text:min-label-width="1.1811in"/></text:list-level-style-number><text:list-level-style-number text:level="7" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="7"><style:list-level-properties text:space-before="7.0878in" text:min-label-width="1.1811in"/></text:list-level-style-number><text:list-level-style-number text:level="8" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="8"><style:list-level-properties text:space-before="8.2689in" text:min-label-width="1.1811in"/></text:list-level-style-number><text:list-level-style-number text:level="9" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="9"><style:list-level-properties text:space-before="9.45in" text:min-label-width="1.1811in"/></text:list-level-style-number><text:list-level-style-number text:level="10" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="10"><style:list-level-properties text:space-before="10.6315in" text:min-label-width="1.1811in"/></text:list-level-style-number></text:list-style><text:list-style style:name="Numbering_20_4" style:display-name="Numbering 4"><text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="I"><style:list-level-properties text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="I" text:start-value="2"><style:list-level-properties text:space-before="0.1972in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="3" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="I" text:start-value="3"><style:list-level-properties text:space-before="0.3937in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="4" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="I" text:start-value="4"><style:list-level-properties text:space-before="0.5909in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="5" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="I" text:start-value="5"><style:list-level-properties text:space-before="0.7874in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="6" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="I" text:start-value="6"><style:list-level-properties text:space-before="0.9846in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="7" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="I" text:start-value="7"><style:list-level-properties text:space-before="1.1815in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="8" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="I" text:start-value="8"><style:list-level-properties text:space-before="1.3787in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="9" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="I" text:start-value="9"><style:list-level-properties text:space-before="1.5752in" text:min-label-width="0.1965in"/></text:list-level-style-number><text:list-level-style-number text:level="10" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="I" text:start-value="10"><style:list-level-properties text:space-before="1.7724in" text:min-label-width="0.1965in"/></text:list-level-style-number></text:list-style><text:list-style style:name="Numbering_20_5" style:display-name="Numbering 5"><text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1"><style:list-level-properties text:min-label-width="0.1575in"/></text:list-level-style-number><text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-suffix="." style:num-format="1" text:start-value="2" text:display-levels="2"><style:list-level-properties text:space-before="0.1772in" text:min-label-width="0.2563in"/></text:list-level-style-number><text:list-level-style-number text:level="3" text:style-name="Numbering_20_Symbols" style:num-suffix=")" style:num-format="a" text:start-value="3"><style:list-level-properties text:space-before="0.4331in" text:min-label-width="0.1772in"/></text:list-level-style-number><text:list-level-style-bullet text:level="4" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="0.6319in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="0.7874in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="0.9429in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="1.0988in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="1.2543in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="1.4098in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="1.5654in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet></text:list-style><text:list-style style:name="List_20_1" style:display-name="List 1"><text:list-level-style-bullet text:level="1" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="0.1579in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="0.3146in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="0.4724in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="0.6299in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="0.7878in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="0.9445in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="1.1024in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="1.2598in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:style-name="Numbering_20_Symbols" text:bullet-char="•"><style:list-level-properties text:space-before="1.4177in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet></text:list-style><text:list-style style:name="List_20_2" style:display-name="List 2"><text:list-level-style-bullet text:level="1" text:style-name="Numbering_20_Symbols" text:bullet-char="–"><style:list-level-properties text:min-label-width="0.1181in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:style-name="Numbering_20_Symbols" text:bullet-char="–"><style:list-level-properties text:space-before="0.1181in" text:min-label-width="0.1181in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:style-name="Numbering_20_Symbols" text:bullet-char="–"><style:list-level-properties text:space-before="0.2362in" text:min-label-width="0.1181in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:style-name="Numbering_20_Symbols" text:bullet-char="–"><style:list-level-properties text:space-before="0.3539in" text:min-label-width="0.1181in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:style-name="Numbering_20_Symbols" text:bullet-char="–"><style:list-level-properties text:space-before="0.472in" text:min-label-width="0.1181in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:style-name="Numbering_20_Symbols" text:bullet-char="–"><style:list-level-properties text:space-before="0.5902in" text:min-label-width="0.1181in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:style-name="Numbering_20_Symbols" text:bullet-char="–"><style:list-level-properties text:space-before="0.7091in" text:min-label-width="0.1181in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:style-name="Numbering_20_Symbols" text:bullet-char="–"><style:list-level-properties text:space-before="0.8272in" text:min-label-width="0.1181in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:style-name="Numbering_20_Symbols" text:bullet-char="–"><style:list-level-properties text:space-before="0.9453in" text:min-label-width="0.1181in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:style-name="Numbering_20_Symbols" text:bullet-char="–"><style:list-level-properties text:space-before="1.063in" text:min-label-width="0.1181in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet></text:list-style><text:list-style style:name="List_20_3" style:display-name="List 3"><text:list-level-style-bullet text:level="1" text:style-name="Numbering_20_Symbols" text:bullet-char="☑"><style:list-level-properties text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:style-name="Numbering_20_Symbols" text:bullet-char="□"><style:list-level-properties text:space-before="0.1555in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:style-name="Numbering_20_Symbols" text:bullet-char="☑"><style:list-level-properties text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:style-name="Numbering_20_Symbols" text:bullet-char="□"><style:list-level-properties text:space-before="0.1555in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:style-name="Numbering_20_Symbols" text:bullet-char="☑"><style:list-level-properties text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:style-name="Numbering_20_Symbols" text:bullet-char="□"><style:list-level-properties text:space-before="0.1555in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:style-name="Numbering_20_Symbols" text:bullet-char="☑"><style:list-level-properties text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:style-name="Numbering_20_Symbols" text:bullet-char="□"><style:list-level-properties text:space-before="0.1555in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:style-name="Numbering_20_Symbols" text:bullet-char="☑"><style:list-level-properties text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:style-name="Numbering_20_Symbols" text:bullet-char="□"><style:list-level-properties text:space-before="0.1555in" text:min-label-width="0.1555in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet></text:list-style><text:list-style style:name="List_20_4" style:display-name="List 4"><text:list-level-style-bullet text:level="1" text:style-name="Numbering_20_Symbols" text:bullet-char="➢"><style:list-level-properties text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:style-name="Numbering_20_Symbols" text:bullet-char=""><style:list-level-properties text:space-before="0.1579in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:style-name="Numbering_20_Symbols" text:bullet-char=""><style:list-level-properties text:space-before="0.3146in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:style-name="Numbering_20_Symbols" text:bullet-char=""><style:list-level-properties text:space-before="0.4724in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:style-name="Numbering_20_Symbols" text:bullet-char=""><style:list-level-properties text:space-before="0.6299in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:style-name="Numbering_20_Symbols" text:bullet-char=""><style:list-level-properties text:space-before="0.7878in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:style-name="Numbering_20_Symbols" text:bullet-char=""><style:list-level-properties text:space-before="0.9445in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:style-name="Numbering_20_Symbols" text:bullet-char=""><style:list-level-properties text:space-before="1.1024in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:style-name="Numbering_20_Symbols" text:bullet-char=""><style:list-level-properties text:space-before="1.2598in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:style-name="Numbering_20_Symbols" text:bullet-char=""><style:list-level-properties text:space-before="1.4177in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet></text:list-style><text:list-style style:name="List_20_5" style:display-name="List 5"><text:list-level-style-bullet text:level="1" text:style-name="Numbering_20_Symbols" text:bullet-char="✗"><style:list-level-properties text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:style-name="Numbering_20_Symbols" text:bullet-char="✗"><style:list-level-properties text:space-before="0.1579in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:style-name="Numbering_20_Symbols" text:bullet-char="✗"><style:list-level-properties text:space-before="0.3146in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:style-name="Numbering_20_Symbols" text:bullet-char="✗"><style:list-level-properties text:space-before="0.4724in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:style-name="Numbering_20_Symbols" text:bullet-char="✗"><style:list-level-properties text:space-before="0.6299in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:style-name="Numbering_20_Symbols" text:bullet-char="✗"><style:list-level-properties text:space-before="0.7878in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:style-name="Numbering_20_Symbols" text:bullet-char="✗"><style:list-level-properties text:space-before="0.9445in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:style-name="Numbering_20_Symbols" text:bullet-char="✗"><style:list-level-properties text:space-before="1.1024in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:style-name="Numbering_20_Symbols" text:bullet-char="✗"><style:list-level-properties text:space-before="1.2598in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:style-name="Numbering_20_Symbols" text:bullet-char="✗"><style:list-level-properties text:space-before="1.4177in" text:min-label-width="0.1575in"/><style:text-properties style:font-name="StarSymbol"/></text:list-level-style-bullet></text:list-style><text:notes-configuration text:note-class="footnote" text:citation-style-name="Footnote_20_Symbol" text:citation-body-style-name="Footnote_20_anchor" style:num-format="1" text:start-value="0" text:footnotes-position="page" text:start-numbering-at="document"/><text:notes-configuration text:note-class="endnote" style:num-format="i" text:start-value="0"/><text:linenumbering-configuration text:number-lines="false" text:offset="0.1965in" style:num-format="1" text:number-position="left" text:increment="5"/><style:style style:name="Horizontal_20_Line" style:display-name="Horizontal Line" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text_20_body" style:class="html"><style:paragraph-properties fo:margin-top="0in" fo:margin-bottom="0.1965in" style:border-line-width-bottom="0.0008in 0.0138in 0.0008in" fo:padding="0in" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.0154in double #808080" text:number-lines="false" text:line-number="0" style:join-border="false"/><style:text-properties fo:font-size="6pt" style:font-size-asian="6pt" style:font-size-complex="6pt"/></style:style></office:styles><office:automatic-styles><style:style style:name="P1" style:family="paragraph" style:parent-style-name="Footer"><style:paragraph-properties fo:text-align="center" style:justify-single-word="false"/></style:style><style:page-layout style:name="pm1"><style:page-layout-properties fo:page-width="8.5in" fo:page-height="11in" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1in" fo:margin-bottom="1in" fo:margin-left="1in" fo:margin-right="1in" style:writing-mode="lr-tb" style:footnote-max-height="0in"><style:footnote-sep style:width="0.0071in" style:distance-before-sep="0.0398in" style:distance-after-sep="0.0398in" style:adjustment="left" style:rel-width="25%" style:color="#000000"/></style:page-layout-properties><style:header-style/><style:footer-style><style:header-footer-properties fo:min-height="0.4in" fo:margin-left="0in" fo:margin-right="0in" fo:margin-top="0.2in" style:dynamic-spacing="false"/></style:footer-style></style:page-layout></office:automatic-styles><office:master-styles><style:master-page style:name="Standard" style:page-layout-name="pm1"><style:footer><text:p text:style-name="P1"><text:page-number text:select-page="current">1</text:page-number> </text:p></style:footer></style:master-page></office:master-styles></office:document-styles>
− data/ui/default/framing.css
@@ -1,23 +0,0 @@-/* The following styles size, place, and layer the slide components.-   Edit these if you want to change the overall slide layout.-   The commented lines can be uncommented (and modified, if necessary) -    to help you with the rearrangement process. */--/* target = 1024x768 */--div#header, div#footer, .slide {width: 100%; top: 0; left: 0;}-div#header {top: 0; height: 3em; z-index: 1;}-div#footer {top: auto; bottom: 0; height: 2.5em; z-index: 5;}-.slide {top: 0; width: 92%; padding: 3.5em 4% 4%; z-index: 2;  list-style: none;}-div#controls {left: 50%; bottom: 0; width: 50%; z-index: 100;}-div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;-  margin: 0;}-#currentSlide {position: absolute; width: 10%; left: 45%; bottom: 1em; z-index: 10;}-html>body #currentSlide {position: fixed;}--/*-div#header {background: #FCC;}-div#footer {background: #CCF;}-div#controls {background: #BBD;}-div#currentSlide {background: #FFC;}-*/
− data/ui/default/opera.css
@@ -1,7 +0,0 @@-/* DO NOT CHANGE THESE unless you really want to break Opera Show */-.slide {-	visibility: visible !important;-	position: static !important;-	page-break-before: always;-}-#slide0 {page-break-before: avoid;}
− data/ui/default/outline.css
@@ -1,15 +0,0 @@-/* don't change this unless you want the layout stuff to show up in the outline view! */--.layout div, #footer *, #controlForm * {display: none;}-#footer, #controls, #controlForm, #navLinks, #toggle {-  display: block; visibility: visible; margin: 0; padding: 0;}-#toggle {float: right; padding: 0.5em;}-html>body #toggle {position: fixed; top: 0; right: 0;}--/* making the outline look pretty-ish */--#slide0 h1, #slide0 h2, #slide0 h3, #slide0 h4 {border: none; margin: 0;}-#slide0 h1 {padding-top: 1.5em;}-.slide h1 {margin: 1.5em 0 0; padding-top: 0.25em;-  border-top: 1px solid #888; border-bottom: 1px solid #AAA;}-#toggle {border: 1px solid; border-width: 0 0 1px 1px; background: #FFF;}
− data/ui/default/pretty.css
@@ -1,86 +0,0 @@-/* Following are the presentation styles -- edit away! */--body {background: #FFF url(bodybg.gif) -16px 0 no-repeat; color: #000; font-size: 2em;}-:link, :visited {text-decoration: none; color: #00C;}-#controls :active {color: #88A !important;}-#controls :focus {outline: 1px dotted #227;}-h1, h2, h3, h4 {font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}-ul, pre {margin: 0; line-height: 1em;}-html, body {margin: 0; padding: 0;}--blockquote, q {font-style: italic;}-blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; font-size: 1em;}-blockquote p {margin: 0;}-blockquote i {font-style: normal;}-blockquote b {display: block; margin-top: 0.5em; font-weight: normal; font-size: smaller; font-style: normal;}-blockquote b i {font-style: italic;}--kbd {font-weight: bold; font-size: 1em;}-sup {font-size: smaller; line-height: 1px;}--.slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}-.slide code.bad, code del {color: red;}-.slide code.old {color: silver;}-.slide pre {padding: 0; margin: 0.25em 0 0.5em 0.5em; color: #533; font-size: 90%;}-.slide pre code {display: block;}-.slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}-.slide li {margin-top: 0.75em; margin-right: 0;}-.slide ul ul {line-height: 1;}-.slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}-.slide img.leader {display: block; margin: 0 auto;}--div#header, div#footer {background: #005; color: #AAB;-  font-family: Verdana, Helvetica, sans-serif;}-div#header {background: #005 url(bodybg.gif) -16px 0 no-repeat;-  line-height: 1px;}-div#footer {font-size: 0.5em; font-weight: bold; padding: 1em 0;}-#footer h1, #footer h2 {display: block; padding: 0 1em;}-#footer h2 {font-style: italic;}--div.long {font-size: 0.75em;}-.slide h1 {position: absolute; top: 0.7em; left: 87px; z-index: 1;-  margin: 0; padding: 0.3em 0 0 50px; white-space: nowrap;-  font: bold 150%/1em Helvetica, sans-serif; text-transform: capitalize;-  color: #DDE; background: #005;}-.slide h3 {font-size: 130%;}-h1 abbr {font-variant: small-caps;}--div#controls {position: absolute; left: 50%; bottom: 0;-  width: 50%;-  text-align: right; font: bold 0.9em Verdana, Helvetica, sans-serif;}-html>body div#controls {position: fixed; padding: 0 0 1em 0;-  top: auto;}-div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;-  margin: 0; padding: 0;}-#controls #navLinks a {padding: 0; margin: 0 0.5em; -  background: #005; border: none; color: #779; -  cursor: pointer;}-#controls #navList {height: 1em;}-#controls #navList #jumplist {position: absolute; bottom: 0; right: 0; background: #DDD; color: #227;}--#currentSlide {text-align: center; font-size: 0.5em; color: #449;}--#slide0 {padding-top: 3.5em; font-size: 90%;}-#slide0 h1 {position: static; margin: 1em 0 0; padding: 0;-   font: bold 2em Helvetica, sans-serif; white-space: normal;-   color: #000; background: transparent;}-#slide0 h2 {font: bold italic 1em Helvetica, sans-serif; margin: 0.25em;}-#slide0 h3 {margin-top: 1.5em; font-size: 1.5em;}-#slide0 h4 {margin-top: 0; font-size: 1em;}--ul.urls {list-style: none; display: inline; margin: 0;}-.urls li {display: inline; margin: 0;}-.note {display: none;}-.external {border-bottom: 1px dotted gray;}-html>body .external {border-bottom: none;}-.external:after {content: " \274F"; font-size: smaller; color: #77B;}--.incremental, .incremental *, .incremental *:after {color: #DDE; visibility: visible;}-img.incremental {visibility: hidden;}-.slide .current {color: #B02;}---/* diagnostics--li:after {content: " [" attr(class) "]"; color: #F88;}-*/
− data/ui/default/print.css
@@ -1,24 +0,0 @@-/* The following rule is necessary to have all slides appear in print! DO NOT REMOVE IT! */-.slide, ul {page-break-inside: avoid; visibility: visible !important;}-h1 {page-break-after: avoid;}--body {font-size: 12pt; background: white;}-* {color: black;}--#slide0 h1 {font-size: 200%; border: none; margin: 0.5em 0 0.25em;}-#slide0 h3 {margin: 0; padding: 0;}-#slide0 h4 {margin: 0 0 0.5em; padding: 0;}-#slide0 {margin-bottom: 3em;}--h1 {border-top: 2pt solid gray; border-bottom: 1px dotted silver;}-.extra {background: transparent !important;}-div.extra, pre.extra, .example {font-size: 10pt; color: #333;}-ul.extra a {font-weight: bold;}-p.example {display: none;}--#header {display: none;}-#footer h1 {margin: 0; border-bottom: 1px solid; color: gray; font-style: italic;}-#footer h2, #controls {display: none;}--/* The following rule keeps the layout stuff out of print.  Remove at your own risk! */-.layout, .layout * {display: none !important;}
− data/ui/default/s5-core.css
@@ -1,9 +0,0 @@-/* Do not edit or override these styles! The system will likely break if you do. */--div#header, div#footer, div#controls, .slide {position: absolute;}-html>body div#header, html>body div#footer, -  html>body div#controls, html>body .slide {position: fixed;}-.handout {display: none;}-.layout {display: block;}-.slide, .hideme, .incremental {visibility: hidden;}-#slide0 {visibility: visible;}
− data/ui/default/slides.js.comment
@@ -1,4 +0,0 @@-// S5 v1.1 slides.js -- released into the Public Domain-//-// Please see http://www.meyerweb.com/eric/tools/s5/credits.html for information -// about all the wonderful and talented contributors to this code!
− data/ui/default/slides.js.packed
@@ -1,74 +0,0 @@-var undef;var slideCSS='';var snum=0;var smax=1;var incpos=0;var number=undef;var s5mode=true;var defaultView='slideshow';var controlVis='visible';var isIE=navigator.appName=='Microsoft Internet Explorer'&&navigator.userAgent.indexOf('Opera')<1?1:0;var isOp=navigator.userAgent.indexOf('Opera')>-1?1:0;var isGe=navigator.userAgent.indexOf('Gecko')>-1&&navigator.userAgent.indexOf('Safari')<1?1:0;function hasClass(object,className){if(!object.className)return false;return(object.className.search('(^|\\s)'+className+'(\\s|$)')!=-1);}-function hasValue(object,value){if(!object)return false;return(object.search('(^|\\s)'+value+'(\\s|$)')!=-1);}-function removeClass(object,className){if(!object)return;object.className=object.className.replace(new RegExp('(^|\\s)'+className+'(\\s|$)'),RegExp.$1+RegExp.$2);}-function addClass(object,className){if(!object||hasClass(object,className))return;if(object.className){object.className+=' '+className;}else{object.className=className;}}-function GetElementsWithClassName(elementName,className){var allElements=document.getElementsByTagName(elementName);var elemColl=new Array();for(var i=0;i<allElements.length;i++){if(hasClass(allElements[i],className)){elemColl[elemColl.length]=allElements[i];}}-return elemColl;}-function isParentOrSelf(element,id){if(element==null||element.nodeName=='BODY')return false;else if(element.id==id)return true;else return isParentOrSelf(element.parentNode,id);}-function nodeValue(node){var result="";if(node.nodeType==1){var children=node.childNodes;for(var i=0;i<children.length;++i){result+=nodeValue(children[i]);}}-else if(node.nodeType==3){result=node.nodeValue;}-return(result);}-function slideLabel(){var slideColl=GetElementsWithClassName('*','slide');var list=document.getElementById('jumplist');smax=slideColl.length;for(var n=0;n<smax;n++){var obj=slideColl[n];var did='slide'+n.toString();obj.setAttribute('id',did);if(isOp)continue;var otext='';var menu=obj.firstChild;if(!menu)continue;while(menu&&menu.nodeType==3){menu=menu.nextSibling;}-if(!menu)continue;var menunodes=menu.childNodes;for(var o=0;o<menunodes.length;o++){otext+=nodeValue(menunodes[o]);}-list.options[list.length]=new Option(n+' : '+otext,n);}}-function currentSlide(){var cs;if(document.getElementById){cs=document.getElementById('currentSlide');}else{cs=document.currentSlide;}-cs.innerHTML='<span id="csHere">'+snum+'<\/span> '+'<span id="csSep">\/<\/span> '+'<span id="csTotal">'+(smax-1)+'<\/span>';if(snum==0){cs.style.visibility='hidden';}else{cs.style.visibility='visible';}}-function go(step){if(document.getElementById('slideProj').disabled||step==0)return;var jl=document.getElementById('jumplist');var cid='slide'+snum;var ce=document.getElementById(cid);if(incrementals[snum].length>0){for(var i=0;i<incrementals[snum].length;i++){removeClass(incrementals[snum][i],'current');removeClass(incrementals[snum][i],'incremental');}}-if(step!='j'){snum+=step;lmax=smax-1;if(snum>lmax)snum=lmax;if(snum<0)snum=0;}else-snum=parseInt(jl.value);var nid='slide'+snum;var ne=document.getElementById(nid);if(!ne){ne=document.getElementById('slide0');snum=0;}-if(step<0){incpos=incrementals[snum].length}else{incpos=0;}-if(incrementals[snum].length>0&&incpos==0){for(var i=0;i<incrementals[snum].length;i++){if(hasClass(incrementals[snum][i],'current'))-incpos=i+1;else-addClass(incrementals[snum][i],'incremental');}}-if(incrementals[snum].length>0&&incpos>0)-addClass(incrementals[snum][incpos-1],'current');ce.style.visibility='hidden';ne.style.visibility='visible';jl.selectedIndex=snum;currentSlide();number=0;}-function goTo(target){if(target>=smax||target==snum)return;go(target-snum);}-function subgo(step){if(step>0){removeClass(incrementals[snum][incpos-1],'current');removeClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos],'current');incpos++;}else{incpos--;removeClass(incrementals[snum][incpos],'current');addClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos-1],'current');}}-function toggle(){var slideColl=GetElementsWithClassName('*','slide');var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');if(!slides.disabled){slides.disabled=true;outline.disabled=false;s5mode=false;fontSize('1em');for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='visible';}}else{slides.disabled=false;outline.disabled=true;s5mode=true;fontScale();for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='hidden';}-slideColl[snum].style.visibility='visible';}}-function showHide(action){var obj=GetElementsWithClassName('*','hideme')[0];switch(action){case's':obj.style.visibility='visible';break;case'h':obj.style.visibility='hidden';break;case'k':if(obj.style.visibility!='visible'){obj.style.visibility='visible';}else{obj.style.visibility='hidden';}-break;}}-function keys(key){if(!key){key=event;key.which=key.keyCode;}-if(key.which==84){toggle();return;}-if(s5mode){switch(key.which){case 10:case 13:if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;if(number!=undef){goTo(number);break;}-case 32:case 34:case 39:case 40:if(number!=undef){go(number);}else if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}-break;case 33:case 37:case 38:if(number!=undef){go(-1*number);}else if(!incrementals[snum]||incpos<=0){go(-1);}else{subgo(-1);}-break;case 36:goTo(0);break;case 35:goTo(smax-1);break;case 67:showHide('k');break;}-if(key.which<48||key.which>57){number=undef;}else{if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;number=(((number!=undef)?number:0)*10)+(key.which-48);}}-return false;}-function clicker(e){number=undef;var target;if(window.event){target=window.event.srcElement;e=window.event;}else target=e.target;if(target.getAttribute('href')!=null||hasValue(target.rel,'external')||isParentOrSelf(target,'controls')||isParentOrSelf(target,'embed')||isParentOrSelf(target,'object'))return true;if(!e.which||e.which==1){if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}}}-function findSlide(hash){var target=null;var slides=GetElementsWithClassName('*','slide');for(var i=0;i<slides.length;i++){var targetSlide=slides[i];if((targetSlide.name&&targetSlide.name==hash)||(targetSlide.id&&targetSlide.id==hash)){target=targetSlide;break;}}-while(target!=null&&target.nodeName!='BODY'){if(hasClass(target,'slide')){return parseInt(target.id.slice(5));}-target=target.parentNode;}-return null;}-function slideJump(){if(window.location.hash==null)return;var sregex=/^#slide(\d+)$/;var matches=sregex.exec(window.location.hash);var dest=null;if(matches!=null){dest=parseInt(matches[1]);}else{dest=findSlide(window.location.hash.slice(1));}-if(dest!=null)-go(dest-snum);}-function fixLinks(){var thisUri=window.location.href;thisUri=thisUri.slice(0,thisUri.length-window.location.hash.length);var aelements=document.getElementsByTagName('A');for(var i=0;i<aelements.length;i++){var a=aelements[i].href;var slideID=a.match('\#slide[0-9]{1,2}');if((slideID)&&(slideID[0].slice(0,1)=='#')){var dest=findSlide(slideID[0].slice(1));if(dest!=null){if(aelements[i].addEventListener){aelements[i].addEventListener("click",new Function("e","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"if (e.preventDefault) e.preventDefault();"),true);}else if(aelements[i].attachEvent){aelements[i].attachEvent("onclick",new Function("","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"event.returnValue = false;"));}}}}}-function externalLinks(){if(!document.getElementsByTagName)return;var anchors=document.getElementsByTagName('a');for(var i=0;i<anchors.length;i++){var anchor=anchors[i];if(anchor.getAttribute('href')&&hasValue(anchor.rel,'external')){anchor.target='_blank';addClass(anchor,'external');}}}-function createControls(){var controlsDiv=document.getElementById("controls");if(!controlsDiv)return;var hider=' onmouseover="showHide(\'s\');" onmouseout="showHide(\'h\');"';var hideDiv,hideList='';if(controlVis=='hidden'){hideDiv=hider;}else{hideList=hider;}-controlsDiv.innerHTML='<form action="#" id="controlForm"'+hideDiv+'>'+'<div id="navLinks">'+'<a accesskey="t" id="toggle" href="javascript:toggle();">&#216;<\/a>'+'<a accesskey="z" id="prev" href="javascript:go(-1);">&laquo;<\/a>'+'<a accesskey="x" id="next" href="javascript:go(1);">&raquo;<\/a>'+'<div id="navList"'+hideList+'><select id="jumplist" onchange="go(\'j\');"><\/select><\/div>'+'<\/div><\/form>';if(controlVis=='hidden'){var hidden=document.getElementById('navLinks');}else{var hidden=document.getElementById('jumplist');}-addClass(hidden,'hideme');}-function fontScale(){if(!s5mode)return false;var vScale=22;var hScale=32;if(window.innerHeight){var vSize=window.innerHeight;var hSize=window.innerWidth;}else if(document.documentElement.clientHeight){var vSize=document.documentElement.clientHeight;var hSize=document.documentElement.clientWidth;}else if(document.body.clientHeight){var vSize=document.body.clientHeight;var hSize=document.body.clientWidth;}else{var vSize=700;var hSize=1024;}-var newSize=Math.min(Math.round(vSize/vScale),Math.round(hSize/hScale));fontSize(newSize+'px');if(isGe){var obj=document.getElementsByTagName('body')[0];obj.style.display='none';obj.style.display='block';}}-function fontSize(value){if(!(s5ss=document.getElementById('s5ss'))){if(!isIE){document.getElementsByTagName('head')[0].appendChild(s5ss=document.createElement('style'));s5ss.setAttribute('media','screen, projection');s5ss.setAttribute('id','s5ss');}else{document.createStyleSheet();document.s5ss=document.styleSheets[document.styleSheets.length-1];}}-if(!isIE){while(s5ss.lastChild)s5ss.removeChild(s5ss.lastChild);s5ss.appendChild(document.createTextNode('body {font-size: '+value+' !important;}'));}else{document.s5ss.addRule('body','font-size: '+value+' !important;');}}-function notOperaFix(){slideCSS=document.getElementById('slideProj').href;var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');slides.setAttribute('media','screen');outline.disabled=true;if(isGe){slides.setAttribute('href','null');slides.setAttribute('href',slideCSS);}-if(isIE&&document.styleSheets&&document.styleSheets[0]){document.styleSheets[0].addRule('img','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('div','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('.slide','behavior: url(ui/default/iepngfix.htc)');}}-function getIncrementals(obj){var incrementals=new Array();if(!obj)-return incrementals;var children=obj.childNodes;for(var i=0;i<children.length;i++){var child=children[i];if(hasClass(child,'incremental')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'incremental');for(var j=0;j<child.childNodes.length;j++){if(child.childNodes[j].nodeType==1){addClass(child.childNodes[j],'incremental');}}}else{incrementals[incrementals.length]=child;removeClass(child,'incremental');}}-if(hasClass(child,'show-first')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'show-first');if(child.childNodes[isGe].nodeType==1){removeClass(child.childNodes[isGe],'incremental');}}else{incrementals[incrementals.length]=child;}}-incrementals=incrementals.concat(getIncrementals(child));}-return incrementals;}-function createIncrementals(){var incrementals=new Array();for(var i=0;i<smax;i++){incrementals[i]=getIncrementals(document.getElementById('slide'+i));}-return incrementals;}-function defaultCheck(){var allMetas=document.getElementsByTagName('meta');for(var i=0;i<allMetas.length;i++){if(allMetas[i].name=='defaultView'){defaultView=allMetas[i].content;}-if(allMetas[i].name=='controlVis'){controlVis=allMetas[i].content;}}}-function trap(e){if(!e){e=event;e.which=e.keyCode;}-try{modifierKey=e.ctrlKey||e.altKey||e.metaKey;}-catch(e){modifierKey=false;}-return modifierKey||e.which==0;}-function startup(){defaultCheck();if(!isOp)-createControls();slideLabel();fixLinks();externalLinks();fontScale();if(!isOp){notOperaFix();incrementals=createIncrementals();slideJump();if(defaultView=='outline'){toggle();}-document.onkeyup=keys;document.onkeypress=trap;document.onclick=clicker;}}-window.onload=startup;window.onresize=function(){setTimeout('fontScale()',50);}
man/man1/markdown2pdf.1.md view
@@ -46,8 +46,23 @@ \--strict :   Use strict markdown syntax, with no extensions or variants. +\--xetex+:   Use xelatex instead of pdflatex to create the PDF.+ -N, \--number-sections :   Number section headings in LaTeX output.  (Default is not to number them.)++\--template=*FILE*+:   Use *FILE* as a custom template for the generated document. Implies+    `-s`. See the section TEMPLATES in `pandoc`(1) for information about+    template syntax.++-V KEY=VAL, \--variable=*KEY:VAL*+:   Set the template variable KEY to the value VAL when rendering the+    document in standalone mode. This is only useful when the+    `--template` option is used to specify a custom template, since+    pandoc automatically sets the variables used in the default+    templates.  -H *FILE*, \--include-in-header=*FILE* :   Include (LaTeX) contents of *FILE* at the end of the header.  Implies
man/man1/pandoc.1.md view
@@ -133,6 +133,9 @@ -i, \--incremental :   Make list items in S5 display incrementally (one by one). +\--xetex+:   Create LaTeX outut suitable for processing by XeTeX.+ -N, \--number-sections :   Number section headings in LaTeX, ConTeXt, or HTML output.     (Default is not to number them.)@@ -169,6 +172,19 @@     RTF) or an instruction to create one (LaTeX, reStructuredText).     This option has no effect on man, DocBook, or S5 output. +\--template=*FILE*+:   Use *FILE* as a custom template for the generated document. Implies+    `-s`. See TEMPLATES below for a description of template syntax. If+    this option is not used, a default template appropriate for the+    output format will be used. See also `-D/--print-default-template`.++-V KEY=VAL, \--variable=*KEY:VAL*+:   Set the template variable KEY to the value VAL when rendering the+    document in standalone mode. This is only useful when the+    `--template` option is used to specify a custom template, since+    pandoc automatically sets the variables used in the default+    templates.+ -c *CSS*, \--css=*CSS* :   Link to a CSS style sheet.  *CSS* is the pathname of the style sheet. @@ -184,13 +200,24 @@ -C *FILE*, \--custom-header=*FILE* :   Use contents of *FILE* as the document header (overriding the     default header, which can be printed by using the `-D` option).-    Implies `-s`.+    Implies `-s`. Note: This option is deprecated. Users should+    transition to using `--template` instead. --D *FORMAT*, \--print-default-header=*FORMAT*-:   Print the default header for *FORMAT* (`html`, `s5`, `latex`,-    `context`, `docbook`, `man`, `markdown`, `opendocument`,-    `rst`, `rtf`).+\--reference-odt=*filename*+:   Use the specified file as a style reference in producing an ODT.+    For best results, the reference ODT should be a modified version+    of an ODT produced using pandoc.  The contents of the reference ODT+    are ignored, but its stylesheets are used in the new ODT. If no+    reference ODT is specified on the command line, pandoc will look+    for `$HOME/.pandoc/reference.odt` (on unix) or+    `C:\Documents And Settings\USERNAME\Application Data\pandoc\reference.odt`+    (on Windows). If this is not found either, sensible defaults will be+    used. +-D *FORMAT*, \--print-default-template=*FORMAT*+:   Print the default template for an output *FORMAT*. (See `-t`+    for a list of possible *FORMAT*s.)+ -T *STRING*, \--title-prefix=*STRING* :   Specify *STRING* as a prefix to the HTML window title. @@ -219,6 +246,82 @@  -h, \--help :   Show usage message.++# TEMPLATES++When the `-s/--standalone` option is used, pandoc uses a template to+add header and footer material that is needed for a self-standing+document.  To see the default template that is used, just type++    pandoc --print-default-template=FORMAT++where `FORMAT` is the name of the output format. A custom template+can be specified using the `--template` option.  You can also override+the system default templates for a given output format `FORMAT`+by putting a file `FORMAT.template` in `$HOME/.pandoc/templates`+(on unix) or+`C:\Documents And Settings\USERNAME\Application Data\pandoc\templates`+(on Windows).++Templates may contain *variables*.  Variable names are sequences of+alphanumerics, `-`, and `_`, starting with a letter.  A variable name+surrounded by `$` signs will be replaced by its value.  For example,+the string `$title$` in++    <title>$title$</title>++will be replaced by the document title.++To write a literal `$` in a template, use `$$`.++Some variables are set automatically by pandoc.  These vary somewhat+depending on the output format, but include:++`legacy-header`+:   contents specified by `-C/--custom-header`+`header-includes`+:   contents specified by `-H/--include-in-header` (may have multiple+    values)+`toc`+:   non-null value if `--toc/--table-of-contents` was specified+`body`+:   body of document+`title`+:   title of document, as specified in title block+`author`+:   author of document, as specified in title block (may have+    multiple values)+`date`+:   date of document, as specified in title block++Variables may be set at the command line using the `-V/--variable`+option. This allows users to include custom variables in their+templates.++Templates may contain conditionals.  The syntax is as follows:++    $if(variable)$+    X +    $else$+    Y+    $endif$++This will include `X` in the template if `variable` has a non-null+value; otherwise it will include `Y`. `X` and `Y` are placeholders for+any valid template text, and may include interpolated variables or other+conditionals. The `$else$` section may be omitted.++When variables can have multiple values (for example, `author` in+a multi-author document), you can use the `$for$` keyword:++    $for(author)$+    <meta name="author" content="$author$" />+    $endfor$++You can optionally specify a separator to be used between+consecutive items:++    $for(author)$$author$$sep$, $endfor$  # SEE ALSO 
markdown2pdf view
@@ -1,6 +1,11 @@ #!/bin/sh -e -REQUIRED="pdflatex"+latexprogram=pdflatex+if (echo "$@" | grep -q xetex); then+   latexprogram=xelatex+fi++REQUIRED=$latexprogram SYNOPSIS="converts markdown-formatted text to PDF, using pdflatex."  THIS=${0##*/}@@ -13,7 +18,8 @@  usage () {     err "$1 - $2" # short description-    err "See the $1(1) man page for usage."+    err "Options:"+    pandoc -h | sed -ne '/--strict\|--preserve-tabs\|--tab-stop\|--parse-raw\|--toc\|--xetex\|--number-sections\|--include-in-header\|--include-before-body\|--include-after-body\|--custom-header\|--output\|--template\|--variable\|--help\|--version/p' >&2 }  # Portable which(1).@@ -36,17 +42,15 @@     } done -CONF=$(pandoc --dump-args "$@" 2>&1) || {-    errcode=$?-    echo "$CONF" | sed -e '/^pandoc \[OPTIONS\] \[FILES\]/,$d' >&2-    [ $errcode -eq 2 ] && usage "$THIS" "$SYNOPSIS"-    exit $errcode-}+if (echo "$@" | grep -q -- "--help\|-h"); then+    usage "$THIS" "$SYNOPSIS"+    exit 0+fi +CONF=$(pandoc --dump-args "$@") || exit $? OUTPUT=$(echo "$CONF" | sed -ne '1p') ARGS=$(echo "$CONF" | sed -e '1d') - # As a security measure refuse to proceed if mktemp is not available. pathfind mktemp || { err "Couldn't find 'mktemp'; aborting."; exit 1;  } @@ -87,9 +91,9 @@     finished=no     runs=0     while [ $finished = "no" ]; do-      pdflatex -interaction=batchmode $texname.tex >/dev/null || {+      $latexprogram -interaction=batchmode $texname.tex >/dev/null || {         errcode=$?-        err "${THIS}: pdfLaTeX failed with error code $errcode"+        err "${THIS}: $latexprogram failed with error code $errcode"         [ -f $texname.log ] && {           err "${THIS}: error context:"           sed -ne '/^!/,/^[[:space:]]*$/p' \@@ -107,7 +111,7 @@         exit $errcode       }       if [ $runs -lt 3 ] && -      ((grep -q "LaTeX Warning: There were undefined references." $texname.log) ||+      ((grep -q "Warning: There were undefined references." $texname.log) ||        (echo "$@" | grep -q -- "--toc\|--table-of-contents")); then         runs=$(($runs + 1))         if grep -q "LaTeX Warning:.*[Cc]itation" $texname.log; then
pandoc.cabal view
@@ -1,17 +1,17 @@ Name:            pandoc-Version:         1.3+Version:         1.4 Cabal-Version:   >= 1.2 Build-Type:      Custom License:         GPL License-File:    COPYING-Copyright:       (c) 2006-2008 John MacFarlane+Copyright:       (c) 2006-2010 John MacFarlane Author:          John MacFarlane <jgm@berkeley.edu> Maintainer:      John MacFarlane <jgm@berkeley.edu> Bug-Reports:     http://code.google.com/p/pandoc/issues/list Stability:       alpha Homepage:        http://johnmacfarlane.net/pandoc Category:        Text-Tested-With:     GHC+Tested-With:     GHC == 6.10.4, GHC == 6.12.1 Synopsis:        Conversion between markup formats Description:     Pandoc is a Haskell library for converting from one markup                  format to another, and a command-line tool that uses@@ -34,7 +34,28 @@                  which convert this native representation into a target                  format. Thus, adding an input or output format requires                  only adding a reader or writer.-Data-Files:+Data-Files:      +                 -- templates+                 templates/html.template, templates/docbook.template,+                 templates/opendocument.template, templates/latex.template,+                 templates/context.template, templates/texinfo.template,+                 templates/man.template, templates/markdown.template,+                 templates/rst.template,+                 templates/mediawiki.template, templates/rtf.template,+                 -- data for ODT writer+                 reference.odt,+                 -- data for LaTeXMathML writer+                 data/LaTeXMathML.js.comment,+                 data/LaTeXMathML.js.packed,+                 -- data for S5 writer+                 s5/default/slides.js.comment,+                 s5/default/slides.js.packed,+                 s5/default/s5-core.css,+                 s5/default/framing.css,+                 s5/default/pretty.css,+                 s5/default/opera.css,+                 s5/default/outline.css,+                 s5/default/print.css,                  -- documentation                  README, INSTALL, COPYRIGHT, BUGS, changelog,                  -- wrappers@@ -45,32 +66,6 @@                  man/man1/html2markdown.1.md, man/man1/hsmarkdown.1.md,                  -- Makefile                  Makefile,-                 -- data for DefaultHeaders.hs-                 data/headers/ConTeXt.header,-                 data/headers/Docbook.header,-                 data/headers/LaTeX.header,-                 data/headers/OpenDocument.header,-                 data/headers/RTF.header,-                 data/headers/S5.header,-                 -- data for LaTeXMathML writer-                 data/LaTeXMathML.js.comment,-                 data/LaTeXMathML.js.packed,-                 -- data for S5 writer-                 data/ui/default/slides.js.comment,-                 data/ui/default/slides.js.packed,-                 data/ui/default/s5-core.css,-                 data/ui/default/framing.css,-                 data/ui/default/pretty.css,-                 data/ui/default/opera.css,-                 data/ui/default/outline.css,-                 data/ui/default/print.css,-                 -- data for ODT writer-                 data/odt-styles/meta.xml,-                 data/odt-styles/settings.xml,-                 data/odt-styles/META-INF/manifest.xml,-                 data/odt-styles/Thumbnails/thumbnail.png,-                 data/odt-styles/styles.xml,-                 data/odt-styles/mimetype,                  -- tests                  tests/bodybg.gif,                  tests/writer.latex,@@ -126,7 +121,6 @@                  tests/lhs-test.html,                  tests/lhs-test.html+lhs,                  tests/lhs-test.fragment.html+lhs,-                 tests/Diff.hs,                  tests/RunTests.hs Extra-Tmp-Files: man/man1/pandoc.1, man/man1/hsmarkdown.1,                  man/man1/html2markdown.1, man/man1/markdown2pdf.1@@ -152,7 +146,7 @@                  parsec >= 2.1 && < 3, xhtml >= 3000.0,                  mtl >= 1.1, network >= 2, filepath >= 1.1,                  process >= 1, directory >= 1, template-haskell >= 2.2,-                 bytestring >= 0.9, zip-archive >= 0.1.1,+                 bytestring >= 0.9, zip-archive >= 0.1.1.4,                  utf8-string >= 0.3, old-time >= 1   if impl(ghc >= 6.10)     Build-depends: base >= 4 && < 5, syb@@ -173,7 +167,6 @@                    Text.Pandoc.Shared,                    Text.Pandoc.ODT,                    Text.Pandoc.LaTeXMathML,-                   Text.Pandoc.DefaultHeaders,                    Text.Pandoc.Highlighting,                    Text.Pandoc.Readers.HTML,                    Text.Pandoc.Readers.LaTeX,@@ -191,12 +184,15 @@                    Text.Pandoc.Writers.RST,                    Text.Pandoc.Writers.MediaWiki,                    Text.Pandoc.Writers.RTF,-                   Text.Pandoc.Writers.S5+                   Text.Pandoc.Writers.S5,+                   Text.Pandoc.Templates   Other-Modules:   Text.Pandoc.XML,-                   Text.Pandoc.TH,                    Paths_pandoc-  Extensions:      CPP, TemplateHaskell, FlexibleInstances-  Ghc-Options:     -O2 -Wall+  Extensions:      CPP+  if impl(ghc >= 6.12)+    Ghc-Options:   -O2 -Wall -fno-warn-unused-do-bind+  else+    Ghc-Options:     -O2 -Wall   Ghc-Prof-Options: -auto-all -caf-all    if flag(library)@@ -207,9 +203,12 @@ Executable pandoc   Hs-Source-Dirs:     src   Main-Is:            pandoc.hs-  Ghc-Options:        -O2 -Wall -threaded+  if impl(ghc >= 6.12)+    Ghc-Options:   -O2 -Wall -threaded -fno-warn-unused-do-bind+  else+    Ghc-Options:     -O2 -Wall -threaded   Ghc-Prof-Options:   -auto-all -caf-all-  Extensions:         CPP, TemplateHaskell+  Extensions:         CPP    if flag(highlighting)     cpp-options:   -D_HIGHLIGHTING@@ -226,7 +225,7 @@   Main-Is:            hsmarkdown.hs   Ghc-Options:        -Wall -threaded   Ghc-Prof-Options:   -auto-all-  Extensions:         CPP, TemplateHaskell+  Extensions:         CPP   if flag(wrappers)     Buildable:      True   else@@ -237,7 +236,7 @@   Main-Is:            markdown2pdf.hs   Ghc-Options:        -Wall -threaded   Ghc-Prof-Options:   -auto-all-  Extensions:         CPP, TemplateHaskell+  Extensions:         CPP   if flag(wrappers)     Buildable:      True   else
+ reference.odt view

binary file changed (absent → 9572 bytes)

+ s5/default/framing.css view
@@ -0,0 +1,23 @@+/* The following styles size, place, and layer the slide components.+   Edit these if you want to change the overall slide layout.+   The commented lines can be uncommented (and modified, if necessary) +    to help you with the rearrangement process. */++/* target = 1024x768 */++div#header, div#footer, .slide {width: 100%; top: 0; left: 0;}+div#header {top: 0; height: 3em; z-index: 1;}+div#footer {top: auto; bottom: 0; height: 2.5em; z-index: 5;}+.slide {top: 0; width: 92%; padding: 3.5em 4% 4%; z-index: 2;  list-style: none;}+div#controls {left: 50%; bottom: 0; width: 50%; z-index: 100;}+div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;+  margin: 0;}+#currentSlide {position: absolute; width: 10%; left: 45%; bottom: 1em; z-index: 10;}+html>body #currentSlide {position: fixed;}++/*+div#header {background: #FCC;}+div#footer {background: #CCF;}+div#controls {background: #BBD;}+div#currentSlide {background: #FFC;}+*/
+ s5/default/opera.css view
@@ -0,0 +1,7 @@+/* DO NOT CHANGE THESE unless you really want to break Opera Show */+.slide {+	visibility: visible !important;+	position: static !important;+	page-break-before: always;+}+#slide0 {page-break-before: avoid;}
+ s5/default/outline.css view
@@ -0,0 +1,15 @@+/* don't change this unless you want the layout stuff to show up in the outline view! */++.layout div, #footer *, #controlForm * {display: none;}+#footer, #controls, #controlForm, #navLinks, #toggle {+  display: block; visibility: visible; margin: 0; padding: 0;}+#toggle {float: right; padding: 0.5em;}+html>body #toggle {position: fixed; top: 0; right: 0;}++/* making the outline look pretty-ish */++#slide0 h1, #slide0 h2, #slide0 h3, #slide0 h4 {border: none; margin: 0;}+#slide0 h1 {padding-top: 1.5em;}+.slide h1 {margin: 1.5em 0 0; padding-top: 0.25em;+  border-top: 1px solid #888; border-bottom: 1px solid #AAA;}+#toggle {border: 1px solid; border-width: 0 0 1px 1px; background: #FFF;}
+ s5/default/pretty.css view
@@ -0,0 +1,86 @@+/* Following are the presentation styles -- edit away! */++body {background: #FFF url(bodybg.gif) -16px 0 no-repeat; color: #000; font-size: 2em;}+:link, :visited {text-decoration: none; color: #00C;}+#controls :active {color: #88A !important;}+#controls :focus {outline: 1px dotted #227;}+h1, h2, h3, h4 {font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}+ul, pre {margin: 0; line-height: 1em;}+html, body {margin: 0; padding: 0;}++blockquote, q {font-style: italic;}+blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; font-size: 1em;}+blockquote p {margin: 0;}+blockquote i {font-style: normal;}+blockquote b {display: block; margin-top: 0.5em; font-weight: normal; font-size: smaller; font-style: normal;}+blockquote b i {font-style: italic;}++kbd {font-weight: bold; font-size: 1em;}+sup {font-size: smaller; line-height: 1px;}++.slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}+.slide code.bad, code del {color: red;}+.slide code.old {color: silver;}+.slide pre {padding: 0; margin: 0.25em 0 0.5em 0.5em; color: #533; font-size: 90%;}+.slide pre code {display: block;}+.slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}+.slide li {margin-top: 0.75em; margin-right: 0;}+.slide ul ul {line-height: 1;}+.slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}+.slide img.leader {display: block; margin: 0 auto;}++div#header, div#footer {background: #005; color: #AAB;+  font-family: Verdana, Helvetica, sans-serif;}+div#header {background: #005 url(bodybg.gif) -16px 0 no-repeat;+  line-height: 1px;}+div#footer {font-size: 0.5em; font-weight: bold; padding: 1em 0;}+#footer h1, #footer h2 {display: block; padding: 0 1em;}+#footer h2 {font-style: italic;}++div.long {font-size: 0.75em;}+.slide h1 {position: absolute; top: 0.7em; left: 87px; z-index: 1;+  margin: 0; padding: 0.3em 0 0 50px; white-space: nowrap;+  font: bold 150%/1em Helvetica, sans-serif; text-transform: capitalize;+  color: #DDE; background: #005;}+.slide h3 {font-size: 130%;}+h1 abbr {font-variant: small-caps;}++div#controls {position: absolute; left: 50%; bottom: 0;+  width: 50%;+  text-align: right; font: bold 0.9em Verdana, Helvetica, sans-serif;}+html>body div#controls {position: fixed; padding: 0 0 1em 0;+  top: auto;}+div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;+  margin: 0; padding: 0;}+#controls #navLinks a {padding: 0; margin: 0 0.5em; +  background: #005; border: none; color: #779; +  cursor: pointer;}+#controls #navList {height: 1em;}+#controls #navList #jumplist {position: absolute; bottom: 0; right: 0; background: #DDD; color: #227;}++#currentSlide {text-align: center; font-size: 0.5em; color: #449;}++#slide0 {padding-top: 3.5em; font-size: 90%;}+#slide0 h1 {position: static; margin: 1em 0 0; padding: 0;+   font: bold 2em Helvetica, sans-serif; white-space: normal;+   color: #000; background: transparent;}+#slide0 h2 {font: bold italic 1em Helvetica, sans-serif; margin: 0.25em;}+#slide0 h3 {margin-top: 1.5em; font-size: 1.5em;}+#slide0 h4 {margin-top: 0; font-size: 1em;}++ul.urls {list-style: none; display: inline; margin: 0;}+.urls li {display: inline; margin: 0;}+.note {display: none;}+.external {border-bottom: 1px dotted gray;}+html>body .external {border-bottom: none;}+.external:after {content: " \274F"; font-size: smaller; color: #77B;}++.incremental, .incremental *, .incremental *:after {color: #DDE; visibility: visible;}+img.incremental {visibility: hidden;}+.slide .current {color: #B02;}+++/* diagnostics++li:after {content: " [" attr(class) "]"; color: #F88;}+*/
+ s5/default/print.css view
@@ -0,0 +1,24 @@+/* The following rule is necessary to have all slides appear in print! DO NOT REMOVE IT! */+.slide, ul {page-break-inside: avoid; visibility: visible !important;}+h1 {page-break-after: avoid;}++body {font-size: 12pt; background: white;}+* {color: black;}++#slide0 h1 {font-size: 200%; border: none; margin: 0.5em 0 0.25em;}+#slide0 h3 {margin: 0; padding: 0;}+#slide0 h4 {margin: 0 0 0.5em; padding: 0;}+#slide0 {margin-bottom: 3em;}++h1 {border-top: 2pt solid gray; border-bottom: 1px dotted silver;}+.extra {background: transparent !important;}+div.extra, pre.extra, .example {font-size: 10pt; color: #333;}+ul.extra a {font-weight: bold;}+p.example {display: none;}++#header {display: none;}+#footer h1 {margin: 0; border-bottom: 1px solid; color: gray; font-style: italic;}+#footer h2, #controls {display: none;}++/* The following rule keeps the layout stuff out of print.  Remove at your own risk! */+.layout, .layout * {display: none !important;}
+ s5/default/s5-core.css view
@@ -0,0 +1,9 @@+/* Do not edit or override these styles! The system will likely break if you do. */++div#header, div#footer, div#controls, .slide {position: absolute;}+html>body div#header, html>body div#footer, +  html>body div#controls, html>body .slide {position: fixed;}+.handout {display: none;}+.layout {display: block;}+.slide, .hideme, .incremental {visibility: hidden;}+#slide0 {visibility: visible;}
+ s5/default/slides.js.comment view
@@ -0,0 +1,4 @@+// S5 v1.1 slides.js -- released into the Public Domain+//+// Please see http://www.meyerweb.com/eric/tools/s5/credits.html for information +// about all the wonderful and talented contributors to this code!
+ s5/default/slides.js.packed view
@@ -0,0 +1,74 @@+var undef;var slideCSS='';var snum=0;var smax=1;var incpos=0;var number=undef;var s5mode=true;var defaultView='slideshow';var controlVis='visible';var isIE=navigator.appName=='Microsoft Internet Explorer'&&navigator.userAgent.indexOf('Opera')<1?1:0;var isOp=navigator.userAgent.indexOf('Opera')>-1?1:0;var isGe=navigator.userAgent.indexOf('Gecko')>-1&&navigator.userAgent.indexOf('Safari')<1?1:0;function hasClass(object,className){if(!object.className)return false;return(object.className.search('(^|\\s)'+className+'(\\s|$)')!=-1);}+function hasValue(object,value){if(!object)return false;return(object.search('(^|\\s)'+value+'(\\s|$)')!=-1);}+function removeClass(object,className){if(!object)return;object.className=object.className.replace(new RegExp('(^|\\s)'+className+'(\\s|$)'),RegExp.$1+RegExp.$2);}+function addClass(object,className){if(!object||hasClass(object,className))return;if(object.className){object.className+=' '+className;}else{object.className=className;}}+function GetElementsWithClassName(elementName,className){var allElements=document.getElementsByTagName(elementName);var elemColl=new Array();for(var i=0;i<allElements.length;i++){if(hasClass(allElements[i],className)){elemColl[elemColl.length]=allElements[i];}}+return elemColl;}+function isParentOrSelf(element,id){if(element==null||element.nodeName=='BODY')return false;else if(element.id==id)return true;else return isParentOrSelf(element.parentNode,id);}+function nodeValue(node){var result="";if(node.nodeType==1){var children=node.childNodes;for(var i=0;i<children.length;++i){result+=nodeValue(children[i]);}}+else if(node.nodeType==3){result=node.nodeValue;}+return(result);}+function slideLabel(){var slideColl=GetElementsWithClassName('*','slide');var list=document.getElementById('jumplist');smax=slideColl.length;for(var n=0;n<smax;n++){var obj=slideColl[n];var did='slide'+n.toString();obj.setAttribute('id',did);if(isOp)continue;var otext='';var menu=obj.firstChild;if(!menu)continue;while(menu&&menu.nodeType==3){menu=menu.nextSibling;}+if(!menu)continue;var menunodes=menu.childNodes;for(var o=0;o<menunodes.length;o++){otext+=nodeValue(menunodes[o]);}+list.options[list.length]=new Option(n+' : '+otext,n);}}+function currentSlide(){var cs;if(document.getElementById){cs=document.getElementById('currentSlide');}else{cs=document.currentSlide;}+cs.innerHTML='<span id="csHere">'+snum+'<\/span> '+'<span id="csSep">\/<\/span> '+'<span id="csTotal">'+(smax-1)+'<\/span>';if(snum==0){cs.style.visibility='hidden';}else{cs.style.visibility='visible';}}+function go(step){if(document.getElementById('slideProj').disabled||step==0)return;var jl=document.getElementById('jumplist');var cid='slide'+snum;var ce=document.getElementById(cid);if(incrementals[snum].length>0){for(var i=0;i<incrementals[snum].length;i++){removeClass(incrementals[snum][i],'current');removeClass(incrementals[snum][i],'incremental');}}+if(step!='j'){snum+=step;lmax=smax-1;if(snum>lmax)snum=lmax;if(snum<0)snum=0;}else+snum=parseInt(jl.value);var nid='slide'+snum;var ne=document.getElementById(nid);if(!ne){ne=document.getElementById('slide0');snum=0;}+if(step<0){incpos=incrementals[snum].length}else{incpos=0;}+if(incrementals[snum].length>0&&incpos==0){for(var i=0;i<incrementals[snum].length;i++){if(hasClass(incrementals[snum][i],'current'))+incpos=i+1;else+addClass(incrementals[snum][i],'incremental');}}+if(incrementals[snum].length>0&&incpos>0)+addClass(incrementals[snum][incpos-1],'current');ce.style.visibility='hidden';ne.style.visibility='visible';jl.selectedIndex=snum;currentSlide();number=0;}+function goTo(target){if(target>=smax||target==snum)return;go(target-snum);}+function subgo(step){if(step>0){removeClass(incrementals[snum][incpos-1],'current');removeClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos],'current');incpos++;}else{incpos--;removeClass(incrementals[snum][incpos],'current');addClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos-1],'current');}}+function toggle(){var slideColl=GetElementsWithClassName('*','slide');var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');if(!slides.disabled){slides.disabled=true;outline.disabled=false;s5mode=false;fontSize('1em');for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='visible';}}else{slides.disabled=false;outline.disabled=true;s5mode=true;fontScale();for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='hidden';}+slideColl[snum].style.visibility='visible';}}+function showHide(action){var obj=GetElementsWithClassName('*','hideme')[0];switch(action){case's':obj.style.visibility='visible';break;case'h':obj.style.visibility='hidden';break;case'k':if(obj.style.visibility!='visible'){obj.style.visibility='visible';}else{obj.style.visibility='hidden';}+break;}}+function keys(key){if(!key){key=event;key.which=key.keyCode;}+if(key.which==84){toggle();return;}+if(s5mode){switch(key.which){case 10:case 13:if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;if(number!=undef){goTo(number);break;}+case 32:case 34:case 39:case 40:if(number!=undef){go(number);}else if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}+break;case 33:case 37:case 38:if(number!=undef){go(-1*number);}else if(!incrementals[snum]||incpos<=0){go(-1);}else{subgo(-1);}+break;case 36:goTo(0);break;case 35:goTo(smax-1);break;case 67:showHide('k');break;}+if(key.which<48||key.which>57){number=undef;}else{if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;number=(((number!=undef)?number:0)*10)+(key.which-48);}}+return false;}+function clicker(e){number=undef;var target;if(window.event){target=window.event.srcElement;e=window.event;}else target=e.target;if(target.getAttribute('href')!=null||hasValue(target.rel,'external')||isParentOrSelf(target,'controls')||isParentOrSelf(target,'embed')||isParentOrSelf(target,'object'))return true;if(!e.which||e.which==1){if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}}}+function findSlide(hash){var target=null;var slides=GetElementsWithClassName('*','slide');for(var i=0;i<slides.length;i++){var targetSlide=slides[i];if((targetSlide.name&&targetSlide.name==hash)||(targetSlide.id&&targetSlide.id==hash)){target=targetSlide;break;}}+while(target!=null&&target.nodeName!='BODY'){if(hasClass(target,'slide')){return parseInt(target.id.slice(5));}+target=target.parentNode;}+return null;}+function slideJump(){if(window.location.hash==null)return;var sregex=/^#slide(\d+)$/;var matches=sregex.exec(window.location.hash);var dest=null;if(matches!=null){dest=parseInt(matches[1]);}else{dest=findSlide(window.location.hash.slice(1));}+if(dest!=null)+go(dest-snum);}+function fixLinks(){var thisUri=window.location.href;thisUri=thisUri.slice(0,thisUri.length-window.location.hash.length);var aelements=document.getElementsByTagName('A');for(var i=0;i<aelements.length;i++){var a=aelements[i].href;var slideID=a.match('\#slide[0-9]{1,2}');if((slideID)&&(slideID[0].slice(0,1)=='#')){var dest=findSlide(slideID[0].slice(1));if(dest!=null){if(aelements[i].addEventListener){aelements[i].addEventListener("click",new Function("e","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"if (e.preventDefault) e.preventDefault();"),true);}else if(aelements[i].attachEvent){aelements[i].attachEvent("onclick",new Function("","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"event.returnValue = false;"));}}}}}+function externalLinks(){if(!document.getElementsByTagName)return;var anchors=document.getElementsByTagName('a');for(var i=0;i<anchors.length;i++){var anchor=anchors[i];if(anchor.getAttribute('href')&&hasValue(anchor.rel,'external')){anchor.target='_blank';addClass(anchor,'external');}}}+function createControls(){var controlsDiv=document.getElementById("controls");if(!controlsDiv)return;var hider=' onmouseover="showHide(\'s\');" onmouseout="showHide(\'h\');"';var hideDiv,hideList='';if(controlVis=='hidden'){hideDiv=hider;}else{hideList=hider;}+controlsDiv.innerHTML='<form action="#" id="controlForm"'+hideDiv+'>'+'<div id="navLinks">'+'<a accesskey="t" id="toggle" href="javascript:toggle();">&#216;<\/a>'+'<a accesskey="z" id="prev" href="javascript:go(-1);">&laquo;<\/a>'+'<a accesskey="x" id="next" href="javascript:go(1);">&raquo;<\/a>'+'<div id="navList"'+hideList+'><select id="jumplist" onchange="go(\'j\');"><\/select><\/div>'+'<\/div><\/form>';if(controlVis=='hidden'){var hidden=document.getElementById('navLinks');}else{var hidden=document.getElementById('jumplist');}+addClass(hidden,'hideme');}+function fontScale(){if(!s5mode)return false;var vScale=22;var hScale=32;if(window.innerHeight){var vSize=window.innerHeight;var hSize=window.innerWidth;}else if(document.documentElement.clientHeight){var vSize=document.documentElement.clientHeight;var hSize=document.documentElement.clientWidth;}else if(document.body.clientHeight){var vSize=document.body.clientHeight;var hSize=document.body.clientWidth;}else{var vSize=700;var hSize=1024;}+var newSize=Math.min(Math.round(vSize/vScale),Math.round(hSize/hScale));fontSize(newSize+'px');if(isGe){var obj=document.getElementsByTagName('body')[0];obj.style.display='none';obj.style.display='block';}}+function fontSize(value){if(!(s5ss=document.getElementById('s5ss'))){if(!isIE){document.getElementsByTagName('head')[0].appendChild(s5ss=document.createElement('style'));s5ss.setAttribute('media','screen, projection');s5ss.setAttribute('id','s5ss');}else{document.createStyleSheet();document.s5ss=document.styleSheets[document.styleSheets.length-1];}}+if(!isIE){while(s5ss.lastChild)s5ss.removeChild(s5ss.lastChild);s5ss.appendChild(document.createTextNode('body {font-size: '+value+' !important;}'));}else{document.s5ss.addRule('body','font-size: '+value+' !important;');}}+function notOperaFix(){slideCSS=document.getElementById('slideProj').href;var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');slides.setAttribute('media','screen');outline.disabled=true;if(isGe){slides.setAttribute('href','null');slides.setAttribute('href',slideCSS);}+if(isIE&&document.styleSheets&&document.styleSheets[0]){document.styleSheets[0].addRule('img','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('div','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('.slide','behavior: url(ui/default/iepngfix.htc)');}}+function getIncrementals(obj){var incrementals=new Array();if(!obj)+return incrementals;var children=obj.childNodes;for(var i=0;i<children.length;i++){var child=children[i];if(hasClass(child,'incremental')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'incremental');for(var j=0;j<child.childNodes.length;j++){if(child.childNodes[j].nodeType==1){addClass(child.childNodes[j],'incremental');}}}else{incrementals[incrementals.length]=child;removeClass(child,'incremental');}}+if(hasClass(child,'show-first')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'show-first');if(child.childNodes[isGe].nodeType==1){removeClass(child.childNodes[isGe],'incremental');}}else{incrementals[incrementals.length]=child;}}+incrementals=incrementals.concat(getIncrementals(child));}+return incrementals;}+function createIncrementals(){var incrementals=new Array();for(var i=0;i<smax;i++){incrementals[i]=getIncrementals(document.getElementById('slide'+i));}+return incrementals;}+function defaultCheck(){var allMetas=document.getElementsByTagName('meta');for(var i=0;i<allMetas.length;i++){if(allMetas[i].name=='defaultView'){defaultView=allMetas[i].content;}+if(allMetas[i].name=='controlVis'){controlVis=allMetas[i].content;}}}+function trap(e){if(!e){e=event;e.which=e.keyCode;}+try{modifierKey=e.ctrlKey||e.altKey||e.metaKey;}+catch(e){modifierKey=false;}+return modifierKey||e.which==0;}+function startup(){defaultCheck();if(!isOp)+createControls();slideLabel();fixLinks();externalLinks();fontScale();if(!isOp){notOperaFix();incrementals=createIncrementals();slideJump();if(defaultView=='outline'){toggle();}+document.onkeyup=keys;document.onkeypress=trap;document.onclick=clicker;}}+window.onload=startup;window.onresize=function(){setTimeout('fontScale()',50);}
src/Text/Pandoc.hs view
@@ -36,14 +36,16 @@  > module Main where > import Text.Pandoc-> import qualified System.IO.UTF8 as U+> -- include the following two lines only if you're using ghc < 6.12:+> import Prelude hiding (getContents, putStrLn)+> import System.IO.UTF8 > > markdownToRST :: String -> String > markdownToRST = >   (writeRST defaultWriterOptions {writerReferenceLinks = True}) . >   readMarkdown defaultParserState > -> main = U.getContents >>= U.putStrLn . markdownToRST+> main = getContents >>= putStrLn . markdownToRST  Note:  all of the readers assume that the input text has @'\n'@ line endings.  So if you get your input text from a web form,@@ -88,8 +90,8 @@                , WriterOptions (..)                , HTMLMathMethod (..)                , defaultWriterOptions-               -- * Default headers for various output formats-               , module Text.Pandoc.DefaultHeaders+               -- * Rendering templates and default templates+               , module Text.Pandoc.Templates                -- * Version                , pandocVersion              ) where@@ -111,7 +113,7 @@ import Text.Pandoc.Writers.Man import Text.Pandoc.Writers.RTF  import Text.Pandoc.Writers.MediaWiki-import Text.Pandoc.DefaultHeaders+import Text.Pandoc.Templates import Text.Pandoc.Shared import Data.Version (showVersion) import Paths_pandoc (version)
− src/Text/Pandoc/DefaultHeaders.hs
@@ -1,69 +0,0 @@-{-# LANGUAGE CPP, TemplateHaskell #-}-{--Copyright (C) 2006-7 John MacFarlane <jgm@berkeley.edu>--This program is free software; you can redistribute it and/or modify-it under the terms of the GNU General Public License as published by-the Free Software Foundation; either version 2 of the License, or-(at your option) any later version.--This program is distributed in the hope that it will be useful,-but WITHOUT ANY WARRANTY; without even the implied warranty of-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the-GNU General Public License for more details.--You should have received a copy of the GNU General Public License-along with this program; if not, write to the Free Software-Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA--}--{- |-   Module      : Text.Pandoc.DefaultHeaders-   Copyright   : Copyright (C) 2006-7 John MacFarlane-   License     : GNU GPL, version 2 or above --   Maintainer  : John MacFarlane <jgm@berkeley.edu>-   Stability   : alpha-   Portability : portable--Default headers for Pandoc writers.--}-module Text.Pandoc.DefaultHeaders (-                                    defaultLaTeXHeader,-                                    defaultConTeXtHeader,-                                    defaultDocbookHeader,-                                    defaultOpenDocumentHeader,-                                    defaultS5Header,-                                    defaultRTFHeader-                                  ) where-import Text.Pandoc.Writers.S5-import System.FilePath ( (</>) )-import Text.Pandoc.TH ( contentsOf )--defaultLaTeXHeader :: String-#ifndef __HADDOCK__-defaultLaTeXHeader = $(contentsOf $  "data" </> "headers" </> "LaTeX.header")-#endif--defaultConTeXtHeader :: String-#ifndef __HADDOCK__-defaultConTeXtHeader = $(contentsOf $  "data" </> "headers" </> "ConTeXt.header")-#endif--defaultDocbookHeader :: String-#ifndef __HADDOCK__-defaultDocbookHeader = $(contentsOf $  "data" </> "headers" </> "Docbook.header")-#endif--defaultOpenDocumentHeader :: String-#ifndef __HADDOCK__-defaultOpenDocumentHeader = $(contentsOf $  "data" </> "headers" </> "OpenDocument.header")-#endif--defaultS5Header :: String-defaultS5Header = s5Meta ++ s5CSS ++ s5Javascript--defaultRTFHeader :: String-#ifndef __HADDOCK__-defaultRTFHeader = $(contentsOf $ "data" </> "headers" </> "RTF.header")-#endif
src/Text/Pandoc/Definition.hs view
@@ -37,9 +37,9 @@  -- | Bibliographic information for the document:  title (list of 'Inline'), -- authors (list of strings), date (string).-data Meta = Meta [Inline] -- title-                 [String] -- authors-                 String   -- date+data Meta = Meta [Inline]   -- title+                 [[Inline]] -- authors+                 [Inline]   -- date             deriving (Eq, Show, Read, Typeable, Data)  -- | Alignment of a table column.
src/Text/Pandoc/Highlighting.hs view
@@ -1,4 +1,3 @@-{-# LANGUAGE CPP #-} {- Copyright (C) 2008 John MacFarlane <jgm@berkeley.edu> @@ -34,7 +33,7 @@ import Text.Pandoc.Definition #ifdef _HIGHLIGHTING import Text.Highlighting.Kate ( languages, highlightAs, formatAsXHtml, FormatOption (..), defaultHighlightingCss, languagesByExtension )-import Data.List (find, lookup)+import Data.List (find) import Data.Maybe (fromMaybe) import Data.Char (toLower) 
src/Text/Pandoc/LaTeXMathML.hs view
@@ -1,14 +1,13 @@-{-# LANGUAGE CPP, TemplateHaskell #-} -- | Definitions for use of LaTeXMathML in HTML.   -- (See <http://math.etsu.edu/LaTeXMathML/>) module Text.Pandoc.LaTeXMathML ( latexMathMLScript ) where-import Text.Pandoc.TH ( contentsOf ) import System.FilePath ( (</>) )+import Text.Pandoc.Shared (readDataFile)  -- | String containing LaTeXMathML javascript.-latexMathMLScript :: String-#ifndef __HADDOCK__-latexMathMLScript = "<script type=\"text/javascript\">\n" ++-                    $(contentsOf $ "data" </> "LaTeXMathML.js.comment") ++-                    $(contentsOf $ "data" </> "LaTeXMathML.js.packed") ++ "</script>\n"-#endif+latexMathMLScript :: IO String+latexMathMLScript = do+ jsCom <- readDataFile $ "data" </> "LaTeXMathML.js.comment"+ jsPacked <- readDataFile $ "data" </> "LaTeXMathML.js.packed"+ return $ "<script type=\"text/javascript\">\n" ++ jsCom ++ jsPacked +++          "</script>\n"
src/Text/Pandoc/ODT.hs view
@@ -1,4 +1,3 @@-{-# LANGUAGE TemplateHaskell #-} {- Copyright (C) 2008 John MacFarlane <jgm@berkeley.edu> @@ -29,7 +28,6 @@ Functions for producing an ODT file from OpenDocument XML. -} module Text.Pandoc.ODT ( saveOpenDocumentAsODT ) where-import Text.Pandoc.TH ( makeZip ) import Data.List ( find ) import System.FilePath ( (</>), takeFileName ) import qualified Data.ByteString.Lazy as B@@ -39,14 +37,27 @@ import Control.Applicative ( (<$>) ) import Text.ParserCombinators.Parsec import System.Time+import Paths_pandoc ( getDataFileName )+import System.Directory+import Control.Monad (liftM)  -- | Produce an ODT file from OpenDocument XML.-saveOpenDocumentAsODT :: FilePath    -- ^ Pathname of ODT file to be produced.-                      -> FilePath    -- ^ Relative directory of source file.-                      -> String      -- ^ OpenDocument XML contents.+saveOpenDocumentAsODT :: FilePath      -- ^ Pathname of ODT file to be produced.+                      -> FilePath      -- ^ Relative directory of source file.+                      -> Maybe FilePath -- ^ Path specified by --reference-odt+                      -> String        -- ^ OpenDocument XML contents.                       -> IO ()-saveOpenDocumentAsODT destinationODTPath sourceDirRelative xml = do-  let refArchive = read $(makeZip $ "data" </> "odt-styles")+saveOpenDocumentAsODT destinationODTPath sourceDirRelative mbRefOdt xml = do+  refArchive <- liftM toArchive $+       case mbRefOdt of+             Just f -> B.readFile f+             Nothing -> do+               userDataDir <- getAppUserDataDirectory "pandoc" +               let userRefOdt = userDataDir </> "reference.odt"+               userRefOdtExists <- doesFileExist userRefOdt+               if userRefOdtExists+                  then B.readFile userRefOdt+                  else getDataFileName "reference.odt" >>= B.readFile   -- handle pictures   let (newContents, pics) =          case runParser pPictures [] "OpenDocument XML contents" xml of
src/Text/Pandoc/Readers/HTML.hs view
@@ -47,7 +47,7 @@ import Text.Pandoc.Shared  import Text.Pandoc.CharacterReferences ( decodeCharacterReferences ) import Data.Maybe ( fromMaybe )-import Data.List ( takeWhile, dropWhile, isPrefixOf, isSuffixOf, intercalate )+import Data.List ( isPrefixOf, isSuffixOf, intercalate ) import Data.Char ( toLower, isAlphaNum ) import Network.URI ( parseURIReference, URI (..) ) @@ -382,7 +382,7 @@   return contents  -- parse header and return meta-information (for now, just title)-parseHead :: GenParser Char ParserState ([Inline], [a], [Char])+parseHead :: GenParser Char ParserState Meta parseHead = try $ do   htmlTag "head"   spaces@@ -390,7 +390,7 @@   contents <- option [] parseTitle   skipMany nonTitleNonHead   htmlEndTag "head"-  return (contents, [], "")+  return $ Meta contents [] []  skipHtmlTag :: String -> GenParser Char ParserState () skipHtmlTag tag = optional (htmlTag tag)@@ -409,7 +409,7 @@   sepEndBy (choice [xmlDec, definition, htmlComment]) spaces   skipHtmlTag "html"   spaces-  (title, authors, date) <- option ([], [], "") parseHead +  meta <- option (Meta [] [] []) parseHead   spaces   skipHtmlTag "body"   spaces@@ -420,7 +420,7 @@   spaces   optional (htmlEndTag "html" >> many anyChar) -- ignore anything after </html>   eof-  return $ Pandoc (Meta title authors date) blocks+  return $ Pandoc meta blocks  -- -- parsing blocks
src/Text/Pandoc/Readers/LaTeX.hs view
@@ -317,19 +317,19 @@ authors :: GenParser Char ParserState Block authors = try $ do   string "\\author{"-  authors' <- manyTill anyChar (char '}')+  raw <- many1 (notFollowedBy (char '}') >> inline)+  let authors' = map normalizeSpaces $ splitBy LineBreak raw+  char '}'   spaces-  let authors'' = map removeLeadingTrailingSpace $ lines $-                  substitute "\\\\" "\n" authors'-  updateState (\s -> s { stateAuthors = authors'' })+  updateState (\s -> s { stateAuthors = authors' })   return Null  date :: GenParser Char ParserState Block date = try $ do   string "\\date{"-  date' <- manyTill anyChar (char '}')+  date' <- manyTill inline (char '}')   spaces-  updateState (\state -> state { stateDate = date' })+  updateState (\state -> state { stateDate = normalizeSpaces date' })   return Null  --
src/Text/Pandoc/Readers/Markdown.hs view
@@ -1,4 +1,3 @@-{-# LANGUAGE CPP #-} {- Copyright (C) 2006-8 John MacFarlane <jgm@berkeley.edu> @@ -32,7 +31,7 @@                                      readMarkdown                                      ) where -import Data.List ( transpose, isPrefixOf, isSuffixOf, lookup, sortBy, findIndex, intercalate )+import Data.List ( transpose, isPrefixOf, isSuffixOf, sortBy, findIndex, intercalate ) import Data.Ord ( comparing ) import Data.Char ( isAlphaNum, isUpper ) import Data.Maybe@@ -68,7 +67,7 @@  -- treat these as potentially non-text when parsing inline: specialChars :: [Char]-specialChars = "\\[]*_~`<>$!^-.&'\"\8216\8217\8220\8221"+specialChars = "\\[]*_~`<>$!^-.&'\"\8216\8217\8220\8221;"  -- -- auxiliary functions@@ -132,28 +131,27 @@ titleLine :: GenParser Char ParserState [Inline] titleLine = try $ char '%' >> skipSpaces >> manyTill inline newline -authorsLine :: GenParser Char st [String]+authorsLine :: GenParser Char ParserState [[Inline]] authorsLine = try $ do    char '%'   skipSpaces-  authors <- sepEndBy (many1 (noneOf ",;\n")) (oneOf ",;")+  authors <- sepEndBy (many1 (notFollowedBy (oneOf ";\n") >> inline)) (oneOf ";")   newline-  return $ map (decodeCharacterReferences . removeLeadingTrailingSpace) authors+  return $ map normalizeSpaces authors -dateLine :: GenParser Char st String+dateLine :: GenParser Char ParserState [Inline] dateLine = try $ do   char '%'   skipSpaces-  date <- many (noneOf "\n")-  newline-  return $ decodeCharacterReferences $ removeTrailingSpace date+  date <- manyTill inline newline+  return $ normalizeSpaces date -titleBlock :: GenParser Char ParserState ([Inline], [String], [Char])+titleBlock :: GenParser Char ParserState ([Inline], [[Inline]], [Inline]) titleBlock = try $ do   failIfStrict   title <- option [] titleLine   author <- option [] authorsLine-  date <- option "" dateLine+  date <- option [] dateLine   optional blanklines   return (title, author, date) @@ -175,7 +173,7 @@   let reversedNotes = stateNotes st'   updateState $ \s -> s { stateNotes = reverse reversedNotes }   -- now parse it for real...-  (title, author, date) <- option ([],[],"") titleBlock+  (title, author, date) <- option ([],[],[]) titleBlock   blocks <- parseBlocks   return $ Pandoc (Meta title author date) $ filter (/= Null) blocks 
src/Text/Pandoc/Readers/RST.hs view
@@ -33,7 +33,7 @@ import Text.Pandoc.Definition import Text.Pandoc.Shared  import Text.ParserCombinators.Parsec-import Control.Monad ( when )+import Control.Monad ( when, unless ) import Data.List ( findIndex, delete, intercalate )  -- | Parse reStructuredText string and return Pandoc document.@@ -157,11 +157,13 @@   let authors = case lookup "Authors" items of                   Just auth -> [auth]                   Nothing  -> map snd (filter (\(x,_) -> x == "Author") items)-  if null authors -     then return () -     else updateState $ \st -> st {stateAuthors = authors}+  unless (null authors) $ do+    authors' <- mapM (parseFromString (many inline)) authors+    updateState $ \st -> st {stateAuthors = map normalizeSpaces authors'}   case (lookup "Date" items) of-           Just dat -> updateState $ \st -> st {stateDate = dat}+           Just dat -> do+                  dat' <- parseFromString (many inline) dat+                  updateState $ \st -> st{ stateDate = normalizeSpaces dat' }            Nothing  -> return ()   case (lookup "Title" items) of            Just tit -> parseFromString (many inline) tit >>=@@ -345,6 +347,7 @@ lhsCodeBlock :: GenParser Char ParserState Block lhsCodeBlock = try $ do   failUnlessLHS+  optional codeBlockStart   pos <- getPosition   when (sourceColumn pos /= 1) $ fail "Not in first column"   lns <- many1 birdTrackLine
src/Text/Pandoc/Shared.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE CPP, DeriveDataTypeable #-}+{-# LANGUAGE DeriveDataTypeable #-} {- Copyright (C) 2006-8 John MacFarlane <jgm@berkeley.edu> @@ -104,7 +104,8 @@                      WriterOptions (..),                      defaultWriterOptions,                      -- * File handling-                     inDirectory+                     inDirectory,+                     readDataFile                     ) where  import Text.Pandoc.Definition@@ -117,12 +118,18 @@ import Data.List ( find, isPrefixOf, intercalate ) import Network.URI ( parseURI, URI (..), isAllowedInURI ) import System.Directory-import Prelude hiding ( putStrLn, writeFile, readFile, getContents )+import System.FilePath ( (</>) )+-- Note: ghc >= 6.12 (base >=4.2) supports unicode through iconv+-- So we use System.IO.UTF8 only if we have an earlier version+#if MIN_VERSION_base(4,2,0)+#else+import Prelude hiding ( putStr, putStrLn, writeFile, readFile, getContents ) import System.IO.UTF8+#endif import Data.Generics import qualified Control.Monad.State as S import Control.Monad (join)-+import Paths_pandoc (getDataFileName) -- -- List processing --@@ -665,8 +672,8 @@       stateTabStop         :: Int,           -- ^ Tab stop       stateStandalone      :: Bool,          -- ^ Parse bibliographic info?       stateTitle           :: [Inline],      -- ^ Title of document-      stateAuthors         :: [String],      -- ^ Authors of document-      stateDate            :: String,        -- ^ Date of document+      stateAuthors         :: [[Inline]],    -- ^ Authors of document+      stateDate            :: [Inline],      -- ^ Date of document       stateStrict          :: Bool,          -- ^ Use strict markdown syntax?       stateSmart           :: Bool,          -- ^ Use smart typography?       stateLiterateHaskell :: Bool,          -- ^ Treat input as literate haskell@@ -980,17 +987,18 @@ -- | Options for writers data WriterOptions = WriterOptions   { writerStandalone       :: Bool   -- ^ Include header and footer-  , writerHeader           :: String -- ^ Header for the document-  , writerTitlePrefix      :: String -- ^ Prefix for HTML titles+  , writerTemplate         :: String -- ^ Template to use in standalone mode+  , writerVariables        :: [(String, String)] -- ^ Variables to set in template+  , writerIncludeBefore    :: String -- ^ Text to include before the body+  , writerIncludeAfter     :: String -- ^ Text to include after the body   , writerTabStop          :: Int    -- ^ Tabstop for conversion btw spaces and tabs   , writerTableOfContents  :: Bool   -- ^ Include table of contents   , writerS5               :: Bool   -- ^ We're writing S5 +  , writerXeTeX            :: Bool   -- ^ Create latex suitable for use by xetex   , writerHTMLMathMethod   :: HTMLMathMethod  -- ^ How to print math in HTML   , writerIgnoreNotes      :: Bool   -- ^ Ignore footnotes (used in making toc)   , writerIncremental      :: Bool   -- ^ Incremental S5 lists   , writerNumberSections   :: Bool   -- ^ Number sections in LaTeX-  , writerIncludeBefore    :: String -- ^ String to include before the body-  , writerIncludeAfter     :: String -- ^ String to include after the body   , writerStrictMarkdown   :: Bool   -- ^ Use strict markdown syntax   , writerReferenceLinks   :: Bool   -- ^ Use reference links in writing markdown, rst   , writerWrapText         :: Bool   -- ^ Wrap text to line length@@ -1003,17 +1011,18 @@ defaultWriterOptions :: WriterOptions defaultWriterOptions =    WriterOptions { writerStandalone       = False-                , writerHeader           = ""-                , writerTitlePrefix      = ""+                , writerTemplate         = ""+                , writerVariables        = []+                , writerIncludeBefore    = ""+                , writerIncludeAfter     = ""                 , writerTabStop          = 4                 , writerTableOfContents  = False                 , writerS5               = False+                , writerXeTeX            = True                 , writerHTMLMathMethod   = PlainMath                 , writerIgnoreNotes      = False                 , writerIncremental      = False                 , writerNumberSections   = False-                , writerIncludeBefore    = ""-                , writerIncludeAfter     = ""                 , writerStrictMarkdown   = False                 , writerReferenceLinks   = False                 , writerWrapText         = True@@ -1034,3 +1043,10 @@   result <- action   setCurrentDirectory oldDir   return result++-- | Read file from user data directory or, if not found there, from+-- Cabal data directory.  On unix the user data directory is @$HOME/.pandoc@.+readDataFile :: FilePath -> IO String+readDataFile fname = do+  userDir <- getAppUserDataDirectory "pandoc"+  catch (readFile $ userDir </> fname) (\_ -> getDataFileName fname >>= readFile) 
− src/Text/Pandoc/TH.hs
@@ -1,65 +0,0 @@-{-# OPTIONS_GHC -fno-warn-orphans #-}-{--Copyright (C) 2008 John MacFarlane <jgm@berkeley.edu>--This program is free software; you can redistribute it and/or modify-it under the terms of the GNU General Public License as published by-the Free Software Foundation; either version 2 of the License, or-(at your option) any later version.--This program is distributed in the hope that it will be useful,-but WITHOUT ANY WARRANTY; without even the implied warranty of-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the-GNU General Public License for more details.--You should have received a copy of the GNU General Public License-along with this program; if not, write to the Free Software-Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA--}--{- |-   Module      : Text.Pandoc.TH-   Copyright   : Copyright (C) 2006-8 John MacFarlane-   License     : GNU GPL, version 2 or above --   Maintainer  : John MacFarlane <jgm@berkeley.edu>-   Stability   : alpha-   Portability : portable--Template haskell functions used by Pandoc modules.--}-module Text.Pandoc.TH (-                        contentsOf,-                        binaryContentsOf,-                        makeZip-                      ) where--import Language.Haskell.TH-import Language.Haskell.TH.Syntax (Lift (..))-import qualified Data.ByteString as B-import Data.ByteString.Internal ( w2c )-import Prelude hiding ( readFile )-import System.IO.UTF8-import Codec.Archive.Zip-import Text.Pandoc.Shared ( inDirectory )---- | Insert contents of text file into a template.-contentsOf :: FilePath -> ExpQ-contentsOf p = lift =<< (runIO $ readFile p)---- | Insert contents of binary file into a template.--- Note that @Data.ByteString.readFile@ uses binary mode on windows.-binaryContentsOf :: FilePath -> ExpQ-binaryContentsOf p = lift =<< (runIO $ B.readFile p)--instance Lift B.ByteString where-  lift x = return (LitE (StringL $ map w2c $ B.unpack x))--instance Lift Archive where-  lift x = return (LitE (StringL $ show x ))---- | Construct zip file from files in a directory, and--- insert into a template.-makeZip :: FilePath -> ExpQ-makeZip path = lift =<< (runIO $ inDirectory path $ addFilesToArchive [OptRecursive] emptyArchive  ["."])-
+ src/Text/Pandoc/Templates.hs view
@@ -0,0 +1,209 @@+{-# LANGUAGE TypeSynonymInstances #-}+{-+Copyright (C) 2009 John MacFarlane <jgm@berkeley.edu>++This program is free software; you can redistribute it and/or modify+it under the terms of the GNU General Public License as published by+the Free Software Foundation; either version 2 of the License, or+(at your option) any later version.++This program is distributed in the hope that it will be useful,+but WITHOUT ANY WARRANTY; without even the implied warranty of+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the+GNU General Public License for more details.++You should have received a copy of the GNU General Public License+along with this program; if not, write to the Free Software+Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA+-}++{- |+   Module      : Text.Pandoc.Templates+   Copyright   : Copyright (C) 2009 John MacFarlane+   License     : GNU GPL, version 2 or above++   Maintainer  : John MacFarlane <jgm@berkeley.edu>+   Stability   : alpha+   Portability : portable++A simple templating system with variable substitution and conditionals.+Example:++> renderTemplate [("name","Sam"),("salary","50,000")] $+>    "Hi, $name$.  $if(salary)$You make $$$salary$.$else$No salary data.$endif$" +> "Hi, John.  You make $50,000."++A slot for an interpolated variable is a variable name surrounded+by dollar signs.  To include a literal @$@ in your template, use+@$$@.  Variable names must begin with a letter and can contain letters,+numbers, @_@, and @-@.++The value of a variable will be indented to the same level as the+variable.++A conditional begins with @$if(variable_name)$@ and ends with @$endif$@.+It may optionally contain an @$else$@ section.  The if section is+used if @variable_name@ has a non-null value, otherwise the else section+is used.++Conditional keywords should not be indented, or unexpected spacing+problems may occur.++If a variable name is associated with multiple values in the association+list passed to 'renderTemplate', you may use the @$for$@ keyword to+iterate over them:++> renderTemplate [("name","Sam"),("name","Joe")] $+>   "$for(name)$\nHi, $name$.\n$endfor$"+> "Hi, Sam.\nHi, Joe."++You may optionally specify separators using @$sep$@:++> renderTemplate [("name","Sam"),("name","Joe"),("name","Lynn")] $+>   "Hi, $for(name)$$name$$sep$, $endfor$"+> "Hi, Sam, Joe, Lynn."+-}++module Text.Pandoc.Templates ( renderTemplate+                             , TemplateTarget+                             , getDefaultTemplate) where++import Text.ParserCombinators.Parsec+import Control.Monad (liftM, when, forM)+import qualified Control.Exception as E (try, IOException)+import System.FilePath+import Text.Pandoc.Shared (readDataFile)+import Data.List (intercalate, intersperse)+import Text.PrettyPrint (text, Doc)+import Text.XHtml (primHtml, Html)+import Data.ByteString.Lazy.UTF8 (ByteString, fromString)++-- | Get the default template, either from the application's user data+-- directory (~/.pandoc on unix) or from the cabal data directory.+getDefaultTemplate :: String -> IO (Either E.IOException String)+getDefaultTemplate "native" = return $ Right ""+getDefaultTemplate "s5" = getDefaultTemplate "html"+getDefaultTemplate "odt" = getDefaultTemplate "opendocument"+getDefaultTemplate format = do+  let format' = takeWhile (/='+') format  -- strip off "+lhs" if present+  E.try $ readDataFile $ "templates" </> format' <.> "template"++data TemplateState = TemplateState Int [(String,String)]++adjustPosition :: String -> GenParser Char TemplateState String+adjustPosition str = do+  let lastline = takeWhile (/= '\n') $ reverse str+  updateState $ \(TemplateState pos x) ->+    if str == lastline+       then TemplateState (pos + length lastline) x+       else TemplateState (length lastline) x+  return str++class TemplateTarget a where+  toTarget :: String -> a ++instance TemplateTarget String where+  toTarget = id++instance TemplateTarget ByteString where +  toTarget = fromString++instance TemplateTarget Html where+  toTarget = primHtml++instance TemplateTarget Doc where+  toTarget = text++-- | Renders a template +renderTemplate :: TemplateTarget a+               => [(String,String)]  -- ^ Assoc. list of values for variables+               -> String             -- ^ Template+               -> a+renderTemplate vals templ =+  case runParser (do x <- parseTemplate; eof; return x) (TemplateState 0 vals) "template" templ of+       Left e        -> error $ show e+       Right r       -> toTarget $ concat r++reservedWords :: [String]+reservedWords = ["else","endif","for","endfor","sep"]++parseTemplate :: GenParser Char TemplateState [String]+parseTemplate =+  many $ (plaintext <|> escapedDollar <|> conditional <|> for <|> variable)+           >>= adjustPosition++plaintext :: GenParser Char TemplateState String+plaintext = many1 $ noneOf "$"++escapedDollar :: GenParser Char TemplateState String+escapedDollar = try $ string "$$" >> return "$"++skipEndline :: GenParser Char st ()+skipEndline = try $ skipMany (oneOf " \t") >> newline >> return ()++conditional :: GenParser Char TemplateState String+conditional = try $ do+  TemplateState pos vars <- getState+  string "$if("+  id' <- ident+  string ")$"+  -- if newline after the "if", then a newline after "endif" will be swallowed+  multiline <- option False $ try $ skipEndline >> return True+  ifContents <- liftM concat parseTemplate+  -- reset state for else block+  setState $ TemplateState pos vars+  elseContents <- option "" $ do try (string "$else$")+                                 when multiline $ optional skipEndline+                                 liftM concat parseTemplate+  string "$endif$"+  when multiline $ optional skipEndline+  let conditionSatisfied = case lookup id' vars of+                                Nothing -> False+                                Just "" -> False+                                Just _  -> True+  return $ if conditionSatisfied+              then ifContents+              else elseContents++for :: GenParser Char TemplateState String+for = try $ do+  TemplateState pos vars <- getState+  string "$for("+  id' <- ident+  string ")$"+  -- if newline after the "if", then a newline after "endif" will be swallowed+  multiline <- option False $ try $ skipEndline >> return True+  let matches = filter (\(k,_) -> k == id') vars +  let indent = replicate pos ' '+  contents <- forM matches $ \m -> do+                      updateState $ \(TemplateState p v) -> TemplateState p (m:v)+                      raw <- liftM concat $ lookAhead parseTemplate+                      return $ intercalate ('\n':indent) $ lines $ raw ++ "\n"+  parseTemplate+  sep <- option "" $ do try (string "$sep$")  +                        when multiline $ optional skipEndline+                        liftM concat parseTemplate+  string "$endfor$"+  when multiline $ optional skipEndline+  setState $ TemplateState pos vars+  return $ concat $ intersperse sep contents++ident :: GenParser Char TemplateState String+ident = do+  first <- letter+  rest <- many (alphaNum <|> oneOf "_-")+  let id' = first : rest+  if id' `elem` reservedWords+     then pzero+     else return id'++variable :: GenParser Char TemplateState String+variable = try $ do+  char '$'+  id' <- ident+  char '$'+  TemplateState pos vars <- getState+  let indent = replicate pos ' '+  return $ case lookup id' vars of+             Just val  -> intercalate ('\n' : indent) $ lines val+             Nothing   -> ""
src/Text/Pandoc/Writers/ConTeXt.hs view
@@ -33,8 +33,8 @@ import Text.Printf ( printf ) import Data.List ( isSuffixOf, intercalate, intersperse ) import Control.Monad.State-import Control.Monad (liftM) import Text.PrettyPrint.HughesPJ hiding ( Str )+import Text.Pandoc.Templates ( renderTemplate )  data WriterState =    WriterState { stNextRef          :: Int  -- number of next URL reference@@ -52,52 +52,34 @@                                        , stOrderedListLevel = 0                                        , stOptions = options                                        } -  in  render $ -  evalState (pandocToConTeXt options document) defaultWriterState +  in evalState (pandocToConTeXt options document) defaultWriterState  -pandocToConTeXt :: WriterOptions -> Pandoc -> State WriterState Doc-pandocToConTeXt options (Pandoc meta blocks) = do-  main    <- blockListToConTeXt blocks +pandocToConTeXt :: WriterOptions -> Pandoc -> State WriterState String+pandocToConTeXt options (Pandoc (Meta title authors date) blocks) = do+  titletext <- if null title+                  then return ""+                  else liftM render $ inlineListToConTeXt title+  authorstext <- mapM (liftM render . inlineListToConTeXt) authors+  datetext <-  if null date+                  then return ""+                  else liftM render $ inlineListToConTeXt date+  body <- blockListToConTeXt blocks    let before = if null (writerIncludeBefore options)                   then empty                   else text $ writerIncludeBefore options   let after  = if null (writerIncludeAfter options)                   then empty                   else text $ writerIncludeAfter options-  let body = before $$ main $$ after-  head'    <- if writerStandalone options-                 then contextHeader options meta-                 else return empty-  let toc  = if writerTableOfContents options-                then text "\\placecontent\n"-                else empty -  let foot = if writerStandalone options-                then text "\\stoptext\n"-                else empty -  return $ head' $$ toc $$ body $$ foot---- | Insert bibliographic information into ConTeXt header.-contextHeader :: WriterOptions -- ^ Options, including ConTeXt header-              -> Meta          -- ^ Meta with bibliographic information-              -> State WriterState Doc-contextHeader options (Meta title authors date) = do-  titletext    <- if null title-                     then return empty -                     else inlineListToConTeXt title-  let authorstext = if null authors-                       then ""-                       else if length authors == 1-                            then stringToConTeXt $ head authors-                            else stringToConTeXt $ (intercalate ", " $-                                 init authors) ++ " & " ++ last authors-  let datetext   = if date == ""-                       then "" -                       else stringToConTeXt date-  let titleblock = text "\\doctitle{" <> titletext <> char '}' $$-                   text ("\\author{" ++ authorstext ++ "}") $$-                   text ("\\date{" ++ datetext ++ "}")-  let header     = text $ writerHeader options-  return $ header $$ titleblock $$ text "\\starttext\n\\maketitle\n"+  let main = render $ before $$ body $$ after+  let context  = writerVariables options +++                 [ ("toc", if writerTableOfContents options then "yes" else "")+                 , ("body", main)+                 , ("title", titletext)+                 , ("date", datetext) ] +++                 [ ("author", a) | a <- authorstext ]+  return $ if writerStandalone options+              then renderTemplate context $ writerTemplate options+              else main  -- escape things as needed for ConTeXt 
src/Text/Pandoc/Writers/Docbook.hs view
@@ -31,53 +31,54 @@ import Text.Pandoc.Definition import Text.Pandoc.XML import Text.Pandoc.Shared+import Text.Pandoc.Templates (renderTemplate) import Text.Pandoc.Readers.TeXMath-import Data.List ( isPrefixOf, drop, intercalate )+import Data.List ( isPrefixOf, intercalate ) import Data.Char ( toLower ) import Text.PrettyPrint.HughesPJ hiding ( Str ) import Text.Pandoc.Highlighting (languages, languagesByExtension)  -- | Convert list of authors to a docbook <author> section-authorToDocbook :: [Char] -> Doc-authorToDocbook name = inTagsIndented "author" $ -  if ',' `elem` name-    then -- last name first-         let (lastname, rest) = break (==',') name -             firstname = removeLeadingSpace rest in-         inTagsSimple "firstname" (text $ escapeStringForXML firstname) <> -         inTagsSimple "surname" (text $ escapeStringForXML lastname) -    else -- last name last-         let namewords = words name-             lengthname = length namewords -             (firstname, lastname) = case lengthname of-               0  -> ("","") -               1  -> ("", name)-               n  -> (intercalate " " (take (n-1) namewords), last namewords)-          in inTagsSimple "firstname" (text $ escapeStringForXML firstname) $$ -             inTagsSimple "surname" (text $ escapeStringForXML lastname) +authorToDocbook :: WriterOptions -> [Inline] -> Doc+authorToDocbook opts name' =+  let name = render $ inlinesToDocbook opts name'+  in  if ',' `elem` name+         then -- last name first+              let (lastname, rest) = break (==',') name +                  firstname = removeLeadingSpace rest in+              inTagsSimple "firstname" (text $ escapeStringForXML firstname) <> +              inTagsSimple "surname" (text $ escapeStringForXML lastname) +         else -- last name last+              let namewords = words name+                  lengthname = length namewords +                  (firstname, lastname) = case lengthname of+                    0  -> ("","") +                    1  -> ("", name)+                    n  -> (intercalate " " (take (n-1) namewords), last namewords)+               in inTagsSimple "firstname" (text $ escapeStringForXML firstname) $$ +                  inTagsSimple "surname" (text $ escapeStringForXML lastname)   -- | Convert Pandoc document to string in Docbook format. writeDocbook :: WriterOptions -> Pandoc -> String-writeDocbook opts (Pandoc (Meta title authors date) blocks) = -  let head'    = if writerStandalone opts-                    then text (writerHeader opts)-                    else empty-      meta     = if writerStandalone opts-                    then inTagsIndented "articleinfo" $-                         (inTagsSimple "title" (wrap opts title)) $$ -                         (vcat (map authorToDocbook authors)) $$ -                         (inTagsSimple "date" (text $ escapeStringForXML date)) -                    else empty+writeDocbook opts (Pandoc (Meta tit auths dat) blocks) = +  let title = wrap opts tit+      authors = map (authorToDocbook opts) auths+      date = inlinesToDocbook opts dat       elements = hierarchicalize blocks       before   = writerIncludeBefore opts       after    = writerIncludeAfter opts-      body     = (if null before then empty else text before) $$+      main     = render $+                 (if null before then empty else text before) $$                  vcat (map (elementToDocbook opts) elements) $$                  (if null after then empty else text after)-      body'    = if writerStandalone opts-                   then inTagsIndented "article" (meta $$ body)-                   else body -  in  render $ head' $$ body' $$ text ""+      context = writerVariables opts +++                [ ("body", main)+                , ("title", render title)+                , ("date", render date) ] +++                [ ("author", render a) | a <- authors ]+  in  if writerStandalone opts+         then renderTemplate context $ writerTemplate opts+         else main  -- | Convert an Element to Docbook. elementToDocbook :: WriterOptions -> Element -> Doc@@ -243,9 +244,9 @@ inlineToDocbook opts (Cite _ lst) =   inlinesToDocbook opts lst  inlineToDocbook _ Apostrophe = char '\''-inlineToDocbook _ Ellipses = text "&#8230;"-inlineToDocbook _ EmDash = text "&#8212;" -inlineToDocbook _ EnDash = text "&#8211;" +inlineToDocbook _ Ellipses = text "…"+inlineToDocbook _ EmDash = text "—"+inlineToDocbook _ EnDash = text "–" inlineToDocbook _ (Code str) =    inTagsSimple "literal" $ text (escapeStringForXML str) inlineToDocbook opts (Math _ str) = inlinesToDocbook opts $ readTeXMath str
src/Text/Pandoc/Writers/HTML.hs view
@@ -30,121 +30,126 @@ -} module Text.Pandoc.Writers.HTML ( writeHtml , writeHtmlString ) where import Text.Pandoc.Definition-import Text.Pandoc.LaTeXMathML import Text.Pandoc.CharacterReferences ( decodeCharacterReferences ) import Text.Pandoc.Shared+import Text.Pandoc.Templates import Text.Pandoc.Readers.TeXMath-import Text.Pandoc.Highlighting ( highlightHtml, defaultHighlightingCss )-import Text.Pandoc.XML (stripTags)+import Text.Pandoc.Highlighting ( highlightHtml )+import Text.Pandoc.XML (stripTags, escapeStringForXML) import Numeric ( showHex ) import Data.Char ( ord, toLower ) import Data.List ( isPrefixOf, intersperse ) import Data.Maybe ( catMaybes )-import qualified Data.Set as S import Control.Monad.State import Text.XHtml.Transitional hiding ( stringToHtml )  data WriterState = WriterState-    { stNotes            :: [Html]       -- ^ List of notes-    , stMath             :: Bool         -- ^ Math is used in document-    , stCSS              :: S.Set String -- ^ CSS to include in header-    , stSecNum           :: [Int]        -- ^ Number of current section+    { stNotes            :: [Html]  -- ^ List of notes+    , stMath             :: Bool    -- ^ Math is used in document+    , stHighlighting     :: Bool    -- ^ Syntax highlighting is used+    , stSecNum           :: [Int]   -- ^ Number of current section     } deriving Show  defaultWriterState :: WriterState-defaultWriterState = WriterState {stNotes= [], stMath = False, stCSS = S.empty, stSecNum = []}+defaultWriterState = WriterState {stNotes= [], stMath = False, stHighlighting = False, stSecNum = []}  -- Helpers to render HTML with the appropriate function. -render :: (HTML html) => WriterOptions -> html -> String-render opts = if writerWrapText opts then renderHtml else showHtml- renderFragment :: (HTML html) => WriterOptions -> html -> String renderFragment opts = if writerWrapText opts                          then renderHtmlFragment                          else showHtmlFragment --- | Slightly modified version of Text.XHtml's stringToHtml.--- Only uses numerical entities for 0xff and greater.--- Adds &nbsp;.+-- | Modified version of Text.XHtml's stringToHtml.+-- Use unicode characters wherever possible. stringToHtml :: String -> Html-stringToHtml = primHtml . concatMap fixChar-    where-      fixChar '<' = "&lt;"-      fixChar '>' = "&gt;"-      fixChar '&' = "&amp;"-      fixChar '"' = "&quot;"-      fixChar '\160' = "&nbsp;"-      fixChar c | ord c < 0xff = [c]-      fixChar c = "&#" ++ show (ord c) ++ ";"+stringToHtml = primHtml . escapeStringForXML  -- | Convert Pandoc document to Html string. writeHtmlString :: WriterOptions -> Pandoc -> String-writeHtmlString opts = -  if writerStandalone opts-     then render opts . writeHtml opts-     else renderFragment opts . writeHtml opts+writeHtmlString opts d =+  let (tit, auths, date, toc, body', newvars) = evalState (pandocToHtml opts d)+                                                 defaultWriterState+  in  if writerStandalone opts+         then inTemplate opts tit auths date toc body' newvars+         else renderFragment opts body'  -- | Convert Pandoc document to Html structure. writeHtml :: WriterOptions -> Pandoc -> Html-writeHtml opts (Pandoc (Meta tit authors date) blocks) = -  let titlePrefix = writerTitlePrefix opts-      (topTitle,st) = runState (inlineListToHtml opts tit) defaultWriterState-      topTitle''  = stripTags $ showHtmlFragment topTitle-      topTitle'   = titlePrefix ++-                    (if null topTitle'' || null titlePrefix-                        then ""-                        else " - ") ++ topTitle''-      metadata    = thetitle << topTitle' +++-                    meta ! [httpequiv "Content-Type", -                            content "text/html; charset=UTF-8"] +++-                    meta ! [name "generator", content "pandoc"] +++-                    (toHtmlFromList $ -                    map (\a -> meta ! [name "author", content a]) authors) +++-                    (if null date-                       then noHtml-                       else meta ! [name "date", content date])-      titleHeader = if writerStandalone opts && not (null tit) && -                    not (writerS5 opts)-                        then h1 ! [theclass "title"] $ topTitle-                        else noHtml-      sects        = hierarchicalize blocks-      toc          = if writerTableOfContents opts -                        then evalState (tableOfContents opts sects) st-                        else noHtml-      (blocks', st') = runState-                       (mapM (elementToHtml opts) sects >>= return . toHtmlFromList)-                       st-      cssLines     = stCSS st'-      css          = if S.null cssLines-                        then noHtml-                        else style ! [thetype "text/css"] $ primHtml $-                             '\n':(unlines $ S.toList cssLines)-      math         = if stMath st'-                        then case writerHTMLMathMethod opts of-                                   LaTeXMathML Nothing -> -                                      primHtml latexMathMLScript-                                   LaTeXMathML (Just url) ->-                                      script ! -                                      [src url, thetype "text/javascript"] $-                                      noHtml-                                   JsMath (Just url) ->-                                      script !-                                      [src url, thetype "text/javascript"] $-                                      noHtml-                                   _ -> noHtml-                        else noHtml-      head'        = header $ metadata +++ math +++ css +++ -                              primHtml (writerHeader opts)-      notes        = reverse (stNotes st')-      before       = primHtml $ writerIncludeBefore opts-      after        = primHtml $ writerIncludeAfter opts-      thebody      = before +++ titleHeader +++ toc +++ blocks' +++-                     footnoteSection notes +++ after+writeHtml opts d =+  let (tit, auths, date, toc, body', newvars) = evalState (pandocToHtml opts d)+                                                 defaultWriterState   in  if writerStandalone opts-         then head' +++ body thebody-         else thebody+         then inTemplate opts tit auths date toc body' newvars+         else body' +-- result is (title, authors, date, toc, body, new variables)+pandocToHtml :: WriterOptions+             -> Pandoc+             -> State WriterState (Html, [Html], Html, Html, Html, [(String,String)])+pandocToHtml opts (Pandoc (Meta title' authors' date') blocks) = do+  let standalone = writerStandalone opts+  tit <- if standalone+            then inlineListToHtml opts title'+            else return noHtml+  auths <- if standalone+              then mapM (inlineListToHtml opts) authors'+              else return [] +  date <- if standalone+             then inlineListToHtml opts date'+             else return noHtml +  let sects = hierarchicalize blocks+  toc <- if writerTableOfContents opts +            then tableOfContents opts sects+            else return noHtml+  blocks' <- liftM toHtmlFromList $ mapM (elementToHtml opts) sects+  st <- get+  let notes = reverse (stNotes st)+  let before = primHtml $ writerIncludeBefore opts+  let after = primHtml $ writerIncludeAfter opts+  let thebody = before +++ blocks' +++ footnoteSection notes +++ after+  let  math = if stMath st+                then case writerHTMLMathMethod opts of+                           LaTeXMathML (Just url) ->+                              script ! +                              [src url, thetype "text/javascript"] $ noHtml+                           JsMath (Just url) ->+                              script !+                              [src url, thetype "text/javascript"] $ noHtml+                           _ -> case lookup "latexmathml-script" (writerVariables opts) of+                                      Just s -> +                                        script ! [thetype "text/javascript"] <<+                                           primHtml s+                                      Nothing -> noHtml+                else noHtml+  let newvars = [("highlighting","yes") | stHighlighting st] +++                [("math", renderHtmlFragment math) | stMath st] +  return (tit, auths, date, toc, thebody, newvars)++inTemplate :: TemplateTarget a+           => WriterOptions+           -> Html+           -> [Html]+           -> Html+           -> Html+           -> Html+           -> [(String,String)]+           -> a+inTemplate opts tit auths date toc body' newvars =+  let renderedTit = showHtmlFragment tit+      topTitle'   = stripTags renderedTit+      authors     = map (stripTags . showHtmlFragment) auths+      date'       = stripTags $ showHtmlFragment date+      variables   = writerVariables opts ++ newvars+      context     = variables +++                    [ ("body", renderHtmlFragment body')+                    , ("pagetitle", topTitle')+                    , ("toc", renderHtmlFragment toc)+                    , ("title", renderHtmlFragment tit)+                    , ("date", date') ] +++                    [ ("author", a) | a <- authors ]+  in  renderTemplate context $ writerTemplate opts+ -- | Like Text.XHtml's identifier, but adds the writerIdentifierPrefix prefixedId :: WriterOptions -> String -> HtmlAttr prefixedId opts s = identifier $ writerIdentifierPrefix opts ++ s@@ -236,7 +241,7 @@                      linkText  ++ "+'<\\/'+'a'+'>');\n// -->\n")) +++                        noscript (primHtml $ obfuscateString altText)                 _ -> error $ "Unknown obfuscation method: " ++ show meth-        _ -> anchor ! [href s] $ primHtml txt  -- malformed email+        _ -> anchor ! [href s] $ stringToHtml txt  -- malformed email  -- | Obfuscate character as entity. obfuscateChar :: Char -> String@@ -249,13 +254,6 @@ obfuscateString :: String -> String obfuscateString = concatMap obfuscateChar . decodeCharacterReferences --- | Add CSS for document header.-addToCSS :: String -> State WriterState ()-addToCSS item = do-  st <- get-  let current = stCSS st-  put $ st {stCSS = S.insert item current}- -- | Convert Pandoc block element to HTML. blockToHtml :: WriterOptions -> Block -> State WriterState Html blockToHtml _ Null = return $ noHtml @@ -277,7 +275,7 @@                     in  return $ pre ! attrs $ thecode <<                                  (replicate (length leadingBreaks) br +++                                  [stringToHtml $ rawCode' ++ "\n"])-         Right h -> addToCSS defaultHighlightingCss >> return h+         Right h -> modify (\st -> st{ stHighlighting = True }) >> return h blockToHtml opts (BlockQuote blocks) =   -- in S5, treat list in blockquote specially   -- if default is incremental, make it nonincremental; @@ -405,11 +403,11 @@   case inline of       (Str str)        -> return $ stringToHtml str     (Space)          -> return $ stringToHtml " "-    (LineBreak)      -> return $ br-    (EmDash)         -> return $ primHtmlChar "mdash"-    (EnDash)         -> return $ primHtmlChar "ndash"-    (Ellipses)       -> return $ primHtmlChar "hellip"-    (Apostrophe)     -> return $ primHtmlChar "rsquo"+    (LineBreak)      -> return br+    (EmDash)         -> return $ stringToHtml "—"+    (EnDash)         -> return $ stringToHtml "–"+    (Ellipses)       -> return $ stringToHtml "…"+    (Apostrophe)     -> return $ stringToHtml "’"     (Emph lst)       -> inlineListToHtml opts lst >>= return . emphasize     (Strong lst)     -> inlineListToHtml opts lst >>= return . strong     (Code str)       -> return $ thecode << str@@ -421,10 +419,10 @@     (Subscript lst)   -> inlineListToHtml opts lst >>= return . sub     (Quoted quoteType lst) ->                         let (leftQuote, rightQuote) = case quoteType of-                              SingleQuote -> (primHtmlChar "lsquo", -                                              primHtmlChar "rsquo")-                              DoubleQuote -> (primHtmlChar "ldquo", -                                              primHtmlChar "rdquo")+                              SingleQuote -> (stringToHtml "‘",+                                              stringToHtml "’")+                              DoubleQuote -> (stringToHtml "“",+                                              stringToHtml "”")                         in  do contents <- inlineListToHtml opts lst                                return $ leftQuote +++ contents +++ rightQuote     (Math t str) -> @@ -485,10 +483,10 @@                         htmlContents <- blockListToNote opts ref contents                          -- push contents onto front of notes                         put $ st {stNotes = (htmlContents:notes)} -                        return $ anchor ! [href ("#" ++ writerIdentifierPrefix opts ++ "fn" ++ ref),-                                          theclass "footnoteRef",-                                          prefixedId opts ("fnref" ++ ref)] << -                                          sup << ref+                        return $ sup <<+                                 anchor ! [href ("#" ++ writerIdentifierPrefix opts ++ "fn" ++ ref),+                                           theclass "footnoteRef",+                                           prefixedId opts ("fnref" ++ ref)] << ref     (Cite _ il)  -> inlineListToHtml opts il  blockListToNote :: WriterOptions -> String -> [Block] -> State WriterState Html@@ -497,7 +495,7 @@   -- that block. Otherwise, insert a new Plain block with the backlink.   let backlink = [HtmlInline $ " <a href=\"#" ++ writerIdentifierPrefix opts ++ "fnref" ++ ref ++                   "\" class=\"footnoteBackLink\"" ++-                 " title=\"Jump back to footnote " ++ ref ++ "\">&#8617;</a>"]+                 " title=\"Jump back to footnote " ++ ref ++ "\">↩</a>"]       blocks'  = if null blocks                     then []                     else let lastBlock   = last blocks
src/Text/Pandoc/Writers/LaTeX.hs view
@@ -30,81 +30,71 @@ module Text.Pandoc.Writers.LaTeX ( writeLaTeX ) where import Text.Pandoc.Definition import Text.Pandoc.Shared+import Text.Pandoc.Templates import Text.Printf ( printf )-import Data.List ( (\\), isSuffixOf, intercalate, intersperse )+import Data.List ( (\\), isSuffixOf, intersperse ) import Data.Char ( toLower )-import qualified Data.Set as S import Control.Monad.State-import Control.Monad (liftM) import Text.PrettyPrint.HughesPJ hiding ( Str )  data WriterState = -  WriterState { stIncludes :: S.Set String  -- strings to include in header-              , stInNote   :: Bool          -- @True@ if we're in a note-              , stOLLevel  :: Int           -- level of ordered list nesting-              , stOptions  :: WriterOptions -- writer options, so they don't have to be parameter +  WriterState { stInNote     :: Bool          -- @True@ if we're in a note+              , stOLLevel    :: Int           -- level of ordered list nesting+              , stOptions    :: WriterOptions -- writer options, so they don't have to be parameter +              , stVerbInNote :: Bool          -- true if document has verbatim text in note+              , stEnumerate  :: Bool          -- true if document needs fancy enumerated lists+              , stTable      :: Bool          -- true if document has a table+              , stStrikeout  :: Bool          -- true if document has strikeout+              , stSubscript  :: Bool          -- true if document has subscript+              , stLink       :: Bool          -- true if document has links+              , stUrl        :: Bool          -- true if document has visible URL link+              , stGraphics   :: Bool          -- true if document contains images+              , stLHS        :: Bool          -- true if document has literate haskell code               } --- | Add line to header.-addToHeader :: String -> State WriterState ()-addToHeader str = do-  st <- get-  let includes = stIncludes st-  put st {stIncludes = S.insert str includes}- -- | Convert Pandoc to LaTeX. writeLaTeX :: WriterOptions -> Pandoc -> String writeLaTeX options document = -  render $ evalState (pandocToLaTeX options document) $ -  WriterState { stIncludes = S.empty, stInNote = False, stOLLevel = 1, stOptions = options } +  evalState (pandocToLaTeX options document) $ +  WriterState { stInNote = False, stOLLevel = 1, stOptions = options,+                stVerbInNote = False, stEnumerate = False,+                stTable = False, stStrikeout = False, stSubscript = False,+                stLink = False, stUrl = False, stGraphics = False,+                stLHS = False }  -pandocToLaTeX :: WriterOptions -> Pandoc -> State WriterState Doc-pandocToLaTeX options (Pandoc meta blocks) = do-  main     <- blockListToLaTeX blocks-  head'    <- if writerStandalone options-                 then latexHeader options meta-                 else return empty+pandocToLaTeX :: WriterOptions -> Pandoc -> State WriterState String+pandocToLaTeX options (Pandoc (Meta title authors date) blocks) = do+  titletext <- liftM render $ inlineListToLaTeX title+  authorsText <- mapM (liftM render . inlineListToLaTeX) authors+  dateText <- liftM render $ inlineListToLaTeX date+  body <- blockListToLaTeX blocks   let before = if null (writerIncludeBefore options)-                  then empty-                  else text (writerIncludeBefore options)-  let after  = if null (writerIncludeAfter options)-                  then empty-                  else text (writerIncludeAfter options)-  let body = before $$ main $$ after-  let toc  =  if writerTableOfContents options-                 then text "\\tableofcontents\n"-                 else empty -  let foot = if writerStandalone options-                then text "\\end{document}"-                else empty -  return $ head' $$ toc $$ body $$ foot---- | Insert bibliographic information into LaTeX header.-latexHeader :: WriterOptions -- ^ Options, including LaTeX header-            -> Meta          -- ^ Meta with bibliographic information-            -> State WriterState Doc-latexHeader options (Meta title authors date) = do-  titletext <- if null title-                  then return empty-                  else inlineListToLaTeX title >>= return . inCmd "title"-  headerIncludes <- get >>= return . S.toList . stIncludes-  let extras = text $ unlines headerIncludes-  let verbatim  = if "\\usepackage{fancyvrb}" `elem` headerIncludes-                     then text "\\VerbatimFootnotes % allows verbatim text in footnotes"-                     else empty-  let authorstext = text $ "\\author{" ++ -                    intercalate "\\\\" (map stringToLaTeX authors) ++ "}"-  let datetext  = if date == ""-                     then empty -                     else text $ "\\date{" ++ stringToLaTeX date ++ "}"-  let maketitle = if null title then empty else text "\\maketitle"-  let secnumline = if (writerNumberSections options)-                      then empty -                      else text "\\setcounter{secnumdepth}{0}"-  let baseHeader = text $ writerHeader options-  let header     = baseHeader $$ extras-  return $ header $$ secnumline $$ verbatim $$ titletext $$ authorstext $$-           datetext $$ text "\\begin{document}" $$ maketitle $$ text ""+                 then empty+                 else text $ writerIncludeBefore options+  let after = if null (writerIncludeAfter options)+                 then empty+                 else text $ writerIncludeAfter options+  let main = render $ before $$ body $$ after+  st <- get+  let context  = writerVariables options +++                 [ ("toc", if writerTableOfContents options then "yes" else "")+                 , ("body", main)+                 , ("title", titletext)+                 , ("date", dateText) ] +++                 [ ("author", a) | a <- authorsText ] +++                 [ ("xetex", "yes") | writerXeTeX options ] +++                 [ ("verbatim-in-note", "yes") | stVerbInNote st ] +++                 [ ("fancy-enums", "yes") | stEnumerate st ] +++                 [ ("tables", "yes") | stTable st ] +++                 [ ("strikeout", "yes") | stStrikeout st ] +++                 [ ("subscript", "yes") | stSubscript st ] +++                 [ ("links", "yes") | stLink st ] +++                 [ ("url", "yes") | stUrl st ] +++                 [ ("lhs", "yes") | stLHS st ] +++                 [ ("graphics", "yes") | stGraphics st ]+  return $ if writerStandalone options+              then renderTemplate context $ writerTemplate options+              else main  -- escape things as needed for LaTeX @@ -152,10 +142,13 @@   st <- get   env <- if writerLiterateHaskell (stOptions st) && "haskell" `elem` classes &&                     "literate" `elem` classes-            then return "code"+            then do+              modify $ \s -> s{ stLHS = True }+              return "code"             else if stInNote st-                    then do addToHeader "\\usepackage{fancyvrb}"-                            return "Verbatim"+                    then do+                      modify $ \s -> s{ stVerbInNote = True }+                      return "Verbatim"                     else return "verbatim"   return $ text ("\\begin{" ++ env ++ "}\n") <> text str <>             text ("\n\\end{" ++ env ++ "}")@@ -170,10 +163,11 @@   items <- mapM listItemToLaTeX lst   modify (\s -> s {stOLLevel = oldlevel})   exemplar <- if numstyle /= DefaultStyle || numdelim /= DefaultDelim-                 then do addToHeader "\\usepackage{enumerate}"-                         return $ char '[' <> -                                  text (head (orderedListMarkers (1, numstyle,-                                  numdelim))) <> char ']'+                 then do+                   modify $ \s -> s{ stEnumerate = True }+                   return $ char '[' <> +                       text (head (orderedListMarkers (1, numstyle,+                            numdelim))) <> char ']'                  else return empty   let resetcounter = if start /= 1 && oldlevel <= 4                         then text $ "\\setcounter{enum" ++ @@ -214,10 +208,7 @@                   headers $$ text "\\hline" $$ vcat rows' $$                    text "\\end{tabular}"    let centered txt = text "\\begin{center}" $$ txt $$ text "\\end{center}"-  addToHeader $ "\\usepackage{array}\n" ++-    "% This is needed because raggedright in table elements redefines \\\\:\n" ++-    "\\newcommand{\\PreserveBackslash}[1]{\\let\\temp=\\\\#1\\let\\\\=\\temp}\n" ++-    "\\let\\PBS=\\PreserveBackslash"+  modify $ \s -> s{ stTable = True }   return $ if isEmpty captionText               then centered tableBody <> char '\n'               else text "\\begin{table}[h]" $$ centered tableBody $$ @@ -276,15 +267,15 @@   inlineListToLaTeX (deVerb lst) >>= return . inCmd "textbf"  inlineToLaTeX (Strikeout lst) = do   contents <- inlineListToLaTeX $ deVerb lst-  addToHeader "\\usepackage[normalem]{ulem}"+  modify $ \s -> s{ stStrikeout = True }   return $ inCmd "sout" contents-inlineToLaTeX (Superscript lst) = +inlineToLaTeX (Superscript lst) =   inlineListToLaTeX (deVerb lst) >>= return . inCmd "textsuperscript" inlineToLaTeX (Subscript lst) = do+  modify $ \s -> s{ stSubscript = True }   contents <- inlineListToLaTeX $ deVerb lst   -- oddly, latex includes \textsuperscript but not \textsubscript   -- so we have to define it (using a different name so as not to conflict with memoir class):-  addToHeader "\\newcommand{\\textsubscr}[1]{\\ensuremath{_{\\scriptsize\\textrm{#1}}}}"   return $ inCmd "textsubscr" contents inlineToLaTeX (SmallCaps lst) =   inlineListToLaTeX (deVerb lst) >>= return . inCmd "textsc"@@ -292,9 +283,7 @@   inlineListToLaTeX lst inlineToLaTeX (Code str) = do   st <- get-  if stInNote st-     then do addToHeader "\\usepackage{fancyvrb}"-     else return ()+  when (stInNote st) $ modify $ \s -> s{ stVerbInNote = True }   let chr = ((enumFromTo '!' '~') \\ str) !! 0   return $ text $ "\\verb" ++ [chr] ++ str ++ [chr] inlineToLaTeX (Quoted SingleQuote lst) = do@@ -327,16 +316,16 @@ inlineToLaTeX (LineBreak) = return $ text "\\\\"  inlineToLaTeX Space = return $ char ' ' inlineToLaTeX (Link txt (src, _)) = do-  addToHeader "\\usepackage[breaklinks=true]{hyperref}"+  modify $ \s -> s{ stLink = True }   case txt of         [Code x] | x == src ->  -- autolink-             do addToHeader "\\usepackage{url}" +             do modify $ \s -> s{ stUrl = True }                 return $ text $ "\\url{" ++ x ++ "}"         _ -> do contents <- inlineListToLaTeX $ deVerb txt                 return $ text ("\\href{" ++ src ++ "}{") <> contents <>                           char '}' inlineToLaTeX (Image _ (source, _)) = do-  addToHeader "\\usepackage{graphicx}"+  modify $ \s -> s{ stGraphics = True }   return $ text $ "\\includegraphics{" ++ source ++ "}"  inlineToLaTeX (Note contents) = do   st <- get
src/Text/Pandoc/Writers/Man.hs view
@@ -30,59 +30,55 @@ -} module Text.Pandoc.Writers.Man ( writeMan) where import Text.Pandoc.Definition+import Text.Pandoc.Templates import Text.Pandoc.Shared import Text.Printf ( printf )-import Data.List ( isPrefixOf, drop, nub, intersperse, intercalate )+import Data.List ( isPrefixOf, intersperse, intercalate ) import Text.PrettyPrint.HughesPJ hiding ( Str ) import Control.Monad.State-import Control.Monad ( liftM )  type Notes = [[Block]]-type Preprocessors = [String] -- e.g. "t" for tbl-type WriterState = (Notes, Preprocessors)+data WriterState = WriterState { stNotes  :: Notes+                               , stHasTables :: Bool }  -- | Convert Pandoc to Man. writeMan :: WriterOptions -> Pandoc -> String-writeMan opts document = render $ evalState (pandocToMan opts document) ([],[]) +writeMan opts document = evalState (pandocToMan opts document) (WriterState [] False)   -- | Return groff man representation of document.-pandocToMan :: WriterOptions -> Pandoc -> State WriterState Doc-pandocToMan opts (Pandoc meta blocks) = do+pandocToMan :: WriterOptions -> Pandoc -> State WriterState String+pandocToMan opts (Pandoc (Meta title authors date) blocks) = do   let before  = writerIncludeBefore opts   let after   = writerIncludeAfter opts   let before' = if null before then empty else text before   let after'  = if null after then empty else text after-  (head', foot) <- metaToMan opts meta-  body <- blockListToMan opts blocks-  (notes, preprocessors) <- get-  let preamble = if null preprocessors || not (writerStandalone opts)-                    then empty-                    else text $ ".\\\" " ++ concat (nub preprocessors)-  notes' <- notesToMan opts (reverse notes)-  return $ preamble $$ head' $$ before' $$ body $$ notes' $$ foot $$ after'---- | Insert bibliographic information into Man header and footer.-metaToMan :: WriterOptions -- ^ Options, including Man header-          -> Meta          -- ^ Meta with bibliographic information-          -> State WriterState (Doc, Doc)-metaToMan options (Meta title authors date) = do-  titleText <- inlineListToMan options title+  titleText <- inlineListToMan opts title+  authors' <- mapM (inlineListToMan opts) authors+  date' <- inlineListToMan opts date    let (cmdName, rest) = break (== ' ') $ render titleText   let (title', section) = case reverse cmdName of                             (')':d:'(':xs) | d `elem` ['0'..'9'] ->                                    (text (reverse xs), char d)                             xs -> (text (reverse xs), doubleQuotes empty)                    -  let extras = map (doubleQuotes . text . removeLeadingTrailingSpace) $-               splitBy '|' rest-  let head' = (text ".TH") <+> title' <+> section <+> -             doubleQuotes (text date) <+> hsep extras-  let foot = case length authors of-                0 -> empty-                1 -> text ".SH AUTHOR" $$ (text $ intercalate ", " authors)-                _ -> text ".SH AUTHORS" $$ (text $ intercalate ", " authors)-  return $ if writerStandalone options-              then (head', foot)-              else (empty, empty)+  let description = hsep $+                    map (doubleQuotes . text . removeLeadingTrailingSpace) $+                    splitBy '|' rest+  body <- blockListToMan opts blocks+  notes <- liftM stNotes get+  notes' <- notesToMan opts (reverse notes)+  let main = render $ before' $$ body $$ notes' $$ after'+  hasTables <- liftM stHasTables get+  let context  = writerVariables opts +++                 [ ("body", main)+                 , ("title", render title')+                 , ("section", render section)+                 , ("date", render date')+                 , ("description", render description) ] +++                 [ ("has-tables", "yes") | hasTables ] +++                 [ ("author", render a) | a <- authors' ]+  if writerStandalone opts+     then return $ renderTemplate context $ writerTemplate opts+     else return main  -- | Return man representation of notes. notesToMan :: WriterOptions -> [[Block]] -> State WriterState Doc@@ -170,7 +166,7 @@       aligncode AlignDefault = "l"   in do   caption' <- inlineListToMan opts caption-  modify (\(notes, preprocessors) -> (notes, "t":preprocessors))+  modify $ \st -> st{ stHasTables = True }   let iwidths = if all (== 0) widths                    then repeat ""                    else map (printf "w(%0.2fn)" . (70 *)) widths@@ -329,8 +325,9 @@   linkPart <- inlineToMan opts (Link txt (source, tit))    return $ char '[' <> text "IMAGE: " <> linkPart <> char ']' inlineToMan _ (Note contents) = do -  modify (\(notes, prep) -> (contents:notes, prep)) -- add to notes in state-  (notes, _) <- get+  -- add to notes in state+  modify $ \st -> st{ stNotes = contents : stNotes st }+  notes <- liftM stNotes get   let ref = show $ (length notes)   return $ char '[' <> text ref <> char ']' 
src/Text/Pandoc/Writers/Markdown.hs view
@@ -31,10 +31,11 @@ -} module Text.Pandoc.Writers.Markdown ( writeMarkdown) where import Text.Pandoc.Definition+import Text.Pandoc.Templates (renderTemplate) import Text.Pandoc.Shared  import Text.Pandoc.Blocks import Text.ParserCombinators.Parsec ( parse, GenParser )-import Data.List ( group, isPrefixOf, drop, find, intersperse, intercalate, transpose )+import Data.List ( group, isPrefixOf, find, intersperse, transpose ) import Text.PrettyPrint.HughesPJ hiding ( Str ) import Control.Monad.State @@ -45,32 +46,42 @@ -- | Convert Pandoc to Markdown. writeMarkdown :: WriterOptions -> Pandoc -> String writeMarkdown opts document = -  render $ evalState (pandocToMarkdown opts document) ([],[]) +  evalState (pandocToMarkdown opts document) ([],[])   -- | Return markdown representation of document.-pandocToMarkdown :: WriterOptions -> Pandoc -> State WriterState Doc-pandocToMarkdown opts (Pandoc meta blocks) = do-  let before  = writerIncludeBefore opts-  let after   = writerIncludeAfter opts-  let header  = writerHeader opts-  let before' = if null before then empty else text before-  let after'  = if null after then empty else text after-  let header' = if null header then empty else text header-  metaBlock <- metaToMarkdown opts meta-  let head' = if writerStandalone opts-                then metaBlock $+$ header'-                else empty+pandocToMarkdown :: WriterOptions -> Pandoc -> State WriterState String+pandocToMarkdown opts (Pandoc (Meta title authors date) blocks) = do+  title' <- inlineListToMarkdown opts title+  authors' <- mapM (inlineListToMarkdown opts) authors+  date' <- inlineListToMarkdown opts date+  let titleblock = not $ null title && null authors && null date   let headerBlocks = filter isHeaderBlock blocks   let toc = if writerTableOfContents opts                 then tableOfContents opts headerBlocks                else empty   body <- blockListToMarkdown opts blocks+  let before = if null (writerIncludeBefore opts)+                  then empty+                  else text $ writerIncludeBefore opts+  let after = if null (writerIncludeAfter opts)+                  then empty+                  else text $ writerIncludeAfter opts   (notes, _) <- get   notes' <- notesToMarkdown opts (reverse notes)   (_, refs) <- get  -- note that the notes may contain refs   refs' <- keyTableToMarkdown opts (reverse refs)-  return $ head' $+$ before' $+$ toc $+$ body $+$ text "" $+$ -           notes' $+$ text "" $+$ refs' $+$ after'+  let main = render $ before $+$ body $+$ text "" $+$ notes' $+$ text "" $+$ refs' $+$ after+  let context  = writerVariables opts +++                 [ ("toc", render toc)+                 , ("body", main)+                 , ("title", render title')+                 , ("date", render date')+                 ] +++                 [ ("titleblock", "yes") | titleblock ] +++                 [ ("author", render a) | a <- authors' ]+  if writerStandalone opts+     then return $ renderTemplate context $ writerTemplate opts+     else return main  -- | Return markdown representation of reference key table. keyTableToMarkdown :: WriterOptions -> KeyTable -> State WriterState Doc@@ -103,30 +114,6 @@ escapeString :: String -> String escapeString = escapeStringUsing markdownEscapes   where markdownEscapes = backslashEscapes "\\`*_>#~^"---- | Convert bibliographic information into Markdown header.-metaToMarkdown :: WriterOptions -> Meta -> State WriterState Doc-metaToMarkdown _ (Meta [] [] []) = return empty-metaToMarkdown opts (Meta title authors date) = do-  title'   <- titleToMarkdown opts title-  authors' <- authorsToMarkdown authors-  date'    <- dateToMarkdown date-  return $ title' $+$ authors' $+$ date' $+$ text ""--titleToMarkdown :: WriterOptions -> [Inline] -> State WriterState Doc-titleToMarkdown _    []  = return empty-titleToMarkdown opts lst = do-  contents <- inlineListToMarkdown opts lst-  return $ text "% " <> contents --authorsToMarkdown :: [String] -> State WriterState Doc-authorsToMarkdown [] = return empty-authorsToMarkdown lst = return $ -  text "% " <> text (intercalate ", " (map escapeString lst))--dateToMarkdown :: String -> State WriterState Doc-dateToMarkdown [] = return empty-dateToMarkdown str = return $ text "% " <> text (escapeString str)  -- | Construct table of contents from list of header blocks. tableOfContents :: WriterOptions -> [Block] -> Doc 
src/Text/Pandoc/Writers/MediaWiki.hs view
@@ -32,6 +32,7 @@ module Text.Pandoc.Writers.MediaWiki ( writeMediaWiki ) where import Text.Pandoc.Definition import Text.Pandoc.Shared +import Text.Pandoc.Templates (renderTemplate) import Text.Pandoc.XML ( escapeStringForXML ) import Data.List ( intersect, intercalate ) import Network.URI ( isURI )@@ -54,18 +55,18 @@ pandocToMediaWiki opts (Pandoc _ blocks) = do   let before  = writerIncludeBefore opts   let after   = writerIncludeAfter opts-  let head' = if writerStandalone opts-                then writerHeader opts-                else ""-  let toc = if writerTableOfContents opts -               then "__TOC__\n"-               else ""   body <- blockListToMediaWiki opts blocks   notesExist <- get >>= return . stNotes   let notes = if notesExist                  then "\n== Notes ==\n<references />"                  else "" -  return $ head' ++ before ++ toc ++ body ++ after ++ notes+  let main = before ++ body ++ after ++ notes+  let context = writerVariables opts +++                [ ("body", main) ] +++                [ ("toc", "yes") | writerTableOfContents opts ]+  if writerStandalone opts+     then return $ renderTemplate context $ writerTemplate opts+     else return main  -- | Escape special characters for MediaWiki. escapeString :: String -> String
src/Text/Pandoc/Writers/OpenDocument.hs view
@@ -32,6 +32,7 @@ import Text.Pandoc.Definition import Text.Pandoc.Shared import Text.Pandoc.XML+import Text.Pandoc.Templates (renderTemplate) import Text.Pandoc.Readers.TeXMath import Text.PrettyPrint.HughesPJ hiding ( Str ) import Text.Printf ( printf )@@ -39,7 +40,6 @@ import Control.Arrow ( (***), (>>>) ) import Control.Monad.State hiding ( when ) import Data.Char (chr)-import Data.List (intercalate)  -- | Auxiliary function to convert Plain block to Para. plainToPara :: Block -> Block@@ -156,58 +156,43 @@         rm (   x:xs) = char  x  <> rm xs         rm        [] = empty --- | Convert list of authors to a docbook <author> section-authorToOpenDocument :: [Char] -> Doc-authorToOpenDocument name =-  if ',' `elem` name-    then -- last name first-         let (lastname, rest) = break (==',') name-             firstname = removeLeadingSpace rest-         in  inParagraphTagsWithStyle "Author" $-                 (text $ escapeStringForXML firstname) <+>-                 (text $ escapeStringForXML lastname)-    else -- last name last-         let namewords = words name-             lengthname = length namewords-             (firstname, lastname) = case lengthname of-               0  -> ("","")-               1  -> ("", name)-               n  -> (intercalate " " (take (n-1) namewords), last namewords)-          in inParagraphTagsWithStyle "Author" $-                 (text $ escapeStringForXML firstname) <+>-                 (text $ escapeStringForXML lastname)- -- | Convert Pandoc document to string in OpenDocument format. writeOpenDocument :: WriterOptions -> Pandoc -> String writeOpenDocument opts (Pandoc (Meta title authors date) blocks) =-  let root     = inTags True "office:document-content" openDocumentNameSpaces-      header   = when (writerStandalone opts) $ text (writerHeader opts)-      title'   = case runState (wrap opts title) defaultWriterState of-                   (t,_) -> if isEmpty t then empty else inHeaderTags 1 t-      authors' = when (authors /= []) $ vcat (map authorToOpenDocument authors)-      date'    = when (date    /= []) $-                 inParagraphTagsWithStyle "Date" (text $ escapeStringForXML date)-      meta     = when (writerStandalone opts) $ title' $$ authors' $$ date'+  let ((doc, title', authors', date'),s) = flip runState+        defaultWriterState $ do+           title'' <- inlinesToOpenDocument opts title +           authors'' <- mapM (inlinesToOpenDocument opts) authors+           date'' <- inlinesToOpenDocument opts date+           doc'' <- blocksToOpenDocument opts blocks+           return (doc'', title'', authors'', date'')       before   = writerIncludeBefore opts       after    = writerIncludeAfter opts-      (doc, s) = runState (blocksToOpenDocument opts blocks) defaultWriterState       body     = (if null before then empty else text before) $$                  doc $$                  (if null after then empty else text after)-      body'    = if writerStandalone opts-                   then inTagsIndented "office:body" $-                        inTagsIndented "office:text" (meta $$ body)-                   else body+      body'    = render body       styles   = stTableStyles s ++ stParaStyles s ++ stTextStyles s-      listStyle (n,l) = inTags True "text:list-style" [("style:name", "L" ++ show n)] (vcat l)+      listStyle (n,l) = inTags True "text:list-style"+                          [("style:name", "L" ++ show n)] (vcat l)       listStyles  = map listStyle (stListStyles s)-  in  render $ header $$ root (generateStyles (styles ++ listStyles) $$ body' $$ text "")+      automaticStyles = inTagsIndented "office:automatic-styles" $ vcat $+                          reverse $ styles ++ listStyles+      context = writerVariables opts +++                [ ("body", body')+                , ("automatic-styles", render automaticStyles)+                , ("title", render title')+                , ("date", render date') ] +++                [ ("author", render a) | a <- authors' ]+  in  if writerStandalone opts+         then renderTemplate context $ writerTemplate opts+         else body'  withParagraphStyle :: WriterOptions -> String -> [Block] -> State WriterState Doc withParagraphStyle  o s (b:bs)     | Para l <- b = go =<< inParagraphTagsWithStyle s <$> inlinesToOpenDocument o l     | otherwise   = go =<< blockToOpenDocument o b-    where go i = ($$) i <$>  withParagraphStyle o s bs+    where go i = (<>) i <$>  withParagraphStyle o s bs withParagraphStyle _ _ [] = return empty  inPreformattedTags :: String -> State WriterState Doc@@ -287,9 +272,9 @@ -- | Convert a Pandoc block element to OpenDocument. blockToOpenDocument :: WriterOptions -> Block -> State WriterState Doc blockToOpenDocument o bs-    | Plain          b <- bs = inParagraphTags <$> wrap o b-    | Para           b <- bs = inParagraphTags <$> wrap o b-    | Header       i b <- bs = inHeaderTags  i <$> wrap o b+    | Plain          b <- bs = inParagraphTags <$> inlinesToOpenDocument o b+    | Para           b <- bs = inParagraphTags <$> inlinesToOpenDocument o b+    | Header       i b <- bs = inHeaderTags  i <$> inlinesToOpenDocument o b     | BlockQuote     b <- bs = mkBlockQuote b     | CodeBlock    _ s <- bs = preformatted s     | RawHtml        _ <- bs = return empty@@ -352,12 +337,6 @@   in  inTags True "table:table-cell" a <$>       withParagraphStyle o n (map plainToPara i) --- | Take list of inline elements and return wrapped doc.-wrap :: WriterOptions -> [Inline] -> State WriterState Doc-wrap o l = if writerWrapText o-                then fsep <$> mapM (inlinesToOpenDocument o) (splitBy Space l)-                else inlinesToOpenDocument o l- -- | Convert a list of inline elements to OpenDocument. inlinesToOpenDocument :: WriterOptions -> [Inline] -> State WriterState Doc inlinesToOpenDocument o l = hcat <$> mapM (inlineToOpenDocument o) l@@ -404,22 +383,12 @@         let footNote t = inTags False "text:note"                          [ ("text:id"        , "ftn" ++ show n)                          , ("text:note-class", "footnote"     )] $-                         inTagsSimple "text:note-citation" (text . show $ n + 1) $$+                         inTagsSimple "text:note-citation" (text . show $ n + 1) <>                           inTagsSimple "text:note-body" t         nn <- footNote <$> withParagraphStyle o "Footnote" l         addNote nn         return nn -generateStyles :: [Doc] -> Doc-generateStyles acc =-    let scripts = selfClosingTag "office:scripts" []-        fonts   = inTagsIndented "office:font-face-decls"-                  (vcat $ map font ["Lucida Sans Unicode", "Tahoma", "Times New Roman"])-        font fn = selfClosingTag "style:font-face"-                  [ ("style:name"     , "&apos;" ++ fn ++ "&apos;")-                  , ("svg:font-family", fn                        )]-    in  scripts $$ fonts $$ inTagsIndented "office:automatic-styles" (vcat $ reverse acc)- bulletListStyle :: Int -> State WriterState (Int,(Int,[Doc])) bulletListStyle l =     let doStyles  i = inTags True "text:list-level-style-bullet"@@ -541,30 +510,3 @@     | SmallC <- s = [("fo:font-variant"              ,"small-caps")]     | otherwise   = [] -openDocumentNameSpaces :: [(String, String)]-openDocumentNameSpaces =-    [ ("xmlns:office"  , "urn:oasis:names:tc:opendocument:xmlns:office:1.0"           )-    , ("xmlns:style"   , "urn:oasis:names:tc:opendocument:xmlns:style:1.0"            )-    , ("xmlns:text"    , "urn:oasis:names:tc:opendocument:xmlns:text:1.0"             )-    , ("xmlns:table"   , "urn:oasis:names:tc:opendocument:xmlns:table:1.0"            )-    , ("xmlns:draw"    , "urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"          )-    , ("xmlns:fo"      , "urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0")-    , ("xmlns:xlink"   , "http://www.w3.org/1999/xlink"                               )-    , ("xmlns:dc"      , "http://purl.org/dc/elements/1.1/"                           )-    , ("xmlns:meta"    , "urn:oasis:names:tc:opendocument:xmlns:meta:1.0"             )-    , ("xmlns:number"  , "urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"        )-    , ("xmlns:svg"     , "urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"   )-    , ("xmlns:chart"   , "urn:oasis:names:tc:opendocument:xmlns:chart:1.0"            )-    , ("xmlns:dr3d"    , "urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"             )-    , ("xmlns:math"    , "http://www.w3.org/1998/Math/MathML"                         )-    , ("xmlns:form"    , "urn:oasis:names:tc:opendocument:xmlns:form:1.0"             )-    , ("xmlns:script"  , "urn:oasis:names:tc:opendocument:xmlns:script:1.0"           )-    , ("xmlns:ooo"     , "http://openoffice.org/2004/office"                          )-    , ("xmlns:ooow"    , "http://openoffice.org/2004/writer"                          )-    , ("xmlns:oooc"    , "http://openoffice.org/2004/calc"                            )-    , ("xmlns:dom"     , "http://www.w3.org/2001/xml-events"                          )-    , ("xmlns:xforms"  , "http://www.w3.org/2002/xforms"                              )-    , ("xmlns:xsd"     , "http://www.w3.org/2001/XMLSchema"                           )-    , ("xmlns:xsi"     , "http://www.w3.org/2001/XMLSchema-instance"                  )-    , ("office:version", "1.0"                                                        )-    ]
src/Text/Pandoc/Writers/RST.hs view
@@ -33,7 +33,8 @@ import Text.Pandoc.Definition import Text.Pandoc.Shared  import Text.Pandoc.Blocks-import Data.List ( isPrefixOf, isSuffixOf, drop, intersperse, transpose )+import Text.Pandoc.Templates (renderTemplate)+import Data.List ( isPrefixOf, isSuffixOf, intersperse, transpose ) import Text.PrettyPrint.HughesPJ hiding ( Str ) import Control.Monad.State import Control.Applicative ( (<$>) )@@ -42,7 +43,7 @@   WriterState { stNotes     :: [[Block]]               , stLinks     :: KeyTable               , stImages    :: KeyTable-              , stIncludes  :: [String]+              , stHasMath   :: Bool               , stOptions   :: WriterOptions               } @@ -50,33 +51,38 @@ writeRST :: WriterOptions -> Pandoc -> String writeRST opts document =    let st = WriterState { stNotes = [], stLinks = [],-                         stImages = [], stIncludes = [],+                         stImages = [], stHasMath = False,                          stOptions = opts }-  in render $ evalState (pandocToRST document) st+  in evalState (pandocToRST document) st  -- | Return RST representation of document.-pandocToRST :: Pandoc -> State WriterState Doc-pandocToRST (Pandoc meta blocks) = do-  opts <- get >>= (return . stOptions)+pandocToRST :: Pandoc -> State WriterState String+pandocToRST (Pandoc (Meta tit auth dat) blocks) = do+  opts <- liftM stOptions get   let before  = writerIncludeBefore opts       after   = writerIncludeAfter opts-      header  = writerHeader opts       before' = if null before then empty else text before       after'  = if null after then empty else text after-      header' = if null header then empty else text header-  metaBlock <- metaToRST opts meta-  let head' = if (writerStandalone opts)-                 then metaBlock $+$ header'-                 else empty+  title <- titleToRST tit+  authors <- mapM inlineListToRST auth+  date <- inlineListToRST dat   body <- blockListToRST blocks-  includes <- get >>= (return . concat . stIncludes)-  let includes' = if null includes then empty else text includes-  notes <- get >>= (notesToRST . reverse . stNotes)+  notes <- liftM (reverse . stNotes) get >>= notesToRST   -- note that the notes may contain refs, so we do them first-  refs <- get >>= (keyTableToRST . reverse . stLinks)-  pics <- get >>= (pictTableToRST . reverse . stImages)-  return $ head' $+$ before' $+$ includes' $+$ body $+$ notes $+$ text "" $+$-           refs $+$ pics $+$ after'+  refs <- liftM (reverse . stLinks) get >>= keyTableToRST+  pics <- liftM (reverse . stImages) get >>= pictTableToRST+  hasMath <- liftM stHasMath get+  let main = render $ before' $+$ body $+$ notes $+$+                      text "" $+$ refs $+$ pics $+$ after'+  let context = writerVariables opts +++                [ ("body", main)+                , ("title", render title)+                , ("date", render date) ] +++                [ ("math", "yes") | hasMath ] +++                [ ("author", render a) | a <- authors ]+  if writerStandalone opts+     then return $ renderTemplate context $ writerTemplate opts+     else return main  -- | Return RST representation of reference key table. keyTableToRST :: KeyTable -> State WriterState Doc@@ -129,35 +135,13 @@ escapeString :: String -> String escapeString = escapeStringUsing (backslashEscapes "`\\|*_") --- | Convert bibliographic information into RST header.-metaToRST :: WriterOptions -> Meta -> State WriterState Doc-metaToRST _ (Meta [] [] []) = return empty-metaToRST opts (Meta title authors date) = do-  title'   <- titleToRST title-  authors' <- authorsToRST authors-  date'    <- dateToRST date-  let toc  =  if writerTableOfContents opts-                 then text "" $+$ text ".. contents::"-                 else empty-  return $ title' $+$ authors' $+$ date' $+$ toc $+$ text ""- titleToRST :: [Inline] -> State WriterState Doc titleToRST [] = return empty titleToRST lst = do   contents <- inlineListToRST lst   let titleLength = length $ render contents   let border = text (replicate titleLength '=')-  return $ border $+$ contents $+$ border <> text "\n"--authorsToRST :: [String] -> State WriterState Doc-authorsToRST [] = return empty-authorsToRST (first:rest) = do-  rest' <- authorsToRST rest-  return $ (text ":Author: " <> text first) $+$ rest'--dateToRST :: String -> State WriterState Doc-dateToRST [] = return empty-dateToRST str = return $ text ":Date: " <> text (escapeString str)+  return $ border $+$ contents $+$ border  -- | Convert Pandoc block element to RST.  blockToRST :: Block         -- ^ Block element@@ -306,12 +290,7 @@ inlineToRST (Code str) = return $ text $ "``" ++ str ++ "``" inlineToRST (Str str) = return $ text $ escapeString str inlineToRST (Math t str) = do-  includes <- get >>= (return . stIncludes)-  let rawMathRole = ".. role:: math(raw)\n" ++-                    "   :format: html latex\n"-  if not (rawMathRole `elem` includes)-     then modify $ \st -> st { stIncludes = rawMathRole : includes }-     else return ()+  modify $ \st -> st{ stHasMath = True }   return $ if t == InlineMath               then text $ ":math:`$" ++ str ++ "$`"               else text $ ":math:`$$" ++ str ++ "$$`"
src/Text/Pandoc/Writers/RTF.hs view
@@ -31,23 +31,31 @@ import Text.Pandoc.Definition import Text.Pandoc.Shared import Text.Pandoc.Readers.TeXMath+import Text.Pandoc.Templates (renderTemplate) import Data.List ( isSuffixOf, intercalate ) import Data.Char ( ord, isDigit )  -- | Convert Pandoc to a string in rich text format. writeRTF :: WriterOptions -> Pandoc -> String-writeRTF options (Pandoc meta blocks) = -  let head' = if writerStandalone options-                 then rtfHeader (writerHeader options) meta -                 else ""-      toc  = if writerTableOfContents options-                then tableOfContents $ filter isHeaderBlock blocks-                else "" -      foot = if writerStandalone options then "\n}\n" else "" +writeRTF options (Pandoc (Meta title authors date) blocks) = +  let titletext = inlineListToRTF title+      authorstext = map inlineListToRTF authors+      datetext = inlineListToRTF date+      spacer = not $ all null $ titletext : datetext : authorstext       body = writerIncludeBefore options ++               concatMap (blockToRTF 0 AlignDefault) blocks ++               writerIncludeAfter options-  in  head' ++ toc ++ body ++ foot+      context = writerVariables options +++                [ ("body", body)+                , ("title", titletext)+                , ("date", datetext) ] +++                [ ("author", a) | a <- authorstext ] +++                [ ("spacer", "yes") | spacer ] +++                [ ("toc", tableOfContents $ filter isHeaderBlock blocks) |+                   writerTableOfContents options ]+  in  if writerStandalone options+         then renderTemplate context $ writerTemplate options+         else body  -- | Construct table of contents from list of header blocks. tableOfContents :: [Block] -> String @@ -138,27 +146,6 @@               0 -> orderedListMarkers (start, Decimal, Period)               _ -> orderedListMarkers (start, LowerAlpha, Period)      else orderedListMarkers (start, style, delim)---- | Returns RTF header.-rtfHeader :: String    -- ^ header text-          -> Meta      -- ^ bibliographic information-          -> String-rtfHeader headerText (Meta title authors date) =-  let titletext = if null title-                     then "" -                     else rtfPar 0 0 AlignCenter $-                          "\\b \\fs36 " ++ inlineListToRTF title-      authorstext = if null authors-                       then "" -                       else rtfPar 0 0 AlignCenter (" " ++ (intercalate "\\" $-                                                    map stringToRTF authors))-      datetext = if date == "" -                    then ""-                    else rtfPar 0 0 AlignCenter (" " ++ stringToRTF date) in-  let spacer = if null (titletext ++ authorstext ++ datetext)-                  then ""-                  else rtfPar 0 0 AlignDefault "" in-  headerText ++ titletext ++ authorstext ++ datetext ++ spacer  -- | Convert Pandoc block element to RTF. blockToRTF :: Int       -- ^ indent level
src/Text/Pandoc/Writers/S5.hs view
@@ -1,4 +1,3 @@-{-# LANGUAGE CPP, TemplateHaskell #-} {- Copyright (C) 2006-7 John MacFarlane <jgm@berkeley.edu> @@ -30,66 +29,46 @@ (See <http://meyerweb.com/eric/tools/s5/>.) -} module Text.Pandoc.Writers.S5 (-                -- * Strings-                s5Meta,-                s5Javascript,-                s5CSS,+                -- * Header includes+                s5HeaderIncludes,                 s5Links,                 -- * Functions                 writeS5,                 writeS5String,                 insertS5Structure                 ) where-import Text.Pandoc.Shared ( WriterOptions )-import Text.Pandoc.TH ( contentsOf )+import Text.Pandoc.Shared ( WriterOptions, readDataFile ) import Text.Pandoc.Writers.HTML ( writeHtml, writeHtmlString ) import Text.Pandoc.Definition import Text.XHtml.Strict import System.FilePath ( (</>) ) import Data.List ( intercalate ) +s5HeaderIncludes :: IO String+s5HeaderIncludes = do+  c <- s5CSS+  j <- s5Javascript+  return $ s5Meta ++ c ++ j+ s5Meta :: String s5Meta = "<!-- configuration parameters -->\n<meta name=\"defaultView\" content=\"slideshow\" />\n<meta name=\"controlVis\" content=\"hidden\" />\n" -s5Javascript :: String-#ifndef __HADDOCK__-s5Javascript = "<script type=\"text/javascript\">\n" ++-               $(contentsOf $ "data" </> "ui" </> "default" </> "slides.js.comment") ++-               $(contentsOf $ "data" </> "ui" </> "default" </> "slides.js.packed") ++ "</script>\n" -#endif--s5CoreCSS :: String-#ifndef __HADDOCK__-s5CoreCSS = $(contentsOf $ "data" </> "ui" </> "default" </> "s5-core.css")-#endif--s5FramingCSS :: String-#ifndef __HADDOCK__-s5FramingCSS = $(contentsOf $ "data" </> "ui" </> "default" </> "framing.css")-#endif--s5PrettyCSS :: String-#ifndef __HADDOCK__-s5PrettyCSS = $(contentsOf $ "data" </> "ui" </> "default" </> "pretty.css")-#endif--s5OperaCSS :: String-#ifndef __HADDOCK__-s5OperaCSS = $(contentsOf $ "data" </> "ui" </> "default" </> "opera.css")-#endif--s5OutlineCSS :: String-#ifndef __HADDOCK__-s5OutlineCSS = $(contentsOf $ "data" </> "ui" </> "default" </> "outline.css")-#endif--s5PrintCSS :: String-#ifndef __HADDOCK__-s5PrintCSS = $(contentsOf $ "data" </> "ui" </> "default" </> "print.css")-#endif+s5Javascript :: IO String+s5Javascript = do+  jsCom <- readDataFile $ "s5" </> "default" </> "slides.js.comment"+  jsPacked <- readDataFile $ "s5" </> "default" </> "slides.js.packed"+  return $ "<script type=\"text/javascript\">\n" ++ jsCom ++ jsPacked +++           "</script>\n" -s5CSS :: String-s5CSS = "<style type=\"text/css\" media=\"projection\" id=\"slideProj\">\n" ++ s5CoreCSS ++ "\n" ++ s5FramingCSS ++ "\n" ++ s5PrettyCSS ++ "\n</style>\n<style type=\"text/css\" media=\"projection\" id=\"operaFix\">\n" ++ s5OperaCSS ++ "\n</style>\n<style type=\"text/css\" media=\"screen\" id=\"outlineStyle\">\n" ++ s5OutlineCSS ++ "\n</style>\n<style type=\"text/css\" media=\"print\" id=\"slidePrint\">\n" ++ s5PrintCSS ++ "\n</style>\n"+s5CSS :: IO String+s5CSS = do+  s5CoreCSS <- readDataFile $ "s5" </> "default" </> "s5-core.css"+  s5FramingCSS <- readDataFile $ "s5" </> "default" </> "framing.css"+  s5PrettyCSS <- readDataFile $ "s5" </> "default" </> "pretty.css"+  s5OperaCSS <- readDataFile $ "s5" </> "default" </> "opera.css"+  s5OutlineCSS <- readDataFile $ "s5" </> "default" </> "outline.css"+  s5PrintCSS <- readDataFile $ "s5" </> "default" </> "print.css"+  return $ "<style type=\"text/css\" media=\"projection\" id=\"slideProj\">\n" ++ s5CoreCSS ++ "\n" ++ s5FramingCSS ++ "\n" ++ s5PrettyCSS ++ "\n</style>\n<style type=\"text/css\" media=\"projection\" id=\"operaFix\">\n" ++ s5OperaCSS ++ "\n</style>\n<style type=\"text/css\" media=\"screen\" id=\"outlineStyle\">\n" ++ s5OutlineCSS ++ "\n</style>\n<style type=\"text/css\" media=\"print\" id=\"slidePrint\">\n" ++ s5PrintCSS ++ "\n</style>\n"  s5Links :: String s5Links = "<!-- style sheet links -->\n<link rel=\"stylesheet\" href=\"ui/default/slides.css\" type=\"text/css\" media=\"projection\" id=\"slideProj\" />\n<link rel=\"stylesheet\" href=\"ui/default/outline.css\" type=\"text/css\" media=\"screen\" id=\"outlineStyle\" />\n<link rel=\"stylesheet\" href=\"ui/default/print.css\" type=\"text/css\" media=\"print\" id=\"slidePrint\" />\n<link rel=\"stylesheet\" href=\"ui/default/opera.css\" type=\"text/css\" media=\"projection\" id=\"operaFix\" />\n<!-- S5 JS -->\n<script src=\"ui/default/slides.js\" type=\"text/javascript\"></script>\n"@@ -104,9 +83,9 @@  -- | Inserts HTML needed for an S5 presentation (e.g. around slides). layoutDiv :: [Inline]  -- ^ Title of document (for header or footer)-          -> String    -- ^ Date of document (for header or footer)+          -> [Inline]  -- ^ Date of document (for header or footer)           -> [Block]   -- ^ List of block elements returned-layoutDiv title' date = [(RawHtml "<div class=\"layout\">\n<div id=\"controls\"></div>\n<div id=\"currentSlide\"></div>\n<div id=\"header\"></div>\n<div id=\"footer\">\n"), (Header 1 [Str date]), (Header 2 title'), (RawHtml "</div>\n</div>\n")]+layoutDiv title' date = [(RawHtml "<div class=\"layout\">\n<div id=\"controls\"></div>\n<div id=\"currentSlide\"></div>\n<div id=\"header\"></div>\n<div id=\"footer\">\n"), (Header 1 date), (Header 2 title'), (RawHtml "</div>\n</div>\n")]  presentationStart :: Block presentationStart = RawHtml "<div class=\"presentation\">\n\n"@@ -149,8 +128,8 @@     let slides     = insertSlides True blocks          firstSlide = if not (null title')                         then [slideStart, (Header 1 title'), -                              (Header 3 [Str (intercalate ", " authors)]),-                              (Header 4 [Str date]), slideEnd]+                              (Header 3 (intercalate [LineBreak] authors)),+                              (Header 4 date), slideEnd]                         else []         newBlocks  = (layoutDiv title' date) ++ presentationStart:firstSlide ++                      slides ++ [presentationEnd]
src/Text/Pandoc/Writers/Texinfo.hs view
@@ -30,17 +30,19 @@ module Text.Pandoc.Writers.Texinfo ( writeTexinfo ) where import Text.Pandoc.Definition import Text.Pandoc.Shared+import Text.Pandoc.Templates (renderTemplate) import Text.Pandoc.Readers.TeXMath import Text.Printf ( printf ) import Data.List ( isSuffixOf, transpose, maximumBy ) import Data.Ord ( comparing ) import Data.Char ( chr, ord )-import qualified Data.Set as S import Control.Monad.State import Text.PrettyPrint.HughesPJ hiding ( Str )  data WriterState = -  WriterState { stIncludes :: S.Set String  -- strings to include in header+  WriterState { stStrikeout   :: Bool  -- document contains strikeout+              , stSuperscript :: Bool -- document contains superscript+              , stSubscript   :: Bool -- document contains subscript               }  {- TODO:@@ -48,79 +50,45 @@  - generated .texi files don't work when run through texi2dvi  -} --- | Add line to header.-addToHeader :: String -> State WriterState ()-addToHeader str = do-  st <- get-  let includes = stIncludes st-  put st {stIncludes = S.insert str includes}- -- | Convert Pandoc to Texinfo. writeTexinfo :: WriterOptions -> Pandoc -> String writeTexinfo options document = -  render $ evalState (pandocToTexinfo options $ wrapTop document) $ -  WriterState { stIncludes = S.empty } +  evalState (pandocToTexinfo options $ wrapTop document) $ +  WriterState { stStrikeout = False, stSuperscript = False, stSubscript = False }  -- | Add a "Top" node around the document, needed by Texinfo. wrapTop :: Pandoc -> Pandoc wrapTop (Pandoc (Meta title authors date) blocks) =   Pandoc (Meta title authors date) (Header 0 title : blocks) -pandocToTexinfo :: WriterOptions -> Pandoc -> State WriterState Doc-pandocToTexinfo options (Pandoc meta blocks) = do-  main     <- blockListToTexinfo blocks-  head'    <- if writerStandalone options-                 then texinfoHeader options meta-                 else return empty+pandocToTexinfo :: WriterOptions -> Pandoc -> State WriterState String+pandocToTexinfo options (Pandoc (Meta title authors date) blocks) = do+  titleText <- inlineListToTexinfo title+  authorsText <- mapM inlineListToTexinfo authors+  dateText <- inlineListToTexinfo date+  let titlePage = not $ all null $ title : date : authors+  main <- blockListToTexinfo blocks+  st <- get   let before = if null (writerIncludeBefore options)                   then empty                   else text (writerIncludeBefore options)   let after  = if null (writerIncludeAfter options)                   then empty                   else text (writerIncludeAfter options)-  let body = before $$ main $$ after-  -- XXX toc untested-  let toc  =  if writerTableOfContents options-                 then text "@contents"-                 else empty -  let foot = if writerStandalone options-                then text "@bye"-                else empty -  return $ head' $$ toc $$ body $$ foot---- | Insert bibliographic information into Texinfo header.-texinfoHeader :: WriterOptions -- ^ Options, including Texinfo header-              -> Meta          -- ^ Meta with bibliographic information-              -> State WriterState Doc-texinfoHeader options (Meta title authors date) = do-  titletext <- if null title-                  then return empty-                  else do-                    t <- inlineListToTexinfo title-                    return $ text "@title " <> t-  headerIncludes <- get >>= return . S.toList . stIncludes-  let extras = text $ unlines headerIncludes-  let authorstext = map makeAuthor authors-  let datetext  = if date == ""-                     then empty -                     else text $ stringToTexinfo date--  let baseHeader = case writerHeader options of-                         ""  -> empty-                         x   -> text x-  let header     = text "@documentencoding utf-8" $$ baseHeader $$ extras-  return $ text "\\input texinfo" $$-           header $$-	   text "@ifnottex" $$-	   text "@paragraphindent 0" $$-	   text "@end ifnottex" $$-           text "@titlepage" $$-           titletext $$ vcat authorstext $$-           datetext $$-           text "@end titlepage"--makeAuthor :: String -> Doc-makeAuthor author = text $ "@author " ++ (stringToTexinfo author)+  let body = render $ before $$ main $$ after+  let context = writerVariables options +++                [ ("body", body)+                , ("title", render titleText)+                , ("date", render dateText) ] +++                [ ("toc", "yes") | writerTableOfContents options ] +++                [ ("titlepage", "yes") | titlePage ] +++                [ ("subscript", "yes") | stSubscript st ] +++                [ ("superscript", "yes") | stSuperscript st ] +++                [ ("strikeout", "yes") | stStrikeout st ] +++                [ ("author", render a) | a <- authorsText ]+  if writerStandalone options+     then return $ renderTemplate context $ writerTemplate options+     else return body  -- | Escape things as needed for Texinfo. stringToTexinfo :: String -> String@@ -395,33 +363,17 @@   inlineListToTexinfo lst >>= return . inCmd "strong"   inlineToTexinfo (Strikeout lst) = do-  addToHeader $ "@macro textstrikeout{text}\n" ++-                "~~\\text\\~~\n" ++-                "@end macro\n"+  modify $ \st -> st{ stStrikeout = True }   contents <- inlineListToTexinfo lst   return $ text "@textstrikeout{" <> contents <> text "}"  inlineToTexinfo (Superscript lst) = do-  addToHeader $ "@macro textsuperscript{text}\n" ++-                "@iftex\n" ++-                "@textsuperscript{\\text\\}\n" ++-                "@end iftex\n" ++-                "@ifnottex\n" ++-                "^@{\\text\\@}\n" ++-                "@end ifnottex\n" ++-                "@end macro\n"+  modify $ \st -> st{ stSuperscript = True }   contents <- inlineListToTexinfo lst   return $ text "@textsuperscript{" <> contents <> char '}'  inlineToTexinfo (Subscript lst) = do-  addToHeader $ "@macro textsubscript{text}\n" ++-                "@iftex\n" ++-                "@textsubscript{\\text\\}\n" ++-                "@end iftex\n" ++-                "@ifnottex\n" ++-                "_@{\\text\\@}\n" ++-                "@end ifnottex\n" ++-                "@end macro\n"+  modify $ \st -> st{ stSubscript = True }   contents <- inlineListToTexinfo lst   return $ text "@textsubscript{" <> contents <> char '}' 
src/Text/Pandoc/XML.hs view
@@ -53,12 +53,11 @@                        '<'    -> "&lt;"                        '>'    -> "&gt;"                        '"'    -> "&quot;"-                       '\160' -> "&#160;"                        c      -> [c]  -- | True if the character needs to be escaped. needsEscaping :: Char -> Bool-needsEscaping c = c `elem` "&<>\"\160"+needsEscaping c = c `elem` "&<>\""  -- | Escape string as needed for XML.  Entity references are not preserved. escapeStringForXML :: String -> String
src/hsmarkdown.hs view
@@ -1,4 +1,3 @@-{-# LANGUAGE CPP #-} {- Copyright (C) 2006-8 John MacFarlane <jgm@berkeley.edu> @@ -30,8 +29,13 @@ module Main where import System.Process import System.Environment ( getArgs )+-- Note: ghc >= 6.12 (base >=4.2) supports unicode through iconv+-- So we use System.IO.UTF8 only if we have an earlier version+#if MIN_VERSION_base(4,2,0)+#else import Prelude hiding ( putStr, putStrLn, writeFile, readFile, getContents ) import System.IO.UTF8+#endif import Control.Monad (forM_)  main :: IO ()
src/markdown2pdf.hs view
@@ -3,14 +3,20 @@ import Data.List (isInfixOf, intercalate, isPrefixOf) import Data.Maybe (isNothing) -import Control.Monad (unless, guard)+import Control.Monad (unless, guard, when) import Control.Exception (tryJust, bracket)  import System.IO (stderr) import System.IO.Error (isDoesNotExistError) import System.Environment ( getArgs, getProgName )+-- Note: ghc >= 6.12 (base >=4.2) supports unicode through iconv+-- So we use System.IO.UTF8 only if we have an earlier version+#if MIN_VERSION_base(4,2,0)+import System.IO (hPutStrLn)+#else import Prelude hiding ( putStr, putStrLn, writeFile, readFile, getContents ) import System.IO.UTF8+#endif import System.Exit (ExitCode (..), exitWith) import System.FilePath import System.Directory@@ -28,7 +34,7 @@ parsePandocArgs :: [String] -> IO (Maybe ([String], String)) parsePandocArgs args = do   result <- run "pandoc" $ ["--dump-args"] ++ args-  return $ either (const Nothing) (parse . map trim . lines) result+  return $ either error (parse . map trim . lines) result   where parse []         = Nothing         parse ("-":[])   = Just ([], "stdin") -- no output or input         parse ("-":x:xs) = Just (x:xs, dropExtension x) -- no output@@ -37,17 +43,17 @@         trim = takeWhile (/='\r') . dropWhile (=='\r')  runPandoc :: [String] -> FilePath -> IO (Either String FilePath)-runPandoc inputs output = do+runPandoc inputsAndArgs output = do   let texFile = replaceExtension output "tex"   result <- run "pandoc" $     ["-s", "--no-wrap", "-r", "markdown", "-w", "latex"]-    ++ inputs ++ ["-o", texFile]+    ++ inputsAndArgs ++ ["-o", texFile]   return $ either Left (const $ Right texFile) result -runLatexRaw :: FilePath -> IO (Either (Either String String) FilePath)-runLatexRaw file = do+runLatexRaw :: String -> FilePath -> IO (Either (Either String String) FilePath)+runLatexRaw latexProgram file = do   -- we ignore the ExitCode because pdflatex always fails the first time-  run "pdflatex" ["-interaction=batchmode", "-output-directory",+  run latexProgram ["-interaction=batchmode", "-output-directory",     takeDirectory file, dropExtension file] >> return ()   let pdfFile = replaceExtension file "pdf"   let logFile = replaceExtension file "log"@@ -61,11 +67,11 @@     (False, _    , True, msg) -> return $ Left $ Right msg  -- references     (False, False, False, _ ) -> return $ Right pdfFile     -- success -runLatex :: FilePath -> IO (Either String FilePath)-runLatex file = step 3+runLatex :: String -> FilePath -> IO (Either String FilePath)+runLatex latexProgram file = step 3   where   step n = do-    result <- runLatexRaw file+    result <- runLatexRaw latexProgram file     case result of       Left (Left err) -> return $ Left err       Left (Right _) | n > 1  -> step (n-1 :: Int)@@ -79,13 +85,13 @@   xs `oneOf` x = any (flip isInfixOf x) xs   msgs = filter (oneOf ["Error:", "Warning:"]) (lines txt)   tips = checkPackages msgs-  err = any (oneOf ["LaTeX Error:", "Latex Error:"]) msgs+  err = any (oneOf ["!", "LaTeX Error:", "Latex Error:"]) msgs   bib = any (oneOf ["Warning: Citation"                    ,"Warning: There were undefined citations"]) msgs   ref = any (oneOf ["Warning: Reference"                    ,"Warning: Label"                    ,"Warning: There were undefined references"-                   ,"--toc", "--table-of-contents"]) msgs+                   ]) msgs  checkPackages :: [String] -> [String] checkPackages = concatMap chks@@ -145,20 +151,16 @@    -- run computation   $ \tmp -> do-    -- check for executable files-    let execs = ["pandoc", "pdflatex", "bibtex"]-    paths <- mapM findExecutable execs-    let miss = map snd $ filter (isNothing . fst) $ zip paths execs-    unless (null miss) $ exit $! "Could not find " ++ intercalate ", " miss     args <- getArgs     -- check for invalid arguments and print help message if needed-    let goodopts = ["-f","-r","-N", "-p","-R","-H","-B","-A", "-C","-o"]+    let goodopts = ["-f","-r","-N", "-p","-R","-H","-B","-A", "-C","-o","-V"]     let goodoptslong = ["--from","--read","--strict",                    "--preserve-tabs","--tab-stop","--parse-raw",-                   "--toc","--table-of-contents",+                   "--toc","--table-of-contents", "--xetex",                    "--number-sections","--include-in-header",                    "--include-before-body","--include-after-body",-                   "--custom-header","--output"]+                   "--custom-header","--output",+                   "--template", "--variable"]     let isOpt ('-':_) = True         isOpt _       = False     let opts = filter isOpt args@@ -172,6 +174,15 @@                filter (\l -> any (`isInfixOf` l) goodoptslong) $ lines out       exitWith code +    -- check for executable files+    let latexProgram = if "--xetex" `elem` opts+                          then "xelatex"+                          else "pdflatex"+    let execs = ["pandoc", latexProgram, "bibtex"]+    paths <- mapM findExecutable execs+    let miss = map snd $ filter (isNothing . fst) $ zip paths execs+    unless (null miss) $ exit $! "Could not find " ++ intercalate ", " miss+     -- parse arguments     -- if no input given, use 'stdin'     pandocArgs <- parsePandocArgs args@@ -190,7 +201,9 @@       Left err -> exit err       Right texFile  -> do         -- run pdflatex-        latexRes <- runLatex texFile+        when ("--toc" `elem` opts || "--table-of-contents" `elem` opts) $+          runLatex latexProgram texFile >> return () -- toc requires extra run+        latexRes <- runLatex latexProgram texFile         case latexRes of           Left err      -> exit err           Right pdfFile -> do
src/pandoc.hs view
@@ -1,4 +1,3 @@-{-# LANGUAGE CPP #-} {- Copyright (C) 2006-8 John MacFarlane <jgm@berkeley.edu> @@ -32,7 +31,9 @@ module Main where import Text.Pandoc import Text.Pandoc.ODT-import Text.Pandoc.Shared ( HTMLMathMethod (..), tabFilter, ObfuscationMethod (..) )+import Text.Pandoc.Writers.S5 (s5HeaderIncludes)+import Text.Pandoc.LaTeXMathML (latexMathMLScript)+import Text.Pandoc.Shared ( tabFilter, ObfuscationMethod (..) ) #ifdef _HIGHLIGHTING import Text.Pandoc.Highlighting ( languages ) #endif@@ -43,9 +44,15 @@ import Data.Maybe ( fromMaybe ) import Data.Char ( toLower ) import Data.List ( intercalate, isSuffixOf )-import Prelude hiding ( putStr, putStrLn, writeFile, readFile, getContents ) import System.IO ( stdout, stderr )+-- Note: ghc >= 6.12 (base >=4.2) supports unicode through iconv+-- So we use System.IO.UTF8 only if we have an earlier version+#if MIN_VERSION_base(4,2,0)+import System.IO ( hPutStr, hPutStrLn )+#else+import Prelude hiding ( putStr, putStrLn, writeFile, readFile, getContents ) import System.IO.UTF8+#endif #ifdef _CITEPROC import Text.CSL import Text.Pandoc.Biblio@@ -96,26 +103,26 @@ readPandoc :: ParserState -> String -> Pandoc readPandoc _ = read --- | Association list of formats and pairs of writers and default headers.-writers :: [ ( String, ( WriterOptions -> Pandoc -> String, String ) ) ]-writers = [("native"       , (writeDoc, ""))-          ,("html"         , (writeHtmlString, ""))-          ,("html+lhs"     , (writeHtmlString, ""))-          ,("s5"           , (writeS5String, defaultS5Header))-          ,("docbook"      , (writeDocbook, defaultDocbookHeader))-          ,("opendocument" , (writeOpenDocument, defaultOpenDocumentHeader))-          ,("odt"          , (writeOpenDocument, defaultOpenDocumentHeader))-          ,("latex"        , (writeLaTeX, defaultLaTeXHeader))-          ,("latex+lhs"    , (writeLaTeX, defaultLaTeXHeader))-          ,("context"      , (writeConTeXt, defaultConTeXtHeader))-          ,("texinfo"      , (writeTexinfo, ""))-          ,("man"          , (writeMan, ""))-          ,("markdown"     , (writeMarkdown, ""))-          ,("markdown+lhs" , (writeMarkdown, ""))-          ,("rst"          , (writeRST, ""))-          ,("rst+lhs"      , (writeRST, ""))-          ,("mediawiki"    , (writeMediaWiki, ""))-          ,("rtf"          , (writeRTF, defaultRTFHeader))+-- | Association list of formats and writers.+writers :: [ ( String, WriterOptions -> Pandoc -> String ) ]+writers = [("native"       , writeDoc)+          ,("html"         , writeHtmlString)+          ,("html+lhs"     , writeHtmlString)+          ,("s5"           , writeS5String)+          ,("docbook"      , writeDocbook)+          ,("opendocument" , writeOpenDocument)+          ,("odt"          , writeOpenDocument)+          ,("latex"        , writeLaTeX)+          ,("latex+lhs"    , writeLaTeX)+          ,("context"      , writeConTeXt)+          ,("texinfo"      , writeTexinfo)+          ,("man"          , writeMan)+          ,("markdown"     , writeMarkdown)+          ,("markdown+lhs" , writeMarkdown)+          ,("rst"          , writeRST)+          ,("rst+lhs"      , writeRST)+          ,("mediawiki"    , writeMediaWiki)+          ,("rtf"          , writeRTF)           ]  isNonTextOutput :: String -> Bool@@ -133,18 +140,18 @@     , optReader            :: String  -- ^ Reader format     , optWriter            :: String  -- ^ Writer format     , optParseRaw          :: Bool    -- ^ Parse unconvertable HTML and TeX-    , optCSS               :: [String] -- ^ CSS file to link to     , optTableOfContents   :: Bool    -- ^ Include table of contents-    , optIncludeInHeader   :: String  -- ^ File to include in header-    , optIncludeBeforeBody :: String  -- ^ File to include at top of body-    , optIncludeAfterBody  :: String  -- ^ File to include at end of body-    , optCustomHeader      :: String  -- ^ Custom header to use, or "DEFAULT"-    , optTitlePrefix       :: String  -- ^ Optional prefix for HTML title+    , optTemplate          :: String  -- ^ Custom template+    , optVariables         :: [(String,String)] -- ^ Template variables to set+    , optBefore            :: [String] -- ^ Texts to include before body+    , optAfter             :: [String] -- ^ Texts to include after body     , optOutputFile        :: String  -- ^ Name of output file     , optNumberSections    :: Bool    -- ^ Number sections in LaTeX     , optIncremental       :: Bool    -- ^ Use incremental lists in S5+    , optXeTeX             :: Bool    -- ^ Format latex for xetex     , optSmart             :: Bool    -- ^ Use smart typography     , optHTMLMathMethod    :: HTMLMathMethod -- ^ Method to print HTML math+    , optReferenceODT      :: Maybe FilePath -- ^ Path of reference.odt     , optDumpArgs          :: Bool    -- ^ Output command-line arguments     , optIgnoreArgs        :: Bool    -- ^ Ignore command-line arguments     , optStrict            :: Bool    -- ^ Use strict markdown syntax@@ -171,18 +178,18 @@     , optReader            = ""    -- null for default reader     , optWriter            = ""    -- null for default writer     , optParseRaw          = False-    , optCSS               = []     , optTableOfContents   = False-    , optIncludeInHeader   = ""-    , optIncludeBeforeBody = ""-    , optIncludeAfterBody  = ""-    , optCustomHeader      = "DEFAULT"-    , optTitlePrefix       = ""+    , optTemplate          = ""+    , optVariables         = []+    , optBefore            = []+    , optAfter             = []     , optOutputFile        = "-"    -- "-" means stdout     , optNumberSections    = False     , optIncremental       = False+    , optXeTeX             = False     , optSmart             = False     , optHTMLMathMethod    = PlainMath+    , optReferenceODT      = Nothing     , optDumpArgs          = False     , optIgnoreArgs        = False     , optStrict            = False@@ -260,8 +267,8 @@      , Option "m" ["latexmathml", "asciimathml"]                  (OptArg-                  (\arg opt -> return opt { optHTMLMathMethod =-                                               LaTeXMathML arg })+                  (\arg opt ->+                      return opt { optHTMLMathMethod = LaTeXMathML arg })                   "URL")                  "" -- "Use LaTeXMathML script in html output" @@ -288,6 +295,11 @@                   (\opt -> return opt { optIncremental = True }))                  "" -- "Make list items display incrementally in S5" +    , Option "" ["xetex"]+                 (NoArg+                  (\opt -> return opt { optXeTeX = True }))+                 "" -- "Format latex for processing by XeTeX"+     , Option "N" ["number-sections"]                  (NoArg                   (\opt -> return opt { optNumberSections = True }))@@ -334,21 +346,45 @@                  (\opt -> return opt { optTableOfContents = True }))                "" -- "Include table of contents" +    , Option "" ["template"]+                 (ReqArg+                  (\arg opt -> do+                     text <- readFile arg+                     return opt{ optTemplate = text,+                                 optStandalone = True })+                  "FILENAME")+                 "" -- "Use custom template"++    , Option "V" ["variable"]+                 (ReqArg+                  (\arg opt ->+                     case break (`elem` ":=") arg of+                          (k,_:v) -> do+                            let newvars = optVariables opt ++ [(k,v)]+                            return opt{ optVariables = newvars }+                          _  -> do+                            hPutStrLn stderr $ "Could not parse `" ++ arg ++ "' as a key/value pair (k=v or k:v)"+                            exitWith $ ExitFailure 17)+                  "FILENAME")+                 "" -- "Use custom template"+     , Option "c" ["css"]                  (ReqArg                   (\arg opt -> do-                     let old = optCSS opt-                     return opt { optCSS = old ++ [arg],+                     -- add new link to end, so it is included in proper order+                     let newvars = optVariables opt ++ [("css",arg)]+                     return opt { optVariables = newvars,                                   optStandalone = True })-                  "CSS")+                  "URL")                  "" -- "Link to CSS style sheet"      , Option "H" ["include-in-header"]                  (ReqArg                   (\arg opt -> do-                     let old = optIncludeInHeader opt                      text <- readFile arg-                     return opt { optIncludeInHeader = old ++ text,+                     -- add new ones to end, so they're included in order specified+                     let newvars = optVariables opt ++ [("header-includes",text)]+                     return opt { optVariables = newvars,                                   optStandalone = True })                   "FILENAME")                  "" -- "File to include at end of header (implies -s)"@@ -356,18 +392,20 @@     , Option "B" ["include-before-body"]                  (ReqArg                   (\arg opt -> do-                     let old = optIncludeBeforeBody opt                      text <- readFile arg-                     return opt { optIncludeBeforeBody = old ++ text })+                     let oldBefore = optBefore opt+                     -- add new text to end, so it is included in proper order+                     return opt { optBefore =  oldBefore ++ [text] })                   "FILENAME")                  "" -- "File to include before document body"      , Option "A" ["include-after-body"]                  (ReqArg                   (\arg opt -> do-                     let old = optIncludeAfterBody opt                      text <- readFile arg-                     return opt { optIncludeAfterBody = old ++ text })+                     let oldAfter = optAfter opt+                     -- add new text to end, so it is included in proper order+                     return opt { optAfter = oldAfter ++ [text]})                   "FILENAME")                  "" -- "File to include after document body" @@ -375,28 +413,38 @@                  (ReqArg                   (\arg opt -> do                      text <- readFile arg-                     return opt { optCustomHeader = text,-                                  optStandalone = True })+                     let newVars = ("legacy-header", text) : optVariables opt+                     return opt { optVariables = newVars+                                , optStandalone = True })                   "FILENAME")                  "" -- "File to use for custom header (implies -s)"      , Option "T" ["title-prefix"]                  (ReqArg-                  (\arg opt -> return opt { optTitlePrefix = arg,-                                            optStandalone = True })+                  (\arg opt -> do+                    let newvars = ("title-prefix", arg) : optVariables opt+                    return opt { optVariables = newvars,+                                 optStandalone = True })                   "STRING")                  "" -- "String to prefix to HTML window title" -    , Option "D" ["print-default-header"]+    , Option "" ["reference-odt"]                  (ReqArg+                  (\arg opt -> do+                    return opt { optReferenceODT = Just arg })+                  "FILENAME")+                 "" -- "Path of custom reference.odt"++    , Option "D" ["print-default-template"]+                 (ReqArg                   (\arg _ -> do-                     let header = case (lookup arg writers) of-                           Just (_, h) -> h-                           Nothing     -> error ("Unknown reader: " ++ arg)-                     hPutStr stdout header+                     templ <- getDefaultTemplate arg+                     case templ of+                          Right t -> hPutStr stdout t+                          Left e  -> error $ show e                      exitWith ExitSuccess)                   "FORMAT")-                 "" -- "Print default header for FORMAT"+                 "" -- "Print default template for FORMAT" #ifdef _CITEPROC     , Option "" ["biblio"]                  (ReqArg@@ -510,8 +558,8 @@    unless (null errors) $     do name <- getProgName-       mapM_ (\e -> hPutStrLn stderr e) errors-       hPutStr stderr (usageMessage name options)+       mapM_ (\e -> hPutStr stderr (name ++ ": ") >> hPutStr stderr e) errors+       hPutStrLn stderr $ "Try " ++ name ++ " --help for more information."        exitWith $ ExitFailure 2    let defaultOpts' = if compatMode@@ -529,18 +577,18 @@               , optReader            = readerName               , optWriter            = writerName               , optParseRaw          = parseRaw-              , optCSS               = css+              , optVariables         = variables+              , optBefore            = befores+              , optAfter             = afters               , optTableOfContents   = toc-              , optIncludeInHeader   = includeHeader-              , optIncludeBeforeBody = includeBefore-              , optIncludeAfterBody  = includeAfter-              , optCustomHeader      = customHeader-              , optTitlePrefix       = titlePrefix+              , optTemplate          = template               , optOutputFile        = outputFile               , optNumberSections    = numberSections               , optIncremental       = incremental+              , optXeTeX             = xetex               , optSmart             = smart               , optHTMLMathMethod    = mathMethod+              , optReferenceODT      = referenceODT               , optDumpArgs          = dumpArgs               , optIgnoreArgs        = ignoreArgs               , optStrict            = strict@@ -562,6 +610,13 @@        mapM_ (\arg -> hPutStrLn stdout arg) args        exitWith ExitSuccess +  -- warn about deprecated options+  case lookup "legacy-header" variables of+     Just _  -> hPutStrLn stderr $+       "Warning: The -C/--custom-header is deprecated.\n" +++       "Please transition to using --template instead."+     Nothing -> return ()+   let sources = if ignoreArgs then [] else args    -- assign reader and writer based on options and filenames@@ -577,10 +632,15 @@      Just r  -> return r      Nothing -> error ("Unknown reader: " ++ readerName') -  (writer, defaultHeader) <- case (lookup writerName' writers) of-     Just (w,h) -> return (w, h)-     Nothing    -> error ("Unknown writer: " ++ writerName')+  writer <- case (lookup writerName' writers) of+     Just r  -> return r+     Nothing -> error ("Unknown writer: " ++ writerName') +  templ <- getDefaultTemplate writerName'+  let defaultTemplate = case templ of+                             Right t -> t+                             Left  e -> error (show e)+   environment <- getEnvironment   let columns = case lookup "COLUMNS" environment of                  Just cols -> read cols@@ -592,6 +652,18 @@   refs <- if null biblioFile then return [] else readBiblioFile biblioFile biblioFormat #endif +  variables' <- if writerName' == "s5" && standalone'+                   then do+                     inc <- s5HeaderIncludes+                     return $ ("header-includes", inc) : variables+                   else return variables++  variables'' <- case mathMethod of+                      LaTeXMathML Nothing -> do+                         s <- latexMathMLScript+                         return $ ("latexmathml-script", s) : variables'+                      _ -> return variables'+   let startParserState =          defaultParserState { stateParseRaw        = parseRaw,                               stateTabStop         = tabStop,@@ -607,28 +679,22 @@                               stateColumns         = columns,                               stateStrict          = strict,                               stateIndentedCodeClasses = codeBlockClasses }-  let csslink = if null css-                   then ""-                   else concatMap-                        (\f -> "<link rel=\"stylesheet\" href=\"" ++-                               f ++ "\" type=\"text/css\" media=\"all\" />\n")-                        css-  let header = (if customHeader == "DEFAULT"-                   then defaultHeader-                   else customHeader) ++ csslink ++ includeHeader   let writerOptions = WriterOptions { writerStandalone       = standalone',-                                      writerHeader           = header,-                                      writerTitlePrefix      = titlePrefix,+                                      writerTemplate         = if null template+                                                                  then defaultTemplate+                                                                  else template,+                                      writerVariables        = variables'',+                                      writerIncludeBefore    = concat befores,+                                      writerIncludeAfter     = concat afters,                                       writerTabStop          = tabStop,                                       writerTableOfContents  = toc &&                                                                writerName' /= "s5",                                       writerHTMLMathMethod   = mathMethod,                                       writerS5               = (writerName' == "s5"),+                                      writerXeTeX            = xetex,                                       writerIgnoreNotes      = False,                                       writerIncremental      = incremental,                                       writerNumberSections   = numberSections,-                                      writerIncludeBefore    = includeBefore,-                                      writerIncludeAfter     = includeAfter,                                       writerStrictMarkdown   = strict,                                       writerReferenceLinks   = referenceLinks,                                       writerWrapText         = wrap,@@ -665,9 +731,9 @@ #endif    let writerOutput = writer writerOptions doc' ++ "\n"-+    case writerName' of-       "odt"   -> saveOpenDocumentAsODT outputFile sourceDirRelative writerOutput+       "odt"   -> saveOpenDocumentAsODT outputFile sourceDirRelative referenceODT writerOutput        _       -> if outputFile == "-"                      then putStr writerOutput                      else writeFile outputFile writerOutput
+ templates/context.template view
@@ -0,0 +1,93 @@+$if(legacy-header)$+$legacy-header$+$else$+\enableregime[utf]  % use UTF-8++\setupcolors[state=start]+\setupinteraction[state=start, color=middleblue] % needed for hyperlinks++\setuppapersize[letter][letter]  % use letter paper+\setuplayout[width=middle, backspace=1.5in, cutspace=1.5in,+             height=middle, header=0.75in, footer=0.75in] % page layout+\setuppagenumbering[location={footer,center}]  % number pages+\setupbodyfont[11pt]  % 11pt font+\setupwhitespace[medium]  % inter-paragraph spacing++\setuphead[section][style=\tfc]+\setuphead[subsection][style=\tfb]+\setuphead[subsubsection][style=\bf]++% define title block commands+\unprotect+\def\doctitle#1{\gdef\@title{#1}}+\def\author#1{\gdef\@author{#1}}+\def\date#1{\gdef\@date{#1}}+\date{\currentdate}  % Default to today unless specified otherwise.+\def\maketitle{%+  \startalignment[center]+    \blank[2*big]+      {\tfd \@title}+    \blank[3*medium]+      {\tfa \@author}+    \blank[2*medium]+      {\tfa \@date}+    \blank[3*medium]+  \stopalignment}+\protect++% define descr (for definition lists)+\definedescription[descr][+  headstyle=bold,style=normal,align=left,location=hanging,+  width=broad,margin=1cm]++% prevent orphaned list intros+\setupitemize[autointro]++% define defaults for bulleted lists +\setupitemize[1][symbol=1][indentnext=no]+\setupitemize[2][symbol=2][indentnext=no]+\setupitemize[3][symbol=3][indentnext=no]+\setupitemize[4][symbol=4][indentnext=no]++\setupthinrules[width=15em]  % width of horizontal rules++% for block quotations+\unprotect++\startvariables all+blockquote: blockquote+\stopvariables++\definedelimitedtext+[\v!blockquote][\v!quotation]++\setupdelimitedtext+[\v!blockquote]+[\c!left=,+\c!right=,+before={\blank[medium]},+after={\blank[medium]},+]++\protect+$endif$+$for(header-includes)$+$header-includes$+$endfor$++$if(title)$+\doctitle{$title$}+$endif$+\author{$for(author)$$author$$sep$\\$endfor$}+$if(date)$+\date{$date$}+$endif$+\starttext+\maketitle+$if(toc)$+\placecontent+$endif$++$body$++\stoptext
+ templates/docbook.template view
@@ -0,0 +1,22 @@+$if(legacy-header)$+$legacy-header$+$else$+<?xml version="1.0" encoding="utf-8" ?>+<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"+                  "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">+$endif$+<article>+  <articleinfo>+    <title>$title$</title>+$for(author)$+    <author>+      $author$+    </author>+$endfor$+$if(date)$+    <date>$date$</date>+$endif$+  </articleinfo>+$body$+</article>+
+ templates/html.template view
@@ -0,0 +1,52 @@+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">+<html xmlns="http://www.w3.org/1999/xhtml">+<head>+  <title>$if(title-prefix)$$title-prefix$ - $endif$$if(pagetitle)$$pagetitle$$endif$</title>+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />+  <meta name="generator" content="pandoc" />+$for(author)$+  <meta name="author" content="$author$" />+$endfor$+  <meta name="date" content="$date$" />+$if(highlighting)$+  <style type="text/css">+    table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode, table.sourceCode pre { margin: 0; padding: 0; border: 0; vertical-align: baseline; border: none; }+    td.lineNumbers { border-right: 1px solid #AAAAAA; text-align: right; color: #AAAAAA; padding-right: 5px; padding-left: 5px; }+    td.sourceCode { padding-left: 5px; }+    pre.sourceCode { }+    pre.sourceCode span.Normal { }+    pre.sourceCode span.Keyword { color: #007020; font-weight: bold; } +    pre.sourceCode span.DataType { color: #902000; }+    pre.sourceCode span.DecVal { color: #40a070; }+    pre.sourceCode span.BaseN { color: #40a070; }+    pre.sourceCode span.Float { color: #40a070; }+    pre.sourceCode span.Char { color: #4070a0; }+    pre.sourceCode span.String { color: #4070a0; }+    pre.sourceCode span.Comment { color: #60a0b0; font-style: italic; }+    pre.sourceCode span.Others { color: #007020; }+    pre.sourceCode span.Alert { color: red; font-weight: bold; }+    pre.sourceCode span.Function { color: #06287e; }+    pre.sourceCode span.RegionMarker { }+    pre.sourceCode span.Error { color: red; font-weight: bold; }+  </style>+$endif$+$for(css)$+  <link rel="stylesheet" href="$css$" type="text/css" />+$endfor$+$for(header-includes)$+  $header-includes$+$endfor$+$if(latexmathml-script)$+  $latexmathml-script$+$endif$+</head>+<body>+$if(title)$+<h1 class="title">$title$</h1>+$endif$+$if(toc)$+$toc$+$endif$+$body$+</body>+</html>
+ templates/latex.template view
@@ -0,0 +1,83 @@+$if(legacy-header)$+$legacy-header$+$else$+\documentclass{article}+\usepackage{amsmath}+$if(xetex)$+\usepackage{ifxetex}+\ifxetex+  \usepackage{fontspec,xltxtra,xunicode}+  \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}+\else+  \usepackage[mathletters]{ucs}+  \usepackage[utf8x]{inputenc}+\fi+$else$+\usepackage[mathletters]{ucs}+\usepackage[utf8x]{inputenc}+$endif$+$if(lhs)$+\usepackage{listings}+\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{}+$endif$+\setlength{\parindent}{0pt}+\setlength{\parskip}{6pt plus 2pt minus 1pt}+$endif$+$if(verbatim-in-note)$+\usepackage{fancyvrb}+$endif$+$if(fancy-enums)$+\usepackage{enumerate}+$endif$+$if(tables)$+\usepackage{array}+% This is needed because raggedright in table elements redefines \\:+\newcommand{\PreserveBackslash}[1]{\let\temp=\\#1\let\\=\temp}+\let\PBS=\PreserveBackslash+$endif$+$if(strikeout)$+\usepackage[normalem]{ulem}+$endif$+$if(subscript)$+\newcommand{\textsubscr}[1]{\ensuremath{_{\scriptsize\textrm{#1}}}}+$endif$+$if(links)$+\usepackage[breaklinks=true]{hyperref}+$endif$+$if(url)$+\usepackage{url}+$endif$+$if(graphics)$+\usepackage{graphicx}+$endif$+$if(numbersections)$+$else$+\setcounter{secnumdepth}{0}+$endif$+$if(verbatim-in-note)$+\VerbatimFootnotes % allows verbatim text in footnotes+$endif$+$for(header-includes)$+$header-includes$+$endfor$++$if(title)$+\title{$title$}+$endif$+\author{$for(author)$$author$$sep$\\$endfor$}+$if(date)$+\date{$date$}+$endif$++\begin{document}+$if(title)$+\maketitle+$endif$++$if(toc)$+\tableofcontents++$endif$+$body$++\end{document}
+ templates/man.template view
@@ -0,0 +1,12 @@+$if(has-tables)$+.\"t+$endif$+.TH $title$ $section$ "$date$" $description$+$for(header-includes)$+$header-includes$+$endfor$+$body$+$if(author)$+.SH AUTHORS+$for(author)$$author$$sep$; $endfor$.+$endif$
+ templates/markdown.template view
@@ -0,0 +1,15 @@+$if(titleblock)$+% $title$+% $for(author)$$author$$sep$; $endfor$+% $date$++$endif$+$for(header-includes)$+$header-includes$++$endfor$+$if(toc)$+$toc$++$endif$+$body$
+ templates/mediawiki.template view
@@ -0,0 +1,8 @@+$if(legacy-header)$+$legacy-header$+$endif$+$if(toc)$+__TOC__++$endif$+$body$
+ templates/opendocument.template view
@@ -0,0 +1,21 @@+<?xml version="1.0" encoding="utf-8" ?>+<office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" office:version="1.0">+  $automatic-styles$+$for(header-includes)$+  $header-includes$+$endfor$  +<office:body>+<office:text>+$if(title)$+<text:h text:style-name="Heading_20_1" text:outline-level="1">$title$</text:h>+$endif$+$for(author)$+<text:p text:style-name="Author">$author$</text:p>+$endfor$+$if(date)$+<text:p text:style-name="Date">$date$</text:p>+$endif$+$body$+</office:text>+</office:body>+</office:document-content>
+ templates/rst.template view
@@ -0,0 +1,31 @@+$if(title)$+$title$++$endif$+$for(author)$+:Author: $author$+$endfor$+$if(date)$+:Date:   $date$+$endif$+$if(author)$++$else$+$if(date)$++$endif$+$endif$+$if(math)$+.. role:: math(raw)+   :format: html latex++$endif$+$if(toc)$+.. contents::++$endif$+$for(header-includes)$+$header-includes$++$endfor$+$body$
+ templates/rtf.template view
@@ -0,0 +1,25 @@+$if(legacy-header)$+$legacy-header$+$else$+{\rtf1\ansi\deff0{\fonttbl{\f0 \fswiss Helvetica;}{\f1 Courier;}}+{\colortbl;\red255\green0\blue0;\red0\green0\blue255;}+\widowctrl\hyphauto+$endif$+$for(header-includes)$+$header-includes$+$endfor$++$if(title)$+{\pard \qc \f0 \sa180 \li0 \fi0 \b \fs36 $title$\par}+$endif$+$for(author)$+{\pard \qc \f0 \sa180 \li0 \fi0  $author$\par}+$endfor$+$if(date)$+{\pard \qc \f0 \sa180 \li0 \fi0  $date$\par}+$endif$+$if(spacer)$+{\pard \ql \f0 \sa180 \li0 \fi0 \par}+$endif$+$body$+}
+ templates/texinfo.template view
@@ -0,0 +1,60 @@+$if(legacy-header)$+$legacy-header$+$else$+\input texinfo+@documentencoding utf-8+$endif$+$for(header-includes)$+$header-includes$+$endfor$++$if(strikeout)$+@macro textstrikeout{text}+~~\text\~~+@end macro++$endif$+$if(subscript)$+@macro textsubscript{text}+@iftex+@textsubscript{\text\}+@end iftex+@ifnottex+_@{\text\@}+@end ifnottex+@end macro++$endif$+$if(superscript)$+@macro textsuperscript{text}+@iftex+@textsuperscript{\text\}+@end iftex+@ifnottex+^@{\text\@}+@end ifnottex+@end macro++$endif$+@ifnottex+@paragraphindent 0+@end ifnottex+$if(titlepage)$+@titlepage+@title $title$+$for(author)$+@author $author$+$endfor$+$if(date)$+$date$+$endif$+@end titlepage++$endif$+$if(toc)$+@contents++$endif$+$body$++@bye
− tests/Diff.hs
@@ -1,76 +0,0 @@--------------------------------------------------------------------------------- |--- Module      :  Data.Algorithm.Diff--- Copyright   :  (c) Sterling Clover 2008--- License     :  BSD 3 Clause--- Maintainer  :  s.clover@gmail.com--- Stability   :  experimental--- Portability :  portable------ This is an implementation of the O(ND) diff algorithm as described in--- \"An O(ND) Difference Algorithm and Its Variations (1986)\"--- <http://citeseer.ist.psu.edu/myers86ond.html>. It is O(mn) in space.--- The algorithm is the same one used by standared Unix diff.--- The assumption is that users of this library will want to diff over--- interesting things or peform interesting tasks with the results--- (given that, otherwise, they would simply use the standard Unix diff--- utility). Thus no attempt is made to present a fancier API to aid--- in doing standard and uninteresting things with the results.--------------------------------------------------------------------------------module Diff (DI(..), getDiff, getGroupedDiff) where-import Data.Array-import Data.List---- | Difference Indicator. A value is either from the First list, the Second--- or from Both.-data DI = F | S | B deriving (Show, Eq)--data DL = DL {poi::Int, poj::Int, path::[DI]} deriving (Show, Eq)--instance Ord DL where x <= y = poi x <= poi y--canDiag :: (Eq a)  => [a] -> [a] -> Int -> Int -> (Int, Int) -> Bool-canDiag as bs lena lenb = \(i,j) ->-   if i < lena && j < lenb then arAs ! i == arBs ! j else False-    where arAs = listArray (0,lena - 1) as-          arBs = listArray (0,lenb - 1) bs--chunk :: Int -> [a] -> [[a]]-chunk x = unfoldr (\a -> case splitAt x a of ([],[]) -> Nothing; a' -> Just a')--dstep :: ((Int,Int)->Bool) -> [DL] -> [DL]-dstep cd dls = map maximum $ [hd]:(chunk 2 rst)-    where (hd:rst)  = concatMap extend dls-          extend dl = let pdl = path dl-                      in [addsnake cd $ dl {poi=poi dl + 1, path=(F : pdl)},-                          addsnake cd $ dl {poj=poj dl + 1, path=(S : pdl)}]--addsnake :: ((Int,Int)->Bool) -> DL -> DL-addsnake cd dl-    | cd (pi, pj) = addsnake cd $-                   dl {poi = pi + 1, poj = pj + 1, path=(B : path dl)}-    | otherwise   = dl-    where pi = poi dl; pj = poj dl--lcs :: (Eq a) => [a] -> [a] -> [DI]-lcs as bs = path . head . dropWhile (\dl -> poi dl /= lena || poj dl /= lenb) .-            concat . iterate (dstep cd) . (:[]) . addsnake cd $-            DL {poi=0,poj=0,path=[]}-            where cd = canDiag as bs lena lenb-                  lena = length as; lenb = length bs---- | Takes two lists and returns a list indicating the differences--- between them.-getDiff :: (Eq t) => [t] -> [t] -> [(DI, t)]-getDiff a b = markup a b . reverse $ lcs a b-    where markup (x:xs)   ys   (F:ds) = (F, x) : markup xs ys ds-          markup   xs   (y:ys) (S:ds) = (S, y) : markup xs ys ds-          markup (x:xs) (_:ys) (B:ds) = (B, x) : markup xs ys ds-          markup _ _ _ = []---- | Takes two lists and returns a list indicating the differences--- between them, grouped into chunks.-getGroupedDiff :: (Eq t) => [t] -> [t] -> [(DI, [t])]-getGroupedDiff a b = map go . groupBy (\x y -> fst x == fst y) $ getDiff a b-    where go ((d,x) : xs) = (d, x : map snd xs)
tests/RunTests.hs view
@@ -8,11 +8,13 @@ -- If the lhs argument is provided, tests for lhs support will be -- run.  These presuppose that pandoc has been compiled with the -- -fhighlighting flag, so these tests are not run by default.+--+-- This program assumes that the Diff package has been installed:+-- cabal install Diff  module Main where-import System.Exit import System.IO.UTF8-import System.IO ( openTempFile, stderr )+import System.IO ( openTempFile, stderr, stdout, hFlush ) import Prelude hiding ( putStrLn, putStr, readFile ) import System.Process ( runProcess, waitForProcess ) import System.FilePath ( (</>), (<.>) )@@ -20,7 +22,7 @@ import System.Environment import System.Exit import Text.Printf-import Diff+import Data.Algorithm.Diff  pandocPath :: FilePath pandocPath = ".." </> "dist" </> "build" </> "pandoc" </> "pandoc"@@ -143,11 +145,14 @@          -> FilePath                    -- ^ Norm (for test results) filepath          -> IO Bool runTest testname opts inp norm = do+  putStr $ printf "%-28s ---> " testname   (outputPath, hOut) <- openTempFile "" "pandoc-test"   let inpPath = inp   let normPath = norm+  hFlush stdout+  env <- getEnvironment  -- we need at least HOME so pandoc can find data files   -- Note: COLUMNS must be set for markdown table reader-  ph <- runProcess pandocPath (opts ++ [inpPath]) Nothing (Just [("COLUMNS", "80")]) Nothing (Just hOut) (Just stderr)+  ph <- runProcess pandocPath (opts ++ [inpPath]) Nothing (Just (("COLUMNS", "80"):env)) Nothing (Just hOut) (Just stderr)   ec <- waitForProcess ph   result  <- if ec == ExitSuccess                 then do@@ -159,5 +164,5 @@                      else return $ TestFailed $ getDiff (lines outputContents) (lines normContents)                 else return $ TestError ec   removeFile outputPath-  putStrLn $ printf "%-28s ---> %s" testname (show result)+  putStrLn (show result)   return (result == TestPassed)
tests/html-reader.native view
@@ -1,4 +1,4 @@-Pandoc (Meta [Str "Pandoc",Space,Str "Test",Space,Str "Suite"] [] "")+Pandoc (Meta [Str "Pandoc",Space,Str "Test",Space,Str "Suite"] [] []) [ Para [Str "This",Space,Str "is",Space,Str "a",Space,Str "set",Space,Str "of",Space,Str "tests",Space,Str "for",Space,Str "pandoc.",Space,Str "Most",Space,Str "of",Space,Str "them",Space,Str "are",Space,Str "adapted",Space,Str "from",Space,Str "John",Space,Str "Gruber's",Space,Str "markdown",Space,Str "test",Space,Str "suite."] , HorizontalRule , Header 1 [Str "Headers"]
tests/latex-reader.native view
@@ -1,4 +1,4 @@-Pandoc (Meta [Str "Pandoc",Space,Str "Test",Space,Str "Suite"] ["John MacFarlane","Anonymous"] "July 17, 2006")+Pandoc (Meta [Str "Pandoc",Space,Str "Test",Space,Str "Suite"] [[Str "John",Space,Str "MacFarlane"],[Str "Anonymous"]] [Str "July",Space,Str "17,",Space,Str "2006"]) [ Para [Str "This",Space,Str "is",Space,Str "a",Space,Str "set",Space,Str "of",Space,Str "tests",Space,Str "for",Space,Str "pandoc.",Space,Str "Most",Space,Str "of",Space,Str "them",Space,Str "are",Space,Str "adapted",Space,Str "from",Space,Str "John",Space,Str "Gruber",Apostrophe,Str "s",Space,Str "markdown",Space,Str "test",Space,Str "suite."] , HorizontalRule , Header 1 [Str "Headers"]
tests/lhs-test.html view
@@ -1,79 +1,77 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">-<html xmlns="http://www.w3.org/1999/xhtml"-><head-  ><title-    ></title-    ><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"-     /><meta name="generator" content="pandoc"-     /><style type="text/css"-    >-table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode, table.sourceCode pre -   { margin: 0; padding: 0; border: 0; vertical-align: baseline; border: none; }-td.lineNumbers { border-right: 1px solid #AAAAAA; text-align: right; color: #AAAAAA; padding-right: 5px; padding-left: 5px; }-td.sourceCode { padding-left: 5px; }-pre.sourceCode { }-pre.sourceCode span.Normal { }-pre.sourceCode span.Keyword { color: #007020; font-weight: bold; } -pre.sourceCode span.DataType { color: #902000; }-pre.sourceCode span.DecVal { color: #40a070; }-pre.sourceCode span.BaseN { color: #40a070; }-pre.sourceCode span.Float { color: #40a070; }-pre.sourceCode span.Char { color: #4070a0; }-pre.sourceCode span.String { color: #4070a0; }-pre.sourceCode span.Comment { color: #60a0b0; font-style: italic; }-pre.sourceCode span.Others { color: #007020; }-pre.sourceCode span.Alert { color: red; font-weight: bold; }-pre.sourceCode span.Function { color: #06287e; }-pre.sourceCode span.RegionMarker { }-pre.sourceCode span.Error { color: red; font-weight: bold; }-</style-    ></head-  ><body-  ><div id="lhs-test"-    ><h1-      >lhs test</h1-      ><p-      ><code-	>unsplit</code-	> is an arrow that takes a pair of values and combines them to return a single value:</p-      ><pre class="sourceCode haskell"-      ><code-	><span class="Function FunctionDefinition"-	  >unsplit ::</span-	  ><span class="Normal NormalText"-	  > (Arrow a) =&gt; (b -&gt; c -&gt; d) -&gt; a (b, c) d</span-	  ><br-	   /><span class="Normal NormalText"-	  >unsplit = arr . </span-	  ><span class="Function"-	  >uncurry</span-	  ><span class="Normal NormalText"-	  >       </span-	  ><br-	   /><span class="Normal NormalText"-	  >          </span-	  ><span class="Comment"-	  >-- arr (\op (x,y) -&gt; x `op` y) </span-	  ><br-	   /></code-	></pre-      ><p-      ><code-	>(***)</code-	> combines two arrows into a new arrow by running the two arrows on a pair of values (one arrow on the first item of the pair and one arrow on the second item of the pair).</p-      ><pre-      ><code-	>f *** g = first f &gt;&gt;&gt; second g+<html xmlns="http://www.w3.org/1999/xhtml">+<head>+  <title></title>+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />+  <meta name="generator" content="pandoc" />+  <meta name="date" content="" />+  <style type="text/css">+    table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode, table.sourceCode pre { margin: 0; padding: 0; border: 0; vertical-align: baseline; border: none; }+    td.lineNumbers { border-right: 1px solid #AAAAAA; text-align: right; color: #AAAAAA; padding-right: 5px; padding-left: 5px; }+    td.sourceCode { padding-left: 5px; }+    pre.sourceCode { }+    pre.sourceCode span.Normal { }+    pre.sourceCode span.Keyword { color: #007020; font-weight: bold; } +    pre.sourceCode span.DataType { color: #902000; }+    pre.sourceCode span.DecVal { color: #40a070; }+    pre.sourceCode span.BaseN { color: #40a070; }+    pre.sourceCode span.Float { color: #40a070; }+    pre.sourceCode span.Char { color: #4070a0; }+    pre.sourceCode span.String { color: #4070a0; }+    pre.sourceCode span.Comment { color: #60a0b0; font-style: italic; }+    pre.sourceCode span.Others { color: #007020; }+    pre.sourceCode span.Alert { color: red; font-weight: bold; }+    pre.sourceCode span.Function { color: #06287e; }+    pre.sourceCode span.RegionMarker { }+    pre.sourceCode span.Error { color: red; font-weight: bold; }+  </style>+</head>+<body>+<div id="lhs-test"+><h1+  >lhs test</h1+  ><p+  ><code+    >unsplit</code+    > is an arrow that takes a pair of values and combines them to return a single value:</p+  ><pre class="sourceCode haskell"+  ><code+    ><span class="Function FunctionDefinition"+      >unsplit ::</span+      ><span class="Normal NormalText"+      > (Arrow a) =&gt; (b -&gt; c -&gt; d) -&gt; a (b, c) d</span+      ><br+       /><span class="Normal NormalText"+      >unsplit = arr . </span+      ><span class="Function"+      >uncurry</span+      ><span class="Normal NormalText"+      >       </span+      ><br+       /><span class="Normal NormalText"+      >          </span+      ><span class="Comment"+      >-- arr (\op (x,y) -&gt; x `op` y) </span+      ><br+       /></code+    ></pre+  ><p+  ><code+    >(***)</code+    > combines two arrows into a new arrow by running the two arrows on a pair of values (one arrow on the first item of the pair and one arrow on the second item of the pair).</p+  ><pre+  ><code+    >f *** g = first f &gt;&gt;&gt; second g </code-	></pre-      ><p-      >Block quote:</p-      ><blockquote-      ><p-	>foo bar</p-	></blockquote-      ></div-    ></body-  ></html+    ></pre+  ><p+  >Block quote:</p+  ><blockquote+  ><p+    >foo bar</p+    ></blockquote+  ></div >+</body>+</html> 
tests/lhs-test.html+lhs view
@@ -1,85 +1,83 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">-<html xmlns="http://www.w3.org/1999/xhtml"-><head-  ><title-    ></title-    ><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"-     /><meta name="generator" content="pandoc"-     /><style type="text/css"-    >-table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode, table.sourceCode pre -   { margin: 0; padding: 0; border: 0; vertical-align: baseline; border: none; }-td.lineNumbers { border-right: 1px solid #AAAAAA; text-align: right; color: #AAAAAA; padding-right: 5px; padding-left: 5px; }-td.sourceCode { padding-left: 5px; }-pre.sourceCode { }-pre.sourceCode span.Normal { }-pre.sourceCode span.Keyword { color: #007020; font-weight: bold; } -pre.sourceCode span.DataType { color: #902000; }-pre.sourceCode span.DecVal { color: #40a070; }-pre.sourceCode span.BaseN { color: #40a070; }-pre.sourceCode span.Float { color: #40a070; }-pre.sourceCode span.Char { color: #4070a0; }-pre.sourceCode span.String { color: #4070a0; }-pre.sourceCode span.Comment { color: #60a0b0; font-style: italic; }-pre.sourceCode span.Others { color: #007020; }-pre.sourceCode span.Alert { color: red; font-weight: bold; }-pre.sourceCode span.Function { color: #06287e; }-pre.sourceCode span.RegionMarker { }-pre.sourceCode span.Error { color: red; font-weight: bold; }-</style-    ></head-  ><body-  ><div id="lhs-test"-    ><h1-      >lhs test</h1-      ><p-      ><code-	>unsplit</code-	> is an arrow that takes a pair of values and combines them to return a single value:</p-      ><pre class="sourceCode haskell"-      ><code-	><span class="Special"-	  >&gt; </span-	  ><span class="Function FunctionDefinition"-	  >unsplit ::</span-	  ><span class="Normal NormalText"-	  > (Arrow a) =&gt; (b -&gt; c -&gt; d) -&gt; a (b, c) d</span-	  ><br-	   /><span class="Special"-	  >&gt; </span-	  ><span class="Normal NormalText"-	  >unsplit = arr . </span-	  ><span class="Function"-	  >uncurry</span-	  ><span class="Normal NormalText"-	  >       </span-	  ><br-	   /><span class="Special"-	  >&gt; </span-	  ><span class="Normal NormalText"-	  >          </span-	  ><span class="Comment"-	  >-- arr (\op (x,y) -&gt; x `op` y) </span-	  ><br-	   /></code-	></pre-      ><p-      ><code-	>(***)</code-	> combines two arrows into a new arrow by running the two arrows on a pair of values (one arrow on the first item of the pair and one arrow on the second item of the pair).</p-      ><pre-      ><code-	>f *** g = first f &gt;&gt;&gt; second g+<html xmlns="http://www.w3.org/1999/xhtml">+<head>+  <title></title>+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />+  <meta name="generator" content="pandoc" />+  <meta name="date" content="" />+  <style type="text/css">+    table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode, table.sourceCode pre { margin: 0; padding: 0; border: 0; vertical-align: baseline; border: none; }+    td.lineNumbers { border-right: 1px solid #AAAAAA; text-align: right; color: #AAAAAA; padding-right: 5px; padding-left: 5px; }+    td.sourceCode { padding-left: 5px; }+    pre.sourceCode { }+    pre.sourceCode span.Normal { }+    pre.sourceCode span.Keyword { color: #007020; font-weight: bold; } +    pre.sourceCode span.DataType { color: #902000; }+    pre.sourceCode span.DecVal { color: #40a070; }+    pre.sourceCode span.BaseN { color: #40a070; }+    pre.sourceCode span.Float { color: #40a070; }+    pre.sourceCode span.Char { color: #4070a0; }+    pre.sourceCode span.String { color: #4070a0; }+    pre.sourceCode span.Comment { color: #60a0b0; font-style: italic; }+    pre.sourceCode span.Others { color: #007020; }+    pre.sourceCode span.Alert { color: red; font-weight: bold; }+    pre.sourceCode span.Function { color: #06287e; }+    pre.sourceCode span.RegionMarker { }+    pre.sourceCode span.Error { color: red; font-weight: bold; }+  </style>+</head>+<body>+<div id="lhs-test"+><h1+  >lhs test</h1+  ><p+  ><code+    >unsplit</code+    > is an arrow that takes a pair of values and combines them to return a single value:</p+  ><pre class="sourceCode haskell"+  ><code+    ><span class="Special"+      >&gt; </span+      ><span class="Function FunctionDefinition"+      >unsplit ::</span+      ><span class="Normal NormalText"+      > (Arrow a) =&gt; (b -&gt; c -&gt; d) -&gt; a (b, c) d</span+      ><br+       /><span class="Special"+      >&gt; </span+      ><span class="Normal NormalText"+      >unsplit = arr . </span+      ><span class="Function"+      >uncurry</span+      ><span class="Normal NormalText"+      >       </span+      ><br+       /><span class="Special"+      >&gt; </span+      ><span class="Normal NormalText"+      >          </span+      ><span class="Comment"+      >-- arr (\op (x,y) -&gt; x `op` y) </span+      ><br+       /></code+    ></pre+  ><p+  ><code+    >(***)</code+    > combines two arrows into a new arrow by running the two arrows on a pair of values (one arrow on the first item of the pair and one arrow on the second item of the pair).</p+  ><pre+  ><code+    >f *** g = first f &gt;&gt;&gt; second g </code-	></pre-      ><p-      >Block quote:</p-      ><blockquote-      ><p-	>foo bar</p-	></blockquote-      ></div-    ></body-  ></html+    ></pre+  ><p+  >Block quote:</p+  ><blockquote+  ><p+    >foo bar</p+    ></blockquote+  ></div >+</body>+</html> 
tests/lhs-test.latex view
@@ -2,14 +2,12 @@ \usepackage{amsmath} \usepackage[mathletters]{ucs} \usepackage[utf8x]{inputenc}-\usepackage{listings}-\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{} \setlength{\parindent}{0pt} \setlength{\parskip}{6pt plus 2pt minus 1pt}-- \setcounter{secnumdepth}{0}+ \author{}+ \begin{document}  \section{lhs test}@@ -35,4 +33,6 @@ foo bar  \end{quote}+ \end{document}+
tests/lhs-test.latex+lhs view
@@ -6,10 +6,10 @@ \lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{} \setlength{\parindent}{0pt} \setlength{\parskip}{6pt plus 2pt minus 1pt}-- \setcounter{secnumdepth}{0}+ \author{}+ \begin{document}  \section{lhs test}@@ -35,4 +35,6 @@ foo bar  \end{quote}+ \end{document}+
tests/lhs-test.native view
@@ -1,4 +1,4 @@-Pandoc (Meta [] [] "")+Pandoc (Meta [] [] []) [ Header 1 [Str "lhs",Space,Str "test"] , Para [Code "unsplit",Space,Str "is",Space,Str "an",Space,Str "arrow",Space,Str "that",Space,Str "takes",Space,Str "a",Space,Str "pair",Space,Str "of",Space,Str "values",Space,Str "and",Space,Str "combines",Space,Str "them",Space,Str "to",Space,Str "return",Space,Str "a",Space,Str "single",Space,Str "value:"] , CodeBlock ("",["sourceCode","literate","haskell"],[]) "unsplit :: (Arrow a) => (b -> c -> d) -> a (b, c) d\nunsplit = arr . uncurry       \n          -- arr (\\op (x,y) -> x `op` y) "
tests/markdown-reader-more.native view
@@ -1,4 +1,4 @@-Pandoc (Meta [] [] "")+Pandoc (Meta [] [] []) [ Header 1 [Str "Additional",Space,Str "markdown",Space,Str "reader",Space,Str "tests"] , Header 2 [Str "Blank",Space,Str "line",Space,Str "before",Space,Str "URL",Space,Str "in",Space,Str "link",Space,Str "reference"] , Para [Link [Str "foo"] ("/url",""),Space,Str "and",Space,Link [Str "bar"] ("/url","title")]
tests/rst-reader.native view
@@ -1,4 +1,4 @@-Pandoc (Meta [Str "Pandoc",Space,Str "Test",Space,Str "Suite",Str ":",Space,Str "Subtitle"] ["John MacFarlane","Anonymous"] "July 17, 2006")+Pandoc (Meta [Str "Pandoc",Space,Str "Test",Space,Str "Suite",Str ":",Space,Str "Subtitle"] [[Str "John",Space,Str "MacFarlane"],[Str "Anonymous"]] [Str "July",Space,Str "17,",Space,Str "2006"]) [ DefinitionList   [ ([Str "Revision"],      [ [ Plain [Str "3"] ]
tests/s5.basic.html view
@@ -1,343 +1,343 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">-<html xmlns="http://www.w3.org/1999/xhtml"-><head-  ><title-    >My S5 Document</title-    ><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"-     /><meta name="generator" content="pandoc"-     /><meta name="author" content="Sam Smith"-     /><meta name="author" content="Jen Jones"-     /><meta name="date" content="July 15, 2006"-     /><!-- configuration parameters -->-<meta name="defaultView" content="slideshow" />-<meta name="controlVis" content="hidden" />-<style type="text/css" media="projection" id="slideProj">-/* Do not edit or override these styles! The system will likely break if you do. */--div#header, div#footer, div#controls, .slide {position: absolute;}-html>body div#header, html>body div#footer, -  html>body div#controls, html>body .slide {position: fixed;}-.handout {display: none;}-.layout {display: block;}-.slide, .hideme, .incremental {visibility: hidden;}-#slide0 {visibility: visible;}--/* The following styles size, place, and layer the slide components.-   Edit these if you want to change the overall slide layout.-   The commented lines can be uncommented (and modified, if necessary) -    to help you with the rearrangement process. */--/* target = 1024x768 */--div#header, div#footer, .slide {width: 100%; top: 0; left: 0;}-div#header {top: 0; height: 3em; z-index: 1;}-div#footer {top: auto; bottom: 0; height: 2.5em; z-index: 5;}-.slide {top: 0; width: 92%; padding: 3.5em 4% 4%; z-index: 2;  list-style: none;}-div#controls {left: 50%; bottom: 0; width: 50%; z-index: 100;}-div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;-  margin: 0;}-#currentSlide {position: absolute; width: 10%; left: 45%; bottom: 1em; z-index: 10;}-html>body #currentSlide {position: fixed;}--/*-div#header {background: #FCC;}-div#footer {background: #CCF;}-div#controls {background: #BBD;}-div#currentSlide {background: #FFC;}-*/--/* Following are the presentation styles -- edit away! */--body {background: #FFF url(bodybg.gif) -16px 0 no-repeat; color: #000; font-size: 2em;}-:link, :visited {text-decoration: none; color: #00C;}-#controls :active {color: #88A !important;}-#controls :focus {outline: 1px dotted #227;}-h1, h2, h3, h4 {font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}-ul, pre {margin: 0; line-height: 1em;}-html, body {margin: 0; padding: 0;}--blockquote, q {font-style: italic;}-blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; font-size: 1em;}-blockquote p {margin: 0;}-blockquote i {font-style: normal;}-blockquote b {display: block; margin-top: 0.5em; font-weight: normal; font-size: smaller; font-style: normal;}-blockquote b i {font-style: italic;}--kbd {font-weight: bold; font-size: 1em;}-sup {font-size: smaller; line-height: 1px;}--.slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}-.slide code.bad, code del {color: red;}-.slide code.old {color: silver;}-.slide pre {padding: 0; margin: 0.25em 0 0.5em 0.5em; color: #533; font-size: 90%;}-.slide pre code {display: block;}-.slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}-.slide li {margin-top: 0.75em; margin-right: 0;}-.slide ul ul {line-height: 1;}-.slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}-.slide img.leader {display: block; margin: 0 auto;}--div#header, div#footer {background: #005; color: #AAB;-  font-family: Verdana, Helvetica, sans-serif;}-div#header {background: #005 url(bodybg.gif) -16px 0 no-repeat;-  line-height: 1px;}-div#footer {font-size: 0.5em; font-weight: bold; padding: 1em 0;}-#footer h1, #footer h2 {display: block; padding: 0 1em;}-#footer h2 {font-style: italic;}--div.long {font-size: 0.75em;}-.slide h1 {position: absolute; top: 0.7em; left: 87px; z-index: 1;-  margin: 0; padding: 0.3em 0 0 50px; white-space: nowrap;-  font: bold 150%/1em Helvetica, sans-serif; text-transform: capitalize;-  color: #DDE; background: #005;}-.slide h3 {font-size: 130%;}-h1 abbr {font-variant: small-caps;}--div#controls {position: absolute; left: 50%; bottom: 0;-  width: 50%;-  text-align: right; font: bold 0.9em Verdana, Helvetica, sans-serif;}-html>body div#controls {position: fixed; padding: 0 0 1em 0;-  top: auto;}-div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;-  margin: 0; padding: 0;}-#controls #navLinks a {padding: 0; margin: 0 0.5em; -  background: #005; border: none; color: #779; -  cursor: pointer;}-#controls #navList {height: 1em;}-#controls #navList #jumplist {position: absolute; bottom: 0; right: 0; background: #DDD; color: #227;}--#currentSlide {text-align: center; font-size: 0.5em; color: #449;}--#slide0 {padding-top: 3.5em; font-size: 90%;}-#slide0 h1 {position: static; margin: 1em 0 0; padding: 0;-   font: bold 2em Helvetica, sans-serif; white-space: normal;-   color: #000; background: transparent;}-#slide0 h2 {font: bold italic 1em Helvetica, sans-serif; margin: 0.25em;}-#slide0 h3 {margin-top: 1.5em; font-size: 1.5em;}-#slide0 h4 {margin-top: 0; font-size: 1em;}--ul.urls {list-style: none; display: inline; margin: 0;}-.urls li {display: inline; margin: 0;}-.note {display: none;}-.external {border-bottom: 1px dotted gray;}-html>body .external {border-bottom: none;}-.external:after {content: " \274F"; font-size: smaller; color: #77B;}--.incremental, .incremental *, .incremental *:after {color: #DDE; visibility: visible;}-img.incremental {visibility: hidden;}-.slide .current {color: #B02;}---/* diagnostics--li:after {content: " [" attr(class) "]"; color: #F88;}-*/--</style>-<style type="text/css" media="projection" id="operaFix">-/* DO NOT CHANGE THESE unless you really want to break Opera Show */-.slide {-	visibility: visible !important;-	position: static !important;-	page-break-before: always;-}-#slide0 {page-break-before: avoid;}--</style>-<style type="text/css" media="screen" id="outlineStyle">-/* don't change this unless you want the layout stuff to show up in the outline view! */--.layout div, #footer *, #controlForm * {display: none;}-#footer, #controls, #controlForm, #navLinks, #toggle {-  display: block; visibility: visible; margin: 0; padding: 0;}-#toggle {float: right; padding: 0.5em;}-html>body #toggle {position: fixed; top: 0; right: 0;}--/* making the outline look pretty-ish */--#slide0 h1, #slide0 h2, #slide0 h3, #slide0 h4 {border: none; margin: 0;}-#slide0 h1 {padding-top: 1.5em;}-.slide h1 {margin: 1.5em 0 0; padding-top: 0.25em;-  border-top: 1px solid #888; border-bottom: 1px solid #AAA;}-#toggle {border: 1px solid; border-width: 0 0 1px 1px; background: #FFF;}--</style>-<style type="text/css" media="print" id="slidePrint">-/* The following rule is necessary to have all slides appear in print! DO NOT REMOVE IT! */-.slide, ul {page-break-inside: avoid; visibility: visible !important;}-h1 {page-break-after: avoid;}--body {font-size: 12pt; background: white;}-* {color: black;}--#slide0 h1 {font-size: 200%; border: none; margin: 0.5em 0 0.25em;}-#slide0 h3 {margin: 0; padding: 0;}-#slide0 h4 {margin: 0 0 0.5em; padding: 0;}-#slide0 {margin-bottom: 3em;}--h1 {border-top: 2pt solid gray; border-bottom: 1px dotted silver;}-.extra {background: transparent !important;}-div.extra, pre.extra, .example {font-size: 10pt; color: #333;}-ul.extra a {font-weight: bold;}-p.example {display: none;}--#header {display: none;}-#footer h1 {margin: 0; border-bottom: 1px solid; color: gray; font-style: italic;}-#footer h2, #controls {display: none;}--/* The following rule keeps the layout stuff out of print.  Remove at your own risk! */-.layout, .layout * {display: none !important;}--</style>-<script type="text/javascript">-// S5 v1.1 slides.js -- released into the Public Domain-//-// Please see http://www.meyerweb.com/eric/tools/s5/credits.html for information -// about all the wonderful and talented contributors to this code!-var undef;var slideCSS='';var snum=0;var smax=1;var incpos=0;var number=undef;var s5mode=true;var defaultView='slideshow';var controlVis='visible';var isIE=navigator.appName=='Microsoft Internet Explorer'&&navigator.userAgent.indexOf('Opera')<1?1:0;var isOp=navigator.userAgent.indexOf('Opera')>-1?1:0;var isGe=navigator.userAgent.indexOf('Gecko')>-1&&navigator.userAgent.indexOf('Safari')<1?1:0;function hasClass(object,className){if(!object.className)return false;return(object.className.search('(^|\\s)'+className+'(\\s|$)')!=-1);}-function hasValue(object,value){if(!object)return false;return(object.search('(^|\\s)'+value+'(\\s|$)')!=-1);}-function removeClass(object,className){if(!object)return;object.className=object.className.replace(new RegExp('(^|\\s)'+className+'(\\s|$)'),RegExp.$1+RegExp.$2);}-function addClass(object,className){if(!object||hasClass(object,className))return;if(object.className){object.className+=' '+className;}else{object.className=className;}}-function GetElementsWithClassName(elementName,className){var allElements=document.getElementsByTagName(elementName);var elemColl=new Array();for(var i=0;i<allElements.length;i++){if(hasClass(allElements[i],className)){elemColl[elemColl.length]=allElements[i];}}-return elemColl;}-function isParentOrSelf(element,id){if(element==null||element.nodeName=='BODY')return false;else if(element.id==id)return true;else return isParentOrSelf(element.parentNode,id);}-function nodeValue(node){var result="";if(node.nodeType==1){var children=node.childNodes;for(var i=0;i<children.length;++i){result+=nodeValue(children[i]);}}-else if(node.nodeType==3){result=node.nodeValue;}-return(result);}-function slideLabel(){var slideColl=GetElementsWithClassName('*','slide');var list=document.getElementById('jumplist');smax=slideColl.length;for(var n=0;n<smax;n++){var obj=slideColl[n];var did='slide'+n.toString();obj.setAttribute('id',did);if(isOp)continue;var otext='';var menu=obj.firstChild;if(!menu)continue;while(menu&&menu.nodeType==3){menu=menu.nextSibling;}-if(!menu)continue;var menunodes=menu.childNodes;for(var o=0;o<menunodes.length;o++){otext+=nodeValue(menunodes[o]);}-list.options[list.length]=new Option(n+' : '+otext,n);}}-function currentSlide(){var cs;if(document.getElementById){cs=document.getElementById('currentSlide');}else{cs=document.currentSlide;}-cs.innerHTML='<span id="csHere">'+snum+'<\/span> '+'<span id="csSep">\/<\/span> '+'<span id="csTotal">'+(smax-1)+'<\/span>';if(snum==0){cs.style.visibility='hidden';}else{cs.style.visibility='visible';}}-function go(step){if(document.getElementById('slideProj').disabled||step==0)return;var jl=document.getElementById('jumplist');var cid='slide'+snum;var ce=document.getElementById(cid);if(incrementals[snum].length>0){for(var i=0;i<incrementals[snum].length;i++){removeClass(incrementals[snum][i],'current');removeClass(incrementals[snum][i],'incremental');}}-if(step!='j'){snum+=step;lmax=smax-1;if(snum>lmax)snum=lmax;if(snum<0)snum=0;}else-snum=parseInt(jl.value);var nid='slide'+snum;var ne=document.getElementById(nid);if(!ne){ne=document.getElementById('slide0');snum=0;}-if(step<0){incpos=incrementals[snum].length}else{incpos=0;}-if(incrementals[snum].length>0&&incpos==0){for(var i=0;i<incrementals[snum].length;i++){if(hasClass(incrementals[snum][i],'current'))-incpos=i+1;else-addClass(incrementals[snum][i],'incremental');}}-if(incrementals[snum].length>0&&incpos>0)-addClass(incrementals[snum][incpos-1],'current');ce.style.visibility='hidden';ne.style.visibility='visible';jl.selectedIndex=snum;currentSlide();number=0;}-function goTo(target){if(target>=smax||target==snum)return;go(target-snum);}-function subgo(step){if(step>0){removeClass(incrementals[snum][incpos-1],'current');removeClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos],'current');incpos++;}else{incpos--;removeClass(incrementals[snum][incpos],'current');addClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos-1],'current');}}-function toggle(){var slideColl=GetElementsWithClassName('*','slide');var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');if(!slides.disabled){slides.disabled=true;outline.disabled=false;s5mode=false;fontSize('1em');for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='visible';}}else{slides.disabled=false;outline.disabled=true;s5mode=true;fontScale();for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='hidden';}-slideColl[snum].style.visibility='visible';}}-function showHide(action){var obj=GetElementsWithClassName('*','hideme')[0];switch(action){case's':obj.style.visibility='visible';break;case'h':obj.style.visibility='hidden';break;case'k':if(obj.style.visibility!='visible'){obj.style.visibility='visible';}else{obj.style.visibility='hidden';}-break;}}-function keys(key){if(!key){key=event;key.which=key.keyCode;}-if(key.which==84){toggle();return;}-if(s5mode){switch(key.which){case 10:case 13:if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;if(number!=undef){goTo(number);break;}-case 32:case 34:case 39:case 40:if(number!=undef){go(number);}else if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}-break;case 33:case 37:case 38:if(number!=undef){go(-1*number);}else if(!incrementals[snum]||incpos<=0){go(-1);}else{subgo(-1);}-break;case 36:goTo(0);break;case 35:goTo(smax-1);break;case 67:showHide('k');break;}-if(key.which<48||key.which>57){number=undef;}else{if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;number=(((number!=undef)?number:0)*10)+(key.which-48);}}-return false;}-function clicker(e){number=undef;var target;if(window.event){target=window.event.srcElement;e=window.event;}else target=e.target;if(target.getAttribute('href')!=null||hasValue(target.rel,'external')||isParentOrSelf(target,'controls')||isParentOrSelf(target,'embed')||isParentOrSelf(target,'object'))return true;if(!e.which||e.which==1){if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}}}-function findSlide(hash){var target=null;var slides=GetElementsWithClassName('*','slide');for(var i=0;i<slides.length;i++){var targetSlide=slides[i];if((targetSlide.name&&targetSlide.name==hash)||(targetSlide.id&&targetSlide.id==hash)){target=targetSlide;break;}}-while(target!=null&&target.nodeName!='BODY'){if(hasClass(target,'slide')){return parseInt(target.id.slice(5));}-target=target.parentNode;}-return null;}-function slideJump(){if(window.location.hash==null)return;var sregex=/^#slide(\d+)$/;var matches=sregex.exec(window.location.hash);var dest=null;if(matches!=null){dest=parseInt(matches[1]);}else{dest=findSlide(window.location.hash.slice(1));}-if(dest!=null)-go(dest-snum);}-function fixLinks(){var thisUri=window.location.href;thisUri=thisUri.slice(0,thisUri.length-window.location.hash.length);var aelements=document.getElementsByTagName('A');for(var i=0;i<aelements.length;i++){var a=aelements[i].href;var slideID=a.match('\#slide[0-9]{1,2}');if((slideID)&&(slideID[0].slice(0,1)=='#')){var dest=findSlide(slideID[0].slice(1));if(dest!=null){if(aelements[i].addEventListener){aelements[i].addEventListener("click",new Function("e","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"if (e.preventDefault) e.preventDefault();"),true);}else if(aelements[i].attachEvent){aelements[i].attachEvent("onclick",new Function("","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"event.returnValue = false;"));}}}}}-function externalLinks(){if(!document.getElementsByTagName)return;var anchors=document.getElementsByTagName('a');for(var i=0;i<anchors.length;i++){var anchor=anchors[i];if(anchor.getAttribute('href')&&hasValue(anchor.rel,'external')){anchor.target='_blank';addClass(anchor,'external');}}}-function createControls(){var controlsDiv=document.getElementById("controls");if(!controlsDiv)return;var hider=' onmouseover="showHide(\'s\');" onmouseout="showHide(\'h\');"';var hideDiv,hideList='';if(controlVis=='hidden'){hideDiv=hider;}else{hideList=hider;}-controlsDiv.innerHTML='<form action="#" id="controlForm"'+hideDiv+'>'+'<div id="navLinks">'+'<a accesskey="t" id="toggle" href="javascript:toggle();">&#216;<\/a>'+'<a accesskey="z" id="prev" href="javascript:go(-1);">&laquo;<\/a>'+'<a accesskey="x" id="next" href="javascript:go(1);">&raquo;<\/a>'+'<div id="navList"'+hideList+'><select id="jumplist" onchange="go(\'j\');"><\/select><\/div>'+'<\/div><\/form>';if(controlVis=='hidden'){var hidden=document.getElementById('navLinks');}else{var hidden=document.getElementById('jumplist');}-addClass(hidden,'hideme');}-function fontScale(){if(!s5mode)return false;var vScale=22;var hScale=32;if(window.innerHeight){var vSize=window.innerHeight;var hSize=window.innerWidth;}else if(document.documentElement.clientHeight){var vSize=document.documentElement.clientHeight;var hSize=document.documentElement.clientWidth;}else if(document.body.clientHeight){var vSize=document.body.clientHeight;var hSize=document.body.clientWidth;}else{var vSize=700;var hSize=1024;}-var newSize=Math.min(Math.round(vSize/vScale),Math.round(hSize/hScale));fontSize(newSize+'px');if(isGe){var obj=document.getElementsByTagName('body')[0];obj.style.display='none';obj.style.display='block';}}-function fontSize(value){if(!(s5ss=document.getElementById('s5ss'))){if(!isIE){document.getElementsByTagName('head')[0].appendChild(s5ss=document.createElement('style'));s5ss.setAttribute('media','screen, projection');s5ss.setAttribute('id','s5ss');}else{document.createStyleSheet();document.s5ss=document.styleSheets[document.styleSheets.length-1];}}-if(!isIE){while(s5ss.lastChild)s5ss.removeChild(s5ss.lastChild);s5ss.appendChild(document.createTextNode('body {font-size: '+value+' !important;}'));}else{document.s5ss.addRule('body','font-size: '+value+' !important;');}}-function notOperaFix(){slideCSS=document.getElementById('slideProj').href;var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');slides.setAttribute('media','screen');outline.disabled=true;if(isGe){slides.setAttribute('href','null');slides.setAttribute('href',slideCSS);}-if(isIE&&document.styleSheets&&document.styleSheets[0]){document.styleSheets[0].addRule('img','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('div','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('.slide','behavior: url(ui/default/iepngfix.htc)');}}-function getIncrementals(obj){var incrementals=new Array();if(!obj)-return incrementals;var children=obj.childNodes;for(var i=0;i<children.length;i++){var child=children[i];if(hasClass(child,'incremental')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'incremental');for(var j=0;j<child.childNodes.length;j++){if(child.childNodes[j].nodeType==1){addClass(child.childNodes[j],'incremental');}}}else{incrementals[incrementals.length]=child;removeClass(child,'incremental');}}-if(hasClass(child,'show-first')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'show-first');if(child.childNodes[isGe].nodeType==1){removeClass(child.childNodes[isGe],'incremental');}}else{incrementals[incrementals.length]=child;}}-incrementals=incrementals.concat(getIncrementals(child));}-return incrementals;}-function createIncrementals(){var incrementals=new Array();for(var i=0;i<smax;i++){incrementals[i]=getIncrementals(document.getElementById('slide'+i));}-return incrementals;}-function defaultCheck(){var allMetas=document.getElementsByTagName('meta');for(var i=0;i<allMetas.length;i++){if(allMetas[i].name=='defaultView'){defaultView=allMetas[i].content;}-if(allMetas[i].name=='controlVis'){controlVis=allMetas[i].content;}}}-function trap(e){if(!e){e=event;e.which=e.keyCode;}-try{modifierKey=e.ctrlKey||e.altKey||e.metaKey;}-catch(e){modifierKey=false;}-return modifierKey||e.which==0;}-function startup(){defaultCheck();if(!isOp)-createControls();slideLabel();fixLinks();externalLinks();fontScale();if(!isOp){notOperaFix();incrementals=createIncrementals();slideJump();if(defaultView=='outline'){toggle();}-document.onkeyup=keys;document.onkeypress=trap;document.onclick=clicker;}}-window.onload=startup;window.onresize=function(){setTimeout('fontScale()',50);}-</script>-</head-  ><body-  ><div class="layout">+<html xmlns="http://www.w3.org/1999/xhtml">+<head>+  <title>My S5 Document</title>+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />+  <meta name="generator" content="pandoc" />+  <meta name="author" content="Sam Smith" />+  <meta name="author" content="Jen Jones" />+  <meta name="date" content="July 15, 2006" />+  <!-- configuration parameters -->+  <meta name="defaultView" content="slideshow" />+  <meta name="controlVis" content="hidden" />+  <style type="text/css" media="projection" id="slideProj">+  /* Do not edit or override these styles! The system will likely break if you do. */+  +  div#header, div#footer, div#controls, .slide {position: absolute;}+  html>body div#header, html>body div#footer, +    html>body div#controls, html>body .slide {position: fixed;}+  .handout {display: none;}+  .layout {display: block;}+  .slide, .hideme, .incremental {visibility: hidden;}+  #slide0 {visibility: visible;}+  +  /* The following styles size, place, and layer the slide components.+     Edit these if you want to change the overall slide layout.+     The commented lines can be uncommented (and modified, if necessary) +      to help you with the rearrangement process. */+  +  /* target = 1024x768 */+  +  div#header, div#footer, .slide {width: 100%; top: 0; left: 0;}+  div#header {top: 0; height: 3em; z-index: 1;}+  div#footer {top: auto; bottom: 0; height: 2.5em; z-index: 5;}+  .slide {top: 0; width: 92%; padding: 3.5em 4% 4%; z-index: 2;  list-style: none;}+  div#controls {left: 50%; bottom: 0; width: 50%; z-index: 100;}+  div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;+    margin: 0;}+  #currentSlide {position: absolute; width: 10%; left: 45%; bottom: 1em; z-index: 10;}+  html>body #currentSlide {position: fixed;}+  +  /*+  div#header {background: #FCC;}+  div#footer {background: #CCF;}+  div#controls {background: #BBD;}+  div#currentSlide {background: #FFC;}+  */+  +  /* Following are the presentation styles -- edit away! */+  +  body {background: #FFF url(bodybg.gif) -16px 0 no-repeat; color: #000; font-size: 2em;}+  :link, :visited {text-decoration: none; color: #00C;}+  #controls :active {color: #88A !important;}+  #controls :focus {outline: 1px dotted #227;}+  h1, h2, h3, h4 {font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}+  ul, pre {margin: 0; line-height: 1em;}+  html, body {margin: 0; padding: 0;}+  +  blockquote, q {font-style: italic;}+  blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; font-size: 1em;}+  blockquote p {margin: 0;}+  blockquote i {font-style: normal;}+  blockquote b {display: block; margin-top: 0.5em; font-weight: normal; font-size: smaller; font-style: normal;}+  blockquote b i {font-style: italic;}+  +  kbd {font-weight: bold; font-size: 1em;}+  sup {font-size: smaller; line-height: 1px;}+  +  .slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}+  .slide code.bad, code del {color: red;}+  .slide code.old {color: silver;}+  .slide pre {padding: 0; margin: 0.25em 0 0.5em 0.5em; color: #533; font-size: 90%;}+  .slide pre code {display: block;}+  .slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}+  .slide li {margin-top: 0.75em; margin-right: 0;}+  .slide ul ul {line-height: 1;}+  .slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}+  .slide img.leader {display: block; margin: 0 auto;}+  +  div#header, div#footer {background: #005; color: #AAB;+    font-family: Verdana, Helvetica, sans-serif;}+  div#header {background: #005 url(bodybg.gif) -16px 0 no-repeat;+    line-height: 1px;}+  div#footer {font-size: 0.5em; font-weight: bold; padding: 1em 0;}+  #footer h1, #footer h2 {display: block; padding: 0 1em;}+  #footer h2 {font-style: italic;}+  +  div.long {font-size: 0.75em;}+  .slide h1 {position: absolute; top: 0.7em; left: 87px; z-index: 1;+    margin: 0; padding: 0.3em 0 0 50px; white-space: nowrap;+    font: bold 150%/1em Helvetica, sans-serif; text-transform: capitalize;+    color: #DDE; background: #005;}+  .slide h3 {font-size: 130%;}+  h1 abbr {font-variant: small-caps;}+  +  div#controls {position: absolute; left: 50%; bottom: 0;+    width: 50%;+    text-align: right; font: bold 0.9em Verdana, Helvetica, sans-serif;}+  html>body div#controls {position: fixed; padding: 0 0 1em 0;+    top: auto;}+  div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;+    margin: 0; padding: 0;}+  #controls #navLinks a {padding: 0; margin: 0 0.5em; +    background: #005; border: none; color: #779; +    cursor: pointer;}+  #controls #navList {height: 1em;}+  #controls #navList #jumplist {position: absolute; bottom: 0; right: 0; background: #DDD; color: #227;}+  +  #currentSlide {text-align: center; font-size: 0.5em; color: #449;}+  +  #slide0 {padding-top: 3.5em; font-size: 90%;}+  #slide0 h1 {position: static; margin: 1em 0 0; padding: 0;+     font: bold 2em Helvetica, sans-serif; white-space: normal;+     color: #000; background: transparent;}+  #slide0 h2 {font: bold italic 1em Helvetica, sans-serif; margin: 0.25em;}+  #slide0 h3 {margin-top: 1.5em; font-size: 1.5em;}+  #slide0 h4 {margin-top: 0; font-size: 1em;}+  +  ul.urls {list-style: none; display: inline; margin: 0;}+  .urls li {display: inline; margin: 0;}+  .note {display: none;}+  .external {border-bottom: 1px dotted gray;}+  html>body .external {border-bottom: none;}+  .external:after {content: " \274F"; font-size: smaller; color: #77B;}+  +  .incremental, .incremental *, .incremental *:after {color: #DDE; visibility: visible;}+  img.incremental {visibility: hidden;}+  .slide .current {color: #B02;}+  +  +  /* diagnostics+  +  li:after {content: " [" attr(class) "]"; color: #F88;}+  */+  +  </style>+  <style type="text/css" media="projection" id="operaFix">+  /* DO NOT CHANGE THESE unless you really want to break Opera Show */+  .slide {+  	visibility: visible !important;+  	position: static !important;+  	page-break-before: always;+  }+  #slide0 {page-break-before: avoid;}+  +  </style>+  <style type="text/css" media="screen" id="outlineStyle">+  /* don't change this unless you want the layout stuff to show up in the outline view! */+  +  .layout div, #footer *, #controlForm * {display: none;}+  #footer, #controls, #controlForm, #navLinks, #toggle {+    display: block; visibility: visible; margin: 0; padding: 0;}+  #toggle {float: right; padding: 0.5em;}+  html>body #toggle {position: fixed; top: 0; right: 0;}+  +  /* making the outline look pretty-ish */+  +  #slide0 h1, #slide0 h2, #slide0 h3, #slide0 h4 {border: none; margin: 0;}+  #slide0 h1 {padding-top: 1.5em;}+  .slide h1 {margin: 1.5em 0 0; padding-top: 0.25em;+    border-top: 1px solid #888; border-bottom: 1px solid #AAA;}+  #toggle {border: 1px solid; border-width: 0 0 1px 1px; background: #FFF;}+  +  </style>+  <style type="text/css" media="print" id="slidePrint">+  /* The following rule is necessary to have all slides appear in print! DO NOT REMOVE IT! */+  .slide, ul {page-break-inside: avoid; visibility: visible !important;}+  h1 {page-break-after: avoid;}+  +  body {font-size: 12pt; background: white;}+  * {color: black;}+  +  #slide0 h1 {font-size: 200%; border: none; margin: 0.5em 0 0.25em;}+  #slide0 h3 {margin: 0; padding: 0;}+  #slide0 h4 {margin: 0 0 0.5em; padding: 0;}+  #slide0 {margin-bottom: 3em;}+  +  h1 {border-top: 2pt solid gray; border-bottom: 1px dotted silver;}+  .extra {background: transparent !important;}+  div.extra, pre.extra, .example {font-size: 10pt; color: #333;}+  ul.extra a {font-weight: bold;}+  p.example {display: none;}+  +  #header {display: none;}+  #footer h1 {margin: 0; border-bottom: 1px solid; color: gray; font-style: italic;}+  #footer h2, #controls {display: none;}+  +  /* The following rule keeps the layout stuff out of print.  Remove at your own risk! */+  .layout, .layout * {display: none !important;}+  +  </style>+  <script type="text/javascript">+  // S5 v1.1 slides.js -- released into the Public Domain+  //+  // Please see http://www.meyerweb.com/eric/tools/s5/credits.html for information +  // about all the wonderful and talented contributors to this code!+  var undef;var slideCSS='';var snum=0;var smax=1;var incpos=0;var number=undef;var s5mode=true;var defaultView='slideshow';var controlVis='visible';var isIE=navigator.appName=='Microsoft Internet Explorer'&&navigator.userAgent.indexOf('Opera')<1?1:0;var isOp=navigator.userAgent.indexOf('Opera')>-1?1:0;var isGe=navigator.userAgent.indexOf('Gecko')>-1&&navigator.userAgent.indexOf('Safari')<1?1:0;function hasClass(object,className){if(!object.className)return false;return(object.className.search('(^|\\s)'+className+'(\\s|$)')!=-1);}+  function hasValue(object,value){if(!object)return false;return(object.search('(^|\\s)'+value+'(\\s|$)')!=-1);}+  function removeClass(object,className){if(!object)return;object.className=object.className.replace(new RegExp('(^|\\s)'+className+'(\\s|$)'),RegExp.$1+RegExp.$2);}+  function addClass(object,className){if(!object||hasClass(object,className))return;if(object.className){object.className+=' '+className;}else{object.className=className;}}+  function GetElementsWithClassName(elementName,className){var allElements=document.getElementsByTagName(elementName);var elemColl=new Array();for(var i=0;i<allElements.length;i++){if(hasClass(allElements[i],className)){elemColl[elemColl.length]=allElements[i];}}+  return elemColl;}+  function isParentOrSelf(element,id){if(element==null||element.nodeName=='BODY')return false;else if(element.id==id)return true;else return isParentOrSelf(element.parentNode,id);}+  function nodeValue(node){var result="";if(node.nodeType==1){var children=node.childNodes;for(var i=0;i<children.length;++i){result+=nodeValue(children[i]);}}+  else if(node.nodeType==3){result=node.nodeValue;}+  return(result);}+  function slideLabel(){var slideColl=GetElementsWithClassName('*','slide');var list=document.getElementById('jumplist');smax=slideColl.length;for(var n=0;n<smax;n++){var obj=slideColl[n];var did='slide'+n.toString();obj.setAttribute('id',did);if(isOp)continue;var otext='';var menu=obj.firstChild;if(!menu)continue;while(menu&&menu.nodeType==3){menu=menu.nextSibling;}+  if(!menu)continue;var menunodes=menu.childNodes;for(var o=0;o<menunodes.length;o++){otext+=nodeValue(menunodes[o]);}+  list.options[list.length]=new Option(n+' : '+otext,n);}}+  function currentSlide(){var cs;if(document.getElementById){cs=document.getElementById('currentSlide');}else{cs=document.currentSlide;}+  cs.innerHTML='<span id="csHere">'+snum+'<\/span> '+'<span id="csSep">\/<\/span> '+'<span id="csTotal">'+(smax-1)+'<\/span>';if(snum==0){cs.style.visibility='hidden';}else{cs.style.visibility='visible';}}+  function go(step){if(document.getElementById('slideProj').disabled||step==0)return;var jl=document.getElementById('jumplist');var cid='slide'+snum;var ce=document.getElementById(cid);if(incrementals[snum].length>0){for(var i=0;i<incrementals[snum].length;i++){removeClass(incrementals[snum][i],'current');removeClass(incrementals[snum][i],'incremental');}}+  if(step!='j'){snum+=step;lmax=smax-1;if(snum>lmax)snum=lmax;if(snum<0)snum=0;}else+  snum=parseInt(jl.value);var nid='slide'+snum;var ne=document.getElementById(nid);if(!ne){ne=document.getElementById('slide0');snum=0;}+  if(step<0){incpos=incrementals[snum].length}else{incpos=0;}+  if(incrementals[snum].length>0&&incpos==0){for(var i=0;i<incrementals[snum].length;i++){if(hasClass(incrementals[snum][i],'current'))+  incpos=i+1;else+  addClass(incrementals[snum][i],'incremental');}}+  if(incrementals[snum].length>0&&incpos>0)+  addClass(incrementals[snum][incpos-1],'current');ce.style.visibility='hidden';ne.style.visibility='visible';jl.selectedIndex=snum;currentSlide();number=0;}+  function goTo(target){if(target>=smax||target==snum)return;go(target-snum);}+  function subgo(step){if(step>0){removeClass(incrementals[snum][incpos-1],'current');removeClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos],'current');incpos++;}else{incpos--;removeClass(incrementals[snum][incpos],'current');addClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos-1],'current');}}+  function toggle(){var slideColl=GetElementsWithClassName('*','slide');var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');if(!slides.disabled){slides.disabled=true;outline.disabled=false;s5mode=false;fontSize('1em');for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='visible';}}else{slides.disabled=false;outline.disabled=true;s5mode=true;fontScale();for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='hidden';}+  slideColl[snum].style.visibility='visible';}}+  function showHide(action){var obj=GetElementsWithClassName('*','hideme')[0];switch(action){case's':obj.style.visibility='visible';break;case'h':obj.style.visibility='hidden';break;case'k':if(obj.style.visibility!='visible'){obj.style.visibility='visible';}else{obj.style.visibility='hidden';}+  break;}}+  function keys(key){if(!key){key=event;key.which=key.keyCode;}+  if(key.which==84){toggle();return;}+  if(s5mode){switch(key.which){case 10:case 13:if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;if(number!=undef){goTo(number);break;}+  case 32:case 34:case 39:case 40:if(number!=undef){go(number);}else if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}+  break;case 33:case 37:case 38:if(number!=undef){go(-1*number);}else if(!incrementals[snum]||incpos<=0){go(-1);}else{subgo(-1);}+  break;case 36:goTo(0);break;case 35:goTo(smax-1);break;case 67:showHide('k');break;}+  if(key.which<48||key.which>57){number=undef;}else{if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;number=(((number!=undef)?number:0)*10)+(key.which-48);}}+  return false;}+  function clicker(e){number=undef;var target;if(window.event){target=window.event.srcElement;e=window.event;}else target=e.target;if(target.getAttribute('href')!=null||hasValue(target.rel,'external')||isParentOrSelf(target,'controls')||isParentOrSelf(target,'embed')||isParentOrSelf(target,'object'))return true;if(!e.which||e.which==1){if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}}}+  function findSlide(hash){var target=null;var slides=GetElementsWithClassName('*','slide');for(var i=0;i<slides.length;i++){var targetSlide=slides[i];if((targetSlide.name&&targetSlide.name==hash)||(targetSlide.id&&targetSlide.id==hash)){target=targetSlide;break;}}+  while(target!=null&&target.nodeName!='BODY'){if(hasClass(target,'slide')){return parseInt(target.id.slice(5));}+  target=target.parentNode;}+  return null;}+  function slideJump(){if(window.location.hash==null)return;var sregex=/^#slide(\d+)$/;var matches=sregex.exec(window.location.hash);var dest=null;if(matches!=null){dest=parseInt(matches[1]);}else{dest=findSlide(window.location.hash.slice(1));}+  if(dest!=null)+  go(dest-snum);}+  function fixLinks(){var thisUri=window.location.href;thisUri=thisUri.slice(0,thisUri.length-window.location.hash.length);var aelements=document.getElementsByTagName('A');for(var i=0;i<aelements.length;i++){var a=aelements[i].href;var slideID=a.match('\#slide[0-9]{1,2}');if((slideID)&&(slideID[0].slice(0,1)=='#')){var dest=findSlide(slideID[0].slice(1));if(dest!=null){if(aelements[i].addEventListener){aelements[i].addEventListener("click",new Function("e","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"if (e.preventDefault) e.preventDefault();"),true);}else if(aelements[i].attachEvent){aelements[i].attachEvent("onclick",new Function("","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"event.returnValue = false;"));}}}}}+  function externalLinks(){if(!document.getElementsByTagName)return;var anchors=document.getElementsByTagName('a');for(var i=0;i<anchors.length;i++){var anchor=anchors[i];if(anchor.getAttribute('href')&&hasValue(anchor.rel,'external')){anchor.target='_blank';addClass(anchor,'external');}}}+  function createControls(){var controlsDiv=document.getElementById("controls");if(!controlsDiv)return;var hider=' onmouseover="showHide(\'s\');" onmouseout="showHide(\'h\');"';var hideDiv,hideList='';if(controlVis=='hidden'){hideDiv=hider;}else{hideList=hider;}+  controlsDiv.innerHTML='<form action="#" id="controlForm"'+hideDiv+'>'+'<div id="navLinks">'+'<a accesskey="t" id="toggle" href="javascript:toggle();">&#216;<\/a>'+'<a accesskey="z" id="prev" href="javascript:go(-1);">&laquo;<\/a>'+'<a accesskey="x" id="next" href="javascript:go(1);">&raquo;<\/a>'+'<div id="navList"'+hideList+'><select id="jumplist" onchange="go(\'j\');"><\/select><\/div>'+'<\/div><\/form>';if(controlVis=='hidden'){var hidden=document.getElementById('navLinks');}else{var hidden=document.getElementById('jumplist');}+  addClass(hidden,'hideme');}+  function fontScale(){if(!s5mode)return false;var vScale=22;var hScale=32;if(window.innerHeight){var vSize=window.innerHeight;var hSize=window.innerWidth;}else if(document.documentElement.clientHeight){var vSize=document.documentElement.clientHeight;var hSize=document.documentElement.clientWidth;}else if(document.body.clientHeight){var vSize=document.body.clientHeight;var hSize=document.body.clientWidth;}else{var vSize=700;var hSize=1024;}+  var newSize=Math.min(Math.round(vSize/vScale),Math.round(hSize/hScale));fontSize(newSize+'px');if(isGe){var obj=document.getElementsByTagName('body')[0];obj.style.display='none';obj.style.display='block';}}+  function fontSize(value){if(!(s5ss=document.getElementById('s5ss'))){if(!isIE){document.getElementsByTagName('head')[0].appendChild(s5ss=document.createElement('style'));s5ss.setAttribute('media','screen, projection');s5ss.setAttribute('id','s5ss');}else{document.createStyleSheet();document.s5ss=document.styleSheets[document.styleSheets.length-1];}}+  if(!isIE){while(s5ss.lastChild)s5ss.removeChild(s5ss.lastChild);s5ss.appendChild(document.createTextNode('body {font-size: '+value+' !important;}'));}else{document.s5ss.addRule('body','font-size: '+value+' !important;');}}+  function notOperaFix(){slideCSS=document.getElementById('slideProj').href;var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');slides.setAttribute('media','screen');outline.disabled=true;if(isGe){slides.setAttribute('href','null');slides.setAttribute('href',slideCSS);}+  if(isIE&&document.styleSheets&&document.styleSheets[0]){document.styleSheets[0].addRule('img','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('div','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('.slide','behavior: url(ui/default/iepngfix.htc)');}}+  function getIncrementals(obj){var incrementals=new Array();if(!obj)+  return incrementals;var children=obj.childNodes;for(var i=0;i<children.length;i++){var child=children[i];if(hasClass(child,'incremental')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'incremental');for(var j=0;j<child.childNodes.length;j++){if(child.childNodes[j].nodeType==1){addClass(child.childNodes[j],'incremental');}}}else{incrementals[incrementals.length]=child;removeClass(child,'incremental');}}+  if(hasClass(child,'show-first')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'show-first');if(child.childNodes[isGe].nodeType==1){removeClass(child.childNodes[isGe],'incremental');}}else{incrementals[incrementals.length]=child;}}+  incrementals=incrementals.concat(getIncrementals(child));}+  return incrementals;}+  function createIncrementals(){var incrementals=new Array();for(var i=0;i<smax;i++){incrementals[i]=getIncrementals(document.getElementById('slide'+i));}+  return incrementals;}+  function defaultCheck(){var allMetas=document.getElementsByTagName('meta');for(var i=0;i<allMetas.length;i++){if(allMetas[i].name=='defaultView'){defaultView=allMetas[i].content;}+  if(allMetas[i].name=='controlVis'){controlVis=allMetas[i].content;}}}+  function trap(e){if(!e){e=event;e.which=e.keyCode;}+  try{modifierKey=e.ctrlKey||e.altKey||e.metaKey;}+  catch(e){modifierKey=false;}+  return modifierKey||e.which==0;}+  function startup(){defaultCheck();if(!isOp)+  createControls();slideLabel();fixLinks();externalLinks();fontScale();if(!isOp){notOperaFix();incrementals=createIncrementals();slideJump();if(defaultView=='outline'){toggle();}+  document.onkeyup=keys;document.onkeypress=trap;document.onclick=clicker;}}+  window.onload=startup;window.onresize=function(){setTimeout('fontScale()',50);}+  </script>+</head>+<body>+<h1 class="title">My S5 Document</h1>+<div class="layout"> <div id="controls"></div> <div id="currentSlide"></div> <div id="header"></div> <div id="footer"> <h1-    >July 15, 2006</h1-    ><h2-    >My S5 Document</h2-    ></div>+>July 15, 2006</h1+><h2+>My S5 Document</h2+></div> </div> <div class="presentation">  <div class="slide"> <h1-    >My S5 Document</h1-    ><h3-    >Sam Smith, Jen Jones</h3-    ><h4-    >July 15, 2006</h4-    ></div>+>My S5 Document</h1+><h3+>Sam Smith<br+   />Jen Jones</h3+><h4+>July 15, 2006</h4+></div> <div class="slide"> <h1-    >First slide</h1-    ><ul-    ><li-      >first bullet</li-      ><li-      >second bullet</li-      ></ul-    ></div>+>First slide</h1+><ul+><li+  >first bullet</li+  ><li+  >second bullet</li+  ></ul+></div> <div class="slide"> <h1-    >Math</h1-    ><ul-    ><li-      ><span class="math"-	>\frac{<em-	  >d</em-	  >}{<em-	  >dx</em-	  >}<em-	  >f</em-	  >(<em-	  >x</em-	  >)=\lim<sub-	  ><em-	    >h</em-	    >&#8201;&#8594;&#8201;0</sub-	  >\frac{<em-	  >f</em-	  >(<em-	  >x</em-	  >+<em-	  >h</em-	  >)-<em-	  >f</em-	  >(<em-	  >x</em-	  >)}{<em-	  >h</em-	  >}</span-	></li-      ></ul-    ></div>+>Math</h1+><ul+><li+  ><span class="math"+    >\frac{<em+      >d</em+      >}{<em+      >dx</em+      >}<em+      >f</em+      >(<em+      >x</em+      >)=\lim<sub+      ><em+	>h</em+	> → 0</sub+      >\frac{<em+      >f</em+      >(<em+      >x</em+      >+<em+      >h</em+      >)-<em+      >f</em+      >(<em+      >x</em+      >)}{<em+      >h</em+      >}</span+    ></li+  ></ul+></div> </div>-</body-  ></html->+</body>+</html> 
tests/s5.fancy.html view
@@ -1,527 +1,528 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">-<html xmlns="http://www.w3.org/1999/xhtml"-><head-  ><title-    >My S5 Document</title-    ><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"-     /><meta name="generator" content="pandoc"-     /><meta name="author" content="Sam Smith"-     /><meta name="author" content="Jen Jones"-     /><meta name="date" content="July 15, 2006"-     /><script type="text/javascript">-/*-LaTeXMathML.js from http://math.etsu.edu/LaTeXMathML/-Adapted by Jeff Knisely and Douglas Woodall from ASCIIMathML.js v. 1.4.7,-(c) 2005 Peter Jipsen http://www.chapman.edu/~jipsen.--This program is free software; you can redistribute it and/or modify-it under the terms of the GNU General Public License as published by-the Free Software Foundation; either version 2 of the License, or (at-your option) any later version.--This program is distributed in the hope that it will be useful,-but WITHOUT ANY WARRANTY; without even the implied warranty of-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU-General Public License (at http://www.gnu.org/copyleft/gpl.html)-for more details.-*/--var checkForMathML=true;var notifyIfNoMathML=true;var alertIfNoMathML=false;var mathcolor="";var mathfontfamily="";var showasciiformulaonhover=true;var isIE=document.createElementNS==null;if(document.getElementById==null)-alert("This webpage requires a recent browser such as \nMozilla/Netscape 7+ or Internet Explorer 6+MathPlayer")-function AMcreateElementXHTML(t){if(isIE)return document.createElement(t);else return document.createElementNS("http://www.w3.org/1999/xhtml",t);}-function AMnoMathMLNote(){var nd=AMcreateElementXHTML("h3");nd.setAttribute("align","center")-nd.appendChild(AMcreateElementXHTML("p"));nd.appendChild(document.createTextNode("To view the "));var an=AMcreateElementXHTML("a");an.appendChild(document.createTextNode("LaTeXMathML"));an.setAttribute("href","http://www.maths.nott.ac.uk/personal/drw/lm.html");nd.appendChild(an);nd.appendChild(document.createTextNode(" notation use Internet Explorer 6+"));an=AMcreateElementXHTML("a");an.appendChild(document.createTextNode("MathPlayer"));an.setAttribute("href","http://www.dessci.com/en/products/mathplayer/download.htm");nd.appendChild(an);nd.appendChild(document.createTextNode(" or Netscape/Mozilla/Firefox"));nd.appendChild(AMcreateElementXHTML("p"));return nd;}-function AMisMathMLavailable(){if(navigator.appName.slice(0,8)=="Netscape")-if(navigator.appVersion.slice(0,1)>="5")return null;else return AMnoMathMLNote();else if(navigator.appName.slice(0,9)=="Microsoft")-try{var ActiveX=new ActiveXObject("MathPlayer.Factory.1");return null;}catch(e){return AMnoMathMLNote();}-else return AMnoMathMLNote();}-var AMcal=[0xEF35,0x212C,0xEF36,0xEF37,0x2130,0x2131,0xEF38,0x210B,0x2110,0xEF39,0xEF3A,0x2112,0x2133,0xEF3B,0xEF3C,0xEF3D,0xEF3E,0x211B,0xEF3F,0xEF40,0xEF41,0xEF42,0xEF43,0xEF44,0xEF45,0xEF46];var AMfrk=[0xEF5D,0xEF5E,0x212D,0xEF5F,0xEF60,0xEF61,0xEF62,0x210C,0x2111,0xEF63,0xEF64,0xEF65,0xEF66,0xEF67,0xEF68,0xEF69,0xEF6A,0x211C,0xEF6B,0xEF6C,0xEF6D,0xEF6E,0xEF6F,0xEF70,0xEF71,0x2128];var AMbbb=[0xEF8C,0xEF8D,0x2102,0xEF8E,0xEF8F,0xEF90,0xEF91,0x210D,0xEF92,0xEF93,0xEF94,0xEF95,0xEF96,0x2115,0xEF97,0x2119,0x211A,0x211D,0xEF98,0xEF99,0xEF9A,0xEF9B,0xEF9C,0xEF9D,0xEF9E,0x2124];var CONST=0,UNARY=1,BINARY=2,INFIX=3,LEFTBRACKET=4,RIGHTBRACKET=5,SPACE=6,UNDEROVER=7,DEFINITION=8,TEXT=9,BIG=10,LONG=11,STRETCHY=12,MATRIX=13;var AMsqrt={input:"\\sqrt",tag:"msqrt",output:"sqrt",ttype:UNARY},AMroot={input:"\\root",tag:"mroot",output:"root",ttype:BINARY},AMfrac={input:"\\frac",tag:"mfrac",output:"/",ttype:BINARY},AMover={input:"\\stackrel",tag:"mover",output:"stackrel",ttype:BINARY},AMatop={input:"\\atop",tag:"mfrac",output:"",ttype:INFIX},AMchoose={input:"\\choose",tag:"mfrac",output:"",ttype:INFIX},AMsub={input:"_",tag:"msub",output:"_",ttype:INFIX},AMsup={input:"^",tag:"msup",output:"^",ttype:INFIX},AMtext={input:"\\mathrm",tag:"mtext",output:"text",ttype:TEXT},AMmbox={input:"\\mbox",tag:"mtext",output:"mbox",ttype:TEXT};var AMsymbols=[{input:"\\alpha",tag:"mi",output:"\u03B1",ttype:CONST},{input:"\\beta",tag:"mi",output:"\u03B2",ttype:CONST},{input:"\\gamma",tag:"mi",output:"\u03B3",ttype:CONST},{input:"\\delta",tag:"mi",output:"\u03B4",ttype:CONST},{input:"\\epsilon",tag:"mi",output:"\u03B5",ttype:CONST},{input:"\\varepsilon",tag:"mi",output:"\u025B",ttype:CONST},{input:"\\zeta",tag:"mi",output:"\u03B6",ttype:CONST},{input:"\\eta",tag:"mi",output:"\u03B7",ttype:CONST},{input:"\\theta",tag:"mi",output:"\u03B8",ttype:CONST},{input:"\\vartheta",tag:"mi",output:"\u03D1",ttype:CONST},{input:"\\iota",tag:"mi",output:"\u03B9",ttype:CONST},{input:"\\kappa",tag:"mi",output:"\u03BA",ttype:CONST},{input:"\\lambda",tag:"mi",output:"\u03BB",ttype:CONST},{input:"\\mu",tag:"mi",output:"\u03BC",ttype:CONST},{input:"\\nu",tag:"mi",output:"\u03BD",ttype:CONST},{input:"\\xi",tag:"mi",output:"\u03BE",ttype:CONST},{input:"\\pi",tag:"mi",output:"\u03C0",ttype:CONST},{input:"\\varpi",tag:"mi",output:"\u03D6",ttype:CONST},{input:"\\rho",tag:"mi",output:"\u03C1",ttype:CONST},{input:"\\varrho",tag:"mi",output:"\u03F1",ttype:CONST},{input:"\\varsigma",tag:"mi",output:"\u03C2",ttype:CONST},{input:"\\sigma",tag:"mi",output:"\u03C3",ttype:CONST},{input:"\\tau",tag:"mi",output:"\u03C4",ttype:CONST},{input:"\\upsilon",tag:"mi",output:"\u03C5",ttype:CONST},{input:"\\phi",tag:"mi",output:"\u03C6",ttype:CONST},{input:"\\varphi",tag:"mi",output:"\u03D5",ttype:CONST},{input:"\\chi",tag:"mi",output:"\u03C7",ttype:CONST},{input:"\\psi",tag:"mi",output:"\u03C8",ttype:CONST},{input:"\\omega",tag:"mi",output:"\u03C9",ttype:CONST},{input:"\\Gamma",tag:"mo",output:"\u0393",ttype:CONST},{input:"\\Delta",tag:"mo",output:"\u0394",ttype:CONST},{input:"\\Theta",tag:"mo",output:"\u0398",ttype:CONST},{input:"\\Lambda",tag:"mo",output:"\u039B",ttype:CONST},{input:"\\Xi",tag:"mo",output:"\u039E",ttype:CONST},{input:"\\Pi",tag:"mo",output:"\u03A0",ttype:CONST},{input:"\\Sigma",tag:"mo",output:"\u03A3",ttype:CONST},{input:"\\Upsilon",tag:"mo",output:"\u03A5",ttype:CONST},{input:"\\Phi",tag:"mo",output:"\u03A6",ttype:CONST},{input:"\\Psi",tag:"mo",output:"\u03A8",ttype:CONST},{input:"\\Omega",tag:"mo",output:"\u03A9",ttype:CONST},{input:"\\frac12",tag:"mo",output:"\u00BD",ttype:CONST},{input:"\\frac14",tag:"mo",output:"\u00BC",ttype:CONST},{input:"\\frac34",tag:"mo",output:"\u00BE",ttype:CONST},{input:"\\frac13",tag:"mo",output:"\u2153",ttype:CONST},{input:"\\frac23",tag:"mo",output:"\u2154",ttype:CONST},{input:"\\frac15",tag:"mo",output:"\u2155",ttype:CONST},{input:"\\frac25",tag:"mo",output:"\u2156",ttype:CONST},{input:"\\frac35",tag:"mo",output:"\u2157",ttype:CONST},{input:"\\frac45",tag:"mo",output:"\u2158",ttype:CONST},{input:"\\frac16",tag:"mo",output:"\u2159",ttype:CONST},{input:"\\frac56",tag:"mo",output:"\u215A",ttype:CONST},{input:"\\frac18",tag:"mo",output:"\u215B",ttype:CONST},{input:"\\frac38",tag:"mo",output:"\u215C",ttype:CONST},{input:"\\frac58",tag:"mo",output:"\u215D",ttype:CONST},{input:"\\frac78",tag:"mo",output:"\u215E",ttype:CONST},{input:"\\pm",tag:"mo",output:"\u00B1",ttype:CONST},{input:"\\mp",tag:"mo",output:"\u2213",ttype:CONST},{input:"\\triangleleft",tag:"mo",output:"\u22B2",ttype:CONST},{input:"\\triangleright",tag:"mo",output:"\u22B3",ttype:CONST},{input:"\\cdot",tag:"mo",output:"\u22C5",ttype:CONST},{input:"\\star",tag:"mo",output:"\u22C6",ttype:CONST},{input:"\\ast",tag:"mo",output:"\u002A",ttype:CONST},{input:"\\times",tag:"mo",output:"\u00D7",ttype:CONST},{input:"\\div",tag:"mo",output:"\u00F7",ttype:CONST},{input:"\\circ",tag:"mo",output:"\u2218",ttype:CONST},{input:"\\bullet",tag:"mo",output:"\u2022",ttype:CONST},{input:"\\oplus",tag:"mo",output:"\u2295",ttype:CONST},{input:"\\ominus",tag:"mo",output:"\u2296",ttype:CONST},{input:"\\otimes",tag:"mo",output:"\u2297",ttype:CONST},{input:"\\bigcirc",tag:"mo",output:"\u25CB",ttype:CONST},{input:"\\oslash",tag:"mo",output:"\u2298",ttype:CONST},{input:"\\odot",tag:"mo",output:"\u2299",ttype:CONST},{input:"\\land",tag:"mo",output:"\u2227",ttype:CONST},{input:"\\wedge",tag:"mo",output:"\u2227",ttype:CONST},{input:"\\lor",tag:"mo",output:"\u2228",ttype:CONST},{input:"\\vee",tag:"mo",output:"\u2228",ttype:CONST},{input:"\\cap",tag:"mo",output:"\u2229",ttype:CONST},{input:"\\cup",tag:"mo",output:"\u222A",ttype:CONST},{input:"\\sqcap",tag:"mo",output:"\u2293",ttype:CONST},{input:"\\sqcup",tag:"mo",output:"\u2294",ttype:CONST},{input:"\\uplus",tag:"mo",output:"\u228E",ttype:CONST},{input:"\\amalg",tag:"mo",output:"\u2210",ttype:CONST},{input:"\\bigtriangleup",tag:"mo",output:"\u25B3",ttype:CONST},{input:"\\bigtriangledown",tag:"mo",output:"\u25BD",ttype:CONST},{input:"\\dag",tag:"mo",output:"\u2020",ttype:CONST},{input:"\\dagger",tag:"mo",output:"\u2020",ttype:CONST},{input:"\\ddag",tag:"mo",output:"\u2021",ttype:CONST},{input:"\\ddagger",tag:"mo",output:"\u2021",ttype:CONST},{input:"\\lhd",tag:"mo",output:"\u22B2",ttype:CONST},{input:"\\rhd",tag:"mo",output:"\u22B3",ttype:CONST},{input:"\\unlhd",tag:"mo",output:"\u22B4",ttype:CONST},{input:"\\unrhd",tag:"mo",output:"\u22B5",ttype:CONST},{input:"\\sum",tag:"mo",output:"\u2211",ttype:UNDEROVER},{input:"\\prod",tag:"mo",output:"\u220F",ttype:UNDEROVER},{input:"\\bigcap",tag:"mo",output:"\u22C2",ttype:UNDEROVER},{input:"\\bigcup",tag:"mo",output:"\u22C3",ttype:UNDEROVER},{input:"\\bigwedge",tag:"mo",output:"\u22C0",ttype:UNDEROVER},{input:"\\bigvee",tag:"mo",output:"\u22C1",ttype:UNDEROVER},{input:"\\bigsqcap",tag:"mo",output:"\u2A05",ttype:UNDEROVER},{input:"\\bigsqcup",tag:"mo",output:"\u2A06",ttype:UNDEROVER},{input:"\\coprod",tag:"mo",output:"\u2210",ttype:UNDEROVER},{input:"\\bigoplus",tag:"mo",output:"\u2A01",ttype:UNDEROVER},{input:"\\bigotimes",tag:"mo",output:"\u2A02",ttype:UNDEROVER},{input:"\\bigodot",tag:"mo",output:"\u2A00",ttype:UNDEROVER},{input:"\\biguplus",tag:"mo",output:"\u2A04",ttype:UNDEROVER},{input:"\\int",tag:"mo",output:"\u222B",ttype:CONST},{input:"\\oint",tag:"mo",output:"\u222E",ttype:CONST},{input:":=",tag:"mo",output:":=",ttype:CONST},{input:"\\lt",tag:"mo",output:"<",ttype:CONST},{input:"\\gt",tag:"mo",output:">",ttype:CONST},{input:"\\ne",tag:"mo",output:"\u2260",ttype:CONST},{input:"\\neq",tag:"mo",output:"\u2260",ttype:CONST},{input:"\\le",tag:"mo",output:"\u2264",ttype:CONST},{input:"\\leq",tag:"mo",output:"\u2264",ttype:CONST},{input:"\\leqslant",tag:"mo",output:"\u2264",ttype:CONST},{input:"\\ge",tag:"mo",output:"\u2265",ttype:CONST},{input:"\\geq",tag:"mo",output:"\u2265",ttype:CONST},{input:"\\geqslant",tag:"mo",output:"\u2265",ttype:CONST},{input:"\\equiv",tag:"mo",output:"\u2261",ttype:CONST},{input:"\\ll",tag:"mo",output:"\u226A",ttype:CONST},{input:"\\gg",tag:"mo",output:"\u226B",ttype:CONST},{input:"\\doteq",tag:"mo",output:"\u2250",ttype:CONST},{input:"\\prec",tag:"mo",output:"\u227A",ttype:CONST},{input:"\\succ",tag:"mo",output:"\u227B",ttype:CONST},{input:"\\preceq",tag:"mo",output:"\u227C",ttype:CONST},{input:"\\succeq",tag:"mo",output:"\u227D",ttype:CONST},{input:"\\subset",tag:"mo",output:"\u2282",ttype:CONST},{input:"\\supset",tag:"mo",output:"\u2283",ttype:CONST},{input:"\\subseteq",tag:"mo",output:"\u2286",ttype:CONST},{input:"\\supseteq",tag:"mo",output:"\u2287",ttype:CONST},{input:"\\sqsubset",tag:"mo",output:"\u228F",ttype:CONST},{input:"\\sqsupset",tag:"mo",output:"\u2290",ttype:CONST},{input:"\\sqsubseteq",tag:"mo",output:"\u2291",ttype:CONST},{input:"\\sqsupseteq",tag:"mo",output:"\u2292",ttype:CONST},{input:"\\sim",tag:"mo",output:"\u223C",ttype:CONST},{input:"\\simeq",tag:"mo",output:"\u2243",ttype:CONST},{input:"\\approx",tag:"mo",output:"\u2248",ttype:CONST},{input:"\\cong",tag:"mo",output:"\u2245",ttype:CONST},{input:"\\Join",tag:"mo",output:"\u22C8",ttype:CONST},{input:"\\bowtie",tag:"mo",output:"\u22C8",ttype:CONST},{input:"\\in",tag:"mo",output:"\u2208",ttype:CONST},{input:"\\ni",tag:"mo",output:"\u220B",ttype:CONST},{input:"\\owns",tag:"mo",output:"\u220B",ttype:CONST},{input:"\\propto",tag:"mo",output:"\u221D",ttype:CONST},{input:"\\vdash",tag:"mo",output:"\u22A2",ttype:CONST},{input:"\\dashv",tag:"mo",output:"\u22A3",ttype:CONST},{input:"\\models",tag:"mo",output:"\u22A8",ttype:CONST},{input:"\\perp",tag:"mo",output:"\u22A5",ttype:CONST},{input:"\\smile",tag:"mo",output:"\u2323",ttype:CONST},{input:"\\frown",tag:"mo",output:"\u2322",ttype:CONST},{input:"\\asymp",tag:"mo",output:"\u224D",ttype:CONST},{input:"\\notin",tag:"mo",output:"\u2209",ttype:CONST},{input:"\\begin{eqnarray}",output:"X",ttype:MATRIX,invisible:true},{input:"\\begin{array}",output:"X",ttype:MATRIX,invisible:true},{input:"\\\\",output:"}&{",ttype:DEFINITION},{input:"\\end{eqnarray}",output:"}}",ttype:DEFINITION},{input:"\\end{array}",output:"}}",ttype:DEFINITION},{input:"\\big",tag:"mo",output:"X",atval:"1.2",ieval:"2.2",ttype:BIG},{input:"\\Big",tag:"mo",output:"X",atval:"1.6",ieval:"2.6",ttype:BIG},{input:"\\bigg",tag:"mo",output:"X",atval:"2.2",ieval:"3.2",ttype:BIG},{input:"\\Bigg",tag:"mo",output:"X",atval:"2.9",ieval:"3.9",ttype:BIG},{input:"\\left",tag:"mo",output:"X",ttype:LEFTBRACKET},{input:"\\right",tag:"mo",output:"X",ttype:RIGHTBRACKET},{input:"{",output:"{",ttype:LEFTBRACKET,invisible:true},{input:"}",output:"}",ttype:RIGHTBRACKET,invisible:true},{input:"(",tag:"mo",output:"(",atval:"1",ttype:STRETCHY},{input:"[",tag:"mo",output:"[",atval:"1",ttype:STRETCHY},{input:"\\lbrack",tag:"mo",output:"[",atval:"1",ttype:STRETCHY},{input:"\\{",tag:"mo",output:"{",atval:"1",ttype:STRETCHY},{input:"\\lbrace",tag:"mo",output:"{",atval:"1",ttype:STRETCHY},{input:"\\langle",tag:"mo",output:"\u2329",atval:"1",ttype:STRETCHY},{input:"\\lfloor",tag:"mo",output:"\u230A",atval:"1",ttype:STRETCHY},{input:"\\lceil",tag:"mo",output:"\u2308",atval:"1",ttype:STRETCHY},{input:")",tag:"mo",output:")",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"]",tag:"mo",output:"]",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\rbrack",tag:"mo",output:"]",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\}",tag:"mo",output:"}",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\rbrace",tag:"mo",output:"}",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\rangle",tag:"mo",output:"\u232A",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\rfloor",tag:"mo",output:"\u230B",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\rceil",tag:"mo",output:"\u2309",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"|",tag:"mo",output:"\u2223",atval:"1",ttype:STRETCHY},{input:"\\|",tag:"mo",output:"\u2225",atval:"1",ttype:STRETCHY},{input:"\\vert",tag:"mo",output:"\u2223",atval:"1",ttype:STRETCHY},{input:"\\Vert",tag:"mo",output:"\u2225",atval:"1",ttype:STRETCHY},{input:"\\mid",tag:"mo",output:"\u2223",atval:"1",ttype:STRETCHY},{input:"\\parallel",tag:"mo",output:"\u2225",atval:"1",ttype:STRETCHY},{input:"/",tag:"mo",output:"/",atval:"1.01",ttype:STRETCHY},{input:"\\backslash",tag:"mo",output:"\u2216",atval:"1",ttype:STRETCHY},{input:"\\setminus",tag:"mo",output:"\\",ttype:CONST},{input:"\\!",tag:"mspace",atname:"width",atval:"-0.167em",ttype:SPACE},{input:"\\,",tag:"mspace",atname:"width",atval:"0.167em",ttype:SPACE},{input:"\\>",tag:"mspace",atname:"width",atval:"0.222em",ttype:SPACE},{input:"\\:",tag:"mspace",atname:"width",atval:"0.222em",ttype:SPACE},{input:"\\;",tag:"mspace",atname:"width",atval:"0.278em",ttype:SPACE},{input:"~",tag:"mspace",atname:"width",atval:"0.333em",ttype:SPACE},{input:"\\quad",tag:"mspace",atname:"width",atval:"1em",ttype:SPACE},{input:"\\qquad",tag:"mspace",atname:"width",atval:"2em",ttype:SPACE},{input:"\\prime",tag:"mo",output:"\u2032",ttype:CONST},{input:"'",tag:"mo",output:"\u02B9",ttype:CONST},{input:"''",tag:"mo",output:"\u02BA",ttype:CONST},{input:"'''",tag:"mo",output:"\u2034",ttype:CONST},{input:"''''",tag:"mo",output:"\u2057",ttype:CONST},{input:"\\ldots",tag:"mo",output:"\u2026",ttype:CONST},{input:"\\cdots",tag:"mo",output:"\u22EF",ttype:CONST},{input:"\\vdots",tag:"mo",output:"\u22EE",ttype:CONST},{input:"\\ddots",tag:"mo",output:"\u22F1",ttype:CONST},{input:"\\forall",tag:"mo",output:"\u2200",ttype:CONST},{input:"\\exists",tag:"mo",output:"\u2203",ttype:CONST},{input:"\\Re",tag:"mo",output:"\u211C",ttype:CONST},{input:"\\Im",tag:"mo",output:"\u2111",ttype:CONST},{input:"\\aleph",tag:"mo",output:"\u2135",ttype:CONST},{input:"\\hbar",tag:"mo",output:"\u210F",ttype:CONST},{input:"\\ell",tag:"mo",output:"\u2113",ttype:CONST},{input:"\\wp",tag:"mo",output:"\u2118",ttype:CONST},{input:"\\emptyset",tag:"mo",output:"\u2205",ttype:CONST},{input:"\\infty",tag:"mo",output:"\u221E",ttype:CONST},{input:"\\surd",tag:"mo",output:"\\sqrt{}",ttype:DEFINITION},{input:"\\partial",tag:"mo",output:"\u2202",ttype:CONST},{input:"\\nabla",tag:"mo",output:"\u2207",ttype:CONST},{input:"\\triangle",tag:"mo",output:"\u25B3",ttype:CONST},{input:"\\therefore",tag:"mo",output:"\u2234",ttype:CONST},{input:"\\angle",tag:"mo",output:"\u2220",ttype:CONST},{input:"\\diamond",tag:"mo",output:"\u22C4",ttype:CONST},{input:"\\Diamond",tag:"mo",output:"\u25C7",ttype:CONST},{input:"\\neg",tag:"mo",output:"\u00AC",ttype:CONST},{input:"\\lnot",tag:"mo",output:"\u00AC",ttype:CONST},{input:"\\bot",tag:"mo",output:"\u22A5",ttype:CONST},{input:"\\top",tag:"mo",output:"\u22A4",ttype:CONST},{input:"\\square",tag:"mo",output:"\u25AB",ttype:CONST},{input:"\\Box",tag:"mo",output:"\u25A1",ttype:CONST},{input:"\\wr",tag:"mo",output:"\u2240",ttype:CONST},{input:"\\arccos",tag:"mi",output:"arccos",ttype:UNARY,func:true},{input:"\\arcsin",tag:"mi",output:"arcsin",ttype:UNARY,func:true},{input:"\\arctan",tag:"mi",output:"arctan",ttype:UNARY,func:true},{input:"\\arg",tag:"mi",output:"arg",ttype:UNARY,func:true},{input:"\\cos",tag:"mi",output:"cos",ttype:UNARY,func:true},{input:"\\cosh",tag:"mi",output:"cosh",ttype:UNARY,func:true},{input:"\\cot",tag:"mi",output:"cot",ttype:UNARY,func:true},{input:"\\coth",tag:"mi",output:"coth",ttype:UNARY,func:true},{input:"\\csc",tag:"mi",output:"csc",ttype:UNARY,func:true},{input:"\\deg",tag:"mi",output:"deg",ttype:UNARY,func:true},{input:"\\det",tag:"mi",output:"det",ttype:UNARY,func:true},{input:"\\dim",tag:"mi",output:"dim",ttype:UNARY,func:true},{input:"\\exp",tag:"mi",output:"exp",ttype:UNARY,func:true},{input:"\\gcd",tag:"mi",output:"gcd",ttype:UNARY,func:true},{input:"\\hom",tag:"mi",output:"hom",ttype:UNARY,func:true},{input:"\\inf",tag:"mo",output:"inf",ttype:UNDEROVER},{input:"\\ker",tag:"mi",output:"ker",ttype:UNARY,func:true},{input:"\\lg",tag:"mi",output:"lg",ttype:UNARY,func:true},{input:"\\lim",tag:"mo",output:"lim",ttype:UNDEROVER},{input:"\\liminf",tag:"mo",output:"liminf",ttype:UNDEROVER},{input:"\\limsup",tag:"mo",output:"limsup",ttype:UNDEROVER},{input:"\\ln",tag:"mi",output:"ln",ttype:UNARY,func:true},{input:"\\log",tag:"mi",output:"log",ttype:UNARY,func:true},{input:"\\max",tag:"mo",output:"max",ttype:UNDEROVER},{input:"\\min",tag:"mo",output:"min",ttype:UNDEROVER},{input:"\\Pr",tag:"mi",output:"Pr",ttype:UNARY,func:true},{input:"\\sec",tag:"mi",output:"sec",ttype:UNARY,func:true},{input:"\\sin",tag:"mi",output:"sin",ttype:UNARY,func:true},{input:"\\sinh",tag:"mi",output:"sinh",ttype:UNARY,func:true},{input:"\\sup",tag:"mo",output:"sup",ttype:UNDEROVER},{input:"\\tan",tag:"mi",output:"tan",ttype:UNARY,func:true},{input:"\\tanh",tag:"mi",output:"tanh",ttype:UNARY,func:true},{input:"\\gets",tag:"mo",output:"\u2190",ttype:CONST},{input:"\\leftarrow",tag:"mo",output:"\u2190",ttype:CONST},{input:"\\to",tag:"mo",output:"\u2192",ttype:CONST},{input:"\\rightarrow",tag:"mo",output:"\u2192",ttype:CONST},{input:"\\leftrightarrow",tag:"mo",output:"\u2194",ttype:CONST},{input:"\\uparrow",tag:"mo",output:"\u2191",ttype:CONST},{input:"\\downarrow",tag:"mo",output:"\u2193",ttype:CONST},{input:"\\updownarrow",tag:"mo",output:"\u2195",ttype:CONST},{input:"\\Leftarrow",tag:"mo",output:"\u21D0",ttype:CONST},{input:"\\Rightarrow",tag:"mo",output:"\u21D2",ttype:CONST},{input:"\\Leftrightarrow",tag:"mo",output:"\u21D4",ttype:CONST},{input:"\\iff",tag:"mo",output:"~\\Longleftrightarrow~",ttype:DEFINITION},{input:"\\Uparrow",tag:"mo",output:"\u21D1",ttype:CONST},{input:"\\Downarrow",tag:"mo",output:"\u21D3",ttype:CONST},{input:"\\Updownarrow",tag:"mo",output:"\u21D5",ttype:CONST},{input:"\\mapsto",tag:"mo",output:"\u21A6",ttype:CONST},{input:"\\longleftarrow",tag:"mo",output:"\u2190",ttype:LONG},{input:"\\longrightarrow",tag:"mo",output:"\u2192",ttype:LONG},{input:"\\longleftrightarrow",tag:"mo",output:"\u2194",ttype:LONG},{input:"\\Longleftarrow",tag:"mo",output:"\u21D0",ttype:LONG},{input:"\\Longrightarrow",tag:"mo",output:"\u21D2",ttype:LONG},{input:"\\Longleftrightarrow",tag:"mo",output:"\u21D4",ttype:LONG},{input:"\\longmapsto",tag:"mo",output:"\u21A6",ttype:CONST},AMsqrt,AMroot,AMfrac,AMover,AMsub,AMsup,AMtext,AMmbox,AMatop,AMchoose,{input:"\\acute",tag:"mover",output:"\u00B4",ttype:UNARY,acc:true},{input:"\\grave",tag:"mover",output:"\u0060",ttype:UNARY,acc:true},{input:"\\breve",tag:"mover",output:"\u02D8",ttype:UNARY,acc:true},{input:"\\check",tag:"mover",output:"\u02C7",ttype:UNARY,acc:true},{input:"\\dot",tag:"mover",output:".",ttype:UNARY,acc:true},{input:"\\ddot",tag:"mover",output:"..",ttype:UNARY,acc:true},{input:"\\mathring",tag:"mover",output:"\u00B0",ttype:UNARY,acc:true},{input:"\\vec",tag:"mover",output:"\u20D7",ttype:UNARY,acc:true},{input:"\\overrightarrow",tag:"mover",output:"\u20D7",ttype:UNARY,acc:true},{input:"\\overleftarrow",tag:"mover",output:"\u20D6",ttype:UNARY,acc:true},{input:"\\hat",tag:"mover",output:"\u005E",ttype:UNARY,acc:true},{input:"\\widehat",tag:"mover",output:"\u0302",ttype:UNARY,acc:true},{input:"\\tilde",tag:"mover",output:"~",ttype:UNARY,acc:true},{input:"\\widetilde",tag:"mover",output:"\u02DC",ttype:UNARY,acc:true},{input:"\\bar",tag:"mover",output:"\u203E",ttype:UNARY,acc:true},{input:"\\overbrace",tag:"mover",output:"\uFE37",ttype:UNARY,acc:true},{input:"\\overbracket",tag:"mover",output:"\u23B4",ttype:UNARY,acc:true},{input:"\\overline",tag:"mover",output:"\u00AF",ttype:UNARY,acc:true},{input:"\\underbrace",tag:"munder",output:"\uFE38",ttype:UNARY,acc:true},{input:"\\underbracket",tag:"munder",output:"\u23B5",ttype:UNARY,acc:true},{input:"\\underline",tag:"munder",output:"\u00AF",ttype:UNARY,acc:true},{input:"\\displaystyle",tag:"mstyle",atname:"displaystyle",atval:"true",ttype:UNARY},{input:"\\textstyle",tag:"mstyle",atname:"displaystyle",atval:"false",ttype:UNARY},{input:"\\scriptstyle",tag:"mstyle",atname:"scriptlevel",atval:"1",ttype:UNARY},{input:"\\scriptscriptstyle",tag:"mstyle",atname:"scriptlevel",atval:"2",ttype:UNARY},{input:"\\textrm",tag:"mstyle",output:"\\mathrm",ttype:DEFINITION},{input:"\\mathbf",tag:"mstyle",atname:"mathvariant",atval:"bold",ttype:UNARY},{input:"\\textbf",tag:"mstyle",atname:"mathvariant",atval:"bold",ttype:UNARY},{input:"\\mathit",tag:"mstyle",atname:"mathvariant",atval:"italic",ttype:UNARY},{input:"\\textit",tag:"mstyle",atname:"mathvariant",atval:"italic",ttype:UNARY},{input:"\\mathtt",tag:"mstyle",atname:"mathvariant",atval:"monospace",ttype:UNARY},{input:"\\texttt",tag:"mstyle",atname:"mathvariant",atval:"monospace",ttype:UNARY},{input:"\\mathsf",tag:"mstyle",atname:"mathvariant",atval:"sans-serif",ttype:UNARY},{input:"\\mathbb",tag:"mstyle",atname:"mathvariant",atval:"double-struck",ttype:UNARY,codes:AMbbb},{input:"\\mathcal",tag:"mstyle",atname:"mathvariant",atval:"script",ttype:UNARY,codes:AMcal},{input:"\\mathfrak",tag:"mstyle",atname:"mathvariant",atval:"fraktur",ttype:UNARY,codes:AMfrk},{input:"\\textcolor",tag:"mstyle",atname:"mathvariant",atval:"mathcolor",ttype:BINARY},{input:"\\colorbox",tag:"mstyle",atname:"mathvariant",atval:"background",ttype:BINARY}];function compareNames(s1,s2){if(s1.input>s2.input)return 1-else return-1;}-var AMnames=[];function AMinitSymbols(){AMsymbols.sort(compareNames);for(i=0;i<AMsymbols.length;i++)AMnames[i]=AMsymbols[i].input;}-var AMmathml="http://www.w3.org/1998/Math/MathML";function AMcreateElementMathML(t){if(isIE)return document.createElement("m:"+t);else return document.createElementNS(AMmathml,t);}-function AMcreateMmlNode(t,frag){if(isIE)var node=document.createElement("m:"+t);else var node=document.createElementNS(AMmathml,t);node.appendChild(frag);return node;}-function newcommand(oldstr,newstr){AMsymbols=AMsymbols.concat([{input:oldstr,tag:"mo",output:newstr,ttype:DEFINITION}]);}-function AMremoveCharsAndBlanks(str,n){var st;st=str.slice(n);for(var i=0;i<st.length&&st.charCodeAt(i)<=32;i=i+1);return st.slice(i);}-function AMposition(arr,str,n){if(n==0){var h,m;n=-1;h=arr.length;while(n+1<h){m=(n+h)>>1;if(arr[m]<str)n=m;else h=m;}-return h;}else-for(var i=n;i<arr.length&&arr[i]<str;i++);return i;}-function AMgetSymbol(str){var k=0;var j=0;var mk;var st;var tagst;var match="";var more=true;for(var i=1;i<=str.length&&more;i++){st=str.slice(0,i);j=k;k=AMposition(AMnames,st,j);if(k<AMnames.length&&str.slice(0,AMnames[k].length)==AMnames[k]){match=AMnames[k];mk=k;i=match.length;}-more=k<AMnames.length&&str.slice(0,AMnames[k].length)>=AMnames[k];}-AMpreviousSymbol=AMcurrentSymbol;if(match!=""){AMcurrentSymbol=AMsymbols[mk].ttype;return AMsymbols[mk];}-AMcurrentSymbol=CONST;k=1;st=str.slice(0,1);if("0"<=st&&st<="9")tagst="mn";else tagst=(("A">st||st>"Z")&&("a">st||st>"z")?"mo":"mi");return{input:st,tag:tagst,output:st,ttype:CONST};}-var AMpreviousSymbol,AMcurrentSymbol;function AMparseSexpr(str){var symbol,node,result,result2,i,st,newFrag=document.createDocumentFragment();str=AMremoveCharsAndBlanks(str,0);symbol=AMgetSymbol(str);if(symbol==null||symbol.ttype==RIGHTBRACKET)-return[null,str,null];if(symbol.ttype==DEFINITION){str=symbol.output+AMremoveCharsAndBlanks(str,symbol.input.length);symbol=AMgetSymbol(str);if(symbol==null||symbol.ttype==RIGHTBRACKET)-return[null,str,null];}-str=AMremoveCharsAndBlanks(str,symbol.input.length);switch(symbol.ttype){case SPACE:node=AMcreateElementMathML(symbol.tag);node.setAttribute(symbol.atname,symbol.atval);return[node,str,symbol.tag];case UNDEROVER:if(isIE){if(symbol.input.substr(0,4)=="\\big"){str="\\"+symbol.input.substr(4)+str;symbol=AMgetSymbol(str);symbol.ttype=UNDEROVER;str=AMremoveCharsAndBlanks(str,symbol.input.length);}}-return[AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)),str,symbol.tag];case CONST:var output=symbol.output;if(isIE){if(symbol.input=="'")-output="\u2032";else if(symbol.input=="''")-output="\u2033";else if(symbol.input=="'''")-output="\u2033\u2032";else if(symbol.input=="''''")-output="\u2033\u2033";else if(symbol.input=="\\square")-output="\u25A1";else if(symbol.input.substr(0,5)=="\\frac"){var denom=symbol.input.substr(6,1);if(denom=="5"||denom=="6"){str=symbol.input.replace(/\\frac/,"\\frac ")+str;return[node,str,symbol.tag];}}}-node=AMcreateMmlNode(symbol.tag,document.createTextNode(output));return[node,str,symbol.tag];case LONG:node=AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output));node.setAttribute("minsize","1.5");node.setAttribute("maxsize","1.5");node=AMcreateMmlNode("mover",node);node.appendChild(AMcreateElementMathML("mspace"));return[node,str,symbol.tag];case STRETCHY:if(isIE&&symbol.input=="\\backslash")-symbol.output="\\";node=AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output));if(symbol.input=="|"||symbol.input=="\\vert"||symbol.input=="\\|"||symbol.input=="\\Vert"){node.setAttribute("lspace","0em");node.setAttribute("rspace","0em");}-node.setAttribute("maxsize",symbol.atval);if(symbol.rtag!=null)-return[node,str,symbol.rtag];else-return[node,str,symbol.tag];case BIG:var atval=symbol.atval;if(isIE)-atval=symbol.ieval;symbol=AMgetSymbol(str);if(symbol==null)-return[null,str,null];str=AMremoveCharsAndBlanks(str,symbol.input.length);node=AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output));if(isIE){var space=AMcreateElementMathML("mspace");space.setAttribute("height",atval+"ex");node=AMcreateMmlNode("mrow",node);node.appendChild(space);}else{node.setAttribute("minsize",atval);node.setAttribute("maxsize",atval);}-return[node,str,symbol.tag];case LEFTBRACKET:if(symbol.input=="\\left"){symbol=AMgetSymbol(str);if(symbol!=null){if(symbol.input==".")-symbol.invisible=true;str=AMremoveCharsAndBlanks(str,symbol.input.length);}}-result=AMparseExpr(str,true,false);if(symbol==null||(typeof symbol.invisible=="boolean"&&symbol.invisible))-node=AMcreateMmlNode("mrow",result[0]);else{node=AMcreateMmlNode("mo",document.createTextNode(symbol.output));node=AMcreateMmlNode("mrow",node);node.appendChild(result[0]);}-return[node,result[1],result[2]];case MATRIX:if(symbol.input=="\\begin{array}"){var mask="";symbol=AMgetSymbol(str);str=AMremoveCharsAndBlanks(str,0);if(symbol==null)-mask="l";else{str=AMremoveCharsAndBlanks(str,symbol.input.length);if(symbol.input!="{")-mask="l";else do{symbol=AMgetSymbol(str);if(symbol!=null){str=AMremoveCharsAndBlanks(str,symbol.input.length);if(symbol.input!="}")-mask=mask+symbol.input;}}while(symbol!=null&&symbol.input!=""&&symbol.input!="}");}-result=AMparseExpr("{"+str,true,true);node=AMcreateMmlNode("mtable",result[0]);mask=mask.replace(/l/g,"left ");mask=mask.replace(/r/g,"right ");mask=mask.replace(/c/g,"center ");node.setAttribute("columnalign",mask);node.setAttribute("displaystyle","false");if(isIE)-return[node,result[1],null];var lspace=AMcreateElementMathML("mspace");lspace.setAttribute("width","0.167em");var rspace=AMcreateElementMathML("mspace");rspace.setAttribute("width","0.167em");var node1=AMcreateMmlNode("mrow",lspace);node1.appendChild(node);node1.appendChild(rspace);return[node1,result[1],null];}else{result=AMparseExpr("{"+str,true,true);node=AMcreateMmlNode("mtable",result[0]);if(isIE)-node.setAttribute("columnspacing","0.25em");else-node.setAttribute("columnspacing","0.167em");node.setAttribute("columnalign","right center left");node.setAttribute("displaystyle","true");node=AMcreateMmlNode("mrow",node);return[node,result[1],null];}-case TEXT:if(str.charAt(0)=="{")i=str.indexOf("}");else i=0;if(i==-1)-i=str.length;st=str.slice(1,i);if(st.charAt(0)==" "){node=AMcreateElementMathML("mspace");node.setAttribute("width","0.33em");newFrag.appendChild(node);}-newFrag.appendChild(AMcreateMmlNode(symbol.tag,document.createTextNode(st)));if(st.charAt(st.length-1)==" "){node=AMcreateElementMathML("mspace");node.setAttribute("width","0.33em");newFrag.appendChild(node);}-str=AMremoveCharsAndBlanks(str,i+1);return[AMcreateMmlNode("mrow",newFrag),str,null];case UNARY:result=AMparseSexpr(str);if(result[0]==null)return[AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)),str];if(typeof symbol.func=="boolean"&&symbol.func){st=str.charAt(0);if(st=="^"||st=="_"||st==","){return[AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)),str,symbol.tag];}else{node=AMcreateMmlNode("mrow",AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)));if(isIE){var space=AMcreateElementMathML("mspace");space.setAttribute("width","0.167em");node.appendChild(space);}-node.appendChild(result[0]);return[node,result[1],symbol.tag];}}-if(symbol.input=="\\sqrt"){if(isIE){var space=AMcreateElementMathML("mspace");space.setAttribute("height","1.2ex");space.setAttribute("width","0em");node=AMcreateMmlNode(symbol.tag,result[0])-node.appendChild(space);return[node,result[1],symbol.tag];}else-return[AMcreateMmlNode(symbol.tag,result[0]),result[1],symbol.tag];}else if(typeof symbol.acc=="boolean"&&symbol.acc){node=AMcreateMmlNode(symbol.tag,result[0]);var output=symbol.output;if(isIE){if(symbol.input=="\\hat")-output="\u0302";else if(symbol.input=="\\widehat")-output="\u005E";else if(symbol.input=="\\bar")-output="\u00AF";else if(symbol.input=="\\grave")-output="\u0300";else if(symbol.input=="\\tilde")-output="\u0303";}-var node1=AMcreateMmlNode("mo",document.createTextNode(output));if(symbol.input=="\\vec"||symbol.input=="\\check")-node1.setAttribute("maxsize","1.2");if(isIE&&symbol.input=="\\bar")-node1.setAttribute("maxsize","0.5");if(symbol.input=="\\underbrace"||symbol.input=="\\underline")-node1.setAttribute("accentunder","true");else-node1.setAttribute("accent","true");node.appendChild(node1);if(symbol.input=="\\overbrace"||symbol.input=="\\underbrace")-node.ttype=UNDEROVER;return[node,result[1],symbol.tag];}else{if(!isIE&&typeof symbol.codes!="undefined"){for(i=0;i<result[0].childNodes.length;i++)-if(result[0].childNodes[i].nodeName=="mi"||result[0].nodeName=="mi"){st=(result[0].nodeName=="mi"?result[0].firstChild.nodeValue:result[0].childNodes[i].firstChild.nodeValue);var newst=[];for(var j=0;j<st.length;j++)-if(st.charCodeAt(j)>64&&st.charCodeAt(j)<91)newst=newst+-String.fromCharCode(symbol.codes[st.charCodeAt(j)-65]);else newst=newst+st.charAt(j);if(result[0].nodeName=="mi")-result[0]=AMcreateElementMathML("mo").appendChild(document.createTextNode(newst));else result[0].replaceChild(AMcreateElementMathML("mo").appendChild(document.createTextNode(newst)),result[0].childNodes[i]);}}-node=AMcreateMmlNode(symbol.tag,result[0]);node.setAttribute(symbol.atname,symbol.atval);if(symbol.input=="\\scriptstyle"||symbol.input=="\\scriptscriptstyle")-node.setAttribute("displaystyle","false");return[node,result[1],symbol.tag];}-case BINARY:result=AMparseSexpr(str);if(result[0]==null)return[AMcreateMmlNode("mo",document.createTextNode(symbol.input)),str,null];result2=AMparseSexpr(result[1]);if(result2[0]==null)return[AMcreateMmlNode("mo",document.createTextNode(symbol.input)),str,null];if(symbol.input=="\\textcolor"||symbol.input=="\\colorbox"){var tclr=str.match(/\{\s*([#\w]+)\s*\}/);str=str.replace(/\{\s*[#\w]+\s*\}/,"");if(tclr!=null){if(IsColorName.test(tclr[1].toLowerCase())){tclr=LaTeXColor[tclr[1].toLowerCase()];}else{tclr=tclr[1];}-node=AMcreateElementMathML("mstyle");node.setAttribute(symbol.atval,tclr);node.appendChild(result2[0]);return[node,result2[1],symbol.tag];}}-if(symbol.input=="\\root"||symbol.input=="\\stackrel")newFrag.appendChild(result2[0]);newFrag.appendChild(result[0]);if(symbol.input=="\\frac")newFrag.appendChild(result2[0]);return[AMcreateMmlNode(symbol.tag,newFrag),result2[1],symbol.tag];case INFIX:str=AMremoveCharsAndBlanks(str,symbol.input.length);return[AMcreateMmlNode("mo",document.createTextNode(symbol.output)),str,symbol.tag];default:return[AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)),str,symbol.tag];}}-function AMparseIexpr(str){var symbol,sym1,sym2,node,result,tag,underover;str=AMremoveCharsAndBlanks(str,0);sym1=AMgetSymbol(str);result=AMparseSexpr(str);node=result[0];str=result[1];tag=result[2];symbol=AMgetSymbol(str);if(symbol.ttype==INFIX){str=AMremoveCharsAndBlanks(str,symbol.input.length);result=AMparseSexpr(str);if(result[0]==null)-result[0]=AMcreateMmlNode("mo",document.createTextNode("\u25A1"));str=result[1];tag=result[2];if(symbol.input=="_"||symbol.input=="^"){sym2=AMgetSymbol(str);tag=null;underover=((sym1.ttype==UNDEROVER)||(node.ttype==UNDEROVER));if(symbol.input=="_"&&sym2.input=="^"){str=AMremoveCharsAndBlanks(str,sym2.input.length);var res2=AMparseSexpr(str);str=res2[1];tag=res2[2];node=AMcreateMmlNode((underover?"munderover":"msubsup"),node);node.appendChild(result[0]);node.appendChild(res2[0]);}else if(symbol.input=="_"){node=AMcreateMmlNode((underover?"munder":"msub"),node);node.appendChild(result[0]);}else{node=AMcreateMmlNode((underover?"mover":"msup"),node);node.appendChild(result[0]);}-node=AMcreateMmlNode("mrow",node);}else{node=AMcreateMmlNode(symbol.tag,node);if(symbol.input=="\\atop"||symbol.input=="\\choose")-node.setAttribute("linethickness","0ex");node.appendChild(result[0]);if(symbol.input=="\\choose")-node=AMcreateMmlNode("mfenced",node);}}-return[node,str,tag];}-function AMparseExpr(str,rightbracket,matrix){var symbol,node,result,i,tag,newFrag=document.createDocumentFragment();do{str=AMremoveCharsAndBlanks(str,0);result=AMparseIexpr(str);node=result[0];str=result[1];tag=result[2];symbol=AMgetSymbol(str);if(node!=undefined){if((tag=="mn"||tag=="mi")&&symbol!=null&&typeof symbol.func=="boolean"&&symbol.func){var space=AMcreateElementMathML("mspace");space.setAttribute("width","0.167em");node=AMcreateMmlNode("mrow",node);node.appendChild(space);}-newFrag.appendChild(node);}}while((symbol.ttype!=RIGHTBRACKET)&&symbol!=null&&symbol.output!="");tag=null;if(symbol.ttype==RIGHTBRACKET){if(symbol.input=="\\right"){str=AMremoveCharsAndBlanks(str,symbol.input.length);symbol=AMgetSymbol(str);if(symbol!=null&&symbol.input==".")-symbol.invisible=true;if(symbol!=null)-tag=symbol.rtag;}-if(symbol!=null)-str=AMremoveCharsAndBlanks(str,symbol.input.length);var len=newFrag.childNodes.length;if(matrix&&len>0&&newFrag.childNodes[len-1].nodeName=="mrow"&&len>1&&newFrag.childNodes[len-2].nodeName=="mo"&&newFrag.childNodes[len-2].firstChild.nodeValue=="&"){var pos=[];var m=newFrag.childNodes.length;for(i=0;matrix&&i<m;i=i+2){pos[i]=[];node=newFrag.childNodes[i];for(var j=0;j<node.childNodes.length;j++)-if(node.childNodes[j].firstChild.nodeValue=="&")-pos[i][pos[i].length]=j;}-var row,frag,n,k,table=document.createDocumentFragment();for(i=0;i<m;i=i+2){row=document.createDocumentFragment();frag=document.createDocumentFragment();node=newFrag.firstChild;n=node.childNodes.length;k=0;for(j=0;j<n;j++){if(typeof pos[i][k]!="undefined"&&j==pos[i][k]){node.removeChild(node.firstChild);row.appendChild(AMcreateMmlNode("mtd",frag));k++;}else frag.appendChild(node.firstChild);}-row.appendChild(AMcreateMmlNode("mtd",frag));if(newFrag.childNodes.length>2){newFrag.removeChild(newFrag.firstChild);newFrag.removeChild(newFrag.firstChild);}-table.appendChild(AMcreateMmlNode("mtr",row));}-return[table,str];}-if(typeof symbol.invisible!="boolean"||!symbol.invisible){node=AMcreateMmlNode("mo",document.createTextNode(symbol.output));newFrag.appendChild(node);}}-return[newFrag,str,tag];}-function AMparseMath(str){var result,node=AMcreateElementMathML("mstyle");var cclr=str.match(/\\color\s*\{\s*([#\w]+)\s*\}/);str=str.replace(/\\color\s*\{\s*[#\w]+\s*\}/g,"");if(cclr!=null){if(IsColorName.test(cclr[1].toLowerCase())){cclr=LaTeXColor[cclr[1].toLowerCase()];}else{cclr=cclr[1];}-node.setAttribute("mathcolor",cclr);}else{if(mathcolor!="")node.setAttribute("mathcolor",mathcolor);};if(mathfontfamily!="")node.setAttribute("fontfamily",mathfontfamily);node.appendChild(AMparseExpr(str.replace(/^\s+/g,""),false,false)[0]);node=AMcreateMmlNode("math",node);if(showasciiformulaonhover)-node.setAttribute("title",str.replace(/\s+/g," "));if(false){var fnode=AMcreateElementXHTML("font");fnode.setAttribute("face",mathfontfamily);fnode.appendChild(node);return fnode;}-return node;}-function AMstrarr2docFrag(arr,linebreaks){var newFrag=document.createDocumentFragment();var expr=false;for(var i=0;i<arr.length;i++){if(expr)newFrag.appendChild(AMparseMath(arr[i]));else{var arri=(linebreaks?arr[i].split("\n\n"):[arr[i]]);newFrag.appendChild(AMcreateElementXHTML("span").appendChild(document.createTextNode(arri[0])));for(var j=1;j<arri.length;j++){newFrag.appendChild(AMcreateElementXHTML("p"));newFrag.appendChild(AMcreateElementXHTML("span").appendChild(document.createTextNode(arri[j])));}}-expr=!expr;}-return newFrag;}-function AMprocessNodeR(n,linebreaks){var mtch,str,arr,frg,i;if(n.childNodes.length==0){if((n.nodeType!=8||linebreaks)&&n.parentNode.nodeName!="form"&&n.parentNode.nodeName!="FORM"&&n.parentNode.nodeName!="textarea"&&n.parentNode.nodeName!="TEXTAREA"&&n.parentNode.nodeName!="pre"&&n.parentNode.nodeName!="PRE"){str=n.nodeValue;if(!(str==null)){str=str.replace(/\r\n\r\n/g,"\n\n");str=str.replace(/\x20+/g," ");str=str.replace(/\s*\r\n/g," ");mtch=(str.indexOf("\$")==-1?false:true);str=str.replace(/([^\\])\$/g,"$1 \$");str=str.replace(/^\$/," \$");arr=str.split(" \$");for(i=0;i<arr.length;i++)-arr[i]=arr[i].replace(/\\\$/g,"\$");if(arr.length>1||mtch){if(checkForMathML){checkForMathML=false;var nd=AMisMathMLavailable();AMnoMathML=nd!=null;if(AMnoMathML&&notifyIfNoMathML)-if(alertIfNoMathML)-alert("To view the ASCIIMathML notation use Internet Explorer 6 +\nMathPlayer (free from www.dessci.com)\nor Firefox/Mozilla/Netscape");else AMbody.insertBefore(nd,AMbody.childNodes[0]);}-if(!AMnoMathML){frg=AMstrarr2docFrag(arr,n.nodeType==8);var len=frg.childNodes.length;n.parentNode.replaceChild(frg,n);return len-1;}else return 0;}}}else return 0;}else if(n.nodeName!="math"){for(i=0;i<n.childNodes.length;i++)-i+=AMprocessNodeR(n.childNodes[i],linebreaks);}-return 0;}-function AMprocessNode(n,linebreaks,spanclassAM){var frag,st;if(spanclassAM!=null){frag=document.getElementsByTagName("span")-for(var i=0;i<frag.length;i++)-if(frag[i].className=="AM")-AMprocessNodeR(frag[i],linebreaks);}else{try{st=n.innerHTML;}catch(err){}-if(st==null||st.indexOf("\$")!=-1)-AMprocessNodeR(n,linebreaks);}-if(isIE){frag=document.getElementsByTagName('math');for(var i=0;i<frag.length;i++)frag[i].update()}}-var inAppendix=false;var sectionCntr=0;var IEcommentWarning=true;var biblist=[];var bibcntr=0;var LaTeXCounter=[];LaTeXCounter["definition"]=0;LaTeXCounter["proposition"]=0;LaTeXCounter["lemma"]=0;LaTeXCounter["theorem"]=0;LaTeXCounter["corollary"]=0;LaTeXCounter["example"]=0;LaTeXCounter["exercise"]=0;LaTeXCounter["subsection"]=0;LaTeXCounter["subsubsection"]=0;LaTeXCounter["figure"]=0;LaTeXCounter["equation"]=0;LaTeXCounter["table"]=0;var LaTeXColor=[];LaTeXColor["greenyellow"]="#D9FF4F";LaTeXColor["yellow"]="#FFFF00";LaTeXColor["goldenrod"]="#FFE529";LaTeXColor["dandelion"]="#FFB529";LaTeXColor["apricot"]="#FFAD7A";LaTeXColor["peach"]="#FF804D";LaTeXColor["melon"]="#FF8A80";LaTeXColor["yelloworange"]="#FF9400";LaTeXColor["orange"]="#FF6321";LaTeXColor["burntorange"]="#FF7D00";LaTeXColor["bittersweet"]="#C20300";LaTeXColor["redorange"]="#FF3B21";LaTeXColor["mahogany"]="#A60000";LaTeXColor["maroon"]="#AD0000";LaTeXColor["brickred"]="#B80000";LaTeXColor["red"]="#FF0000";LaTeXColor["orangered"]="#FF0080";LaTeXColor["rubinered"]="#FF00DE";LaTeXColor["wildstrawberry"]="#FF0A9C";LaTeXColor["salmon"]="#FF789E";LaTeXColor["carnationpink"]="#FF5EFF";LaTeXColor["magenta"]="#FF00FF";LaTeXColor["violetred"]="#FF30FF";LaTeXColor["rhodamine"]="#FF2EFF";LaTeXColor["mulberry"]="#A314FA";LaTeXColor["redviolet"]="#9600A8";LaTeXColor["fuchsia"]="#7303EB";LaTeXColor["lavender"]="#FF85FF";LaTeXColor["thistle"]="#E069FF";LaTeXColor["orchid"]="#AD5CFF";LaTeXColor["darkorchid"]="#9933CC";LaTeXColor["purple"]="#8C24FF";LaTeXColor["plum"]="#8000FF";LaTeXColor["violet"]="#361FFF";LaTeXColor["royalpurple"]="#401AFF";LaTeXColor["blueviolet"]="#1A0DF5";LaTeXColor["periwinkle"]="#6E73FF";LaTeXColor["cadetblue"]="#616EC4";LaTeXColor["cornflowerblue"]="#59DEFF";LaTeXColor["midnightblue"]="#007091";LaTeXColor["navyblue"]="#0F75FF";LaTeXColor["royalblue"]="#0080FF";LaTeXColor["blue"]="#0000FF";LaTeXColor["cerulean"]="#0FE3FF";LaTeXColor["cyan"]="#00FFFF";LaTeXColor["processblue"]="#0AFFFF";LaTeXColor["skyblue"]="#61FFE0";LaTeXColor["turquoise"]="#26FFCC";LaTeXColor["tealblue"]="#1FFAA3";LaTeXColor["aquamarine"]="#2EFFB2";LaTeXColor["bluegreen"]="#26FFAB";LaTeXColor["emerald"]="#00FF80";LaTeXColor["junglegreen"]="#03FF7A";LaTeXColor["seagreen"]="#4FFF80";LaTeXColor["green"]="#00FF00";LaTeXColor["forestgreen"]="#00E000";LaTeXColor["pinegreen"]="#00BF29";LaTeXColor["limegreen"]="#80FF00";LaTeXColor["yellowgreen"]="#8FFF42";LaTeXColor["springgreen"]="#BDFF3D";LaTeXColor["olivegreen"]="#009900";LaTeXColor["rawsienna"]="#8C0000";LaTeXColor["sepia"]="#4D0000";LaTeXColor["brown"]="#660000";LaTeXColor["tan"]="#DB9470";LaTeXColor["gray"]="#808080";LaTeXColor["grey"]="#808080";LaTeXColor["black"]="#000000";LaTeXColor["white"]="#FFFFFF";var IsColorName=/^(?:greenyellow|yellow|goldenrod|dandelion|apricot|peach|melon|yelloworange|orange|burntorange|bittersweet|redorange|mahogany|maroon|brickred|red|orangered|rubinered|wildstrawberry|salmon|carnationpink|magenta|violetred|rhodamine|mulberry|redviolet|fuchsia|lavender|thistle|orchid|darkorchid|purple|plum|violet|royalpurple|blueviolet|periwinkle|cadetblue|cornflowerblue|midnightblue|navyblue|royalblue|blue|cerulean|cyan|processblue|skyblue|turquoise|tealblue|aquamarine|bluegreen|emerald|junglegreen|seagreen|green|forestgreen|pinegreen|limegreen|yellowgreen|springgreen|olivegreen|rawsienna|sepia|brown|tan|gray|grey|black|white)$/;var IsCounter=/^(?:definition|proposition|lemma|theorem|corollary|example|exercise|subsection|subsubsection|figure|equation|table)$/;var IsLaTeXElement=/^(?:displayequation|title|author|address|date|abstract|keyword|section|subsection|subsubsection|ref|cite|thebibliography|definition|proposition|lemma|theorem|corollary|example|exercise|itemize|enumerate|enddefinition|endproposition|endlemma|endtheorem|endcorollary|endexample|endexercise|enditemize|endenumerate|LaTeXMathMLlabel|LaTeXMathML|smallskip|medskip|bigskip|quote|quotation|endquote|endquotation|center|endcenter|description|enddescription|inlinemath)$/;var IsTextOnlyArea=/^(?:form|textarea|pre)$/i;var tableid=0;function makeNumberString(cntr){if(sectionCntr>0){if(inAppendix){return"A"+sectionCntr+"."+cntr;}else{return sectionCntr+"."+cntr;}}else{return""+cntr;}};function LaTeXpreProcess(thebody){var TheBody=thebody;if(TheBody.hasChildNodes()){if(!(IsLaTeXElement.test(TheBody.className)))-{for(var i=0;i<TheBody.childNodes.length;i++){LaTeXpreProcess(TheBody.childNodes[i])}}}-else{if(TheBody.nodeType==3&&!(IsTextOnlyArea.test(TheBody.parentNode.nodeName)))-{var str=TheBody.nodeValue;if(!(str==null)){str=str.replace(/\\%/g,"<per>");str=str.replace(/%[^\n]*(?=\n)/g,"");str=str.replace(/%[^\r]*(?=\r)/g,"");str=str.replace(/%[^\n]*$/,"")-if(isIE&&str.match(/%/g)!=null&&IEcommentWarning){alert("Comments may not have parsed properly.  Try putting in <pre class='LaTeX><div>..</div></pre> structure.");IEcommentWarning=false;}-str=str.replace(/<per>/g,"%");if(str.match(/XXX[\s\S]*/)!=null){var tmp=str.match(/XXX[\s\S]*/)[0];var tmpstr=tmp.charCodeAt(7)+"::"+tmp.charCodeAt(8)+"::"+tmp.charCodeAt(9)+"::"+tmp.charCodeAt(10)+"::"+tmp.charCodeAt(11)+"::"+tmp.charCodeAt(12)+"::"+tmp.charCodeAt(13);alert(tmpstr);}-str=str.replace(/([^\\])\\(\s)/g,"$1\u00A0$2");str=str.replace(/\\quad/g,"\u2001");str=str.replace(/\\qquad/g,"\u2001\u2001");str=str.replace(/\\enspace/g,"\u2002");str=str.replace(/\\;/g,"\u2004");str=str.replace(/\\:/g,"\u2005");str=str.replace(/\\,/g,"\u2006");str=str.replace(/\\thinspace/g,"\u200A");str=str.replace(/([^\\])~/g,"$1\u00A0");str=str.replace(/\\~/g,"~");str=str.replace(/\\\[/g," <DEQ> $\\displaystyle{");str=str.replace(/\\\]/g,"}$ <DEQ> ");str=str.replace(/\$\$/g,"${$<DEQ>$}$");str=str.replace(/\\begin\s*\{\s*array\s*\}/g,"\\begin{array}");str=str.replace(/\\end\s*\{\s*array\s*\}/g,"\\end{array}");str=str.replace(/\\begin\s*\{\s*eqnarray\s*\}/g,"  <DEQ>eqno$\\begin{eqnarray}");str=str.replace(/\\end\s*\{\s*eqnarray\s*\}/g,"\\end{eqnarray}$<DEQ>  ");str=str.replace(/\\begin\s*\{\s*eqnarray\*\s*\}/g,"  <DEQ>$\\begin{eqnarray}");str=str.replace(/\\end\s*\{\s*eqnarray\*\s*\}/g,"\\end{eqnarray}$<DEQ>  ");str=str.replace(/\\begin\s*\{\s*displaymath\s*\}/g," <DEQ> $\\displaystyle{");str=str.replace(/\\end\s*\{\s*displaymath\s*\}/g,"}$ <DEQ> ");str=str.replace(/\\begin\s*\{\s*equation\s*\*\s*\}/g," <DEQ> $\\displaystyle{");str=str.replace(/\\end\s*\{\s*equation\s*\*\s*\}/g,"}$ <DEQ> ");str=str.replace(/\\begin\s*\{\s*equation\s*\}/g," <DEQ>eqno$\\displaystyle{");str=str.replace(/\\end\s*\{\s*equation\s*\}/g,"}$ <DEQ> ");str=str.split("<DEQ>");var newFrag=document.createDocumentFragment();for(var i=0;i<str.length;i++){if(i%2){var DEQtable=document.createElement("table");DEQtable.className='displayequation';var DEQtbody=document.createElement("tbody");var DEQtr=document.createElement("tr");var DEQtdeq=document.createElement("td");DEQtdeq.className='eq';str[i]=str[i].replace(/\$\}\$/g,"$\\displaystyle{");str[i]=str[i].replace(/\$\{\$/g,"}");var lbl=str[i].match(/\\label\s*\{\s*(\w+)\s*\}/);var ISeqno=str[i].match(/^eqno/);str[i]=str[i].replace(/^eqno/," ");str[i]=str[i].replace(/\\label\s*\{\s*\w+\s*\}/," ");DEQtdeq.appendChild(document.createTextNode(str[i]));DEQtr.appendChild(DEQtdeq);str[i]=str[i].replace(/\\nonumber/g,"");if(ISeqno!=null||lbl!=null){var DEQtdno=document.createElement("td");DEQtdno.className='eqno';LaTeXCounter["equation"]++;var eqnoString=makeNumberString(LaTeXCounter["equation"]);var DEQanchor=document.createElement("a");if(lbl!=null){DEQanchor.id=lbl[1]};DEQanchor.className="eqno";var anchorSpan=document.createElement("span");anchorSpan.className="eqno";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(eqnoString));DEQanchor.appendChild(anchorSpan);DEQtdno.appendChild(DEQanchor);var DEQspan=document.createElement("span");DEQspan.className="eqno";DEQspan.appendChild(document.createTextNode("("+eqnoString+")"));DEQtdno.appendChild(DEQspan);DEQtr.appendChild(DEQtdno);}-DEQtbody.appendChild(DEQtr);DEQtable.appendChild(DEQtbody);newFrag.appendChild(DEQtable);}-else{str[i]=str[i].replace(/\$\}\$/g,"");str[i]=str[i].replace(/\$\{\$/g,"");str[i]=str[i].replace(/\\maketitle/g,"");str[i]=str[i].replace(/\\begin\s*\{\s*document\s*\}/g,"");str[i]=str[i].replace(/\\end\s*\{\s*document\s*\}/g,"");str[i]=str[i].replace(/\\documentclass[^\}]*?\}/g,"");str[i]=str[i].replace(/\\usepackage[^\}]*?\}/g,"");str[i]=str[i].replace(/\\noindent/g,"");str[i]=str[i].replace(/\\notag/g,"");str[i]=str[i].replace(/\\ref\s*\{\s*(\w+)\}/g," \\[ref\\]$1\\[ ");str[i]=str[i].replace(/\\url\s*\{\s*([^\}\n]+)\}/g," \\[url\\]$1\\[ ");str[i]=str[i].replace(/\\href\s*\{\s*([^\}]+)\}\s*\{\s*([^\}]+)\}/g," \\[href\\]$1\\]$2\\[ ");str[i]=str[i].replace(/\\cite\s*\{\s*(\w+)\}/g," \\[cite\\]$1\\[ ");str[i]=str[i].replace(/\\qed/g,"\u220E");str[i]=str[i].replace(/\\endproof/g,"\u220E");str[i]=str[i].replace(/\\proof/g,"\\textbf{Proof: }");str[i]=str[i].replace(/\\n(?=\s)/g," \\[br\\] \\[ ");str[i]=str[i].replace(/\\newline/g," \\[br\\] \\[ ");str[i]=str[i].replace(/\\linebreak/g," \\[br\\] \\[ ");str[i]=str[i].replace(/\\smallskip/g," \\[logicalbreak\\]smallskip\\[ ");str[i]=str[i].replace(/\\medskip/g," \\[logicalbreak\\]medskip\\[ ");str[i]=str[i].replace(/\\bigskip/g," \\[logicalbreak\\]bigskip\\[ ");str[i]=str[i].replace(/[\n\r]+[ \f\n\r\t\v\u2028\u2029]*[\n\r]+/g," \\[logicalbreak\\]LaTeXMathML\\[ ");if(isIE){str[i]=str[i].replace(/\r/g," ");}-str[i]=str[i].replace(/\\bibitem\s*([^\{]*\{\s*\w*\s*\})/g," \\[bibitem\\]$1\\[ ");str[i]=str[i].replace(/\\bibitem\s*/g," \\[bibitem\\] \\[ ");str[i]=str[i].replace(/\\item\s*\[\s*(\w+)\s*\]/g," \\[alistitem\\]$1\\[ ");str[i]=str[i].replace(/\\item\s*/g," \\[alistitem\\] \\[ ");str[i]=str[i].replace(/\\appendix/g," \\[appendix\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*figure\s*\}([\s\S]+?)\\end\s*\{\s*figure\s*\}/g," \\[figure\\]$1\\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*table\s*\}([\s\S]+?)\\end\s*\{\s*table\s*\}/g," \\[table\\]$1\\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*theorem\s*\}/g," \\[theorem\\]Theorem \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*theorem\s*\}/g," \\[endtheorem\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*definition\s*\}/g," \\[definition\\]Definition \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*definition\s*\}/g," \\[enddefinition\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*lemma\s*\}/g," \\[lemma\\]Lemma \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*lemma\s*\}/g," \\[endlemma\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*corollary\s*\}/g," \\[corollary\\]Corollary \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*corollary\s*\}/g," \\[endcorollary\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*proposition\s*\}/g," \\[proposition\\]Proposition \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*proposition\s*\}/g," \\[endproposition\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*example\s*\}/g," \\[example\\]Example \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*example\s*\}/g," \\[endexample\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*exercise\s*\}/g," \\[exercise\\]Exercise \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*exercise\s*\}/g," \\[endexercise\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*thebibliography\s*\}\s*\{\s*\w+\s*\}/g," \\[thebibliography\\]References \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*thebibliography\s*\}/g," \\[thebibliography\\]References \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*thebibliography\s*\}/g," \\[endthebibliography\\]References \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*proof\s*\}/g," \\[proof\\]Proof: \\[ ");if(isIE){str[i]=str[i].replace(/\\end\s*\{\s*proof\s*\}/g,"\u220E \\[endproof\\] \\[ ");}else{str[i]=str[i].replace(/\\end\s*\{\s*proof\s*\}/g," \\[endproof\\] \\[ ");}-str[i]=str[i].replace(/\\title\s*\{\s*([^\}]+)\}/g," \\[title\\] \\[$1 \\[endtitle\\] \\[ ");str[i]=str[i].replace(/\\author\s*\{\s*([^\}]+)\}/g," \\[author\\] \\[$1 \\[endauthor\\] \\[ ");str[i]=str[i].replace(/\\address\s*\{\s*([^\}]+)\}/g," \\[address\\] \\[$1 \\[endaddress\\] \\[ ");str[i]=str[i].replace(/\\date\s*\{\s*([^\}]+)\}/g," \\[date\\] \\[$1 \\[enddate\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*keyword\s*\}/g," \\[keyword\\] \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*keyword\s*\}/g," \\[endkeyword\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*abstract\s*\}/g," \\[abstract\\] \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*abstract\s*\}/g," \\[endabstract\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*(?!array|tabular)(\w+)\s*\}/g," \\[$1\\] \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*(?!array|tabular)(\w+)\s*\}/g," \\[end$1\\] \\[ ");var sectionIndex=str[i].search(/\\section\s*\{\s*[\s\S]+\}/);while(sectionIndex>=0){str[i]=str[i].replace(/\\section\s*\{/," \\[section\\]");var delimcnt=1;for(var ii=sectionIndex;ii<str[i].length;ii++){if(str[i].charAt(ii)=="{"){delimcnt++};if(str[i].charAt(ii)=="}"){delimcnt--};if(delimcnt==0){str[i]=str[i].substring(0,ii)+"\\[ "+str[i].substring(ii+1,str[i].length);break;}};sectionIndex=str[i].search(/\\section\s*\{\s*[\s\S]+\}/);}-sectionIndex=str[i].search(/\\subsection\s*\{\s*[\s\S]+\}/);while(sectionIndex>=0){str[i]=str[i].replace(/\\subsection\s*\{/," \\[subsection\\]");var delimcnt=1;for(var ii=sectionIndex;ii<str[i].length;ii++){if(str[i].charAt(ii)=="{"){delimcnt++};if(str[i].charAt(ii)=="}"){delimcnt--};if(delimcnt==0){str[i]=str[i].substring(0,ii)+"\\[ "+str[i].substring(ii+1,str[i].length);break;}};sectionIndex=str[i].search(/\\subsection\s*\{\s*[\s\S]+\}/);}-sectionIndex=str[i].search(/\\subsubsection\s*\{\s*[\s\S]+\}/);while(sectionIndex>=0){str[i]=str[i].replace(/\\subsubsection\s*\{/," \\[subsubsection\\]");var delimcnt=1;for(var ii=sectionIndex;ii<str[i].length;ii++){if(str[i].charAt(ii)=="{"){delimcnt++};if(str[i].charAt(ii)=="}"){delimcnt--};if(delimcnt==0){str[i]=str[i].substring(0,ii)+"\\[ "+str[i].substring(ii+1,str[i].length);break;}};sectionIndex=str[i].search(/\\subsubsection\s*\{\s*[\s\S]+\}/);}-var CatToNextEven="";var strtmp=str[i].split("\\[");for(var j=0;j<strtmp.length;j++){if(j%2){var strtmparray=strtmp[j].split("\\]");switch(strtmparray[0]){case"section":var nodeTmp=document.createElement("H2");nodeTmp.className='section';sectionCntr++;for(var div in LaTeXCounter){LaTeXCounter[div]=0};var nodeAnchor=document.createElement("a");if(inAppendix){nodeAnchor.className='appendixsection';}else{nodeAnchor.className='section';}-var nodeNumString=makeNumberString("");var anchorSpan=document.createElement("span");anchorSpan.className="section";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(nodeNumString));nodeAnchor.appendChild(anchorSpan);nodeTmp.appendChild(nodeAnchor);var nodeSpan=document.createElement("span");nodeSpan.className='section';nodeSpan.appendChild(document.createTextNode(nodeNumString+" "));nodeTmp.appendChild(nodeSpan);nodeTmp.appendChild(document.createTextNode(strtmparray[1]));newFrag.appendChild(nodeTmp);break;case"subsection":var nodeTmp=document.createElement("H3");nodeTmp.className='subsection';LaTeXCounter["subsection"]++;LaTeXCounter["subsubsection"]=0;var nodeAnchor=document.createElement("a");nodeAnchor.className='subsection';var nodeNumString=makeNumberString(LaTeXCounter["subsection"]);var anchorSpan=document.createElement("span");anchorSpan.className="subsection";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(nodeNumString));nodeAnchor.appendChild(anchorSpan);nodeTmp.appendChild(nodeAnchor);var nodeSpan=document.createElement("span");nodeSpan.className='subsection';nodeSpan.appendChild(document.createTextNode(nodeNumString+". "));nodeTmp.appendChild(nodeSpan);nodeTmp.appendChild(document.createTextNode(strtmparray[1]));newFrag.appendChild(nodeTmp);break;case"subsubsection":var nodeTmp=document.createElement("H4");nodeTmp.className='subsubsection';LaTeXCounter["subsubsection"]++;var nodeAnchor=document.createElement("a");nodeAnchor.className='subsubsection';var nodeNumString=makeNumberString(LaTeXCounter["subsection"]+"."+LaTeXCounter["subsubsection"]);var anchorSpan=document.createElement("span");anchorSpan.className="subsubsection";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(nodeNumString));nodeAnchor.appendChild(anchorSpan);nodeTmp.appendChild(nodeAnchor);var nodeSpan=document.createElement("span");nodeSpan.className='subsubsection';nodeSpan.appendChild(document.createTextNode(nodeNumString+". "));nodeTmp.appendChild(nodeSpan);nodeTmp.appendChild(document.createTextNode(strtmparray[1]));newFrag.appendChild(nodeTmp);break;case"href":var nodeTmp=document.createElement("a");nodeTmp.className='LaTeXMathML';nodeTmp.href=strtmparray[1];nodeTmp.appendChild(document.createTextNode(strtmparray[2]));newFrag.appendChild(nodeTmp);break;case"url":var nodeTmp=document.createElement("a");nodeTmp.className='LaTeXMathML';nodeTmp.href=strtmparray[1];nodeTmp.appendChild(document.createTextNode(strtmparray[1]));newFrag.appendChild(nodeTmp);break;case"figure":var nodeTmp=document.createElement("table");nodeTmp.className='figure';var FIGtbody=document.createElement("tbody");var FIGlbl=strtmparray[1].match(/\\label\s*\{\s*(\w+)\s*\}/);strtmparray[1]=strtmparray[1].replace(/\\label\s*\{\w+\}/g,"");var capIndex=strtmparray[1].search(/\\caption\s*\{[\s\S]+\}/);var FIGcap="";if(capIndex>=0){var tmp=strtmparray[1];var delimcnt=0;var capstart=-1;for(var pos=capIndex;pos<tmp.length;pos++){if(tmp.charAt(pos)=="{"){delimcnt++};if(tmp.charAt(pos)=="}"){delimcnt--};if(delimcnt==1&&capstart<0){capstart=pos+1};if(delimcnt==0&&capstart>0){capend=pos-1;FIGcap=tmp.substring(capstart,pos);break}}}-var FIGtr2=document.createElement("tr");var FIGtd2=document.createElement("td");FIGtd2.className="caption";var FIGanchor=document.createElement("a");FIGanchor.className="figure";if(FIGlbl!=null){FIGanchor.id=FIGlbl[1];}-LaTeXCounter["figure"]++;var fignmbr=makeNumberString(LaTeXCounter["figure"]);var anchorSpan=document.createElement("span");anchorSpan.className="figure";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(fignmbr));FIGanchor.appendChild(anchorSpan);FIGtd2.appendChild(FIGanchor);var FIGspan=document.createElement("span");FIGspan.className="figure";FIGspan.appendChild(document.createTextNode("Figure "+fignmbr+". "));FIGtd2.appendChild(FIGspan);FIGtd2.appendChild(document.createTextNode(""+FIGcap));FIGtr2.appendChild(FIGtd2);FIGtbody.appendChild(FIGtr2);var IsSpecial=false;var FIGinfo=strtmparray[1].match(/\\includegraphics\s*\{([^\}]+)\}/);if(FIGinfo==null){FIGinfo=strtmparray[1].match(/\\includegraphics\s*\[[^\]]*\]\s*\{\s*([^\}]+)\s*\}/);}-if(FIGinfo==null){FIGinfo=strtmparray[1].match(/\\special\s*\{\s*([^\}]+)\}/);IsSpecial=true};if(FIGinfo!=null){var FIGtr1=document.createElement("tr");var FIGtd1=document.createElement("td");FIGtd1.className="image";var FIGimg=document.createElement("img");var FIGsrc=FIGinfo[1];FIGimg.src=FIGsrc;FIGimg.alt="Figure "+FIGsrc+" did not load";FIGimg.title="Figure "+fignmbr+". "+FIGcap;FIGimg.id="figure"+fignmbr;FIGtd1.appendChild(FIGimg);FIGtr1.appendChild(FIGtd1);FIGtbody.appendChild(FIGtr1);}-nodeTmp.appendChild(FIGtbody);newFrag.appendChild(nodeTmp);break;case"table":var nodeTmp=document.createElement("table");if(strtmparray[1].search(/\\centering/)>=0){nodeTmp.className='LaTeXtable centered';nodeTmp.align="center";}else{nodeTmp.className='LaTeXtable';};tableid++;nodeTmp.id="LaTeXtable"+tableid;var TABlbl=strtmparray[1].match(/\\label\s*\{\s*(\w+)\s*\}/);strtmparray[1]=strtmparray[1].replace(/\\label\s*\{\w+\}/g,"");var capIndex=strtmparray[1].search(/\\caption\s*\{[\s\S]+\}/);var TABcap="";if(capIndex>=0){var tmp=strtmparray[1];var delimcnt=0;var capstart=-1;for(var pos=capIndex;pos<tmp.length;pos++){if(tmp.charAt(pos)=="{"){delimcnt++};if(tmp.charAt(pos)=="}"){delimcnt--};if(delimcnt==1&&capstart<0){capstart=pos+1};if(delimcnt==0&&capstart>0){capend=pos-1;TABcap=tmp.substring(capstart,pos);break}}}-if(TABcap!=""){var TABtbody=document.createElement("tbody");var TABcaption=document.createElement("caption");TABcaption.className="LaTeXtable centered";var TABanchor=document.createElement("a");TABanchor.className="LaTeXtable";if(TABlbl!=null){TABanchor.id=TABlbl[1];}-LaTeXCounter["table"]++;var tabnmbr=makeNumberString(LaTeXCounter["table"]);var anchorSpan=document.createElement("span");anchorSpan.className="LaTeXtable";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(tabnmbr));TABanchor.appendChild(anchorSpan);TABcaption.appendChild(TABanchor);var TABspan=document.createElement("span");TABspan.className="LaTeXtable";TABspan.appendChild(document.createTextNode("Table "+tabnmbr+". "));TABcaption.appendChild(TABspan);TABcaption.appendChild(document.createTextNode(""+TABcap));nodeTmp.appendChild(TABcaption);}-var TABinfo=strtmparray[1].match(/\\begin\s*\{\s*tabular\s*\}([\s\S]+)\\end\s*\{\s*tabular\s*\}/);if(TABinfo!=null){var TABtbody=document.createElement('tbody');var TABrow=null;var TABcell=null;var row=0;var col=0;var TABalign=TABinfo[1].match(/^\s*\{([^\}]+)\}/);TABinfo=TABinfo[1].replace(/^\s*\{[^\}]+\}/,"");TABinfo=TABinfo.replace(/\\hline/g,"");TABalign[1]=TABalign[1].replace(/\|/g,"");TABalign[1]=TABalign[1].replace(/\s/g,"");TABinfo=TABinfo.split("\\\\");for(row=0;row<TABinfo.length;row++){TABrow=document.createElement("tr");TABinfo[row]=TABinfo[row].split("&");for(col=0;col<TABinfo[row].length;col++){TABcell=document.createElement("td");switch(TABalign[1].charAt(col)){case"l":TABcell.align="left";break;case"c":TABcell.align="center";break;case"r":TABcell.align="right";break;default:TABcell.align="left";};TABcell.appendChild(document.createTextNode(TABinfo[row][col]));TABrow.appendChild(TABcell);}-TABtbody.appendChild(TABrow);}-nodeTmp.appendChild(TABtbody);}-newFrag.appendChild(nodeTmp);break;case"logicalbreak":var nodeTmp=document.createElement("p");nodeTmp.className=strtmparray[1];nodeTmp.appendChild(document.createTextNode("\u00A0"));newFrag.appendChild(nodeTmp);break;case"appendix":inAppendix=true;sectionCntr=0;break;case"alistitem":var EndDiv=document.createElement("div");EndDiv.className="endlistitem";newFrag.appendChild(EndDiv);var BegDiv=document.createElement("div");BegDiv.className="listitem";if(strtmparray[1]!=" "){var BegSpan=document.createElement("span");BegSpan.className="listitemmarker";var boldBegSpan=document.createElement("b");boldBegSpan.appendChild(document.createTextNode(strtmparray[1]+" "));BegSpan.appendChild(boldBegSpan);BegDiv.appendChild(BegSpan);}-newFrag.appendChild(BegDiv);break;case"br":newFrag.appendChild(document.createElement("br"));break;case"bibitem":newFrag.appendChild(document.createElement("br"));var nodeTmp=document.createElement("a");nodeTmp.className='bibitem';var nodeSpan=document.createElement("span");nodeSpan.className='bibitem';bibcntr++;var lbl=strtmparray[1].match(/\{\s*(\w+)\s*\}/);strtmparray[1]=strtmparray[1].replace(/\s*\{\s*\w+\s*\}/g,"");strtmparray[1]=strtmparray[1].replace(/^\s*\[/,"");strtmparray[1]=strtmparray[1].replace(/\s*\]$/,"");strtmparray[1]=strtmparray[1].replace(/^\s+|\s+$/g,"");if(lbl==null){biblist[bibcntr]="bibitem"+bibcntr}else{biblist[bibcntr]=lbl[1];};nodeTmp.name=biblist[bibcntr];nodeTmp.id=biblist[bibcntr];if(strtmparray[1]!=""){nodeSpan.appendChild(document.createTextNode(strtmparray[1]));}else{nodeSpan.appendChild(document.createTextNode("["+bibcntr+"]"));}-nodeTmp.appendChild(nodeSpan);newFrag.appendChild(nodeTmp);break;case"cite":var nodeTmp=document.createElement("a");nodeTmp.className='cite';nodeTmp.name='cite';nodeTmp.href="#"+strtmparray[1];newFrag.appendChild(nodeTmp);break;case"ref":var nodeTmp=document.createElement("a");nodeTmp.className='ref';nodeTmp.name='ref';nodeTmp.href="#"+strtmparray[1];newFrag.appendChild(nodeTmp);break;default:var nodeTmp=document.createElement("div");nodeTmp.className=strtmparray[0];if(IsCounter.test(strtmparray[0])){LaTeXCounter[strtmparray[0]]++;var nodeAnchor=document.createElement("a");nodeAnchor.className=strtmparray[0];var divnum=makeNumberString(LaTeXCounter[strtmparray[0]]);var anchorSpan=document.createElement("span");anchorSpan.className=strtmparray[0];anchorSpan.appendChild(document.createTextNode(divnum));anchorSpan.style.display="none";nodeAnchor.appendChild(anchorSpan);nodeTmp.appendChild(nodeAnchor);var nodeSpan=document.createElement("span");nodeSpan.className=strtmparray[0];nodeSpan.appendChild(document.createTextNode(strtmparray[1]+" "+divnum+". "));nodeTmp.appendChild(nodeSpan);}-if(isIE){if(strtmparray[0]==("thebibliography"||"abstract"||"keyword"||"proof")){var nodeSpan=document.createElement("span");nodeSpan.className=strtmparray[0];nodeSpan.appendChild(document.createTextNode(strtmparray[1]));nodeTmp.appendChild(nodeSpan);}}-if(strtmparray[0]=="endenumerate"||strtmparray[0]=="enditemize"||strtmparray[0]=="enddescription"){var endDiv=document.createElement("div");endDiv.className="endlistitem";newFrag.appendChild(endDiv);}-newFrag.appendChild(nodeTmp);if(strtmparray[0]=="enumerate"||strtmparray[0]=="itemize"||strtmparray[0]=="description"){var endDiv=document.createElement("div");endDiv.className="listitem";newFrag.appendChild(endDiv);}}}else{strtmp[j]=strtmp[j].replace(/\\\$/g,"<per>");strtmp[j]=strtmp[j].replace(/\$([^\$]+)\$/g," \\[$1\\[ ");strtmp[j]=strtmp[j].replace(/<per>/g,"\\$");strtmp[j]=strtmp[j].replace(/\\begin\s*\{\s*math\s*\}([\s\S]+?)\\end\s*\{\s*math\s*\}/g," \\[$1\\[ ");var strtmptmp=strtmp[j].split("\\[");for(var jjj=0;jjj<strtmptmp.length;jjj++){if(jjj%2){var nodeTmp=document.createElement("span");nodeTmp.className='inlinemath';nodeTmp.appendChild(document.createTextNode("$"+strtmptmp[jjj]+"$"));newFrag.appendChild(nodeTmp);}else{var TagIndex=strtmptmp[jjj].search(/\\\w+/);var tmpIndex=TagIndex;while(tmpIndex>-1){if(/^\\textcolor/.test(strtmptmp[jjj].substring(TagIndex,strtmptmp[jjj].length))){strtmptmp[jjj]=strtmptmp[jjj].replace(/\\textcolor\s*\{\s*(\w+)\s*\}\s*/," \\[textcolor\\]$1\\]|");}else{if(/^\\colorbox/.test(strtmptmp[jjj].substring(TagIndex,strtmptmp[jjj].length))){strtmptmp[jjj]=strtmptmp[jjj].replace(/\\colorbox\s*\{\s*(\w+)\s*\}\s*/," \\[colorbox\\]$1\\]|");}else{strtmptmp[jjj]=strtmptmp[jjj].substring(0,TagIndex)+strtmptmp[jjj].substring(TagIndex,strtmptmp[jjj].length).replace(/\\\s*(\w+)\s*/," \\[$1\\]|");}}-TagIndex+=strtmptmp[jjj].substring(TagIndex,strtmptmp[jjj].length).search(/\|/);TagIndex++;strtmptmp[jjj]=strtmptmp[jjj].replace(/\\\]\|/,"\\] ");if(strtmptmp[jjj].charAt(TagIndex)=="{"){strtmptmp[jjj]=strtmptmp[jjj].substring(0,TagIndex)+strtmptmp[jjj].substring(TagIndex+1,strtmptmp[jjj].length);var delimcnt=1;for(var kk=TagIndex;kk<strtmptmp[jjj].length;kk++){if(strtmptmp[jjj].charAt(kk)=="{"){delimcnt++};if(strtmptmp[jjj].charAt(kk)=="}"){delimcnt--};if(delimcnt==0){break;}}-strtmptmp[jjj]=strtmptmp[jjj].substring(0,kk)+"\\[ "+strtmptmp[jjj].substring(kk+1,strtmptmp[jjj].length);TagIndex=kk+3;}else{strtmptmp[jjj]=strtmptmp[jjj].substring(0,TagIndex)+"\\[ "+strtmptmp[jjj].substring(TagIndex+1,strtmptmp[jjj].length);TagIndex=TagIndex+3;}-if(TagIndex<strtmptmp[jjj].length){tmpIndex=strtmptmp[jjj].substring(TagIndex,strtmptmp[jjj].length).search(/\\\w+/);}-else{tmpIndex=-1};TagIndex+=tmpIndex;}-strtmptmp[jjj]=strtmptmp[jjj].replace(/\\\\\s*\\\\/g,"\\\\");strtmptmp[jjj]=strtmptmp[jjj].replace(/\\\\/g," \\[br\\] \\[ ");strtmptmp[jjj]=strtmptmp[jjj].replace(/\\label\s*\{\s*(\w+)\s*\}/g," \\[a\\]$1\\[ ");var strlbls=strtmptmp[jjj].split("\\[");for(var jj=0;jj<strlbls.length;jj++){if(jj%2){var strtmparray=strlbls[jj].split("\\]");switch(strtmparray[0]){case"textcolor":var nodeTmp=document.createElement("span");nodeTmp.className='LaTeXColor';if(IsColorName.test(strtmparray[1].toLowerCase())){nodeTmp.style.color=LaTeXColor[strtmparray[1].toLowerCase()];}else{nodeTmp.style.color=strtmparray[1];};nodeTmp.appendChild(document.createTextNode(strtmparray[2]));newFrag.appendChild(nodeTmp);break;case"colorbox":var nodeTmp=document.createElement("span");nodeTmp.className='LaTeXColor';if(IsColorName.test(strtmparray[1].toLowerCase())){nodeTmp.style.background=LaTeXColor[strtmparray[1].toLowerCase()];}else{nodeTmp.style.background=strtmparray[1];};nodeTmp.appendChild(document.createTextNode(strtmparray[2]));newFrag.appendChild(nodeTmp);break;case"br":newFrag.appendChild(document.createElement("br"));break;case"a":var nodeTmp=document.createElement("a");nodeTmp.className='LaTeXMathMLlabel';nodeTmp.id=strtmparray[1];nodeTmp.style.display="none";newFrag.appendChild(nodeTmp);break;default:var nodeTmp=document.createElement("span");nodeTmp.className=strtmparray[0];nodeTmp.appendChild(document.createTextNode(strtmparray[1]))-newFrag.appendChild(nodeTmp);}}else{newFrag.appendChild(document.createTextNode(strlbls[jj]));}}}}}}}};TheBody.parentNode.replaceChild(newFrag,TheBody);}}}-return TheBody;}-function LaTeXDivsAndRefs(thebody){var TheBody=thebody;var EndDivClass=null;var AllDivs=TheBody.getElementsByTagName("div");var lbl2id="";var lblnode=null;for(var i=AllDivs.length-1;i>=0;i--){EndDivClass=AllDivs[i].className.match(/end\w+/);if(EndDivClass!=null){EndDivClass=EndDivClass[0];var DivClass=EndDivClass.substring(3,EndDivClass.length);var EndDivNode=AllDivs[i];break;}}-while(EndDivClass!=null){var newFrag=document.createDocumentFragment();var RootNode=EndDivNode.parentNode;var ClassCount=1;while(EndDivNode.previousSibling!=null&&ClassCount>0){switch(EndDivNode.previousSibling.className){case EndDivClass:ClassCount++;newFrag.insertBefore(EndDivNode.previousSibling,newFrag.firstChild);break;case DivClass:if(EndDivNode.previousSibling.nodeName=="DIV"){ClassCount--;if(lbl2id!=""){EndDivNode.previousSibling.id=lbl2id;lbl2id=""}-if(ClassCount==0){RootNode=EndDivNode.previousSibling;}else{newFrag.insertBefore(EndDivNode.previousSibling,newFrag.firstChild);}};break;case'LaTeXMathMLlabel':lbl2id=EndDivNode.previousSibling.id;EndDivNode.parentNode.removeChild(EndDivNode.previousSibling);break;default:newFrag.insertBefore(EndDivNode.previousSibling,newFrag.firstChild);}}-RootNode.appendChild(newFrag);EndDivNode.parentNode.removeChild(EndDivNode);AllDivs=TheBody.getElementsByTagName("DIV");for(i=AllDivs.length-1;i>=0;i--){EndDivClass=AllDivs[i].className.match(/end\w+/);if(EndDivClass!=null){ClassCount=0;EndDivClass=EndDivClass[0];DivClass=EndDivClass.substring(3,EndDivClass.length);EndDivNode=AllDivs[i];RootNode=EndDivNode.parentNode;break;}}}-var AllDivs=TheBody.getElementsByTagName("div");var DIV2LI=null;for(var i=0;i<AllDivs.length;i++){if(AllDivs[i].className=="itemize"||AllDivs[i].className=="enumerate"||AllDivs[i].className=="description"){if(AllDivs[i].className=="itemize"){RootNode=document.createElement("UL");}else{RootNode=document.createElement("OL");}-RootNode.className='LaTeXMathML';if(AllDivs[i].hasChildNodes()){AllDivs[i].removeChild(AllDivs[i].firstChild)};while(AllDivs[i].hasChildNodes()){if(AllDivs[i].firstChild.hasChildNodes()){DIV2LI=document.createElement("LI");while(AllDivs[i].firstChild.hasChildNodes()){DIV2LI.appendChild(AllDivs[i].firstChild.firstChild);}-if(DIV2LI.firstChild.className=="listitemmarker"){DIV2LI.style.listStyleType="none";}-RootNode.appendChild(DIV2LI)}-AllDivs[i].removeChild(AllDivs[i].firstChild);}-AllDivs[i].appendChild(RootNode);}}-var AllAnchors=TheBody.getElementsByTagName("a");for(var i=0;i<AllAnchors.length;i++){if(AllAnchors[i].className=="ref"||AllAnchors[i].className=="cite"){var label=AllAnchors[i].href.match(/\#(\w+)/);if(label!=null){var labelNode=document.getElementById(label[1]);if(labelNode!=null){var TheSpans=labelNode.getElementsByTagName("SPAN");if(TheSpans!=null){var refNode=TheSpans[0].cloneNode(true);refNode.style.display="inline"-refNode.className=AllAnchors[i].className;AllAnchors[i].appendChild(refNode);}}}}}-return TheBody;}-var AMbody;var AMnoMathML=false,AMtranslated=false;function translate(spanclassAM){if(!AMtranslated){AMtranslated=true;AMinitSymbols();var LaTeXContainers=[];var AllContainers=document.getElementsByTagName('*');var ExtendName="";for(var k=0,l=0;k<AllContainers.length;k++){ExtendName=" "+AllContainers[k].className+" ";if(ExtendName.match(/\sLaTeX\s/)!=null){LaTeXContainers[l]=AllContainers[k];l++;}};if(LaTeXContainers.length>0){for(var m=0;m<LaTeXContainers.length;m++){AMbody=LaTeXContainers[m];try{AMbody=LaTeXDivsAndRefs(LaTeXpreProcess(AMbody));}catch(err){alert("Unknown Error: Defaulting to Original LaTeXMathML");}-if(AMbody.tagName=="PRE"){var PreChilds=document.createDocumentFragment();var DivChilds=document.createElement("DIV");while(AMbody.hasChildNodes()){DivChilds.appendChild(AMbody.firstChild);}-PreChilds.appendChild(DivChilds);AMbody.parentNode.replaceChild(PreChilds,AMbody);AMbody=DivChilds;}-AMprocessNode(AMbody,false,spanclassAM);}}else{AMbody=document.getElementsByTagName("body")[0];try{AMbody=LaTeXDivsAndRefs(LaTeXpreProcess(AMbody));}catch(err){alert("Unknown Error: Defaulting to Original LaTeXMathML");}-AMprocessNode(AMbody,false,spanclassAM);}}}-if(isIE){document.write("<object id=\"mathplayer\" classid=\"clsid:32F66A20-7614-11D4-BD11-00104BD3F987\"></object>");document.write("<?import namespace=\"m\" implementation=\"#mathplayer\"?>");}-function generic()-{translate();};if(typeof window.addEventListener!='undefined')-{window.addEventListener('load',generic,false);}-else if(typeof document.addEventListener!='undefined')-{document.addEventListener('load',generic,false);}-else if(typeof window.attachEvent!='undefined')-{window.attachEvent('onload',generic);}-else-{if(typeof window.onload=='function')-{var existing=onload;window.onload=function()-{existing();generic();};}-else-{window.onload=generic;}}</script>-<!-- configuration parameters -->-<meta name="defaultView" content="slideshow" />-<meta name="controlVis" content="hidden" />-<style type="text/css" media="projection" id="slideProj">-/* Do not edit or override these styles! The system will likely break if you do. */--div#header, div#footer, div#controls, .slide {position: absolute;}-html>body div#header, html>body div#footer, -  html>body div#controls, html>body .slide {position: fixed;}-.handout {display: none;}-.layout {display: block;}-.slide, .hideme, .incremental {visibility: hidden;}-#slide0 {visibility: visible;}--/* The following styles size, place, and layer the slide components.-   Edit these if you want to change the overall slide layout.-   The commented lines can be uncommented (and modified, if necessary) -    to help you with the rearrangement process. */--/* target = 1024x768 */--div#header, div#footer, .slide {width: 100%; top: 0; left: 0;}-div#header {top: 0; height: 3em; z-index: 1;}-div#footer {top: auto; bottom: 0; height: 2.5em; z-index: 5;}-.slide {top: 0; width: 92%; padding: 3.5em 4% 4%; z-index: 2;  list-style: none;}-div#controls {left: 50%; bottom: 0; width: 50%; z-index: 100;}-div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;-  margin: 0;}-#currentSlide {position: absolute; width: 10%; left: 45%; bottom: 1em; z-index: 10;}-html>body #currentSlide {position: fixed;}--/*-div#header {background: #FCC;}-div#footer {background: #CCF;}-div#controls {background: #BBD;}-div#currentSlide {background: #FFC;}-*/--/* Following are the presentation styles -- edit away! */--body {background: #FFF url(bodybg.gif) -16px 0 no-repeat; color: #000; font-size: 2em;}-:link, :visited {text-decoration: none; color: #00C;}-#controls :active {color: #88A !important;}-#controls :focus {outline: 1px dotted #227;}-h1, h2, h3, h4 {font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}-ul, pre {margin: 0; line-height: 1em;}-html, body {margin: 0; padding: 0;}--blockquote, q {font-style: italic;}-blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; font-size: 1em;}-blockquote p {margin: 0;}-blockquote i {font-style: normal;}-blockquote b {display: block; margin-top: 0.5em; font-weight: normal; font-size: smaller; font-style: normal;}-blockquote b i {font-style: italic;}--kbd {font-weight: bold; font-size: 1em;}-sup {font-size: smaller; line-height: 1px;}--.slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}-.slide code.bad, code del {color: red;}-.slide code.old {color: silver;}-.slide pre {padding: 0; margin: 0.25em 0 0.5em 0.5em; color: #533; font-size: 90%;}-.slide pre code {display: block;}-.slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}-.slide li {margin-top: 0.75em; margin-right: 0;}-.slide ul ul {line-height: 1;}-.slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}-.slide img.leader {display: block; margin: 0 auto;}--div#header, div#footer {background: #005; color: #AAB;-  font-family: Verdana, Helvetica, sans-serif;}-div#header {background: #005 url(bodybg.gif) -16px 0 no-repeat;-  line-height: 1px;}-div#footer {font-size: 0.5em; font-weight: bold; padding: 1em 0;}-#footer h1, #footer h2 {display: block; padding: 0 1em;}-#footer h2 {font-style: italic;}--div.long {font-size: 0.75em;}-.slide h1 {position: absolute; top: 0.7em; left: 87px; z-index: 1;-  margin: 0; padding: 0.3em 0 0 50px; white-space: nowrap;-  font: bold 150%/1em Helvetica, sans-serif; text-transform: capitalize;-  color: #DDE; background: #005;}-.slide h3 {font-size: 130%;}-h1 abbr {font-variant: small-caps;}--div#controls {position: absolute; left: 50%; bottom: 0;-  width: 50%;-  text-align: right; font: bold 0.9em Verdana, Helvetica, sans-serif;}-html>body div#controls {position: fixed; padding: 0 0 1em 0;-  top: auto;}-div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;-  margin: 0; padding: 0;}-#controls #navLinks a {padding: 0; margin: 0 0.5em; -  background: #005; border: none; color: #779; -  cursor: pointer;}-#controls #navList {height: 1em;}-#controls #navList #jumplist {position: absolute; bottom: 0; right: 0; background: #DDD; color: #227;}--#currentSlide {text-align: center; font-size: 0.5em; color: #449;}--#slide0 {padding-top: 3.5em; font-size: 90%;}-#slide0 h1 {position: static; margin: 1em 0 0; padding: 0;-   font: bold 2em Helvetica, sans-serif; white-space: normal;-   color: #000; background: transparent;}-#slide0 h2 {font: bold italic 1em Helvetica, sans-serif; margin: 0.25em;}-#slide0 h3 {margin-top: 1.5em; font-size: 1.5em;}-#slide0 h4 {margin-top: 0; font-size: 1em;}--ul.urls {list-style: none; display: inline; margin: 0;}-.urls li {display: inline; margin: 0;}-.note {display: none;}-.external {border-bottom: 1px dotted gray;}-html>body .external {border-bottom: none;}-.external:after {content: " \274F"; font-size: smaller; color: #77B;}--.incremental, .incremental *, .incremental *:after {color: #DDE; visibility: visible;}-img.incremental {visibility: hidden;}-.slide .current {color: #B02;}---/* diagnostics--li:after {content: " [" attr(class) "]"; color: #F88;}-*/--</style>-<style type="text/css" media="projection" id="operaFix">-/* DO NOT CHANGE THESE unless you really want to break Opera Show */-.slide {-	visibility: visible !important;-	position: static !important;-	page-break-before: always;-}-#slide0 {page-break-before: avoid;}--</style>-<style type="text/css" media="screen" id="outlineStyle">-/* don't change this unless you want the layout stuff to show up in the outline view! */--.layout div, #footer *, #controlForm * {display: none;}-#footer, #controls, #controlForm, #navLinks, #toggle {-  display: block; visibility: visible; margin: 0; padding: 0;}-#toggle {float: right; padding: 0.5em;}-html>body #toggle {position: fixed; top: 0; right: 0;}--/* making the outline look pretty-ish */--#slide0 h1, #slide0 h2, #slide0 h3, #slide0 h4 {border: none; margin: 0;}-#slide0 h1 {padding-top: 1.5em;}-.slide h1 {margin: 1.5em 0 0; padding-top: 0.25em;-  border-top: 1px solid #888; border-bottom: 1px solid #AAA;}-#toggle {border: 1px solid; border-width: 0 0 1px 1px; background: #FFF;}--</style>-<style type="text/css" media="print" id="slidePrint">-/* The following rule is necessary to have all slides appear in print! DO NOT REMOVE IT! */-.slide, ul {page-break-inside: avoid; visibility: visible !important;}-h1 {page-break-after: avoid;}--body {font-size: 12pt; background: white;}-* {color: black;}--#slide0 h1 {font-size: 200%; border: none; margin: 0.5em 0 0.25em;}-#slide0 h3 {margin: 0; padding: 0;}-#slide0 h4 {margin: 0 0 0.5em; padding: 0;}-#slide0 {margin-bottom: 3em;}--h1 {border-top: 2pt solid gray; border-bottom: 1px dotted silver;}-.extra {background: transparent !important;}-div.extra, pre.extra, .example {font-size: 10pt; color: #333;}-ul.extra a {font-weight: bold;}-p.example {display: none;}--#header {display: none;}-#footer h1 {margin: 0; border-bottom: 1px solid; color: gray; font-style: italic;}-#footer h2, #controls {display: none;}--/* The following rule keeps the layout stuff out of print.  Remove at your own risk! */-.layout, .layout * {display: none !important;}--</style>-<script type="text/javascript">-// S5 v1.1 slides.js -- released into the Public Domain-//-// Please see http://www.meyerweb.com/eric/tools/s5/credits.html for information -// about all the wonderful and talented contributors to this code!-var undef;var slideCSS='';var snum=0;var smax=1;var incpos=0;var number=undef;var s5mode=true;var defaultView='slideshow';var controlVis='visible';var isIE=navigator.appName=='Microsoft Internet Explorer'&&navigator.userAgent.indexOf('Opera')<1?1:0;var isOp=navigator.userAgent.indexOf('Opera')>-1?1:0;var isGe=navigator.userAgent.indexOf('Gecko')>-1&&navigator.userAgent.indexOf('Safari')<1?1:0;function hasClass(object,className){if(!object.className)return false;return(object.className.search('(^|\\s)'+className+'(\\s|$)')!=-1);}-function hasValue(object,value){if(!object)return false;return(object.search('(^|\\s)'+value+'(\\s|$)')!=-1);}-function removeClass(object,className){if(!object)return;object.className=object.className.replace(new RegExp('(^|\\s)'+className+'(\\s|$)'),RegExp.$1+RegExp.$2);}-function addClass(object,className){if(!object||hasClass(object,className))return;if(object.className){object.className+=' '+className;}else{object.className=className;}}-function GetElementsWithClassName(elementName,className){var allElements=document.getElementsByTagName(elementName);var elemColl=new Array();for(var i=0;i<allElements.length;i++){if(hasClass(allElements[i],className)){elemColl[elemColl.length]=allElements[i];}}-return elemColl;}-function isParentOrSelf(element,id){if(element==null||element.nodeName=='BODY')return false;else if(element.id==id)return true;else return isParentOrSelf(element.parentNode,id);}-function nodeValue(node){var result="";if(node.nodeType==1){var children=node.childNodes;for(var i=0;i<children.length;++i){result+=nodeValue(children[i]);}}-else if(node.nodeType==3){result=node.nodeValue;}-return(result);}-function slideLabel(){var slideColl=GetElementsWithClassName('*','slide');var list=document.getElementById('jumplist');smax=slideColl.length;for(var n=0;n<smax;n++){var obj=slideColl[n];var did='slide'+n.toString();obj.setAttribute('id',did);if(isOp)continue;var otext='';var menu=obj.firstChild;if(!menu)continue;while(menu&&menu.nodeType==3){menu=menu.nextSibling;}-if(!menu)continue;var menunodes=menu.childNodes;for(var o=0;o<menunodes.length;o++){otext+=nodeValue(menunodes[o]);}-list.options[list.length]=new Option(n+' : '+otext,n);}}-function currentSlide(){var cs;if(document.getElementById){cs=document.getElementById('currentSlide');}else{cs=document.currentSlide;}-cs.innerHTML='<span id="csHere">'+snum+'<\/span> '+'<span id="csSep">\/<\/span> '+'<span id="csTotal">'+(smax-1)+'<\/span>';if(snum==0){cs.style.visibility='hidden';}else{cs.style.visibility='visible';}}-function go(step){if(document.getElementById('slideProj').disabled||step==0)return;var jl=document.getElementById('jumplist');var cid='slide'+snum;var ce=document.getElementById(cid);if(incrementals[snum].length>0){for(var i=0;i<incrementals[snum].length;i++){removeClass(incrementals[snum][i],'current');removeClass(incrementals[snum][i],'incremental');}}-if(step!='j'){snum+=step;lmax=smax-1;if(snum>lmax)snum=lmax;if(snum<0)snum=0;}else-snum=parseInt(jl.value);var nid='slide'+snum;var ne=document.getElementById(nid);if(!ne){ne=document.getElementById('slide0');snum=0;}-if(step<0){incpos=incrementals[snum].length}else{incpos=0;}-if(incrementals[snum].length>0&&incpos==0){for(var i=0;i<incrementals[snum].length;i++){if(hasClass(incrementals[snum][i],'current'))-incpos=i+1;else-addClass(incrementals[snum][i],'incremental');}}-if(incrementals[snum].length>0&&incpos>0)-addClass(incrementals[snum][incpos-1],'current');ce.style.visibility='hidden';ne.style.visibility='visible';jl.selectedIndex=snum;currentSlide();number=0;}-function goTo(target){if(target>=smax||target==snum)return;go(target-snum);}-function subgo(step){if(step>0){removeClass(incrementals[snum][incpos-1],'current');removeClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos],'current');incpos++;}else{incpos--;removeClass(incrementals[snum][incpos],'current');addClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos-1],'current');}}-function toggle(){var slideColl=GetElementsWithClassName('*','slide');var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');if(!slides.disabled){slides.disabled=true;outline.disabled=false;s5mode=false;fontSize('1em');for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='visible';}}else{slides.disabled=false;outline.disabled=true;s5mode=true;fontScale();for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='hidden';}-slideColl[snum].style.visibility='visible';}}-function showHide(action){var obj=GetElementsWithClassName('*','hideme')[0];switch(action){case's':obj.style.visibility='visible';break;case'h':obj.style.visibility='hidden';break;case'k':if(obj.style.visibility!='visible'){obj.style.visibility='visible';}else{obj.style.visibility='hidden';}-break;}}-function keys(key){if(!key){key=event;key.which=key.keyCode;}-if(key.which==84){toggle();return;}-if(s5mode){switch(key.which){case 10:case 13:if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;if(number!=undef){goTo(number);break;}-case 32:case 34:case 39:case 40:if(number!=undef){go(number);}else if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}-break;case 33:case 37:case 38:if(number!=undef){go(-1*number);}else if(!incrementals[snum]||incpos<=0){go(-1);}else{subgo(-1);}-break;case 36:goTo(0);break;case 35:goTo(smax-1);break;case 67:showHide('k');break;}-if(key.which<48||key.which>57){number=undef;}else{if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;number=(((number!=undef)?number:0)*10)+(key.which-48);}}-return false;}-function clicker(e){number=undef;var target;if(window.event){target=window.event.srcElement;e=window.event;}else target=e.target;if(target.getAttribute('href')!=null||hasValue(target.rel,'external')||isParentOrSelf(target,'controls')||isParentOrSelf(target,'embed')||isParentOrSelf(target,'object'))return true;if(!e.which||e.which==1){if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}}}-function findSlide(hash){var target=null;var slides=GetElementsWithClassName('*','slide');for(var i=0;i<slides.length;i++){var targetSlide=slides[i];if((targetSlide.name&&targetSlide.name==hash)||(targetSlide.id&&targetSlide.id==hash)){target=targetSlide;break;}}-while(target!=null&&target.nodeName!='BODY'){if(hasClass(target,'slide')){return parseInt(target.id.slice(5));}-target=target.parentNode;}-return null;}-function slideJump(){if(window.location.hash==null)return;var sregex=/^#slide(\d+)$/;var matches=sregex.exec(window.location.hash);var dest=null;if(matches!=null){dest=parseInt(matches[1]);}else{dest=findSlide(window.location.hash.slice(1));}-if(dest!=null)-go(dest-snum);}-function fixLinks(){var thisUri=window.location.href;thisUri=thisUri.slice(0,thisUri.length-window.location.hash.length);var aelements=document.getElementsByTagName('A');for(var i=0;i<aelements.length;i++){var a=aelements[i].href;var slideID=a.match('\#slide[0-9]{1,2}');if((slideID)&&(slideID[0].slice(0,1)=='#')){var dest=findSlide(slideID[0].slice(1));if(dest!=null){if(aelements[i].addEventListener){aelements[i].addEventListener("click",new Function("e","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"if (e.preventDefault) e.preventDefault();"),true);}else if(aelements[i].attachEvent){aelements[i].attachEvent("onclick",new Function("","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"event.returnValue = false;"));}}}}}-function externalLinks(){if(!document.getElementsByTagName)return;var anchors=document.getElementsByTagName('a');for(var i=0;i<anchors.length;i++){var anchor=anchors[i];if(anchor.getAttribute('href')&&hasValue(anchor.rel,'external')){anchor.target='_blank';addClass(anchor,'external');}}}-function createControls(){var controlsDiv=document.getElementById("controls");if(!controlsDiv)return;var hider=' onmouseover="showHide(\'s\');" onmouseout="showHide(\'h\');"';var hideDiv,hideList='';if(controlVis=='hidden'){hideDiv=hider;}else{hideList=hider;}-controlsDiv.innerHTML='<form action="#" id="controlForm"'+hideDiv+'>'+'<div id="navLinks">'+'<a accesskey="t" id="toggle" href="javascript:toggle();">&#216;<\/a>'+'<a accesskey="z" id="prev" href="javascript:go(-1);">&laquo;<\/a>'+'<a accesskey="x" id="next" href="javascript:go(1);">&raquo;<\/a>'+'<div id="navList"'+hideList+'><select id="jumplist" onchange="go(\'j\');"><\/select><\/div>'+'<\/div><\/form>';if(controlVis=='hidden'){var hidden=document.getElementById('navLinks');}else{var hidden=document.getElementById('jumplist');}-addClass(hidden,'hideme');}-function fontScale(){if(!s5mode)return false;var vScale=22;var hScale=32;if(window.innerHeight){var vSize=window.innerHeight;var hSize=window.innerWidth;}else if(document.documentElement.clientHeight){var vSize=document.documentElement.clientHeight;var hSize=document.documentElement.clientWidth;}else if(document.body.clientHeight){var vSize=document.body.clientHeight;var hSize=document.body.clientWidth;}else{var vSize=700;var hSize=1024;}-var newSize=Math.min(Math.round(vSize/vScale),Math.round(hSize/hScale));fontSize(newSize+'px');if(isGe){var obj=document.getElementsByTagName('body')[0];obj.style.display='none';obj.style.display='block';}}-function fontSize(value){if(!(s5ss=document.getElementById('s5ss'))){if(!isIE){document.getElementsByTagName('head')[0].appendChild(s5ss=document.createElement('style'));s5ss.setAttribute('media','screen, projection');s5ss.setAttribute('id','s5ss');}else{document.createStyleSheet();document.s5ss=document.styleSheets[document.styleSheets.length-1];}}-if(!isIE){while(s5ss.lastChild)s5ss.removeChild(s5ss.lastChild);s5ss.appendChild(document.createTextNode('body {font-size: '+value+' !important;}'));}else{document.s5ss.addRule('body','font-size: '+value+' !important;');}}-function notOperaFix(){slideCSS=document.getElementById('slideProj').href;var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');slides.setAttribute('media','screen');outline.disabled=true;if(isGe){slides.setAttribute('href','null');slides.setAttribute('href',slideCSS);}-if(isIE&&document.styleSheets&&document.styleSheets[0]){document.styleSheets[0].addRule('img','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('div','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('.slide','behavior: url(ui/default/iepngfix.htc)');}}-function getIncrementals(obj){var incrementals=new Array();if(!obj)-return incrementals;var children=obj.childNodes;for(var i=0;i<children.length;i++){var child=children[i];if(hasClass(child,'incremental')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'incremental');for(var j=0;j<child.childNodes.length;j++){if(child.childNodes[j].nodeType==1){addClass(child.childNodes[j],'incremental');}}}else{incrementals[incrementals.length]=child;removeClass(child,'incremental');}}-if(hasClass(child,'show-first')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'show-first');if(child.childNodes[isGe].nodeType==1){removeClass(child.childNodes[isGe],'incremental');}}else{incrementals[incrementals.length]=child;}}-incrementals=incrementals.concat(getIncrementals(child));}-return incrementals;}-function createIncrementals(){var incrementals=new Array();for(var i=0;i<smax;i++){incrementals[i]=getIncrementals(document.getElementById('slide'+i));}-return incrementals;}-function defaultCheck(){var allMetas=document.getElementsByTagName('meta');for(var i=0;i<allMetas.length;i++){if(allMetas[i].name=='defaultView'){defaultView=allMetas[i].content;}-if(allMetas[i].name=='controlVis'){controlVis=allMetas[i].content;}}}-function trap(e){if(!e){e=event;e.which=e.keyCode;}-try{modifierKey=e.ctrlKey||e.altKey||e.metaKey;}-catch(e){modifierKey=false;}-return modifierKey||e.which==0;}-function startup(){defaultCheck();if(!isOp)-createControls();slideLabel();fixLinks();externalLinks();fontScale();if(!isOp){notOperaFix();incrementals=createIncrementals();slideJump();if(defaultView=='outline'){toggle();}-document.onkeyup=keys;document.onkeypress=trap;document.onclick=clicker;}}-window.onload=startup;window.onresize=function(){setTimeout('fontScale()',50);}-</script>-</head-  ><body-  ><div class="layout">-<div id="controls"></div>-<div id="currentSlide"></div>-<div id="header"></div>-<div id="footer">-<h1-    >July 15, 2006</h1-    ><h2-    >My S5 Document</h2-    ></div>-</div>-<div class="presentation">--<div class="slide">-<h1-    >My S5 Document</h1-    ><h3-    >Sam Smith, Jen Jones</h3-    ><h4-    >July 15, 2006</h4-    ></div>-<div class="slide">-<h1-    >First slide</h1-    ><ul class="incremental"-    ><li-      >first bullet</li-      ><li-      >second bullet</li-      ></ul-    ></div>-<div class="slide">-<h1-    >Math</h1-    ><ul class="incremental"-    ><li-      ><span class="LaTeX"-	>$\frac{d}{dx}f(x)=\lim_{h\to 0}\frac{f(x+h)-f(x)}{h}$</span-	></li-      ></ul-    ></div>-</div>-</body-  ></html->+<html xmlns="http://www.w3.org/1999/xhtml">+<head>+  <title>My S5 Document</title>+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />+  <meta name="generator" content="pandoc" />+  <meta name="author" content="Sam Smith" />+  <meta name="author" content="Jen Jones" />+  <meta name="date" content="July 15, 2006" />+  <!-- configuration parameters -->+  <meta name="defaultView" content="slideshow" />+  <meta name="controlVis" content="hidden" />+  <style type="text/css" media="projection" id="slideProj">+  /* Do not edit or override these styles! The system will likely break if you do. */+  +  div#header, div#footer, div#controls, .slide {position: absolute;}+  html>body div#header, html>body div#footer, +    html>body div#controls, html>body .slide {position: fixed;}+  .handout {display: none;}+  .layout {display: block;}+  .slide, .hideme, .incremental {visibility: hidden;}+  #slide0 {visibility: visible;}+  +  /* The following styles size, place, and layer the slide components.+     Edit these if you want to change the overall slide layout.+     The commented lines can be uncommented (and modified, if necessary) +      to help you with the rearrangement process. */+  +  /* target = 1024x768 */+  +  div#header, div#footer, .slide {width: 100%; top: 0; left: 0;}+  div#header {top: 0; height: 3em; z-index: 1;}+  div#footer {top: auto; bottom: 0; height: 2.5em; z-index: 5;}+  .slide {top: 0; width: 92%; padding: 3.5em 4% 4%; z-index: 2;  list-style: none;}+  div#controls {left: 50%; bottom: 0; width: 50%; z-index: 100;}+  div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;+    margin: 0;}+  #currentSlide {position: absolute; width: 10%; left: 45%; bottom: 1em; z-index: 10;}+  html>body #currentSlide {position: fixed;}+  +  /*+  div#header {background: #FCC;}+  div#footer {background: #CCF;}+  div#controls {background: #BBD;}+  div#currentSlide {background: #FFC;}+  */+  +  /* Following are the presentation styles -- edit away! */+  +  body {background: #FFF url(bodybg.gif) -16px 0 no-repeat; color: #000; font-size: 2em;}+  :link, :visited {text-decoration: none; color: #00C;}+  #controls :active {color: #88A !important;}+  #controls :focus {outline: 1px dotted #227;}+  h1, h2, h3, h4 {font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}+  ul, pre {margin: 0; line-height: 1em;}+  html, body {margin: 0; padding: 0;}+  +  blockquote, q {font-style: italic;}+  blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; font-size: 1em;}+  blockquote p {margin: 0;}+  blockquote i {font-style: normal;}+  blockquote b {display: block; margin-top: 0.5em; font-weight: normal; font-size: smaller; font-style: normal;}+  blockquote b i {font-style: italic;}+  +  kbd {font-weight: bold; font-size: 1em;}+  sup {font-size: smaller; line-height: 1px;}+  +  .slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}+  .slide code.bad, code del {color: red;}+  .slide code.old {color: silver;}+  .slide pre {padding: 0; margin: 0.25em 0 0.5em 0.5em; color: #533; font-size: 90%;}+  .slide pre code {display: block;}+  .slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}+  .slide li {margin-top: 0.75em; margin-right: 0;}+  .slide ul ul {line-height: 1;}+  .slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}+  .slide img.leader {display: block; margin: 0 auto;}+  +  div#header, div#footer {background: #005; color: #AAB;+    font-family: Verdana, Helvetica, sans-serif;}+  div#header {background: #005 url(bodybg.gif) -16px 0 no-repeat;+    line-height: 1px;}+  div#footer {font-size: 0.5em; font-weight: bold; padding: 1em 0;}+  #footer h1, #footer h2 {display: block; padding: 0 1em;}+  #footer h2 {font-style: italic;}+  +  div.long {font-size: 0.75em;}+  .slide h1 {position: absolute; top: 0.7em; left: 87px; z-index: 1;+    margin: 0; padding: 0.3em 0 0 50px; white-space: nowrap;+    font: bold 150%/1em Helvetica, sans-serif; text-transform: capitalize;+    color: #DDE; background: #005;}+  .slide h3 {font-size: 130%;}+  h1 abbr {font-variant: small-caps;}+  +  div#controls {position: absolute; left: 50%; bottom: 0;+    width: 50%;+    text-align: right; font: bold 0.9em Verdana, Helvetica, sans-serif;}+  html>body div#controls {position: fixed; padding: 0 0 1em 0;+    top: auto;}+  div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;+    margin: 0; padding: 0;}+  #controls #navLinks a {padding: 0; margin: 0 0.5em; +    background: #005; border: none; color: #779; +    cursor: pointer;}+  #controls #navList {height: 1em;}+  #controls #navList #jumplist {position: absolute; bottom: 0; right: 0; background: #DDD; color: #227;}+  +  #currentSlide {text-align: center; font-size: 0.5em; color: #449;}+  +  #slide0 {padding-top: 3.5em; font-size: 90%;}+  #slide0 h1 {position: static; margin: 1em 0 0; padding: 0;+     font: bold 2em Helvetica, sans-serif; white-space: normal;+     color: #000; background: transparent;}+  #slide0 h2 {font: bold italic 1em Helvetica, sans-serif; margin: 0.25em;}+  #slide0 h3 {margin-top: 1.5em; font-size: 1.5em;}+  #slide0 h4 {margin-top: 0; font-size: 1em;}+  +  ul.urls {list-style: none; display: inline; margin: 0;}+  .urls li {display: inline; margin: 0;}+  .note {display: none;}+  .external {border-bottom: 1px dotted gray;}+  html>body .external {border-bottom: none;}+  .external:after {content: " \274F"; font-size: smaller; color: #77B;}+  +  .incremental, .incremental *, .incremental *:after {color: #DDE; visibility: visible;}+  img.incremental {visibility: hidden;}+  .slide .current {color: #B02;}+  +  +  /* diagnostics+  +  li:after {content: " [" attr(class) "]"; color: #F88;}+  */+  +  </style>+  <style type="text/css" media="projection" id="operaFix">+  /* DO NOT CHANGE THESE unless you really want to break Opera Show */+  .slide {+  	visibility: visible !important;+  	position: static !important;+  	page-break-before: always;+  }+  #slide0 {page-break-before: avoid;}+  +  </style>+  <style type="text/css" media="screen" id="outlineStyle">+  /* don't change this unless you want the layout stuff to show up in the outline view! */+  +  .layout div, #footer *, #controlForm * {display: none;}+  #footer, #controls, #controlForm, #navLinks, #toggle {+    display: block; visibility: visible; margin: 0; padding: 0;}+  #toggle {float: right; padding: 0.5em;}+  html>body #toggle {position: fixed; top: 0; right: 0;}+  +  /* making the outline look pretty-ish */+  +  #slide0 h1, #slide0 h2, #slide0 h3, #slide0 h4 {border: none; margin: 0;}+  #slide0 h1 {padding-top: 1.5em;}+  .slide h1 {margin: 1.5em 0 0; padding-top: 0.25em;+    border-top: 1px solid #888; border-bottom: 1px solid #AAA;}+  #toggle {border: 1px solid; border-width: 0 0 1px 1px; background: #FFF;}+  +  </style>+  <style type="text/css" media="print" id="slidePrint">+  /* The following rule is necessary to have all slides appear in print! DO NOT REMOVE IT! */+  .slide, ul {page-break-inside: avoid; visibility: visible !important;}+  h1 {page-break-after: avoid;}+  +  body {font-size: 12pt; background: white;}+  * {color: black;}+  +  #slide0 h1 {font-size: 200%; border: none; margin: 0.5em 0 0.25em;}+  #slide0 h3 {margin: 0; padding: 0;}+  #slide0 h4 {margin: 0 0 0.5em; padding: 0;}+  #slide0 {margin-bottom: 3em;}+  +  h1 {border-top: 2pt solid gray; border-bottom: 1px dotted silver;}+  .extra {background: transparent !important;}+  div.extra, pre.extra, .example {font-size: 10pt; color: #333;}+  ul.extra a {font-weight: bold;}+  p.example {display: none;}+  +  #header {display: none;}+  #footer h1 {margin: 0; border-bottom: 1px solid; color: gray; font-style: italic;}+  #footer h2, #controls {display: none;}+  +  /* The following rule keeps the layout stuff out of print.  Remove at your own risk! */+  .layout, .layout * {display: none !important;}+  +  </style>+  <script type="text/javascript">+  // S5 v1.1 slides.js -- released into the Public Domain+  //+  // Please see http://www.meyerweb.com/eric/tools/s5/credits.html for information +  // about all the wonderful and talented contributors to this code!+  var undef;var slideCSS='';var snum=0;var smax=1;var incpos=0;var number=undef;var s5mode=true;var defaultView='slideshow';var controlVis='visible';var isIE=navigator.appName=='Microsoft Internet Explorer'&&navigator.userAgent.indexOf('Opera')<1?1:0;var isOp=navigator.userAgent.indexOf('Opera')>-1?1:0;var isGe=navigator.userAgent.indexOf('Gecko')>-1&&navigator.userAgent.indexOf('Safari')<1?1:0;function hasClass(object,className){if(!object.className)return false;return(object.className.search('(^|\\s)'+className+'(\\s|$)')!=-1);}+  function hasValue(object,value){if(!object)return false;return(object.search('(^|\\s)'+value+'(\\s|$)')!=-1);}+  function removeClass(object,className){if(!object)return;object.className=object.className.replace(new RegExp('(^|\\s)'+className+'(\\s|$)'),RegExp.$1+RegExp.$2);}+  function addClass(object,className){if(!object||hasClass(object,className))return;if(object.className){object.className+=' '+className;}else{object.className=className;}}+  function GetElementsWithClassName(elementName,className){var allElements=document.getElementsByTagName(elementName);var elemColl=new Array();for(var i=0;i<allElements.length;i++){if(hasClass(allElements[i],className)){elemColl[elemColl.length]=allElements[i];}}+  return elemColl;}+  function isParentOrSelf(element,id){if(element==null||element.nodeName=='BODY')return false;else if(element.id==id)return true;else return isParentOrSelf(element.parentNode,id);}+  function nodeValue(node){var result="";if(node.nodeType==1){var children=node.childNodes;for(var i=0;i<children.length;++i){result+=nodeValue(children[i]);}}+  else if(node.nodeType==3){result=node.nodeValue;}+  return(result);}+  function slideLabel(){var slideColl=GetElementsWithClassName('*','slide');var list=document.getElementById('jumplist');smax=slideColl.length;for(var n=0;n<smax;n++){var obj=slideColl[n];var did='slide'+n.toString();obj.setAttribute('id',did);if(isOp)continue;var otext='';var menu=obj.firstChild;if(!menu)continue;while(menu&&menu.nodeType==3){menu=menu.nextSibling;}+  if(!menu)continue;var menunodes=menu.childNodes;for(var o=0;o<menunodes.length;o++){otext+=nodeValue(menunodes[o]);}+  list.options[list.length]=new Option(n+' : '+otext,n);}}+  function currentSlide(){var cs;if(document.getElementById){cs=document.getElementById('currentSlide');}else{cs=document.currentSlide;}+  cs.innerHTML='<span id="csHere">'+snum+'<\/span> '+'<span id="csSep">\/<\/span> '+'<span id="csTotal">'+(smax-1)+'<\/span>';if(snum==0){cs.style.visibility='hidden';}else{cs.style.visibility='visible';}}+  function go(step){if(document.getElementById('slideProj').disabled||step==0)return;var jl=document.getElementById('jumplist');var cid='slide'+snum;var ce=document.getElementById(cid);if(incrementals[snum].length>0){for(var i=0;i<incrementals[snum].length;i++){removeClass(incrementals[snum][i],'current');removeClass(incrementals[snum][i],'incremental');}}+  if(step!='j'){snum+=step;lmax=smax-1;if(snum>lmax)snum=lmax;if(snum<0)snum=0;}else+  snum=parseInt(jl.value);var nid='slide'+snum;var ne=document.getElementById(nid);if(!ne){ne=document.getElementById('slide0');snum=0;}+  if(step<0){incpos=incrementals[snum].length}else{incpos=0;}+  if(incrementals[snum].length>0&&incpos==0){for(var i=0;i<incrementals[snum].length;i++){if(hasClass(incrementals[snum][i],'current'))+  incpos=i+1;else+  addClass(incrementals[snum][i],'incremental');}}+  if(incrementals[snum].length>0&&incpos>0)+  addClass(incrementals[snum][incpos-1],'current');ce.style.visibility='hidden';ne.style.visibility='visible';jl.selectedIndex=snum;currentSlide();number=0;}+  function goTo(target){if(target>=smax||target==snum)return;go(target-snum);}+  function subgo(step){if(step>0){removeClass(incrementals[snum][incpos-1],'current');removeClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos],'current');incpos++;}else{incpos--;removeClass(incrementals[snum][incpos],'current');addClass(incrementals[snum][incpos],'incremental');addClass(incrementals[snum][incpos-1],'current');}}+  function toggle(){var slideColl=GetElementsWithClassName('*','slide');var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');if(!slides.disabled){slides.disabled=true;outline.disabled=false;s5mode=false;fontSize('1em');for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='visible';}}else{slides.disabled=false;outline.disabled=true;s5mode=true;fontScale();for(var n=0;n<smax;n++){var slide=slideColl[n];slide.style.visibility='hidden';}+  slideColl[snum].style.visibility='visible';}}+  function showHide(action){var obj=GetElementsWithClassName('*','hideme')[0];switch(action){case's':obj.style.visibility='visible';break;case'h':obj.style.visibility='hidden';break;case'k':if(obj.style.visibility!='visible'){obj.style.visibility='visible';}else{obj.style.visibility='hidden';}+  break;}}+  function keys(key){if(!key){key=event;key.which=key.keyCode;}+  if(key.which==84){toggle();return;}+  if(s5mode){switch(key.which){case 10:case 13:if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;if(number!=undef){goTo(number);break;}+  case 32:case 34:case 39:case 40:if(number!=undef){go(number);}else if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}+  break;case 33:case 37:case 38:if(number!=undef){go(-1*number);}else if(!incrementals[snum]||incpos<=0){go(-1);}else{subgo(-1);}+  break;case 36:goTo(0);break;case 35:goTo(smax-1);break;case 67:showHide('k');break;}+  if(key.which<48||key.which>57){number=undef;}else{if(window.event&&isParentOrSelf(window.event.srcElement,'controls'))return;if(key.target&&isParentOrSelf(key.target,'controls'))return;number=(((number!=undef)?number:0)*10)+(key.which-48);}}+  return false;}+  function clicker(e){number=undef;var target;if(window.event){target=window.event.srcElement;e=window.event;}else target=e.target;if(target.getAttribute('href')!=null||hasValue(target.rel,'external')||isParentOrSelf(target,'controls')||isParentOrSelf(target,'embed')||isParentOrSelf(target,'object'))return true;if(!e.which||e.which==1){if(!incrementals[snum]||incpos>=incrementals[snum].length){go(1);}else{subgo(1);}}}+  function findSlide(hash){var target=null;var slides=GetElementsWithClassName('*','slide');for(var i=0;i<slides.length;i++){var targetSlide=slides[i];if((targetSlide.name&&targetSlide.name==hash)||(targetSlide.id&&targetSlide.id==hash)){target=targetSlide;break;}}+  while(target!=null&&target.nodeName!='BODY'){if(hasClass(target,'slide')){return parseInt(target.id.slice(5));}+  target=target.parentNode;}+  return null;}+  function slideJump(){if(window.location.hash==null)return;var sregex=/^#slide(\d+)$/;var matches=sregex.exec(window.location.hash);var dest=null;if(matches!=null){dest=parseInt(matches[1]);}else{dest=findSlide(window.location.hash.slice(1));}+  if(dest!=null)+  go(dest-snum);}+  function fixLinks(){var thisUri=window.location.href;thisUri=thisUri.slice(0,thisUri.length-window.location.hash.length);var aelements=document.getElementsByTagName('A');for(var i=0;i<aelements.length;i++){var a=aelements[i].href;var slideID=a.match('\#slide[0-9]{1,2}');if((slideID)&&(slideID[0].slice(0,1)=='#')){var dest=findSlide(slideID[0].slice(1));if(dest!=null){if(aelements[i].addEventListener){aelements[i].addEventListener("click",new Function("e","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"if (e.preventDefault) e.preventDefault();"),true);}else if(aelements[i].attachEvent){aelements[i].attachEvent("onclick",new Function("","if (document.getElementById('slideProj').disabled) return;"+"go("+dest+" - snum); "+"event.returnValue = false;"));}}}}}+  function externalLinks(){if(!document.getElementsByTagName)return;var anchors=document.getElementsByTagName('a');for(var i=0;i<anchors.length;i++){var anchor=anchors[i];if(anchor.getAttribute('href')&&hasValue(anchor.rel,'external')){anchor.target='_blank';addClass(anchor,'external');}}}+  function createControls(){var controlsDiv=document.getElementById("controls");if(!controlsDiv)return;var hider=' onmouseover="showHide(\'s\');" onmouseout="showHide(\'h\');"';var hideDiv,hideList='';if(controlVis=='hidden'){hideDiv=hider;}else{hideList=hider;}+  controlsDiv.innerHTML='<form action="#" id="controlForm"'+hideDiv+'>'+'<div id="navLinks">'+'<a accesskey="t" id="toggle" href="javascript:toggle();">&#216;<\/a>'+'<a accesskey="z" id="prev" href="javascript:go(-1);">&laquo;<\/a>'+'<a accesskey="x" id="next" href="javascript:go(1);">&raquo;<\/a>'+'<div id="navList"'+hideList+'><select id="jumplist" onchange="go(\'j\');"><\/select><\/div>'+'<\/div><\/form>';if(controlVis=='hidden'){var hidden=document.getElementById('navLinks');}else{var hidden=document.getElementById('jumplist');}+  addClass(hidden,'hideme');}+  function fontScale(){if(!s5mode)return false;var vScale=22;var hScale=32;if(window.innerHeight){var vSize=window.innerHeight;var hSize=window.innerWidth;}else if(document.documentElement.clientHeight){var vSize=document.documentElement.clientHeight;var hSize=document.documentElement.clientWidth;}else if(document.body.clientHeight){var vSize=document.body.clientHeight;var hSize=document.body.clientWidth;}else{var vSize=700;var hSize=1024;}+  var newSize=Math.min(Math.round(vSize/vScale),Math.round(hSize/hScale));fontSize(newSize+'px');if(isGe){var obj=document.getElementsByTagName('body')[0];obj.style.display='none';obj.style.display='block';}}+  function fontSize(value){if(!(s5ss=document.getElementById('s5ss'))){if(!isIE){document.getElementsByTagName('head')[0].appendChild(s5ss=document.createElement('style'));s5ss.setAttribute('media','screen, projection');s5ss.setAttribute('id','s5ss');}else{document.createStyleSheet();document.s5ss=document.styleSheets[document.styleSheets.length-1];}}+  if(!isIE){while(s5ss.lastChild)s5ss.removeChild(s5ss.lastChild);s5ss.appendChild(document.createTextNode('body {font-size: '+value+' !important;}'));}else{document.s5ss.addRule('body','font-size: '+value+' !important;');}}+  function notOperaFix(){slideCSS=document.getElementById('slideProj').href;var slides=document.getElementById('slideProj');var outline=document.getElementById('outlineStyle');slides.setAttribute('media','screen');outline.disabled=true;if(isGe){slides.setAttribute('href','null');slides.setAttribute('href',slideCSS);}+  if(isIE&&document.styleSheets&&document.styleSheets[0]){document.styleSheets[0].addRule('img','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('div','behavior: url(ui/default/iepngfix.htc)');document.styleSheets[0].addRule('.slide','behavior: url(ui/default/iepngfix.htc)');}}+  function getIncrementals(obj){var incrementals=new Array();if(!obj)+  return incrementals;var children=obj.childNodes;for(var i=0;i<children.length;i++){var child=children[i];if(hasClass(child,'incremental')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'incremental');for(var j=0;j<child.childNodes.length;j++){if(child.childNodes[j].nodeType==1){addClass(child.childNodes[j],'incremental');}}}else{incrementals[incrementals.length]=child;removeClass(child,'incremental');}}+  if(hasClass(child,'show-first')){if(child.nodeName=='OL'||child.nodeName=='UL'){removeClass(child,'show-first');if(child.childNodes[isGe].nodeType==1){removeClass(child.childNodes[isGe],'incremental');}}else{incrementals[incrementals.length]=child;}}+  incrementals=incrementals.concat(getIncrementals(child));}+  return incrementals;}+  function createIncrementals(){var incrementals=new Array();for(var i=0;i<smax;i++){incrementals[i]=getIncrementals(document.getElementById('slide'+i));}+  return incrementals;}+  function defaultCheck(){var allMetas=document.getElementsByTagName('meta');for(var i=0;i<allMetas.length;i++){if(allMetas[i].name=='defaultView'){defaultView=allMetas[i].content;}+  if(allMetas[i].name=='controlVis'){controlVis=allMetas[i].content;}}}+  function trap(e){if(!e){e=event;e.which=e.keyCode;}+  try{modifierKey=e.ctrlKey||e.altKey||e.metaKey;}+  catch(e){modifierKey=false;}+  return modifierKey||e.which==0;}+  function startup(){defaultCheck();if(!isOp)+  createControls();slideLabel();fixLinks();externalLinks();fontScale();if(!isOp){notOperaFix();incrementals=createIncrementals();slideJump();if(defaultView=='outline'){toggle();}+  document.onkeyup=keys;document.onkeypress=trap;document.onclick=clicker;}}+  window.onload=startup;window.onresize=function(){setTimeout('fontScale()',50);}+  </script>+  <script type="text/javascript">+  /*+  LaTeXMathML.js from http://math.etsu.edu/LaTeXMathML/+  Adapted by Jeff Knisely and Douglas Woodall from ASCIIMathML.js v. 1.4.7,+  (c) 2005 Peter Jipsen http://www.chapman.edu/~jipsen.+  +  This program is free software; you can redistribute it and/or modify+  it under the terms of the GNU General Public License as published by+  the Free Software Foundation; either version 2 of the License, or (at+  your option) any later version.+  +  This program is distributed in the hope that it will be useful,+  but WITHOUT ANY WARRANTY; without even the implied warranty of+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU+  General Public License (at http://www.gnu.org/copyleft/gpl.html)+  for more details.+  */+  +  var checkForMathML=true;var notifyIfNoMathML=true;var alertIfNoMathML=false;var mathcolor="";var mathfontfamily="";var showasciiformulaonhover=true;var isIE=document.createElementNS==null;if(document.getElementById==null)+  alert("This webpage requires a recent browser such as \nMozilla/Netscape 7+ or Internet Explorer 6+MathPlayer")+  function AMcreateElementXHTML(t){if(isIE)return document.createElement(t);else return document.createElementNS("http://www.w3.org/1999/xhtml",t);}+  function AMnoMathMLNote(){var nd=AMcreateElementXHTML("h3");nd.setAttribute("align","center")+  nd.appendChild(AMcreateElementXHTML("p"));nd.appendChild(document.createTextNode("To view the "));var an=AMcreateElementXHTML("a");an.appendChild(document.createTextNode("LaTeXMathML"));an.setAttribute("href","http://www.maths.nott.ac.uk/personal/drw/lm.html");nd.appendChild(an);nd.appendChild(document.createTextNode(" notation use Internet Explorer 6+"));an=AMcreateElementXHTML("a");an.appendChild(document.createTextNode("MathPlayer"));an.setAttribute("href","http://www.dessci.com/en/products/mathplayer/download.htm");nd.appendChild(an);nd.appendChild(document.createTextNode(" or Netscape/Mozilla/Firefox"));nd.appendChild(AMcreateElementXHTML("p"));return nd;}+  function AMisMathMLavailable(){if(navigator.appName.slice(0,8)=="Netscape")+  if(navigator.appVersion.slice(0,1)>="5")return null;else return AMnoMathMLNote();else if(navigator.appName.slice(0,9)=="Microsoft")+  try{var ActiveX=new ActiveXObject("MathPlayer.Factory.1");return null;}catch(e){return AMnoMathMLNote();}+  else return AMnoMathMLNote();}+  var AMcal=[0xEF35,0x212C,0xEF36,0xEF37,0x2130,0x2131,0xEF38,0x210B,0x2110,0xEF39,0xEF3A,0x2112,0x2133,0xEF3B,0xEF3C,0xEF3D,0xEF3E,0x211B,0xEF3F,0xEF40,0xEF41,0xEF42,0xEF43,0xEF44,0xEF45,0xEF46];var AMfrk=[0xEF5D,0xEF5E,0x212D,0xEF5F,0xEF60,0xEF61,0xEF62,0x210C,0x2111,0xEF63,0xEF64,0xEF65,0xEF66,0xEF67,0xEF68,0xEF69,0xEF6A,0x211C,0xEF6B,0xEF6C,0xEF6D,0xEF6E,0xEF6F,0xEF70,0xEF71,0x2128];var AMbbb=[0xEF8C,0xEF8D,0x2102,0xEF8E,0xEF8F,0xEF90,0xEF91,0x210D,0xEF92,0xEF93,0xEF94,0xEF95,0xEF96,0x2115,0xEF97,0x2119,0x211A,0x211D,0xEF98,0xEF99,0xEF9A,0xEF9B,0xEF9C,0xEF9D,0xEF9E,0x2124];var CONST=0,UNARY=1,BINARY=2,INFIX=3,LEFTBRACKET=4,RIGHTBRACKET=5,SPACE=6,UNDEROVER=7,DEFINITION=8,TEXT=9,BIG=10,LONG=11,STRETCHY=12,MATRIX=13;var AMsqrt={input:"\\sqrt",tag:"msqrt",output:"sqrt",ttype:UNARY},AMroot={input:"\\root",tag:"mroot",output:"root",ttype:BINARY},AMfrac={input:"\\frac",tag:"mfrac",output:"/",ttype:BINARY},AMover={input:"\\stackrel",tag:"mover",output:"stackrel",ttype:BINARY},AMatop={input:"\\atop",tag:"mfrac",output:"",ttype:INFIX},AMchoose={input:"\\choose",tag:"mfrac",output:"",ttype:INFIX},AMsub={input:"_",tag:"msub",output:"_",ttype:INFIX},AMsup={input:"^",tag:"msup",output:"^",ttype:INFIX},AMtext={input:"\\mathrm",tag:"mtext",output:"text",ttype:TEXT},AMmbox={input:"\\mbox",tag:"mtext",output:"mbox",ttype:TEXT};var AMsymbols=[{input:"\\alpha",tag:"mi",output:"\u03B1",ttype:CONST},{input:"\\beta",tag:"mi",output:"\u03B2",ttype:CONST},{input:"\\gamma",tag:"mi",output:"\u03B3",ttype:CONST},{input:"\\delta",tag:"mi",output:"\u03B4",ttype:CONST},{input:"\\epsilon",tag:"mi",output:"\u03B5",ttype:CONST},{input:"\\varepsilon",tag:"mi",output:"\u025B",ttype:CONST},{input:"\\zeta",tag:"mi",output:"\u03B6",ttype:CONST},{input:"\\eta",tag:"mi",output:"\u03B7",ttype:CONST},{input:"\\theta",tag:"mi",output:"\u03B8",ttype:CONST},{input:"\\vartheta",tag:"mi",output:"\u03D1",ttype:CONST},{input:"\\iota",tag:"mi",output:"\u03B9",ttype:CONST},{input:"\\kappa",tag:"mi",output:"\u03BA",ttype:CONST},{input:"\\lambda",tag:"mi",output:"\u03BB",ttype:CONST},{input:"\\mu",tag:"mi",output:"\u03BC",ttype:CONST},{input:"\\nu",tag:"mi",output:"\u03BD",ttype:CONST},{input:"\\xi",tag:"mi",output:"\u03BE",ttype:CONST},{input:"\\pi",tag:"mi",output:"\u03C0",ttype:CONST},{input:"\\varpi",tag:"mi",output:"\u03D6",ttype:CONST},{input:"\\rho",tag:"mi",output:"\u03C1",ttype:CONST},{input:"\\varrho",tag:"mi",output:"\u03F1",ttype:CONST},{input:"\\varsigma",tag:"mi",output:"\u03C2",ttype:CONST},{input:"\\sigma",tag:"mi",output:"\u03C3",ttype:CONST},{input:"\\tau",tag:"mi",output:"\u03C4",ttype:CONST},{input:"\\upsilon",tag:"mi",output:"\u03C5",ttype:CONST},{input:"\\phi",tag:"mi",output:"\u03C6",ttype:CONST},{input:"\\varphi",tag:"mi",output:"\u03D5",ttype:CONST},{input:"\\chi",tag:"mi",output:"\u03C7",ttype:CONST},{input:"\\psi",tag:"mi",output:"\u03C8",ttype:CONST},{input:"\\omega",tag:"mi",output:"\u03C9",ttype:CONST},{input:"\\Gamma",tag:"mo",output:"\u0393",ttype:CONST},{input:"\\Delta",tag:"mo",output:"\u0394",ttype:CONST},{input:"\\Theta",tag:"mo",output:"\u0398",ttype:CONST},{input:"\\Lambda",tag:"mo",output:"\u039B",ttype:CONST},{input:"\\Xi",tag:"mo",output:"\u039E",ttype:CONST},{input:"\\Pi",tag:"mo",output:"\u03A0",ttype:CONST},{input:"\\Sigma",tag:"mo",output:"\u03A3",ttype:CONST},{input:"\\Upsilon",tag:"mo",output:"\u03A5",ttype:CONST},{input:"\\Phi",tag:"mo",output:"\u03A6",ttype:CONST},{input:"\\Psi",tag:"mo",output:"\u03A8",ttype:CONST},{input:"\\Omega",tag:"mo",output:"\u03A9",ttype:CONST},{input:"\\frac12",tag:"mo",output:"\u00BD",ttype:CONST},{input:"\\frac14",tag:"mo",output:"\u00BC",ttype:CONST},{input:"\\frac34",tag:"mo",output:"\u00BE",ttype:CONST},{input:"\\frac13",tag:"mo",output:"\u2153",ttype:CONST},{input:"\\frac23",tag:"mo",output:"\u2154",ttype:CONST},{input:"\\frac15",tag:"mo",output:"\u2155",ttype:CONST},{input:"\\frac25",tag:"mo",output:"\u2156",ttype:CONST},{input:"\\frac35",tag:"mo",output:"\u2157",ttype:CONST},{input:"\\frac45",tag:"mo",output:"\u2158",ttype:CONST},{input:"\\frac16",tag:"mo",output:"\u2159",ttype:CONST},{input:"\\frac56",tag:"mo",output:"\u215A",ttype:CONST},{input:"\\frac18",tag:"mo",output:"\u215B",ttype:CONST},{input:"\\frac38",tag:"mo",output:"\u215C",ttype:CONST},{input:"\\frac58",tag:"mo",output:"\u215D",ttype:CONST},{input:"\\frac78",tag:"mo",output:"\u215E",ttype:CONST},{input:"\\pm",tag:"mo",output:"\u00B1",ttype:CONST},{input:"\\mp",tag:"mo",output:"\u2213",ttype:CONST},{input:"\\triangleleft",tag:"mo",output:"\u22B2",ttype:CONST},{input:"\\triangleright",tag:"mo",output:"\u22B3",ttype:CONST},{input:"\\cdot",tag:"mo",output:"\u22C5",ttype:CONST},{input:"\\star",tag:"mo",output:"\u22C6",ttype:CONST},{input:"\\ast",tag:"mo",output:"\u002A",ttype:CONST},{input:"\\times",tag:"mo",output:"\u00D7",ttype:CONST},{input:"\\div",tag:"mo",output:"\u00F7",ttype:CONST},{input:"\\circ",tag:"mo",output:"\u2218",ttype:CONST},{input:"\\bullet",tag:"mo",output:"\u2022",ttype:CONST},{input:"\\oplus",tag:"mo",output:"\u2295",ttype:CONST},{input:"\\ominus",tag:"mo",output:"\u2296",ttype:CONST},{input:"\\otimes",tag:"mo",output:"\u2297",ttype:CONST},{input:"\\bigcirc",tag:"mo",output:"\u25CB",ttype:CONST},{input:"\\oslash",tag:"mo",output:"\u2298",ttype:CONST},{input:"\\odot",tag:"mo",output:"\u2299",ttype:CONST},{input:"\\land",tag:"mo",output:"\u2227",ttype:CONST},{input:"\\wedge",tag:"mo",output:"\u2227",ttype:CONST},{input:"\\lor",tag:"mo",output:"\u2228",ttype:CONST},{input:"\\vee",tag:"mo",output:"\u2228",ttype:CONST},{input:"\\cap",tag:"mo",output:"\u2229",ttype:CONST},{input:"\\cup",tag:"mo",output:"\u222A",ttype:CONST},{input:"\\sqcap",tag:"mo",output:"\u2293",ttype:CONST},{input:"\\sqcup",tag:"mo",output:"\u2294",ttype:CONST},{input:"\\uplus",tag:"mo",output:"\u228E",ttype:CONST},{input:"\\amalg",tag:"mo",output:"\u2210",ttype:CONST},{input:"\\bigtriangleup",tag:"mo",output:"\u25B3",ttype:CONST},{input:"\\bigtriangledown",tag:"mo",output:"\u25BD",ttype:CONST},{input:"\\dag",tag:"mo",output:"\u2020",ttype:CONST},{input:"\\dagger",tag:"mo",output:"\u2020",ttype:CONST},{input:"\\ddag",tag:"mo",output:"\u2021",ttype:CONST},{input:"\\ddagger",tag:"mo",output:"\u2021",ttype:CONST},{input:"\\lhd",tag:"mo",output:"\u22B2",ttype:CONST},{input:"\\rhd",tag:"mo",output:"\u22B3",ttype:CONST},{input:"\\unlhd",tag:"mo",output:"\u22B4",ttype:CONST},{input:"\\unrhd",tag:"mo",output:"\u22B5",ttype:CONST},{input:"\\sum",tag:"mo",output:"\u2211",ttype:UNDEROVER},{input:"\\prod",tag:"mo",output:"\u220F",ttype:UNDEROVER},{input:"\\bigcap",tag:"mo",output:"\u22C2",ttype:UNDEROVER},{input:"\\bigcup",tag:"mo",output:"\u22C3",ttype:UNDEROVER},{input:"\\bigwedge",tag:"mo",output:"\u22C0",ttype:UNDEROVER},{input:"\\bigvee",tag:"mo",output:"\u22C1",ttype:UNDEROVER},{input:"\\bigsqcap",tag:"mo",output:"\u2A05",ttype:UNDEROVER},{input:"\\bigsqcup",tag:"mo",output:"\u2A06",ttype:UNDEROVER},{input:"\\coprod",tag:"mo",output:"\u2210",ttype:UNDEROVER},{input:"\\bigoplus",tag:"mo",output:"\u2A01",ttype:UNDEROVER},{input:"\\bigotimes",tag:"mo",output:"\u2A02",ttype:UNDEROVER},{input:"\\bigodot",tag:"mo",output:"\u2A00",ttype:UNDEROVER},{input:"\\biguplus",tag:"mo",output:"\u2A04",ttype:UNDEROVER},{input:"\\int",tag:"mo",output:"\u222B",ttype:CONST},{input:"\\oint",tag:"mo",output:"\u222E",ttype:CONST},{input:":=",tag:"mo",output:":=",ttype:CONST},{input:"\\lt",tag:"mo",output:"<",ttype:CONST},{input:"\\gt",tag:"mo",output:">",ttype:CONST},{input:"\\ne",tag:"mo",output:"\u2260",ttype:CONST},{input:"\\neq",tag:"mo",output:"\u2260",ttype:CONST},{input:"\\le",tag:"mo",output:"\u2264",ttype:CONST},{input:"\\leq",tag:"mo",output:"\u2264",ttype:CONST},{input:"\\leqslant",tag:"mo",output:"\u2264",ttype:CONST},{input:"\\ge",tag:"mo",output:"\u2265",ttype:CONST},{input:"\\geq",tag:"mo",output:"\u2265",ttype:CONST},{input:"\\geqslant",tag:"mo",output:"\u2265",ttype:CONST},{input:"\\equiv",tag:"mo",output:"\u2261",ttype:CONST},{input:"\\ll",tag:"mo",output:"\u226A",ttype:CONST},{input:"\\gg",tag:"mo",output:"\u226B",ttype:CONST},{input:"\\doteq",tag:"mo",output:"\u2250",ttype:CONST},{input:"\\prec",tag:"mo",output:"\u227A",ttype:CONST},{input:"\\succ",tag:"mo",output:"\u227B",ttype:CONST},{input:"\\preceq",tag:"mo",output:"\u227C",ttype:CONST},{input:"\\succeq",tag:"mo",output:"\u227D",ttype:CONST},{input:"\\subset",tag:"mo",output:"\u2282",ttype:CONST},{input:"\\supset",tag:"mo",output:"\u2283",ttype:CONST},{input:"\\subseteq",tag:"mo",output:"\u2286",ttype:CONST},{input:"\\supseteq",tag:"mo",output:"\u2287",ttype:CONST},{input:"\\sqsubset",tag:"mo",output:"\u228F",ttype:CONST},{input:"\\sqsupset",tag:"mo",output:"\u2290",ttype:CONST},{input:"\\sqsubseteq",tag:"mo",output:"\u2291",ttype:CONST},{input:"\\sqsupseteq",tag:"mo",output:"\u2292",ttype:CONST},{input:"\\sim",tag:"mo",output:"\u223C",ttype:CONST},{input:"\\simeq",tag:"mo",output:"\u2243",ttype:CONST},{input:"\\approx",tag:"mo",output:"\u2248",ttype:CONST},{input:"\\cong",tag:"mo",output:"\u2245",ttype:CONST},{input:"\\Join",tag:"mo",output:"\u22C8",ttype:CONST},{input:"\\bowtie",tag:"mo",output:"\u22C8",ttype:CONST},{input:"\\in",tag:"mo",output:"\u2208",ttype:CONST},{input:"\\ni",tag:"mo",output:"\u220B",ttype:CONST},{input:"\\owns",tag:"mo",output:"\u220B",ttype:CONST},{input:"\\propto",tag:"mo",output:"\u221D",ttype:CONST},{input:"\\vdash",tag:"mo",output:"\u22A2",ttype:CONST},{input:"\\dashv",tag:"mo",output:"\u22A3",ttype:CONST},{input:"\\models",tag:"mo",output:"\u22A8",ttype:CONST},{input:"\\perp",tag:"mo",output:"\u22A5",ttype:CONST},{input:"\\smile",tag:"mo",output:"\u2323",ttype:CONST},{input:"\\frown",tag:"mo",output:"\u2322",ttype:CONST},{input:"\\asymp",tag:"mo",output:"\u224D",ttype:CONST},{input:"\\notin",tag:"mo",output:"\u2209",ttype:CONST},{input:"\\begin{eqnarray}",output:"X",ttype:MATRIX,invisible:true},{input:"\\begin{array}",output:"X",ttype:MATRIX,invisible:true},{input:"\\\\",output:"}&{",ttype:DEFINITION},{input:"\\end{eqnarray}",output:"}}",ttype:DEFINITION},{input:"\\end{array}",output:"}}",ttype:DEFINITION},{input:"\\big",tag:"mo",output:"X",atval:"1.2",ieval:"2.2",ttype:BIG},{input:"\\Big",tag:"mo",output:"X",atval:"1.6",ieval:"2.6",ttype:BIG},{input:"\\bigg",tag:"mo",output:"X",atval:"2.2",ieval:"3.2",ttype:BIG},{input:"\\Bigg",tag:"mo",output:"X",atval:"2.9",ieval:"3.9",ttype:BIG},{input:"\\left",tag:"mo",output:"X",ttype:LEFTBRACKET},{input:"\\right",tag:"mo",output:"X",ttype:RIGHTBRACKET},{input:"{",output:"{",ttype:LEFTBRACKET,invisible:true},{input:"}",output:"}",ttype:RIGHTBRACKET,invisible:true},{input:"(",tag:"mo",output:"(",atval:"1",ttype:STRETCHY},{input:"[",tag:"mo",output:"[",atval:"1",ttype:STRETCHY},{input:"\\lbrack",tag:"mo",output:"[",atval:"1",ttype:STRETCHY},{input:"\\{",tag:"mo",output:"{",atval:"1",ttype:STRETCHY},{input:"\\lbrace",tag:"mo",output:"{",atval:"1",ttype:STRETCHY},{input:"\\langle",tag:"mo",output:"\u2329",atval:"1",ttype:STRETCHY},{input:"\\lfloor",tag:"mo",output:"\u230A",atval:"1",ttype:STRETCHY},{input:"\\lceil",tag:"mo",output:"\u2308",atval:"1",ttype:STRETCHY},{input:")",tag:"mo",output:")",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"]",tag:"mo",output:"]",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\rbrack",tag:"mo",output:"]",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\}",tag:"mo",output:"}",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\rbrace",tag:"mo",output:"}",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\rangle",tag:"mo",output:"\u232A",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\rfloor",tag:"mo",output:"\u230B",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"\\rceil",tag:"mo",output:"\u2309",rtag:"mi",atval:"1",ttype:STRETCHY},{input:"|",tag:"mo",output:"\u2223",atval:"1",ttype:STRETCHY},{input:"\\|",tag:"mo",output:"\u2225",atval:"1",ttype:STRETCHY},{input:"\\vert",tag:"mo",output:"\u2223",atval:"1",ttype:STRETCHY},{input:"\\Vert",tag:"mo",output:"\u2225",atval:"1",ttype:STRETCHY},{input:"\\mid",tag:"mo",output:"\u2223",atval:"1",ttype:STRETCHY},{input:"\\parallel",tag:"mo",output:"\u2225",atval:"1",ttype:STRETCHY},{input:"/",tag:"mo",output:"/",atval:"1.01",ttype:STRETCHY},{input:"\\backslash",tag:"mo",output:"\u2216",atval:"1",ttype:STRETCHY},{input:"\\setminus",tag:"mo",output:"\\",ttype:CONST},{input:"\\!",tag:"mspace",atname:"width",atval:"-0.167em",ttype:SPACE},{input:"\\,",tag:"mspace",atname:"width",atval:"0.167em",ttype:SPACE},{input:"\\>",tag:"mspace",atname:"width",atval:"0.222em",ttype:SPACE},{input:"\\:",tag:"mspace",atname:"width",atval:"0.222em",ttype:SPACE},{input:"\\;",tag:"mspace",atname:"width",atval:"0.278em",ttype:SPACE},{input:"~",tag:"mspace",atname:"width",atval:"0.333em",ttype:SPACE},{input:"\\quad",tag:"mspace",atname:"width",atval:"1em",ttype:SPACE},{input:"\\qquad",tag:"mspace",atname:"width",atval:"2em",ttype:SPACE},{input:"\\prime",tag:"mo",output:"\u2032",ttype:CONST},{input:"'",tag:"mo",output:"\u02B9",ttype:CONST},{input:"''",tag:"mo",output:"\u02BA",ttype:CONST},{input:"'''",tag:"mo",output:"\u2034",ttype:CONST},{input:"''''",tag:"mo",output:"\u2057",ttype:CONST},{input:"\\ldots",tag:"mo",output:"\u2026",ttype:CONST},{input:"\\cdots",tag:"mo",output:"\u22EF",ttype:CONST},{input:"\\vdots",tag:"mo",output:"\u22EE",ttype:CONST},{input:"\\ddots",tag:"mo",output:"\u22F1",ttype:CONST},{input:"\\forall",tag:"mo",output:"\u2200",ttype:CONST},{input:"\\exists",tag:"mo",output:"\u2203",ttype:CONST},{input:"\\Re",tag:"mo",output:"\u211C",ttype:CONST},{input:"\\Im",tag:"mo",output:"\u2111",ttype:CONST},{input:"\\aleph",tag:"mo",output:"\u2135",ttype:CONST},{input:"\\hbar",tag:"mo",output:"\u210F",ttype:CONST},{input:"\\ell",tag:"mo",output:"\u2113",ttype:CONST},{input:"\\wp",tag:"mo",output:"\u2118",ttype:CONST},{input:"\\emptyset",tag:"mo",output:"\u2205",ttype:CONST},{input:"\\infty",tag:"mo",output:"\u221E",ttype:CONST},{input:"\\surd",tag:"mo",output:"\\sqrt{}",ttype:DEFINITION},{input:"\\partial",tag:"mo",output:"\u2202",ttype:CONST},{input:"\\nabla",tag:"mo",output:"\u2207",ttype:CONST},{input:"\\triangle",tag:"mo",output:"\u25B3",ttype:CONST},{input:"\\therefore",tag:"mo",output:"\u2234",ttype:CONST},{input:"\\angle",tag:"mo",output:"\u2220",ttype:CONST},{input:"\\diamond",tag:"mo",output:"\u22C4",ttype:CONST},{input:"\\Diamond",tag:"mo",output:"\u25C7",ttype:CONST},{input:"\\neg",tag:"mo",output:"\u00AC",ttype:CONST},{input:"\\lnot",tag:"mo",output:"\u00AC",ttype:CONST},{input:"\\bot",tag:"mo",output:"\u22A5",ttype:CONST},{input:"\\top",tag:"mo",output:"\u22A4",ttype:CONST},{input:"\\square",tag:"mo",output:"\u25AB",ttype:CONST},{input:"\\Box",tag:"mo",output:"\u25A1",ttype:CONST},{input:"\\wr",tag:"mo",output:"\u2240",ttype:CONST},{input:"\\arccos",tag:"mi",output:"arccos",ttype:UNARY,func:true},{input:"\\arcsin",tag:"mi",output:"arcsin",ttype:UNARY,func:true},{input:"\\arctan",tag:"mi",output:"arctan",ttype:UNARY,func:true},{input:"\\arg",tag:"mi",output:"arg",ttype:UNARY,func:true},{input:"\\cos",tag:"mi",output:"cos",ttype:UNARY,func:true},{input:"\\cosh",tag:"mi",output:"cosh",ttype:UNARY,func:true},{input:"\\cot",tag:"mi",output:"cot",ttype:UNARY,func:true},{input:"\\coth",tag:"mi",output:"coth",ttype:UNARY,func:true},{input:"\\csc",tag:"mi",output:"csc",ttype:UNARY,func:true},{input:"\\deg",tag:"mi",output:"deg",ttype:UNARY,func:true},{input:"\\det",tag:"mi",output:"det",ttype:UNARY,func:true},{input:"\\dim",tag:"mi",output:"dim",ttype:UNARY,func:true},{input:"\\exp",tag:"mi",output:"exp",ttype:UNARY,func:true},{input:"\\gcd",tag:"mi",output:"gcd",ttype:UNARY,func:true},{input:"\\hom",tag:"mi",output:"hom",ttype:UNARY,func:true},{input:"\\inf",tag:"mo",output:"inf",ttype:UNDEROVER},{input:"\\ker",tag:"mi",output:"ker",ttype:UNARY,func:true},{input:"\\lg",tag:"mi",output:"lg",ttype:UNARY,func:true},{input:"\\lim",tag:"mo",output:"lim",ttype:UNDEROVER},{input:"\\liminf",tag:"mo",output:"liminf",ttype:UNDEROVER},{input:"\\limsup",tag:"mo",output:"limsup",ttype:UNDEROVER},{input:"\\ln",tag:"mi",output:"ln",ttype:UNARY,func:true},{input:"\\log",tag:"mi",output:"log",ttype:UNARY,func:true},{input:"\\max",tag:"mo",output:"max",ttype:UNDEROVER},{input:"\\min",tag:"mo",output:"min",ttype:UNDEROVER},{input:"\\Pr",tag:"mi",output:"Pr",ttype:UNARY,func:true},{input:"\\sec",tag:"mi",output:"sec",ttype:UNARY,func:true},{input:"\\sin",tag:"mi",output:"sin",ttype:UNARY,func:true},{input:"\\sinh",tag:"mi",output:"sinh",ttype:UNARY,func:true},{input:"\\sup",tag:"mo",output:"sup",ttype:UNDEROVER},{input:"\\tan",tag:"mi",output:"tan",ttype:UNARY,func:true},{input:"\\tanh",tag:"mi",output:"tanh",ttype:UNARY,func:true},{input:"\\gets",tag:"mo",output:"\u2190",ttype:CONST},{input:"\\leftarrow",tag:"mo",output:"\u2190",ttype:CONST},{input:"\\to",tag:"mo",output:"\u2192",ttype:CONST},{input:"\\rightarrow",tag:"mo",output:"\u2192",ttype:CONST},{input:"\\leftrightarrow",tag:"mo",output:"\u2194",ttype:CONST},{input:"\\uparrow",tag:"mo",output:"\u2191",ttype:CONST},{input:"\\downarrow",tag:"mo",output:"\u2193",ttype:CONST},{input:"\\updownarrow",tag:"mo",output:"\u2195",ttype:CONST},{input:"\\Leftarrow",tag:"mo",output:"\u21D0",ttype:CONST},{input:"\\Rightarrow",tag:"mo",output:"\u21D2",ttype:CONST},{input:"\\Leftrightarrow",tag:"mo",output:"\u21D4",ttype:CONST},{input:"\\iff",tag:"mo",output:"~\\Longleftrightarrow~",ttype:DEFINITION},{input:"\\Uparrow",tag:"mo",output:"\u21D1",ttype:CONST},{input:"\\Downarrow",tag:"mo",output:"\u21D3",ttype:CONST},{input:"\\Updownarrow",tag:"mo",output:"\u21D5",ttype:CONST},{input:"\\mapsto",tag:"mo",output:"\u21A6",ttype:CONST},{input:"\\longleftarrow",tag:"mo",output:"\u2190",ttype:LONG},{input:"\\longrightarrow",tag:"mo",output:"\u2192",ttype:LONG},{input:"\\longleftrightarrow",tag:"mo",output:"\u2194",ttype:LONG},{input:"\\Longleftarrow",tag:"mo",output:"\u21D0",ttype:LONG},{input:"\\Longrightarrow",tag:"mo",output:"\u21D2",ttype:LONG},{input:"\\Longleftrightarrow",tag:"mo",output:"\u21D4",ttype:LONG},{input:"\\longmapsto",tag:"mo",output:"\u21A6",ttype:CONST},AMsqrt,AMroot,AMfrac,AMover,AMsub,AMsup,AMtext,AMmbox,AMatop,AMchoose,{input:"\\acute",tag:"mover",output:"\u00B4",ttype:UNARY,acc:true},{input:"\\grave",tag:"mover",output:"\u0060",ttype:UNARY,acc:true},{input:"\\breve",tag:"mover",output:"\u02D8",ttype:UNARY,acc:true},{input:"\\check",tag:"mover",output:"\u02C7",ttype:UNARY,acc:true},{input:"\\dot",tag:"mover",output:".",ttype:UNARY,acc:true},{input:"\\ddot",tag:"mover",output:"..",ttype:UNARY,acc:true},{input:"\\mathring",tag:"mover",output:"\u00B0",ttype:UNARY,acc:true},{input:"\\vec",tag:"mover",output:"\u20D7",ttype:UNARY,acc:true},{input:"\\overrightarrow",tag:"mover",output:"\u20D7",ttype:UNARY,acc:true},{input:"\\overleftarrow",tag:"mover",output:"\u20D6",ttype:UNARY,acc:true},{input:"\\hat",tag:"mover",output:"\u005E",ttype:UNARY,acc:true},{input:"\\widehat",tag:"mover",output:"\u0302",ttype:UNARY,acc:true},{input:"\\tilde",tag:"mover",output:"~",ttype:UNARY,acc:true},{input:"\\widetilde",tag:"mover",output:"\u02DC",ttype:UNARY,acc:true},{input:"\\bar",tag:"mover",output:"\u203E",ttype:UNARY,acc:true},{input:"\\overbrace",tag:"mover",output:"\uFE37",ttype:UNARY,acc:true},{input:"\\overbracket",tag:"mover",output:"\u23B4",ttype:UNARY,acc:true},{input:"\\overline",tag:"mover",output:"\u00AF",ttype:UNARY,acc:true},{input:"\\underbrace",tag:"munder",output:"\uFE38",ttype:UNARY,acc:true},{input:"\\underbracket",tag:"munder",output:"\u23B5",ttype:UNARY,acc:true},{input:"\\underline",tag:"munder",output:"\u00AF",ttype:UNARY,acc:true},{input:"\\displaystyle",tag:"mstyle",atname:"displaystyle",atval:"true",ttype:UNARY},{input:"\\textstyle",tag:"mstyle",atname:"displaystyle",atval:"false",ttype:UNARY},{input:"\\scriptstyle",tag:"mstyle",atname:"scriptlevel",atval:"1",ttype:UNARY},{input:"\\scriptscriptstyle",tag:"mstyle",atname:"scriptlevel",atval:"2",ttype:UNARY},{input:"\\textrm",tag:"mstyle",output:"\\mathrm",ttype:DEFINITION},{input:"\\mathbf",tag:"mstyle",atname:"mathvariant",atval:"bold",ttype:UNARY},{input:"\\textbf",tag:"mstyle",atname:"mathvariant",atval:"bold",ttype:UNARY},{input:"\\mathit",tag:"mstyle",atname:"mathvariant",atval:"italic",ttype:UNARY},{input:"\\textit",tag:"mstyle",atname:"mathvariant",atval:"italic",ttype:UNARY},{input:"\\mathtt",tag:"mstyle",atname:"mathvariant",atval:"monospace",ttype:UNARY},{input:"\\texttt",tag:"mstyle",atname:"mathvariant",atval:"monospace",ttype:UNARY},{input:"\\mathsf",tag:"mstyle",atname:"mathvariant",atval:"sans-serif",ttype:UNARY},{input:"\\mathbb",tag:"mstyle",atname:"mathvariant",atval:"double-struck",ttype:UNARY,codes:AMbbb},{input:"\\mathcal",tag:"mstyle",atname:"mathvariant",atval:"script",ttype:UNARY,codes:AMcal},{input:"\\mathfrak",tag:"mstyle",atname:"mathvariant",atval:"fraktur",ttype:UNARY,codes:AMfrk},{input:"\\textcolor",tag:"mstyle",atname:"mathvariant",atval:"mathcolor",ttype:BINARY},{input:"\\colorbox",tag:"mstyle",atname:"mathvariant",atval:"background",ttype:BINARY}];function compareNames(s1,s2){if(s1.input>s2.input)return 1+  else return-1;}+  var AMnames=[];function AMinitSymbols(){AMsymbols.sort(compareNames);for(i=0;i<AMsymbols.length;i++)AMnames[i]=AMsymbols[i].input;}+  var AMmathml="http://www.w3.org/1998/Math/MathML";function AMcreateElementMathML(t){if(isIE)return document.createElement("m:"+t);else return document.createElementNS(AMmathml,t);}+  function AMcreateMmlNode(t,frag){if(isIE)var node=document.createElement("m:"+t);else var node=document.createElementNS(AMmathml,t);node.appendChild(frag);return node;}+  function newcommand(oldstr,newstr){AMsymbols=AMsymbols.concat([{input:oldstr,tag:"mo",output:newstr,ttype:DEFINITION}]);}+  function AMremoveCharsAndBlanks(str,n){var st;st=str.slice(n);for(var i=0;i<st.length&&st.charCodeAt(i)<=32;i=i+1);return st.slice(i);}+  function AMposition(arr,str,n){if(n==0){var h,m;n=-1;h=arr.length;while(n+1<h){m=(n+h)>>1;if(arr[m]<str)n=m;else h=m;}+  return h;}else+  for(var i=n;i<arr.length&&arr[i]<str;i++);return i;}+  function AMgetSymbol(str){var k=0;var j=0;var mk;var st;var tagst;var match="";var more=true;for(var i=1;i<=str.length&&more;i++){st=str.slice(0,i);j=k;k=AMposition(AMnames,st,j);if(k<AMnames.length&&str.slice(0,AMnames[k].length)==AMnames[k]){match=AMnames[k];mk=k;i=match.length;}+  more=k<AMnames.length&&str.slice(0,AMnames[k].length)>=AMnames[k];}+  AMpreviousSymbol=AMcurrentSymbol;if(match!=""){AMcurrentSymbol=AMsymbols[mk].ttype;return AMsymbols[mk];}+  AMcurrentSymbol=CONST;k=1;st=str.slice(0,1);if("0"<=st&&st<="9")tagst="mn";else tagst=(("A">st||st>"Z")&&("a">st||st>"z")?"mo":"mi");return{input:st,tag:tagst,output:st,ttype:CONST};}+  var AMpreviousSymbol,AMcurrentSymbol;function AMparseSexpr(str){var symbol,node,result,result2,i,st,newFrag=document.createDocumentFragment();str=AMremoveCharsAndBlanks(str,0);symbol=AMgetSymbol(str);if(symbol==null||symbol.ttype==RIGHTBRACKET)+  return[null,str,null];if(symbol.ttype==DEFINITION){str=symbol.output+AMremoveCharsAndBlanks(str,symbol.input.length);symbol=AMgetSymbol(str);if(symbol==null||symbol.ttype==RIGHTBRACKET)+  return[null,str,null];}+  str=AMremoveCharsAndBlanks(str,symbol.input.length);switch(symbol.ttype){case SPACE:node=AMcreateElementMathML(symbol.tag);node.setAttribute(symbol.atname,symbol.atval);return[node,str,symbol.tag];case UNDEROVER:if(isIE){if(symbol.input.substr(0,4)=="\\big"){str="\\"+symbol.input.substr(4)+str;symbol=AMgetSymbol(str);symbol.ttype=UNDEROVER;str=AMremoveCharsAndBlanks(str,symbol.input.length);}}+  return[AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)),str,symbol.tag];case CONST:var output=symbol.output;if(isIE){if(symbol.input=="'")+  output="\u2032";else if(symbol.input=="''")+  output="\u2033";else if(symbol.input=="'''")+  output="\u2033\u2032";else if(symbol.input=="''''")+  output="\u2033\u2033";else if(symbol.input=="\\square")+  output="\u25A1";else if(symbol.input.substr(0,5)=="\\frac"){var denom=symbol.input.substr(6,1);if(denom=="5"||denom=="6"){str=symbol.input.replace(/\\frac/,"\\frac ")+str;return[node,str,symbol.tag];}}}+  node=AMcreateMmlNode(symbol.tag,document.createTextNode(output));return[node,str,symbol.tag];case LONG:node=AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output));node.setAttribute("minsize","1.5");node.setAttribute("maxsize","1.5");node=AMcreateMmlNode("mover",node);node.appendChild(AMcreateElementMathML("mspace"));return[node,str,symbol.tag];case STRETCHY:if(isIE&&symbol.input=="\\backslash")+  symbol.output="\\";node=AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output));if(symbol.input=="|"||symbol.input=="\\vert"||symbol.input=="\\|"||symbol.input=="\\Vert"){node.setAttribute("lspace","0em");node.setAttribute("rspace","0em");}+  node.setAttribute("maxsize",symbol.atval);if(symbol.rtag!=null)+  return[node,str,symbol.rtag];else+  return[node,str,symbol.tag];case BIG:var atval=symbol.atval;if(isIE)+  atval=symbol.ieval;symbol=AMgetSymbol(str);if(symbol==null)+  return[null,str,null];str=AMremoveCharsAndBlanks(str,symbol.input.length);node=AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output));if(isIE){var space=AMcreateElementMathML("mspace");space.setAttribute("height",atval+"ex");node=AMcreateMmlNode("mrow",node);node.appendChild(space);}else{node.setAttribute("minsize",atval);node.setAttribute("maxsize",atval);}+  return[node,str,symbol.tag];case LEFTBRACKET:if(symbol.input=="\\left"){symbol=AMgetSymbol(str);if(symbol!=null){if(symbol.input==".")+  symbol.invisible=true;str=AMremoveCharsAndBlanks(str,symbol.input.length);}}+  result=AMparseExpr(str,true,false);if(symbol==null||(typeof symbol.invisible=="boolean"&&symbol.invisible))+  node=AMcreateMmlNode("mrow",result[0]);else{node=AMcreateMmlNode("mo",document.createTextNode(symbol.output));node=AMcreateMmlNode("mrow",node);node.appendChild(result[0]);}+  return[node,result[1],result[2]];case MATRIX:if(symbol.input=="\\begin{array}"){var mask="";symbol=AMgetSymbol(str);str=AMremoveCharsAndBlanks(str,0);if(symbol==null)+  mask="l";else{str=AMremoveCharsAndBlanks(str,symbol.input.length);if(symbol.input!="{")+  mask="l";else do{symbol=AMgetSymbol(str);if(symbol!=null){str=AMremoveCharsAndBlanks(str,symbol.input.length);if(symbol.input!="}")+  mask=mask+symbol.input;}}while(symbol!=null&&symbol.input!=""&&symbol.input!="}");}+  result=AMparseExpr("{"+str,true,true);node=AMcreateMmlNode("mtable",result[0]);mask=mask.replace(/l/g,"left ");mask=mask.replace(/r/g,"right ");mask=mask.replace(/c/g,"center ");node.setAttribute("columnalign",mask);node.setAttribute("displaystyle","false");if(isIE)+  return[node,result[1],null];var lspace=AMcreateElementMathML("mspace");lspace.setAttribute("width","0.167em");var rspace=AMcreateElementMathML("mspace");rspace.setAttribute("width","0.167em");var node1=AMcreateMmlNode("mrow",lspace);node1.appendChild(node);node1.appendChild(rspace);return[node1,result[1],null];}else{result=AMparseExpr("{"+str,true,true);node=AMcreateMmlNode("mtable",result[0]);if(isIE)+  node.setAttribute("columnspacing","0.25em");else+  node.setAttribute("columnspacing","0.167em");node.setAttribute("columnalign","right center left");node.setAttribute("displaystyle","true");node=AMcreateMmlNode("mrow",node);return[node,result[1],null];}+  case TEXT:if(str.charAt(0)=="{")i=str.indexOf("}");else i=0;if(i==-1)+  i=str.length;st=str.slice(1,i);if(st.charAt(0)==" "){node=AMcreateElementMathML("mspace");node.setAttribute("width","0.33em");newFrag.appendChild(node);}+  newFrag.appendChild(AMcreateMmlNode(symbol.tag,document.createTextNode(st)));if(st.charAt(st.length-1)==" "){node=AMcreateElementMathML("mspace");node.setAttribute("width","0.33em");newFrag.appendChild(node);}+  str=AMremoveCharsAndBlanks(str,i+1);return[AMcreateMmlNode("mrow",newFrag),str,null];case UNARY:result=AMparseSexpr(str);if(result[0]==null)return[AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)),str];if(typeof symbol.func=="boolean"&&symbol.func){st=str.charAt(0);if(st=="^"||st=="_"||st==","){return[AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)),str,symbol.tag];}else{node=AMcreateMmlNode("mrow",AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)));if(isIE){var space=AMcreateElementMathML("mspace");space.setAttribute("width","0.167em");node.appendChild(space);}+  node.appendChild(result[0]);return[node,result[1],symbol.tag];}}+  if(symbol.input=="\\sqrt"){if(isIE){var space=AMcreateElementMathML("mspace");space.setAttribute("height","1.2ex");space.setAttribute("width","0em");node=AMcreateMmlNode(symbol.tag,result[0])+  node.appendChild(space);return[node,result[1],symbol.tag];}else+  return[AMcreateMmlNode(symbol.tag,result[0]),result[1],symbol.tag];}else if(typeof symbol.acc=="boolean"&&symbol.acc){node=AMcreateMmlNode(symbol.tag,result[0]);var output=symbol.output;if(isIE){if(symbol.input=="\\hat")+  output="\u0302";else if(symbol.input=="\\widehat")+  output="\u005E";else if(symbol.input=="\\bar")+  output="\u00AF";else if(symbol.input=="\\grave")+  output="\u0300";else if(symbol.input=="\\tilde")+  output="\u0303";}+  var node1=AMcreateMmlNode("mo",document.createTextNode(output));if(symbol.input=="\\vec"||symbol.input=="\\check")+  node1.setAttribute("maxsize","1.2");if(isIE&&symbol.input=="\\bar")+  node1.setAttribute("maxsize","0.5");if(symbol.input=="\\underbrace"||symbol.input=="\\underline")+  node1.setAttribute("accentunder","true");else+  node1.setAttribute("accent","true");node.appendChild(node1);if(symbol.input=="\\overbrace"||symbol.input=="\\underbrace")+  node.ttype=UNDEROVER;return[node,result[1],symbol.tag];}else{if(!isIE&&typeof symbol.codes!="undefined"){for(i=0;i<result[0].childNodes.length;i++)+  if(result[0].childNodes[i].nodeName=="mi"||result[0].nodeName=="mi"){st=(result[0].nodeName=="mi"?result[0].firstChild.nodeValue:result[0].childNodes[i].firstChild.nodeValue);var newst=[];for(var j=0;j<st.length;j++)+  if(st.charCodeAt(j)>64&&st.charCodeAt(j)<91)newst=newst++  String.fromCharCode(symbol.codes[st.charCodeAt(j)-65]);else newst=newst+st.charAt(j);if(result[0].nodeName=="mi")+  result[0]=AMcreateElementMathML("mo").appendChild(document.createTextNode(newst));else result[0].replaceChild(AMcreateElementMathML("mo").appendChild(document.createTextNode(newst)),result[0].childNodes[i]);}}+  node=AMcreateMmlNode(symbol.tag,result[0]);node.setAttribute(symbol.atname,symbol.atval);if(symbol.input=="\\scriptstyle"||symbol.input=="\\scriptscriptstyle")+  node.setAttribute("displaystyle","false");return[node,result[1],symbol.tag];}+  case BINARY:result=AMparseSexpr(str);if(result[0]==null)return[AMcreateMmlNode("mo",document.createTextNode(symbol.input)),str,null];result2=AMparseSexpr(result[1]);if(result2[0]==null)return[AMcreateMmlNode("mo",document.createTextNode(symbol.input)),str,null];if(symbol.input=="\\textcolor"||symbol.input=="\\colorbox"){var tclr=str.match(/\{\s*([#\w]+)\s*\}/);str=str.replace(/\{\s*[#\w]+\s*\}/,"");if(tclr!=null){if(IsColorName.test(tclr[1].toLowerCase())){tclr=LaTeXColor[tclr[1].toLowerCase()];}else{tclr=tclr[1];}+  node=AMcreateElementMathML("mstyle");node.setAttribute(symbol.atval,tclr);node.appendChild(result2[0]);return[node,result2[1],symbol.tag];}}+  if(symbol.input=="\\root"||symbol.input=="\\stackrel")newFrag.appendChild(result2[0]);newFrag.appendChild(result[0]);if(symbol.input=="\\frac")newFrag.appendChild(result2[0]);return[AMcreateMmlNode(symbol.tag,newFrag),result2[1],symbol.tag];case INFIX:str=AMremoveCharsAndBlanks(str,symbol.input.length);return[AMcreateMmlNode("mo",document.createTextNode(symbol.output)),str,symbol.tag];default:return[AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)),str,symbol.tag];}}+  function AMparseIexpr(str){var symbol,sym1,sym2,node,result,tag,underover;str=AMremoveCharsAndBlanks(str,0);sym1=AMgetSymbol(str);result=AMparseSexpr(str);node=result[0];str=result[1];tag=result[2];symbol=AMgetSymbol(str);if(symbol.ttype==INFIX){str=AMremoveCharsAndBlanks(str,symbol.input.length);result=AMparseSexpr(str);if(result[0]==null)+  result[0]=AMcreateMmlNode("mo",document.createTextNode("\u25A1"));str=result[1];tag=result[2];if(symbol.input=="_"||symbol.input=="^"){sym2=AMgetSymbol(str);tag=null;underover=((sym1.ttype==UNDEROVER)||(node.ttype==UNDEROVER));if(symbol.input=="_"&&sym2.input=="^"){str=AMremoveCharsAndBlanks(str,sym2.input.length);var res2=AMparseSexpr(str);str=res2[1];tag=res2[2];node=AMcreateMmlNode((underover?"munderover":"msubsup"),node);node.appendChild(result[0]);node.appendChild(res2[0]);}else if(symbol.input=="_"){node=AMcreateMmlNode((underover?"munder":"msub"),node);node.appendChild(result[0]);}else{node=AMcreateMmlNode((underover?"mover":"msup"),node);node.appendChild(result[0]);}+  node=AMcreateMmlNode("mrow",node);}else{node=AMcreateMmlNode(symbol.tag,node);if(symbol.input=="\\atop"||symbol.input=="\\choose")+  node.setAttribute("linethickness","0ex");node.appendChild(result[0]);if(symbol.input=="\\choose")+  node=AMcreateMmlNode("mfenced",node);}}+  return[node,str,tag];}+  function AMparseExpr(str,rightbracket,matrix){var symbol,node,result,i,tag,newFrag=document.createDocumentFragment();do{str=AMremoveCharsAndBlanks(str,0);result=AMparseIexpr(str);node=result[0];str=result[1];tag=result[2];symbol=AMgetSymbol(str);if(node!=undefined){if((tag=="mn"||tag=="mi")&&symbol!=null&&typeof symbol.func=="boolean"&&symbol.func){var space=AMcreateElementMathML("mspace");space.setAttribute("width","0.167em");node=AMcreateMmlNode("mrow",node);node.appendChild(space);}+  newFrag.appendChild(node);}}while((symbol.ttype!=RIGHTBRACKET)&&symbol!=null&&symbol.output!="");tag=null;if(symbol.ttype==RIGHTBRACKET){if(symbol.input=="\\right"){str=AMremoveCharsAndBlanks(str,symbol.input.length);symbol=AMgetSymbol(str);if(symbol!=null&&symbol.input==".")+  symbol.invisible=true;if(symbol!=null)+  tag=symbol.rtag;}+  if(symbol!=null)+  str=AMremoveCharsAndBlanks(str,symbol.input.length);var len=newFrag.childNodes.length;if(matrix&&len>0&&newFrag.childNodes[len-1].nodeName=="mrow"&&len>1&&newFrag.childNodes[len-2].nodeName=="mo"&&newFrag.childNodes[len-2].firstChild.nodeValue=="&"){var pos=[];var m=newFrag.childNodes.length;for(i=0;matrix&&i<m;i=i+2){pos[i]=[];node=newFrag.childNodes[i];for(var j=0;j<node.childNodes.length;j++)+  if(node.childNodes[j].firstChild.nodeValue=="&")+  pos[i][pos[i].length]=j;}+  var row,frag,n,k,table=document.createDocumentFragment();for(i=0;i<m;i=i+2){row=document.createDocumentFragment();frag=document.createDocumentFragment();node=newFrag.firstChild;n=node.childNodes.length;k=0;for(j=0;j<n;j++){if(typeof pos[i][k]!="undefined"&&j==pos[i][k]){node.removeChild(node.firstChild);row.appendChild(AMcreateMmlNode("mtd",frag));k++;}else frag.appendChild(node.firstChild);}+  row.appendChild(AMcreateMmlNode("mtd",frag));if(newFrag.childNodes.length>2){newFrag.removeChild(newFrag.firstChild);newFrag.removeChild(newFrag.firstChild);}+  table.appendChild(AMcreateMmlNode("mtr",row));}+  return[table,str];}+  if(typeof symbol.invisible!="boolean"||!symbol.invisible){node=AMcreateMmlNode("mo",document.createTextNode(symbol.output));newFrag.appendChild(node);}}+  return[newFrag,str,tag];}+  function AMparseMath(str){var result,node=AMcreateElementMathML("mstyle");var cclr=str.match(/\\color\s*\{\s*([#\w]+)\s*\}/);str=str.replace(/\\color\s*\{\s*[#\w]+\s*\}/g,"");if(cclr!=null){if(IsColorName.test(cclr[1].toLowerCase())){cclr=LaTeXColor[cclr[1].toLowerCase()];}else{cclr=cclr[1];}+  node.setAttribute("mathcolor",cclr);}else{if(mathcolor!="")node.setAttribute("mathcolor",mathcolor);};if(mathfontfamily!="")node.setAttribute("fontfamily",mathfontfamily);node.appendChild(AMparseExpr(str.replace(/^\s+/g,""),false,false)[0]);node=AMcreateMmlNode("math",node);if(showasciiformulaonhover)+  node.setAttribute("title",str.replace(/\s+/g," "));if(false){var fnode=AMcreateElementXHTML("font");fnode.setAttribute("face",mathfontfamily);fnode.appendChild(node);return fnode;}+  return node;}+  function AMstrarr2docFrag(arr,linebreaks){var newFrag=document.createDocumentFragment();var expr=false;for(var i=0;i<arr.length;i++){if(expr)newFrag.appendChild(AMparseMath(arr[i]));else{var arri=(linebreaks?arr[i].split("\n\n"):[arr[i]]);newFrag.appendChild(AMcreateElementXHTML("span").appendChild(document.createTextNode(arri[0])));for(var j=1;j<arri.length;j++){newFrag.appendChild(AMcreateElementXHTML("p"));newFrag.appendChild(AMcreateElementXHTML("span").appendChild(document.createTextNode(arri[j])));}}+  expr=!expr;}+  return newFrag;}+  function AMprocessNodeR(n,linebreaks){var mtch,str,arr,frg,i;if(n.childNodes.length==0){if((n.nodeType!=8||linebreaks)&&n.parentNode.nodeName!="form"&&n.parentNode.nodeName!="FORM"&&n.parentNode.nodeName!="textarea"&&n.parentNode.nodeName!="TEXTAREA"&&n.parentNode.nodeName!="pre"&&n.parentNode.nodeName!="PRE"){str=n.nodeValue;if(!(str==null)){str=str.replace(/\r\n\r\n/g,"\n\n");str=str.replace(/\x20+/g," ");str=str.replace(/\s*\r\n/g," ");mtch=(str.indexOf("\$")==-1?false:true);str=str.replace(/([^\\])\$/g,"$1 \$");str=str.replace(/^\$/," \$");arr=str.split(" \$");for(i=0;i<arr.length;i++)+  arr[i]=arr[i].replace(/\\\$/g,"\$");if(arr.length>1||mtch){if(checkForMathML){checkForMathML=false;var nd=AMisMathMLavailable();AMnoMathML=nd!=null;if(AMnoMathML&&notifyIfNoMathML)+  if(alertIfNoMathML)+  alert("To view the ASCIIMathML notation use Internet Explorer 6 +\nMathPlayer (free from www.dessci.com)\nor Firefox/Mozilla/Netscape");else AMbody.insertBefore(nd,AMbody.childNodes[0]);}+  if(!AMnoMathML){frg=AMstrarr2docFrag(arr,n.nodeType==8);var len=frg.childNodes.length;n.parentNode.replaceChild(frg,n);return len-1;}else return 0;}}}else return 0;}else if(n.nodeName!="math"){for(i=0;i<n.childNodes.length;i++)+  i+=AMprocessNodeR(n.childNodes[i],linebreaks);}+  return 0;}+  function AMprocessNode(n,linebreaks,spanclassAM){var frag,st;if(spanclassAM!=null){frag=document.getElementsByTagName("span")+  for(var i=0;i<frag.length;i++)+  if(frag[i].className=="AM")+  AMprocessNodeR(frag[i],linebreaks);}else{try{st=n.innerHTML;}catch(err){}+  if(st==null||st.indexOf("\$")!=-1)+  AMprocessNodeR(n,linebreaks);}+  if(isIE){frag=document.getElementsByTagName('math');for(var i=0;i<frag.length;i++)frag[i].update()}}+  var inAppendix=false;var sectionCntr=0;var IEcommentWarning=true;var biblist=[];var bibcntr=0;var LaTeXCounter=[];LaTeXCounter["definition"]=0;LaTeXCounter["proposition"]=0;LaTeXCounter["lemma"]=0;LaTeXCounter["theorem"]=0;LaTeXCounter["corollary"]=0;LaTeXCounter["example"]=0;LaTeXCounter["exercise"]=0;LaTeXCounter["subsection"]=0;LaTeXCounter["subsubsection"]=0;LaTeXCounter["figure"]=0;LaTeXCounter["equation"]=0;LaTeXCounter["table"]=0;var LaTeXColor=[];LaTeXColor["greenyellow"]="#D9FF4F";LaTeXColor["yellow"]="#FFFF00";LaTeXColor["goldenrod"]="#FFE529";LaTeXColor["dandelion"]="#FFB529";LaTeXColor["apricot"]="#FFAD7A";LaTeXColor["peach"]="#FF804D";LaTeXColor["melon"]="#FF8A80";LaTeXColor["yelloworange"]="#FF9400";LaTeXColor["orange"]="#FF6321";LaTeXColor["burntorange"]="#FF7D00";LaTeXColor["bittersweet"]="#C20300";LaTeXColor["redorange"]="#FF3B21";LaTeXColor["mahogany"]="#A60000";LaTeXColor["maroon"]="#AD0000";LaTeXColor["brickred"]="#B80000";LaTeXColor["red"]="#FF0000";LaTeXColor["orangered"]="#FF0080";LaTeXColor["rubinered"]="#FF00DE";LaTeXColor["wildstrawberry"]="#FF0A9C";LaTeXColor["salmon"]="#FF789E";LaTeXColor["carnationpink"]="#FF5EFF";LaTeXColor["magenta"]="#FF00FF";LaTeXColor["violetred"]="#FF30FF";LaTeXColor["rhodamine"]="#FF2EFF";LaTeXColor["mulberry"]="#A314FA";LaTeXColor["redviolet"]="#9600A8";LaTeXColor["fuchsia"]="#7303EB";LaTeXColor["lavender"]="#FF85FF";LaTeXColor["thistle"]="#E069FF";LaTeXColor["orchid"]="#AD5CFF";LaTeXColor["darkorchid"]="#9933CC";LaTeXColor["purple"]="#8C24FF";LaTeXColor["plum"]="#8000FF";LaTeXColor["violet"]="#361FFF";LaTeXColor["royalpurple"]="#401AFF";LaTeXColor["blueviolet"]="#1A0DF5";LaTeXColor["periwinkle"]="#6E73FF";LaTeXColor["cadetblue"]="#616EC4";LaTeXColor["cornflowerblue"]="#59DEFF";LaTeXColor["midnightblue"]="#007091";LaTeXColor["navyblue"]="#0F75FF";LaTeXColor["royalblue"]="#0080FF";LaTeXColor["blue"]="#0000FF";LaTeXColor["cerulean"]="#0FE3FF";LaTeXColor["cyan"]="#00FFFF";LaTeXColor["processblue"]="#0AFFFF";LaTeXColor["skyblue"]="#61FFE0";LaTeXColor["turquoise"]="#26FFCC";LaTeXColor["tealblue"]="#1FFAA3";LaTeXColor["aquamarine"]="#2EFFB2";LaTeXColor["bluegreen"]="#26FFAB";LaTeXColor["emerald"]="#00FF80";LaTeXColor["junglegreen"]="#03FF7A";LaTeXColor["seagreen"]="#4FFF80";LaTeXColor["green"]="#00FF00";LaTeXColor["forestgreen"]="#00E000";LaTeXColor["pinegreen"]="#00BF29";LaTeXColor["limegreen"]="#80FF00";LaTeXColor["yellowgreen"]="#8FFF42";LaTeXColor["springgreen"]="#BDFF3D";LaTeXColor["olivegreen"]="#009900";LaTeXColor["rawsienna"]="#8C0000";LaTeXColor["sepia"]="#4D0000";LaTeXColor["brown"]="#660000";LaTeXColor["tan"]="#DB9470";LaTeXColor["gray"]="#808080";LaTeXColor["grey"]="#808080";LaTeXColor["black"]="#000000";LaTeXColor["white"]="#FFFFFF";var IsColorName=/^(?:greenyellow|yellow|goldenrod|dandelion|apricot|peach|melon|yelloworange|orange|burntorange|bittersweet|redorange|mahogany|maroon|brickred|red|orangered|rubinered|wildstrawberry|salmon|carnationpink|magenta|violetred|rhodamine|mulberry|redviolet|fuchsia|lavender|thistle|orchid|darkorchid|purple|plum|violet|royalpurple|blueviolet|periwinkle|cadetblue|cornflowerblue|midnightblue|navyblue|royalblue|blue|cerulean|cyan|processblue|skyblue|turquoise|tealblue|aquamarine|bluegreen|emerald|junglegreen|seagreen|green|forestgreen|pinegreen|limegreen|yellowgreen|springgreen|olivegreen|rawsienna|sepia|brown|tan|gray|grey|black|white)$/;var IsCounter=/^(?:definition|proposition|lemma|theorem|corollary|example|exercise|subsection|subsubsection|figure|equation|table)$/;var IsLaTeXElement=/^(?:displayequation|title|author|address|date|abstract|keyword|section|subsection|subsubsection|ref|cite|thebibliography|definition|proposition|lemma|theorem|corollary|example|exercise|itemize|enumerate|enddefinition|endproposition|endlemma|endtheorem|endcorollary|endexample|endexercise|enditemize|endenumerate|LaTeXMathMLlabel|LaTeXMathML|smallskip|medskip|bigskip|quote|quotation|endquote|endquotation|center|endcenter|description|enddescription|inlinemath)$/;var IsTextOnlyArea=/^(?:form|textarea|pre)$/i;var tableid=0;function makeNumberString(cntr){if(sectionCntr>0){if(inAppendix){return"A"+sectionCntr+"."+cntr;}else{return sectionCntr+"."+cntr;}}else{return""+cntr;}};function LaTeXpreProcess(thebody){var TheBody=thebody;if(TheBody.hasChildNodes()){if(!(IsLaTeXElement.test(TheBody.className)))+  {for(var i=0;i<TheBody.childNodes.length;i++){LaTeXpreProcess(TheBody.childNodes[i])}}}+  else{if(TheBody.nodeType==3&&!(IsTextOnlyArea.test(TheBody.parentNode.nodeName)))+  {var str=TheBody.nodeValue;if(!(str==null)){str=str.replace(/\\%/g,"<per>");str=str.replace(/%[^\n]*(?=\n)/g,"");str=str.replace(/%[^\r]*(?=\r)/g,"");str=str.replace(/%[^\n]*$/,"")+  if(isIE&&str.match(/%/g)!=null&&IEcommentWarning){alert("Comments may not have parsed properly.  Try putting in <pre class='LaTeX><div>..</div></pre> structure.");IEcommentWarning=false;}+  str=str.replace(/<per>/g,"%");if(str.match(/XXX[\s\S]*/)!=null){var tmp=str.match(/XXX[\s\S]*/)[0];var tmpstr=tmp.charCodeAt(7)+"::"+tmp.charCodeAt(8)+"::"+tmp.charCodeAt(9)+"::"+tmp.charCodeAt(10)+"::"+tmp.charCodeAt(11)+"::"+tmp.charCodeAt(12)+"::"+tmp.charCodeAt(13);alert(tmpstr);}+  str=str.replace(/([^\\])\\(\s)/g,"$1\u00A0$2");str=str.replace(/\\quad/g,"\u2001");str=str.replace(/\\qquad/g,"\u2001\u2001");str=str.replace(/\\enspace/g,"\u2002");str=str.replace(/\\;/g,"\u2004");str=str.replace(/\\:/g,"\u2005");str=str.replace(/\\,/g,"\u2006");str=str.replace(/\\thinspace/g,"\u200A");str=str.replace(/([^\\])~/g,"$1\u00A0");str=str.replace(/\\~/g,"~");str=str.replace(/\\\[/g," <DEQ> $\\displaystyle{");str=str.replace(/\\\]/g,"}$ <DEQ> ");str=str.replace(/\$\$/g,"${$<DEQ>$}$");str=str.replace(/\\begin\s*\{\s*array\s*\}/g,"\\begin{array}");str=str.replace(/\\end\s*\{\s*array\s*\}/g,"\\end{array}");str=str.replace(/\\begin\s*\{\s*eqnarray\s*\}/g,"  <DEQ>eqno$\\begin{eqnarray}");str=str.replace(/\\end\s*\{\s*eqnarray\s*\}/g,"\\end{eqnarray}$<DEQ>  ");str=str.replace(/\\begin\s*\{\s*eqnarray\*\s*\}/g,"  <DEQ>$\\begin{eqnarray}");str=str.replace(/\\end\s*\{\s*eqnarray\*\s*\}/g,"\\end{eqnarray}$<DEQ>  ");str=str.replace(/\\begin\s*\{\s*displaymath\s*\}/g," <DEQ> $\\displaystyle{");str=str.replace(/\\end\s*\{\s*displaymath\s*\}/g,"}$ <DEQ> ");str=str.replace(/\\begin\s*\{\s*equation\s*\*\s*\}/g," <DEQ> $\\displaystyle{");str=str.replace(/\\end\s*\{\s*equation\s*\*\s*\}/g,"}$ <DEQ> ");str=str.replace(/\\begin\s*\{\s*equation\s*\}/g," <DEQ>eqno$\\displaystyle{");str=str.replace(/\\end\s*\{\s*equation\s*\}/g,"}$ <DEQ> ");str=str.split("<DEQ>");var newFrag=document.createDocumentFragment();for(var i=0;i<str.length;i++){if(i%2){var DEQtable=document.createElement("table");DEQtable.className='displayequation';var DEQtbody=document.createElement("tbody");var DEQtr=document.createElement("tr");var DEQtdeq=document.createElement("td");DEQtdeq.className='eq';str[i]=str[i].replace(/\$\}\$/g,"$\\displaystyle{");str[i]=str[i].replace(/\$\{\$/g,"}");var lbl=str[i].match(/\\label\s*\{\s*(\w+)\s*\}/);var ISeqno=str[i].match(/^eqno/);str[i]=str[i].replace(/^eqno/," ");str[i]=str[i].replace(/\\label\s*\{\s*\w+\s*\}/," ");DEQtdeq.appendChild(document.createTextNode(str[i]));DEQtr.appendChild(DEQtdeq);str[i]=str[i].replace(/\\nonumber/g,"");if(ISeqno!=null||lbl!=null){var DEQtdno=document.createElement("td");DEQtdno.className='eqno';LaTeXCounter["equation"]++;var eqnoString=makeNumberString(LaTeXCounter["equation"]);var DEQanchor=document.createElement("a");if(lbl!=null){DEQanchor.id=lbl[1]};DEQanchor.className="eqno";var anchorSpan=document.createElement("span");anchorSpan.className="eqno";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(eqnoString));DEQanchor.appendChild(anchorSpan);DEQtdno.appendChild(DEQanchor);var DEQspan=document.createElement("span");DEQspan.className="eqno";DEQspan.appendChild(document.createTextNode("("+eqnoString+")"));DEQtdno.appendChild(DEQspan);DEQtr.appendChild(DEQtdno);}+  DEQtbody.appendChild(DEQtr);DEQtable.appendChild(DEQtbody);newFrag.appendChild(DEQtable);}+  else{str[i]=str[i].replace(/\$\}\$/g,"");str[i]=str[i].replace(/\$\{\$/g,"");str[i]=str[i].replace(/\\maketitle/g,"");str[i]=str[i].replace(/\\begin\s*\{\s*document\s*\}/g,"");str[i]=str[i].replace(/\\end\s*\{\s*document\s*\}/g,"");str[i]=str[i].replace(/\\documentclass[^\}]*?\}/g,"");str[i]=str[i].replace(/\\usepackage[^\}]*?\}/g,"");str[i]=str[i].replace(/\\noindent/g,"");str[i]=str[i].replace(/\\notag/g,"");str[i]=str[i].replace(/\\ref\s*\{\s*(\w+)\}/g," \\[ref\\]$1\\[ ");str[i]=str[i].replace(/\\url\s*\{\s*([^\}\n]+)\}/g," \\[url\\]$1\\[ ");str[i]=str[i].replace(/\\href\s*\{\s*([^\}]+)\}\s*\{\s*([^\}]+)\}/g," \\[href\\]$1\\]$2\\[ ");str[i]=str[i].replace(/\\cite\s*\{\s*(\w+)\}/g," \\[cite\\]$1\\[ ");str[i]=str[i].replace(/\\qed/g,"\u220E");str[i]=str[i].replace(/\\endproof/g,"\u220E");str[i]=str[i].replace(/\\proof/g,"\\textbf{Proof: }");str[i]=str[i].replace(/\\n(?=\s)/g," \\[br\\] \\[ ");str[i]=str[i].replace(/\\newline/g," \\[br\\] \\[ ");str[i]=str[i].replace(/\\linebreak/g," \\[br\\] \\[ ");str[i]=str[i].replace(/\\smallskip/g," \\[logicalbreak\\]smallskip\\[ ");str[i]=str[i].replace(/\\medskip/g," \\[logicalbreak\\]medskip\\[ ");str[i]=str[i].replace(/\\bigskip/g," \\[logicalbreak\\]bigskip\\[ ");str[i]=str[i].replace(/[\n\r]+[ \f\n\r\t\v\u2028\u2029]*[\n\r]+/g," \\[logicalbreak\\]LaTeXMathML\\[ ");if(isIE){str[i]=str[i].replace(/\r/g," ");}+  str[i]=str[i].replace(/\\bibitem\s*([^\{]*\{\s*\w*\s*\})/g," \\[bibitem\\]$1\\[ ");str[i]=str[i].replace(/\\bibitem\s*/g," \\[bibitem\\] \\[ ");str[i]=str[i].replace(/\\item\s*\[\s*(\w+)\s*\]/g," \\[alistitem\\]$1\\[ ");str[i]=str[i].replace(/\\item\s*/g," \\[alistitem\\] \\[ ");str[i]=str[i].replace(/\\appendix/g," \\[appendix\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*figure\s*\}([\s\S]+?)\\end\s*\{\s*figure\s*\}/g," \\[figure\\]$1\\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*table\s*\}([\s\S]+?)\\end\s*\{\s*table\s*\}/g," \\[table\\]$1\\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*theorem\s*\}/g," \\[theorem\\]Theorem \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*theorem\s*\}/g," \\[endtheorem\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*definition\s*\}/g," \\[definition\\]Definition \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*definition\s*\}/g," \\[enddefinition\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*lemma\s*\}/g," \\[lemma\\]Lemma \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*lemma\s*\}/g," \\[endlemma\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*corollary\s*\}/g," \\[corollary\\]Corollary \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*corollary\s*\}/g," \\[endcorollary\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*proposition\s*\}/g," \\[proposition\\]Proposition \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*proposition\s*\}/g," \\[endproposition\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*example\s*\}/g," \\[example\\]Example \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*example\s*\}/g," \\[endexample\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*exercise\s*\}/g," \\[exercise\\]Exercise \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*exercise\s*\}/g," \\[endexercise\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*thebibliography\s*\}\s*\{\s*\w+\s*\}/g," \\[thebibliography\\]References \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*thebibliography\s*\}/g," \\[thebibliography\\]References \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*thebibliography\s*\}/g," \\[endthebibliography\\]References \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*proof\s*\}/g," \\[proof\\]Proof: \\[ ");if(isIE){str[i]=str[i].replace(/\\end\s*\{\s*proof\s*\}/g,"\u220E \\[endproof\\] \\[ ");}else{str[i]=str[i].replace(/\\end\s*\{\s*proof\s*\}/g," \\[endproof\\] \\[ ");}+  str[i]=str[i].replace(/\\title\s*\{\s*([^\}]+)\}/g," \\[title\\] \\[$1 \\[endtitle\\] \\[ ");str[i]=str[i].replace(/\\author\s*\{\s*([^\}]+)\}/g," \\[author\\] \\[$1 \\[endauthor\\] \\[ ");str[i]=str[i].replace(/\\address\s*\{\s*([^\}]+)\}/g," \\[address\\] \\[$1 \\[endaddress\\] \\[ ");str[i]=str[i].replace(/\\date\s*\{\s*([^\}]+)\}/g," \\[date\\] \\[$1 \\[enddate\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*keyword\s*\}/g," \\[keyword\\] \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*keyword\s*\}/g," \\[endkeyword\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*abstract\s*\}/g," \\[abstract\\] \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*abstract\s*\}/g," \\[endabstract\\] \\[ ");str[i]=str[i].replace(/\\begin\s*\{\s*(?!array|tabular)(\w+)\s*\}/g," \\[$1\\] \\[ ");str[i]=str[i].replace(/\\end\s*\{\s*(?!array|tabular)(\w+)\s*\}/g," \\[end$1\\] \\[ ");var sectionIndex=str[i].search(/\\section\s*\{\s*[\s\S]+\}/);while(sectionIndex>=0){str[i]=str[i].replace(/\\section\s*\{/," \\[section\\]");var delimcnt=1;for(var ii=sectionIndex;ii<str[i].length;ii++){if(str[i].charAt(ii)=="{"){delimcnt++};if(str[i].charAt(ii)=="}"){delimcnt--};if(delimcnt==0){str[i]=str[i].substring(0,ii)+"\\[ "+str[i].substring(ii+1,str[i].length);break;}};sectionIndex=str[i].search(/\\section\s*\{\s*[\s\S]+\}/);}+  sectionIndex=str[i].search(/\\subsection\s*\{\s*[\s\S]+\}/);while(sectionIndex>=0){str[i]=str[i].replace(/\\subsection\s*\{/," \\[subsection\\]");var delimcnt=1;for(var ii=sectionIndex;ii<str[i].length;ii++){if(str[i].charAt(ii)=="{"){delimcnt++};if(str[i].charAt(ii)=="}"){delimcnt--};if(delimcnt==0){str[i]=str[i].substring(0,ii)+"\\[ "+str[i].substring(ii+1,str[i].length);break;}};sectionIndex=str[i].search(/\\subsection\s*\{\s*[\s\S]+\}/);}+  sectionIndex=str[i].search(/\\subsubsection\s*\{\s*[\s\S]+\}/);while(sectionIndex>=0){str[i]=str[i].replace(/\\subsubsection\s*\{/," \\[subsubsection\\]");var delimcnt=1;for(var ii=sectionIndex;ii<str[i].length;ii++){if(str[i].charAt(ii)=="{"){delimcnt++};if(str[i].charAt(ii)=="}"){delimcnt--};if(delimcnt==0){str[i]=str[i].substring(0,ii)+"\\[ "+str[i].substring(ii+1,str[i].length);break;}};sectionIndex=str[i].search(/\\subsubsection\s*\{\s*[\s\S]+\}/);}+  var CatToNextEven="";var strtmp=str[i].split("\\[");for(var j=0;j<strtmp.length;j++){if(j%2){var strtmparray=strtmp[j].split("\\]");switch(strtmparray[0]){case"section":var nodeTmp=document.createElement("H2");nodeTmp.className='section';sectionCntr++;for(var div in LaTeXCounter){LaTeXCounter[div]=0};var nodeAnchor=document.createElement("a");if(inAppendix){nodeAnchor.className='appendixsection';}else{nodeAnchor.className='section';}+  var nodeNumString=makeNumberString("");var anchorSpan=document.createElement("span");anchorSpan.className="section";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(nodeNumString));nodeAnchor.appendChild(anchorSpan);nodeTmp.appendChild(nodeAnchor);var nodeSpan=document.createElement("span");nodeSpan.className='section';nodeSpan.appendChild(document.createTextNode(nodeNumString+" "));nodeTmp.appendChild(nodeSpan);nodeTmp.appendChild(document.createTextNode(strtmparray[1]));newFrag.appendChild(nodeTmp);break;case"subsection":var nodeTmp=document.createElement("H3");nodeTmp.className='subsection';LaTeXCounter["subsection"]++;LaTeXCounter["subsubsection"]=0;var nodeAnchor=document.createElement("a");nodeAnchor.className='subsection';var nodeNumString=makeNumberString(LaTeXCounter["subsection"]);var anchorSpan=document.createElement("span");anchorSpan.className="subsection";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(nodeNumString));nodeAnchor.appendChild(anchorSpan);nodeTmp.appendChild(nodeAnchor);var nodeSpan=document.createElement("span");nodeSpan.className='subsection';nodeSpan.appendChild(document.createTextNode(nodeNumString+". "));nodeTmp.appendChild(nodeSpan);nodeTmp.appendChild(document.createTextNode(strtmparray[1]));newFrag.appendChild(nodeTmp);break;case"subsubsection":var nodeTmp=document.createElement("H4");nodeTmp.className='subsubsection';LaTeXCounter["subsubsection"]++;var nodeAnchor=document.createElement("a");nodeAnchor.className='subsubsection';var nodeNumString=makeNumberString(LaTeXCounter["subsection"]+"."+LaTeXCounter["subsubsection"]);var anchorSpan=document.createElement("span");anchorSpan.className="subsubsection";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(nodeNumString));nodeAnchor.appendChild(anchorSpan);nodeTmp.appendChild(nodeAnchor);var nodeSpan=document.createElement("span");nodeSpan.className='subsubsection';nodeSpan.appendChild(document.createTextNode(nodeNumString+". "));nodeTmp.appendChild(nodeSpan);nodeTmp.appendChild(document.createTextNode(strtmparray[1]));newFrag.appendChild(nodeTmp);break;case"href":var nodeTmp=document.createElement("a");nodeTmp.className='LaTeXMathML';nodeTmp.href=strtmparray[1];nodeTmp.appendChild(document.createTextNode(strtmparray[2]));newFrag.appendChild(nodeTmp);break;case"url":var nodeTmp=document.createElement("a");nodeTmp.className='LaTeXMathML';nodeTmp.href=strtmparray[1];nodeTmp.appendChild(document.createTextNode(strtmparray[1]));newFrag.appendChild(nodeTmp);break;case"figure":var nodeTmp=document.createElement("table");nodeTmp.className='figure';var FIGtbody=document.createElement("tbody");var FIGlbl=strtmparray[1].match(/\\label\s*\{\s*(\w+)\s*\}/);strtmparray[1]=strtmparray[1].replace(/\\label\s*\{\w+\}/g,"");var capIndex=strtmparray[1].search(/\\caption\s*\{[\s\S]+\}/);var FIGcap="";if(capIndex>=0){var tmp=strtmparray[1];var delimcnt=0;var capstart=-1;for(var pos=capIndex;pos<tmp.length;pos++){if(tmp.charAt(pos)=="{"){delimcnt++};if(tmp.charAt(pos)=="}"){delimcnt--};if(delimcnt==1&&capstart<0){capstart=pos+1};if(delimcnt==0&&capstart>0){capend=pos-1;FIGcap=tmp.substring(capstart,pos);break}}}+  var FIGtr2=document.createElement("tr");var FIGtd2=document.createElement("td");FIGtd2.className="caption";var FIGanchor=document.createElement("a");FIGanchor.className="figure";if(FIGlbl!=null){FIGanchor.id=FIGlbl[1];}+  LaTeXCounter["figure"]++;var fignmbr=makeNumberString(LaTeXCounter["figure"]);var anchorSpan=document.createElement("span");anchorSpan.className="figure";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(fignmbr));FIGanchor.appendChild(anchorSpan);FIGtd2.appendChild(FIGanchor);var FIGspan=document.createElement("span");FIGspan.className="figure";FIGspan.appendChild(document.createTextNode("Figure "+fignmbr+". "));FIGtd2.appendChild(FIGspan);FIGtd2.appendChild(document.createTextNode(""+FIGcap));FIGtr2.appendChild(FIGtd2);FIGtbody.appendChild(FIGtr2);var IsSpecial=false;var FIGinfo=strtmparray[1].match(/\\includegraphics\s*\{([^\}]+)\}/);if(FIGinfo==null){FIGinfo=strtmparray[1].match(/\\includegraphics\s*\[[^\]]*\]\s*\{\s*([^\}]+)\s*\}/);}+  if(FIGinfo==null){FIGinfo=strtmparray[1].match(/\\special\s*\{\s*([^\}]+)\}/);IsSpecial=true};if(FIGinfo!=null){var FIGtr1=document.createElement("tr");var FIGtd1=document.createElement("td");FIGtd1.className="image";var FIGimg=document.createElement("img");var FIGsrc=FIGinfo[1];FIGimg.src=FIGsrc;FIGimg.alt="Figure "+FIGsrc+" did not load";FIGimg.title="Figure "+fignmbr+". "+FIGcap;FIGimg.id="figure"+fignmbr;FIGtd1.appendChild(FIGimg);FIGtr1.appendChild(FIGtd1);FIGtbody.appendChild(FIGtr1);}+  nodeTmp.appendChild(FIGtbody);newFrag.appendChild(nodeTmp);break;case"table":var nodeTmp=document.createElement("table");if(strtmparray[1].search(/\\centering/)>=0){nodeTmp.className='LaTeXtable centered';nodeTmp.align="center";}else{nodeTmp.className='LaTeXtable';};tableid++;nodeTmp.id="LaTeXtable"+tableid;var TABlbl=strtmparray[1].match(/\\label\s*\{\s*(\w+)\s*\}/);strtmparray[1]=strtmparray[1].replace(/\\label\s*\{\w+\}/g,"");var capIndex=strtmparray[1].search(/\\caption\s*\{[\s\S]+\}/);var TABcap="";if(capIndex>=0){var tmp=strtmparray[1];var delimcnt=0;var capstart=-1;for(var pos=capIndex;pos<tmp.length;pos++){if(tmp.charAt(pos)=="{"){delimcnt++};if(tmp.charAt(pos)=="}"){delimcnt--};if(delimcnt==1&&capstart<0){capstart=pos+1};if(delimcnt==0&&capstart>0){capend=pos-1;TABcap=tmp.substring(capstart,pos);break}}}+  if(TABcap!=""){var TABtbody=document.createElement("tbody");var TABcaption=document.createElement("caption");TABcaption.className="LaTeXtable centered";var TABanchor=document.createElement("a");TABanchor.className="LaTeXtable";if(TABlbl!=null){TABanchor.id=TABlbl[1];}+  LaTeXCounter["table"]++;var tabnmbr=makeNumberString(LaTeXCounter["table"]);var anchorSpan=document.createElement("span");anchorSpan.className="LaTeXtable";anchorSpan.style.display="none";anchorSpan.appendChild(document.createTextNode(tabnmbr));TABanchor.appendChild(anchorSpan);TABcaption.appendChild(TABanchor);var TABspan=document.createElement("span");TABspan.className="LaTeXtable";TABspan.appendChild(document.createTextNode("Table "+tabnmbr+". "));TABcaption.appendChild(TABspan);TABcaption.appendChild(document.createTextNode(""+TABcap));nodeTmp.appendChild(TABcaption);}+  var TABinfo=strtmparray[1].match(/\\begin\s*\{\s*tabular\s*\}([\s\S]+)\\end\s*\{\s*tabular\s*\}/);if(TABinfo!=null){var TABtbody=document.createElement('tbody');var TABrow=null;var TABcell=null;var row=0;var col=0;var TABalign=TABinfo[1].match(/^\s*\{([^\}]+)\}/);TABinfo=TABinfo[1].replace(/^\s*\{[^\}]+\}/,"");TABinfo=TABinfo.replace(/\\hline/g,"");TABalign[1]=TABalign[1].replace(/\|/g,"");TABalign[1]=TABalign[1].replace(/\s/g,"");TABinfo=TABinfo.split("\\\\");for(row=0;row<TABinfo.length;row++){TABrow=document.createElement("tr");TABinfo[row]=TABinfo[row].split("&");for(col=0;col<TABinfo[row].length;col++){TABcell=document.createElement("td");switch(TABalign[1].charAt(col)){case"l":TABcell.align="left";break;case"c":TABcell.align="center";break;case"r":TABcell.align="right";break;default:TABcell.align="left";};TABcell.appendChild(document.createTextNode(TABinfo[row][col]));TABrow.appendChild(TABcell);}+  TABtbody.appendChild(TABrow);}+  nodeTmp.appendChild(TABtbody);}+  newFrag.appendChild(nodeTmp);break;case"logicalbreak":var nodeTmp=document.createElement("p");nodeTmp.className=strtmparray[1];nodeTmp.appendChild(document.createTextNode("\u00A0"));newFrag.appendChild(nodeTmp);break;case"appendix":inAppendix=true;sectionCntr=0;break;case"alistitem":var EndDiv=document.createElement("div");EndDiv.className="endlistitem";newFrag.appendChild(EndDiv);var BegDiv=document.createElement("div");BegDiv.className="listitem";if(strtmparray[1]!=" "){var BegSpan=document.createElement("span");BegSpan.className="listitemmarker";var boldBegSpan=document.createElement("b");boldBegSpan.appendChild(document.createTextNode(strtmparray[1]+" "));BegSpan.appendChild(boldBegSpan);BegDiv.appendChild(BegSpan);}+  newFrag.appendChild(BegDiv);break;case"br":newFrag.appendChild(document.createElement("br"));break;case"bibitem":newFrag.appendChild(document.createElement("br"));var nodeTmp=document.createElement("a");nodeTmp.className='bibitem';var nodeSpan=document.createElement("span");nodeSpan.className='bibitem';bibcntr++;var lbl=strtmparray[1].match(/\{\s*(\w+)\s*\}/);strtmparray[1]=strtmparray[1].replace(/\s*\{\s*\w+\s*\}/g,"");strtmparray[1]=strtmparray[1].replace(/^\s*\[/,"");strtmparray[1]=strtmparray[1].replace(/\s*\]$/,"");strtmparray[1]=strtmparray[1].replace(/^\s+|\s+$/g,"");if(lbl==null){biblist[bibcntr]="bibitem"+bibcntr}else{biblist[bibcntr]=lbl[1];};nodeTmp.name=biblist[bibcntr];nodeTmp.id=biblist[bibcntr];if(strtmparray[1]!=""){nodeSpan.appendChild(document.createTextNode(strtmparray[1]));}else{nodeSpan.appendChild(document.createTextNode("["+bibcntr+"]"));}+  nodeTmp.appendChild(nodeSpan);newFrag.appendChild(nodeTmp);break;case"cite":var nodeTmp=document.createElement("a");nodeTmp.className='cite';nodeTmp.name='cite';nodeTmp.href="#"+strtmparray[1];newFrag.appendChild(nodeTmp);break;case"ref":var nodeTmp=document.createElement("a");nodeTmp.className='ref';nodeTmp.name='ref';nodeTmp.href="#"+strtmparray[1];newFrag.appendChild(nodeTmp);break;default:var nodeTmp=document.createElement("div");nodeTmp.className=strtmparray[0];if(IsCounter.test(strtmparray[0])){LaTeXCounter[strtmparray[0]]++;var nodeAnchor=document.createElement("a");nodeAnchor.className=strtmparray[0];var divnum=makeNumberString(LaTeXCounter[strtmparray[0]]);var anchorSpan=document.createElement("span");anchorSpan.className=strtmparray[0];anchorSpan.appendChild(document.createTextNode(divnum));anchorSpan.style.display="none";nodeAnchor.appendChild(anchorSpan);nodeTmp.appendChild(nodeAnchor);var nodeSpan=document.createElement("span");nodeSpan.className=strtmparray[0];nodeSpan.appendChild(document.createTextNode(strtmparray[1]+" "+divnum+". "));nodeTmp.appendChild(nodeSpan);}+  if(isIE){if(strtmparray[0]==("thebibliography"||"abstract"||"keyword"||"proof")){var nodeSpan=document.createElement("span");nodeSpan.className=strtmparray[0];nodeSpan.appendChild(document.createTextNode(strtmparray[1]));nodeTmp.appendChild(nodeSpan);}}+  if(strtmparray[0]=="endenumerate"||strtmparray[0]=="enditemize"||strtmparray[0]=="enddescription"){var endDiv=document.createElement("div");endDiv.className="endlistitem";newFrag.appendChild(endDiv);}+  newFrag.appendChild(nodeTmp);if(strtmparray[0]=="enumerate"||strtmparray[0]=="itemize"||strtmparray[0]=="description"){var endDiv=document.createElement("div");endDiv.className="listitem";newFrag.appendChild(endDiv);}}}else{strtmp[j]=strtmp[j].replace(/\\\$/g,"<per>");strtmp[j]=strtmp[j].replace(/\$([^\$]+)\$/g," \\[$1\\[ ");strtmp[j]=strtmp[j].replace(/<per>/g,"\\$");strtmp[j]=strtmp[j].replace(/\\begin\s*\{\s*math\s*\}([\s\S]+?)\\end\s*\{\s*math\s*\}/g," \\[$1\\[ ");var strtmptmp=strtmp[j].split("\\[");for(var jjj=0;jjj<strtmptmp.length;jjj++){if(jjj%2){var nodeTmp=document.createElement("span");nodeTmp.className='inlinemath';nodeTmp.appendChild(document.createTextNode("$"+strtmptmp[jjj]+"$"));newFrag.appendChild(nodeTmp);}else{var TagIndex=strtmptmp[jjj].search(/\\\w+/);var tmpIndex=TagIndex;while(tmpIndex>-1){if(/^\\textcolor/.test(strtmptmp[jjj].substring(TagIndex,strtmptmp[jjj].length))){strtmptmp[jjj]=strtmptmp[jjj].replace(/\\textcolor\s*\{\s*(\w+)\s*\}\s*/," \\[textcolor\\]$1\\]|");}else{if(/^\\colorbox/.test(strtmptmp[jjj].substring(TagIndex,strtmptmp[jjj].length))){strtmptmp[jjj]=strtmptmp[jjj].replace(/\\colorbox\s*\{\s*(\w+)\s*\}\s*/," \\[colorbox\\]$1\\]|");}else{strtmptmp[jjj]=strtmptmp[jjj].substring(0,TagIndex)+strtmptmp[jjj].substring(TagIndex,strtmptmp[jjj].length).replace(/\\\s*(\w+)\s*/," \\[$1\\]|");}}+  TagIndex+=strtmptmp[jjj].substring(TagIndex,strtmptmp[jjj].length).search(/\|/);TagIndex++;strtmptmp[jjj]=strtmptmp[jjj].replace(/\\\]\|/,"\\] ");if(strtmptmp[jjj].charAt(TagIndex)=="{"){strtmptmp[jjj]=strtmptmp[jjj].substring(0,TagIndex)+strtmptmp[jjj].substring(TagIndex+1,strtmptmp[jjj].length);var delimcnt=1;for(var kk=TagIndex;kk<strtmptmp[jjj].length;kk++){if(strtmptmp[jjj].charAt(kk)=="{"){delimcnt++};if(strtmptmp[jjj].charAt(kk)=="}"){delimcnt--};if(delimcnt==0){break;}}+  strtmptmp[jjj]=strtmptmp[jjj].substring(0,kk)+"\\[ "+strtmptmp[jjj].substring(kk+1,strtmptmp[jjj].length);TagIndex=kk+3;}else{strtmptmp[jjj]=strtmptmp[jjj].substring(0,TagIndex)+"\\[ "+strtmptmp[jjj].substring(TagIndex+1,strtmptmp[jjj].length);TagIndex=TagIndex+3;}+  if(TagIndex<strtmptmp[jjj].length){tmpIndex=strtmptmp[jjj].substring(TagIndex,strtmptmp[jjj].length).search(/\\\w+/);}+  else{tmpIndex=-1};TagIndex+=tmpIndex;}+  strtmptmp[jjj]=strtmptmp[jjj].replace(/\\\\\s*\\\\/g,"\\\\");strtmptmp[jjj]=strtmptmp[jjj].replace(/\\\\/g," \\[br\\] \\[ ");strtmptmp[jjj]=strtmptmp[jjj].replace(/\\label\s*\{\s*(\w+)\s*\}/g," \\[a\\]$1\\[ ");var strlbls=strtmptmp[jjj].split("\\[");for(var jj=0;jj<strlbls.length;jj++){if(jj%2){var strtmparray=strlbls[jj].split("\\]");switch(strtmparray[0]){case"textcolor":var nodeTmp=document.createElement("span");nodeTmp.className='LaTeXColor';if(IsColorName.test(strtmparray[1].toLowerCase())){nodeTmp.style.color=LaTeXColor[strtmparray[1].toLowerCase()];}else{nodeTmp.style.color=strtmparray[1];};nodeTmp.appendChild(document.createTextNode(strtmparray[2]));newFrag.appendChild(nodeTmp);break;case"colorbox":var nodeTmp=document.createElement("span");nodeTmp.className='LaTeXColor';if(IsColorName.test(strtmparray[1].toLowerCase())){nodeTmp.style.background=LaTeXColor[strtmparray[1].toLowerCase()];}else{nodeTmp.style.background=strtmparray[1];};nodeTmp.appendChild(document.createTextNode(strtmparray[2]));newFrag.appendChild(nodeTmp);break;case"br":newFrag.appendChild(document.createElement("br"));break;case"a":var nodeTmp=document.createElement("a");nodeTmp.className='LaTeXMathMLlabel';nodeTmp.id=strtmparray[1];nodeTmp.style.display="none";newFrag.appendChild(nodeTmp);break;default:var nodeTmp=document.createElement("span");nodeTmp.className=strtmparray[0];nodeTmp.appendChild(document.createTextNode(strtmparray[1]))+  newFrag.appendChild(nodeTmp);}}else{newFrag.appendChild(document.createTextNode(strlbls[jj]));}}}}}}}};TheBody.parentNode.replaceChild(newFrag,TheBody);}}}+  return TheBody;}+  function LaTeXDivsAndRefs(thebody){var TheBody=thebody;var EndDivClass=null;var AllDivs=TheBody.getElementsByTagName("div");var lbl2id="";var lblnode=null;for(var i=AllDivs.length-1;i>=0;i--){EndDivClass=AllDivs[i].className.match(/end\w+/);if(EndDivClass!=null){EndDivClass=EndDivClass[0];var DivClass=EndDivClass.substring(3,EndDivClass.length);var EndDivNode=AllDivs[i];break;}}+  while(EndDivClass!=null){var newFrag=document.createDocumentFragment();var RootNode=EndDivNode.parentNode;var ClassCount=1;while(EndDivNode.previousSibling!=null&&ClassCount>0){switch(EndDivNode.previousSibling.className){case EndDivClass:ClassCount++;newFrag.insertBefore(EndDivNode.previousSibling,newFrag.firstChild);break;case DivClass:if(EndDivNode.previousSibling.nodeName=="DIV"){ClassCount--;if(lbl2id!=""){EndDivNode.previousSibling.id=lbl2id;lbl2id=""}+  if(ClassCount==0){RootNode=EndDivNode.previousSibling;}else{newFrag.insertBefore(EndDivNode.previousSibling,newFrag.firstChild);}};break;case'LaTeXMathMLlabel':lbl2id=EndDivNode.previousSibling.id;EndDivNode.parentNode.removeChild(EndDivNode.previousSibling);break;default:newFrag.insertBefore(EndDivNode.previousSibling,newFrag.firstChild);}}+  RootNode.appendChild(newFrag);EndDivNode.parentNode.removeChild(EndDivNode);AllDivs=TheBody.getElementsByTagName("DIV");for(i=AllDivs.length-1;i>=0;i--){EndDivClass=AllDivs[i].className.match(/end\w+/);if(EndDivClass!=null){ClassCount=0;EndDivClass=EndDivClass[0];DivClass=EndDivClass.substring(3,EndDivClass.length);EndDivNode=AllDivs[i];RootNode=EndDivNode.parentNode;break;}}}+  var AllDivs=TheBody.getElementsByTagName("div");var DIV2LI=null;for(var i=0;i<AllDivs.length;i++){if(AllDivs[i].className=="itemize"||AllDivs[i].className=="enumerate"||AllDivs[i].className=="description"){if(AllDivs[i].className=="itemize"){RootNode=document.createElement("UL");}else{RootNode=document.createElement("OL");}+  RootNode.className='LaTeXMathML';if(AllDivs[i].hasChildNodes()){AllDivs[i].removeChild(AllDivs[i].firstChild)};while(AllDivs[i].hasChildNodes()){if(AllDivs[i].firstChild.hasChildNodes()){DIV2LI=document.createElement("LI");while(AllDivs[i].firstChild.hasChildNodes()){DIV2LI.appendChild(AllDivs[i].firstChild.firstChild);}+  if(DIV2LI.firstChild.className=="listitemmarker"){DIV2LI.style.listStyleType="none";}+  RootNode.appendChild(DIV2LI)}+  AllDivs[i].removeChild(AllDivs[i].firstChild);}+  AllDivs[i].appendChild(RootNode);}}+  var AllAnchors=TheBody.getElementsByTagName("a");for(var i=0;i<AllAnchors.length;i++){if(AllAnchors[i].className=="ref"||AllAnchors[i].className=="cite"){var label=AllAnchors[i].href.match(/\#(\w+)/);if(label!=null){var labelNode=document.getElementById(label[1]);if(labelNode!=null){var TheSpans=labelNode.getElementsByTagName("SPAN");if(TheSpans!=null){var refNode=TheSpans[0].cloneNode(true);refNode.style.display="inline"+  refNode.className=AllAnchors[i].className;AllAnchors[i].appendChild(refNode);}}}}}+  return TheBody;}+  var AMbody;var AMnoMathML=false,AMtranslated=false;function translate(spanclassAM){if(!AMtranslated){AMtranslated=true;AMinitSymbols();var LaTeXContainers=[];var AllContainers=document.getElementsByTagName('*');var ExtendName="";for(var k=0,l=0;k<AllContainers.length;k++){ExtendName=" "+AllContainers[k].className+" ";if(ExtendName.match(/\sLaTeX\s/)!=null){LaTeXContainers[l]=AllContainers[k];l++;}};if(LaTeXContainers.length>0){for(var m=0;m<LaTeXContainers.length;m++){AMbody=LaTeXContainers[m];try{AMbody=LaTeXDivsAndRefs(LaTeXpreProcess(AMbody));}catch(err){alert("Unknown Error: Defaulting to Original LaTeXMathML");}+  if(AMbody.tagName=="PRE"){var PreChilds=document.createDocumentFragment();var DivChilds=document.createElement("DIV");while(AMbody.hasChildNodes()){DivChilds.appendChild(AMbody.firstChild);}+  PreChilds.appendChild(DivChilds);AMbody.parentNode.replaceChild(PreChilds,AMbody);AMbody=DivChilds;}+  AMprocessNode(AMbody,false,spanclassAM);}}else{AMbody=document.getElementsByTagName("body")[0];try{AMbody=LaTeXDivsAndRefs(LaTeXpreProcess(AMbody));}catch(err){alert("Unknown Error: Defaulting to Original LaTeXMathML");}+  AMprocessNode(AMbody,false,spanclassAM);}}}+  if(isIE){document.write("<object id=\"mathplayer\" classid=\"clsid:32F66A20-7614-11D4-BD11-00104BD3F987\"></object>");document.write("<?import namespace=\"m\" implementation=\"#mathplayer\"?>");}+  function generic()+  {translate();};if(typeof window.addEventListener!='undefined')+  {window.addEventListener('load',generic,false);}+  else if(typeof document.addEventListener!='undefined')+  {document.addEventListener('load',generic,false);}+  else if(typeof window.attachEvent!='undefined')+  {window.attachEvent('onload',generic);}+  else+  {if(typeof window.onload=='function')+  {var existing=onload;window.onload=function()+  {existing();generic();};}+  else+  {window.onload=generic;}}+  </script>+</head>+<body>+<h1 class="title">My S5 Document</h1>+<div class="layout">+<div id="controls"></div>+<div id="currentSlide"></div>+<div id="header"></div>+<div id="footer">+<h1+>July 15, 2006</h1+><h2+>My S5 Document</h2+></div>+</div>+<div class="presentation">++<div class="slide">+<h1+>My S5 Document</h1+><h3+>Sam Smith<br+   />Jen Jones</h3+><h4+>July 15, 2006</h4+></div>+<div class="slide">+<h1+>First slide</h1+><ul class="incremental"+><li+  >first bullet</li+  ><li+  >second bullet</li+  ></ul+></div>+<div class="slide">+<h1+>Math</h1+><ul class="incremental"+><li+  ><span class="LaTeX"+    >$\frac{d}{dx}f(x)=\lim_{h\to 0}\frac{f(x+h)-f(x)}{h}$</span+    ></li+  ></ul+></div>+</div>+</body>+</html> 
tests/s5.fragment.html view
@@ -25,7 +25,7 @@ 	>)=\lim<sub 	><em 	  >h</em-	  >&#8201;&#8594;&#8201;0</sub+	  > → 0</sub 	>\frac{<em 	>f</em 	>(<em
tests/s5.inserts.html view
@@ -1,66 +1,63 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">-<html xmlns="http://www.w3.org/1999/xhtml"-><head-  ><title-    >My S5 Document</title-    ><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"-     /><meta name="generator" content="pandoc"-     /><meta name="author" content="Sam Smith"-     /><meta name="author" content="Jen Jones"-     /><meta name="date" content="July 15, 2006"-     /><link rel="stylesheet" href="main.css" type="text/css" media="all" />+<html xmlns="http://www.w3.org/1999/xhtml">+<head>+  <title>My S5 Document</title>+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />+  <meta name="generator" content="pandoc" />+  <meta name="author" content="Sam Smith" />+  <meta name="author" content="Jen Jones" />+  <meta name="date" content="July 15, 2006" />+  <link rel="stylesheet" href="main.css" type="text/css" />+  STUFF INSERTED+</head>+<body>+<h1 class="title">My S5 Document</h1> STUFF INSERTED-</head-  ><body-  >STUFF INSERTED-<h1 class="title"-    >My S5 Document</h1-    ><div id="first-slide"-    ><h1-      >First slide</h1-      ><ul-      ><li-	>first bullet</li-	><li-	>second bullet</li-	></ul-      ></div-    ><div id="math"-    ><h1-      >Math</h1-      ><ul-      ><li-	><span class="math"-	  >\frac{<em-	    >d</em-	    >}{<em-	    >dx</em-	    >}<em-	    >f</em-	    >(<em-	    >x</em-	    >)=\lim<sub-	    ><em-	      >h</em-	      >&#8201;&#8594;&#8201;0</sub-	    >\frac{<em-	    >f</em-	    >(<em-	    >x</em-	    >+<em-	    >h</em-	    >)-<em-	    >f</em-	    >(<em-	    >x</em-	    >)}{<em-	    >h</em-	    >}</span-	  ></li-	></ul-      ></div-    >STUFF INSERTED-</body-  ></html->+<div id="first-slide"+><h1+  >First slide</h1+  ><ul+  ><li+    >first bullet</li+    ><li+    >second bullet</li+    ></ul+  ></div+><div id="math"+><h1+  >Math</h1+  ><ul+  ><li+    ><span class="math"+      >\frac{<em+	>d</em+	>}{<em+	>dx</em+	>}<em+	>f</em+	>(<em+	>x</em+	>)=\lim<sub+	><em+	  >h</em+	  > → 0</sub+	>\frac{<em+	>f</em+	>(<em+	>x</em+	>+<em+	>h</em+	>)-<em+	>f</em+	>(<em+	>x</em+	>)}{<em+	>h</em+	>}</span+      ></li+    ></ul+  ></div+>STUFF INSERTED+</body>+</html> 
tests/s5.native view
@@ -1,4 +1,4 @@-Pandoc (Meta [Str "My",Space,Str "S5",Space,Str "Document"] ["Sam Smith","Jen Jones"] "July 15, 2006")+Pandoc (Meta [Str "My",Space,Str "S5",Space,Str "Document"] [[Str "Sam",Space,Str "Smith"],[Str "Jen",Space,Str "Jones"]] [Str "July",Space,Str "15,",Space,Str "2006"]) [ Header 1 [Str "First",Space,Str "slide"] , BulletList   [ [ Plain [Str "first",Space,Str "bullet"] ]
tests/tables.docbook view
@@ -284,4 +284,3 @@     </td>   </tr> </informaltable>-
tests/tables.native view
@@ -1,4 +1,4 @@-Pandoc (Meta [] [] "")+Pandoc (Meta [] [] []) [ Para [Str "Simple",Space,Str "table",Space,Str "with",Space,Str "caption:"] , Table [Str "Demonstration",Space,Str "of",Space,Str "simple",Space,Str "table",Space,Str "syntax",Str "."] [AlignRight,AlignLeft,AlignCenter,AlignDefault] [0.0,0.0,0.0,0.0]   [ [ Plain [Str "Right"] ]
tests/tables.opendocument view
@@ -1,442 +1,300 @@-<office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" office:version="1.0">-  <office:scripts />-  <office:font-face-decls>-    <style:font-face style:name="&amp;apos;Lucida Sans Unicode&amp;apos;" svg:font-family="Lucida Sans Unicode" />-    <style:font-face style:name="&amp;apos;Tahoma&amp;apos;" svg:font-family="Tahoma" />-    <style:font-face style:name="&amp;apos;Times New Roman&amp;apos;" svg:font-family="Times New Roman" />-  </office:font-face-decls>-  <office:automatic-styles>-    <style:style style:name="P1" style:family="paragraph" style:parent-style-name="Table_20_Heading">-      <style:paragraph-properties fo:text-align="end" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P2" style:family="paragraph" style:parent-style-name="Table_20_Heading">-      <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P3" style:family="paragraph" style:parent-style-name="Table_20_Contents">-      <style:paragraph-properties fo:text-align="end" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P4" style:family="paragraph" style:parent-style-name="Table_20_Contents">-      <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P5" style:family="paragraph" style:parent-style-name="Table_20_Heading">-      <style:paragraph-properties fo:text-align="end" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P6" style:family="paragraph" style:parent-style-name="Table_20_Heading">-      <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P7" style:family="paragraph" style:parent-style-name="Table_20_Contents">-      <style:paragraph-properties fo:text-align="end" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P8" style:family="paragraph" style:parent-style-name="Table_20_Contents">-      <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P9" style:family="paragraph" style:parent-style-name="Table_20_Heading">-      <style:paragraph-properties fo:text-align="end" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P10" style:family="paragraph" style:parent-style-name="Table_20_Heading">-      <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P11" style:family="paragraph" style:parent-style-name="Table_20_Contents">-      <style:paragraph-properties fo:text-align="end" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P12" style:family="paragraph" style:parent-style-name="Table_20_Contents">-      <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P13" style:family="paragraph" style:parent-style-name="Table_20_Heading">-      <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P14" style:family="paragraph" style:parent-style-name="Table_20_Heading">-      <style:paragraph-properties fo:text-align="end" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P15" style:family="paragraph" style:parent-style-name="Table_20_Contents">-      <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P16" style:family="paragraph" style:parent-style-name="Table_20_Contents">-      <style:paragraph-properties fo:text-align="end" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P17" style:family="paragraph" style:parent-style-name="Table_20_Heading">-      <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P18" style:family="paragraph" style:parent-style-name="Table_20_Heading">-      <style:paragraph-properties fo:text-align="end" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P19" style:family="paragraph" style:parent-style-name="Table_20_Contents">-      <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="P20" style:family="paragraph" style:parent-style-name="Table_20_Contents">-      <style:paragraph-properties fo:text-align="end" style:justify-single-word="false" />-    </style:style>-    <style:style style:name="Table1">-      <style:table-properties table:align="center" />-    </style:style>-    <style:style style:name="Table1.A" style:family="table-column" />-    <style:style style:name="Table1.B" style:family="table-column" />-    <style:style style:name="Table1.C" style:family="table-column" />-    <style:style style:name="Table1.D" style:family="table-column" />-    <style:style style:name="Table1.A1" style:family="table-cell">-      <style:table-cell-properties fo:border="none" />-    </style:style>-    <style:style style:name="Table2">-      <style:table-properties table:align="center" />-    </style:style>-    <style:style style:name="Table2.A" style:family="table-column" />-    <style:style style:name="Table2.B" style:family="table-column" />-    <style:style style:name="Table2.C" style:family="table-column" />-    <style:style style:name="Table2.D" style:family="table-column" />-    <style:style style:name="Table2.A1" style:family="table-cell">-      <style:table-cell-properties fo:border="none" />-    </style:style>-    <style:style style:name="Table3">-      <style:table-properties table:align="center" />-    </style:style>-    <style:style style:name="Table3.A" style:family="table-column" />-    <style:style style:name="Table3.B" style:family="table-column" />-    <style:style style:name="Table3.C" style:family="table-column" />-    <style:style style:name="Table3.D" style:family="table-column" />-    <style:style style:name="Table3.A1" style:family="table-cell">-      <style:table-cell-properties fo:border="none" />-    </style:style>-    <style:style style:name="Table4">-      <style:table-properties table:align="center" />-    </style:style>-    <style:style style:name="Table4.A" style:family="table-column">-      <style:table-column-properties style:rel-column-width="9830*" />-    </style:style>-    <style:style style:name="Table4.B" style:family="table-column">-      <style:table-column-properties style:rel-column-width="9011*" />-    </style:style>-    <style:style style:name="Table4.C" style:family="table-column">-      <style:table-column-properties style:rel-column-width="10649*" />-    </style:style>-    <style:style style:name="Table4.D" style:family="table-column">-      <style:table-column-properties style:rel-column-width="22118*" />-    </style:style>-    <style:style style:name="Table4.A1" style:family="table-cell">-      <style:table-cell-properties fo:border="none" />-    </style:style>-    <style:style style:name="Table5">-      <style:table-properties table:align="center" />-    </style:style>-    <style:style style:name="Table5.A" style:family="table-column">-      <style:table-column-properties style:rel-column-width="9830*" />-    </style:style>-    <style:style style:name="Table5.B" style:family="table-column">-      <style:table-column-properties style:rel-column-width="9011*" />-    </style:style>-    <style:style style:name="Table5.C" style:family="table-column">-      <style:table-column-properties style:rel-column-width="10649*" />-    </style:style>-    <style:style style:name="Table5.D" style:family="table-column">-      <style:table-column-properties style:rel-column-width="22118*" />-    </style:style>-    <style:style style:name="Table5.A1" style:family="table-cell">-      <style:table-cell-properties fo:border="none" />-    </style:style>-  </office:automatic-styles>-  <text:p text:style-name="Text_20_body">Simple table with-                                         caption:</text:p>-  <table:table table:name="Table1" table:style-name="Table1">-    <table:table-column table:style-name="Table1.A" />-    <table:table-column table:style-name="Table1.B" />-    <table:table-column table:style-name="Table1.C" />-    <table:table-column table:style-name="Table1.D" />-    <table:table-header-rows>-      <table:table-row>-        <table:table-cell table:style-name="Table1.A1" office:value-type="string">-          <text:p text:style-name="P1">Right</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table1.A1" office:value-type="string">-          <text:p text:style-name="Table_20_Heading">Left</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table1.A1" office:value-type="string">-          <text:p text:style-name="P2">Center</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table1.A1" office:value-type="string">-          <text:p text:style-name="Table_20_Heading">Default</text:p>-        </table:table-cell>-      </table:table-row>-    </table:table-header-rows>-    <table:table-row>-      <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="P3">12</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">12</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="P4">12</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">12</text:p>-      </table:table-cell>-    </table:table-row>-    <table:table-row>-      <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="P3">123</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">123</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="P4">123</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">123</text:p>-      </table:table-cell>-    </table:table-row>+<text:p text:style-name="Text_20_body">Simple table with caption:</text:p>+<table:table table:name="Table1" table:style-name="Table1">+  <table:table-column table:style-name="Table1.A" />+  <table:table-column table:style-name="Table1.B" />+  <table:table-column table:style-name="Table1.C" />+  <table:table-column table:style-name="Table1.D" />+  <table:table-header-rows>     <table:table-row>       <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="P3">1</text:p>+        <text:p text:style-name="P1">Right</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">1</text:p>+        <text:p text:style-name="Table_20_Heading">Left</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="P4">1</text:p>+        <text:p text:style-name="P2">Center</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table1.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">1</text:p>-      </table:table-cell>-    </table:table-row>-  </table:table>-  <text:p text:style-name="Caption">Demonstration of simple table syntax.</text:p>-  <text:p text:style-name="Text_20_body">Simple table without-                                         caption:</text:p>-  <table:table table:name="Table2" table:style-name="Table2">-    <table:table-column table:style-name="Table2.A" />-    <table:table-column table:style-name="Table2.B" />-    <table:table-column table:style-name="Table2.C" />-    <table:table-column table:style-name="Table2.D" />-    <table:table-header-rows>-      <table:table-row>-        <table:table-cell table:style-name="Table2.A1" office:value-type="string">-          <text:p text:style-name="P5">Right</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table2.A1" office:value-type="string">-          <text:p text:style-name="Table_20_Heading">Left</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table2.A1" office:value-type="string">-          <text:p text:style-name="P6">Center</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table2.A1" office:value-type="string">-          <text:p text:style-name="Table_20_Heading">Default</text:p>-        </table:table-cell>-      </table:table-row>-    </table:table-header-rows>-    <table:table-row>-      <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="P7">12</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">12</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="P8">12</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">12</text:p>-      </table:table-cell>-    </table:table-row>-    <table:table-row>-      <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="P7">123</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">123</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="P8">123</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">123</text:p>+        <text:p text:style-name="Table_20_Heading">Default</text:p>       </table:table-cell>     </table:table-row>+  </table:table-header-rows>+  <table:table-row>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="P3">12</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">12</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="P4">12</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">12</text:p>+    </table:table-cell>+  </table:table-row>+  <table:table-row>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="P3">123</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">123</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="P4">123</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">123</text:p>+    </table:table-cell>+  </table:table-row>+  <table:table-row>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="P3">1</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">1</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="P4">1</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table1.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">1</text:p>+    </table:table-cell>+  </table:table-row>+</table:table>+<text:p text:style-name="Caption">Demonstration of simple table syntax.</text:p>+<text:p text:style-name="Text_20_body">Simple table without caption:</text:p>+<table:table table:name="Table2" table:style-name="Table2">+  <table:table-column table:style-name="Table2.A" />+  <table:table-column table:style-name="Table2.B" />+  <table:table-column table:style-name="Table2.C" />+  <table:table-column table:style-name="Table2.D" />+  <table:table-header-rows>     <table:table-row>       <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="P7">1</text:p>+        <text:p text:style-name="P5">Right</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">1</text:p>+        <text:p text:style-name="Table_20_Heading">Left</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="P8">1</text:p>+        <text:p text:style-name="P6">Center</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table2.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">1</text:p>-      </table:table-cell>-    </table:table-row>-  </table:table>-  <text:p text:style-name="Text_20_body">Simple table indented two-                                         spaces:</text:p>-  <table:table table:name="Table3" table:style-name="Table3">-    <table:table-column table:style-name="Table3.A" />-    <table:table-column table:style-name="Table3.B" />-    <table:table-column table:style-name="Table3.C" />-    <table:table-column table:style-name="Table3.D" />-    <table:table-header-rows>-      <table:table-row>-        <table:table-cell table:style-name="Table3.A1" office:value-type="string">-          <text:p text:style-name="P9">Right</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table3.A1" office:value-type="string">-          <text:p text:style-name="Table_20_Heading">Left</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table3.A1" office:value-type="string">-          <text:p text:style-name="P10">Center</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table3.A1" office:value-type="string">-          <text:p text:style-name="Table_20_Heading">Default</text:p>-        </table:table-cell>-      </table:table-row>-    </table:table-header-rows>-    <table:table-row>-      <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="P11">12</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">12</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="P12">12</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">12</text:p>-      </table:table-cell>-    </table:table-row>-    <table:table-row>-      <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="P11">123</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">123</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="P12">123</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">123</text:p>+        <text:p text:style-name="Table_20_Heading">Default</text:p>       </table:table-cell>     </table:table-row>+  </table:table-header-rows>+  <table:table-row>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="P7">12</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">12</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="P8">12</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">12</text:p>+    </table:table-cell>+  </table:table-row>+  <table:table-row>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="P7">123</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">123</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="P8">123</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">123</text:p>+    </table:table-cell>+  </table:table-row>+  <table:table-row>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="P7">1</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">1</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="P8">1</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table2.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">1</text:p>+    </table:table-cell>+  </table:table-row>+</table:table>+<text:p text:style-name="Text_20_body">Simple table indented two spaces:</text:p>+<table:table table:name="Table3" table:style-name="Table3">+  <table:table-column table:style-name="Table3.A" />+  <table:table-column table:style-name="Table3.B" />+  <table:table-column table:style-name="Table3.C" />+  <table:table-column table:style-name="Table3.D" />+  <table:table-header-rows>     <table:table-row>       <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="P11">1</text:p>+        <text:p text:style-name="P9">Right</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">1</text:p>+        <text:p text:style-name="Table_20_Heading">Left</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="P12">1</text:p>+        <text:p text:style-name="P10">Center</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table3.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">1</text:p>-      </table:table-cell>-    </table:table-row>-  </table:table>-  <text:p text:style-name="Caption">Demonstration of simple table syntax.</text:p>-  <text:p text:style-name="Text_20_body">Multiline table with-                                         caption:</text:p>-  <table:table table:name="Table4" table:style-name="Table4">-    <table:table-column table:style-name="Table4.A" />-    <table:table-column table:style-name="Table4.B" />-    <table:table-column table:style-name="Table4.C" />-    <table:table-column table:style-name="Table4.D" />-    <table:table-header-rows>-      <table:table-row>-        <table:table-cell table:style-name="Table4.A1" office:value-type="string">-          <text:p text:style-name="P13">Centered Header</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table4.A1" office:value-type="string">-          <text:p text:style-name="Table_20_Heading">Left Aligned</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table4.A1" office:value-type="string">-          <text:p text:style-name="P14">Right Aligned</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table4.A1" office:value-type="string">-          <text:p text:style-name="Table_20_Heading">Default aligned</text:p>-        </table:table-cell>-      </table:table-row>-    </table:table-header-rows>-    <table:table-row>-      <table:table-cell table:style-name="Table4.A1" office:value-type="string">-        <text:p text:style-name="P15">First</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table4.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">row</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table4.A1" office:value-type="string">-        <text:p text:style-name="P16">12.0</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table4.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">Example of a row that spans multiple lines.</text:p>+        <text:p text:style-name="Table_20_Heading">Default</text:p>       </table:table-cell>     </table:table-row>+  </table:table-header-rows>+  <table:table-row>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="P11">12</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">12</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="P12">12</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">12</text:p>+    </table:table-cell>+  </table:table-row>+  <table:table-row>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="P11">123</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">123</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="P12">123</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">123</text:p>+    </table:table-cell>+  </table:table-row>+  <table:table-row>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="P11">1</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">1</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="P12">1</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table3.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">1</text:p>+    </table:table-cell>+  </table:table-row>+</table:table>+<text:p text:style-name="Caption">Demonstration of simple table syntax.</text:p>+<text:p text:style-name="Text_20_body">Multiline table with caption:</text:p>+<table:table table:name="Table4" table:style-name="Table4">+  <table:table-column table:style-name="Table4.A" />+  <table:table-column table:style-name="Table4.B" />+  <table:table-column table:style-name="Table4.C" />+  <table:table-column table:style-name="Table4.D" />+  <table:table-header-rows>     <table:table-row>       <table:table-cell table:style-name="Table4.A1" office:value-type="string">-        <text:p text:style-name="P15">Second</text:p>+        <text:p text:style-name="P13">Centered Header</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table4.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">row</text:p>+        <text:p text:style-name="Table_20_Heading">Left Aligned</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table4.A1" office:value-type="string">-        <text:p text:style-name="P16">5.0</text:p>+        <text:p text:style-name="P14">Right Aligned</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table4.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">Here's another one. Note the blank line between rows.</text:p>-      </table:table-cell>-    </table:table-row>-  </table:table>-  <text:p text:style-name="Caption">Here's the caption. It may span multiple lines.</text:p>-  <text:p text:style-name="Text_20_body">Multiline table without-                                         caption:</text:p>-  <table:table table:name="Table5" table:style-name="Table5">-    <table:table-column table:style-name="Table5.A" />-    <table:table-column table:style-name="Table5.B" />-    <table:table-column table:style-name="Table5.C" />-    <table:table-column table:style-name="Table5.D" />-    <table:table-header-rows>-      <table:table-row>-        <table:table-cell table:style-name="Table5.A1" office:value-type="string">-          <text:p text:style-name="P17">Centered Header</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table5.A1" office:value-type="string">-          <text:p text:style-name="Table_20_Heading">Left Aligned</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table5.A1" office:value-type="string">-          <text:p text:style-name="P18">Right Aligned</text:p>-        </table:table-cell>-        <table:table-cell table:style-name="Table5.A1" office:value-type="string">-          <text:p text:style-name="Table_20_Heading">Default aligned</text:p>-        </table:table-cell>-      </table:table-row>-    </table:table-header-rows>-    <table:table-row>-      <table:table-cell table:style-name="Table5.A1" office:value-type="string">-        <text:p text:style-name="P19">First</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table5.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">row</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table5.A1" office:value-type="string">-        <text:p text:style-name="P20">12.0</text:p>-      </table:table-cell>-      <table:table-cell table:style-name="Table5.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">Example of a row that spans multiple lines.</text:p>+        <text:p text:style-name="Table_20_Heading">Default aligned</text:p>       </table:table-cell>     </table:table-row>+  </table:table-header-rows>+  <table:table-row>+    <table:table-cell table:style-name="Table4.A1" office:value-type="string">+      <text:p text:style-name="P15">First</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table4.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">row</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table4.A1" office:value-type="string">+      <text:p text:style-name="P16">12.0</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table4.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">Example of a row that spans multiple lines.</text:p>+    </table:table-cell>+  </table:table-row>+  <table:table-row>+    <table:table-cell table:style-name="Table4.A1" office:value-type="string">+      <text:p text:style-name="P15">Second</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table4.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">row</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table4.A1" office:value-type="string">+      <text:p text:style-name="P16">5.0</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table4.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">Here's another one. Note the blank line between rows.</text:p>+    </table:table-cell>+  </table:table-row>+</table:table>+<text:p text:style-name="Caption">Here's the caption. It may span multiple lines.</text:p>+<text:p text:style-name="Text_20_body">Multiline table without caption:</text:p>+<table:table table:name="Table5" table:style-name="Table5">+  <table:table-column table:style-name="Table5.A" />+  <table:table-column table:style-name="Table5.B" />+  <table:table-column table:style-name="Table5.C" />+  <table:table-column table:style-name="Table5.D" />+  <table:table-header-rows>     <table:table-row>       <table:table-cell table:style-name="Table5.A1" office:value-type="string">-        <text:p text:style-name="P19">Second</text:p>+        <text:p text:style-name="P17">Centered Header</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table5.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">row</text:p>+        <text:p text:style-name="Table_20_Heading">Left Aligned</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table5.A1" office:value-type="string">-        <text:p text:style-name="P20">5.0</text:p>+        <text:p text:style-name="P18">Right Aligned</text:p>       </table:table-cell>       <table:table-cell table:style-name="Table5.A1" office:value-type="string">-        <text:p text:style-name="Table_20_Contents">Here's another one. Note the blank line between rows.</text:p>+        <text:p text:style-name="Table_20_Heading">Default aligned</text:p>       </table:table-cell>     </table:table-row>-  </table:table>-  -</office:document-content>+  </table:table-header-rows>+  <table:table-row>+    <table:table-cell table:style-name="Table5.A1" office:value-type="string">+      <text:p text:style-name="P19">First</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table5.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">row</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table5.A1" office:value-type="string">+      <text:p text:style-name="P20">12.0</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table5.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">Example of a row that spans multiple lines.</text:p>+    </table:table-cell>+  </table:table-row>+  <table:table-row>+    <table:table-cell table:style-name="Table5.A1" office:value-type="string">+      <text:p text:style-name="P19">Second</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table5.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">row</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table5.A1" office:value-type="string">+      <text:p text:style-name="P20">5.0</text:p>+    </table:table-cell>+    <table:table-cell table:style-name="Table5.A1" office:value-type="string">+      <text:p text:style-name="Table_20_Contents">Here's another one. Note the blank line between rows.</text:p>+    </table:table-cell>+  </table:table-row>+</table:table>
tests/testsuite.native view
@@ -1,4 +1,4 @@-Pandoc (Meta [Str "Pandoc",Space,Str "Test",Space,Str "Suite"] ["John MacFarlane","Anonymous"] "July 17, 2006")+Pandoc (Meta [Str "Pandoc",Space,Str "Test",Space,Str "Suite"] [[Str "John",Space,Str "MacFarlane"],[Str "Anonymous"]] [Str "July",Space,Str "17,",Space,Str "2006"]) [ Para [Str "This",Space,Str "is",Space,Str "a",Space,Str "set",Space,Str "of",Space,Str "tests",Space,Str "for",Space,Str "pandoc",Str ".",Space,Str "Most",Space,Str "of",Space,Str "them",Space,Str "are",Space,Str "adapted",Space,Str "from",Space,Str "John",Space,Str "Gruber",Apostrophe,Str "s",Space,Str "markdown",Space,Str "test",Space,Str "suite",Str "."] , HorizontalRule , Header 1 [Str "Headers"]
tests/testsuite.txt view
@@ -1,5 +1,5 @@ % Pandoc Test Suite-% John MacFarlane, Anonymous+% John MacFarlane; Anonymous % July 17, 2006  This is a set of tests for pandoc.  Most of them are adapted from
tests/writer.context view
@@ -67,10 +67,9 @@ ]  \protect-	  \doctitle{Pandoc Test Suite}-\author{John MacFarlane \& Anonymous}+\author{John MacFarlane\\Anonymous} \date{July 17, 2006} \starttext \maketitle@@ -927,5 +926,6 @@  This paragraph should not be part of the note, as it is not indented.+ \stoptext 
tests/writer.docbook view
@@ -1,1470 +1,1469 @@ <?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"                   "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">--<article>-  <articleinfo>-    <title>Pandoc Test Suite</title>-    <author>-      <firstname>John</firstname>-      <surname>MacFarlane</surname>-    </author>-    <author>-      <firstname></firstname>-      <surname>Anonymous</surname>-    </author>-    <date>July 17, 2006</date>-  </articleinfo>-  <para>-    This is a set of tests for pandoc. Most of them are adapted from-    John Gruber's markdown test suite.-  </para>-  <section id="headers">-    <title>Headers</title>-    <section id="level-2-with-an-embedded-link">-      <title>Level 2 with an-             <ulink url="/url">embedded link</ulink></title>-      <section id="level-3-with-emphasis">-        <title>Level 3 with <emphasis>emphasis</emphasis></title>-        <section id="level-4">-          <title>Level 4</title>-          <section id="level-5">-            <title>Level 5</title>-            <para>-            </para>-          </section>-        </section>-      </section>-    </section>-  </section>-  <section id="level-1">-    <title>Level 1</title>-    <section id="level-2-with-emphasis">-      <title>Level 2 with <emphasis>emphasis</emphasis></title>-      <section id="level-3">-        <title>Level 3</title>-        <para>-          with no blank line-        </para>-      </section>-    </section>-    <section id="level-2">-      <title>Level 2</title>-      <para>-        with no blank line-      </para>-    </section>-  </section>-  <section id="paragraphs">-    <title>Paragraphs</title>-    <para>-      Here's a regular paragraph.-    </para>-    <para>-      In Markdown 1.0.0 and earlier. Version 8. This line turns into a-      list item. Because a hard-wrapped line in the middle of a paragraph-      looked like a list item.-    </para>-    <para>-      Here's one with a bullet. * criminey.-    </para>-    <para>-      There should be a hard line-      break<literallayout></literallayout>here.-    </para>-  </section>-  <section id="block-quotes">-    <title>Block Quotes</title>-    <para>-      E-mail style:-    </para>-    <blockquote>-      <para>-        This is a block quote. It is pretty short.-      </para>-    </blockquote>-    <blockquote>-      <para>-        Code in a block quote:-      </para>-      <screen>-sub status {-    print &quot;working&quot;;-}-</screen>-      <para>-        A list:-      </para>-      <orderedlist numeration="arabic">-        <listitem>-          <para>-            item one-          </para>-        </listitem>-        <listitem>-          <para>-            item two-          </para>-        </listitem>-      </orderedlist>-      <para>-        Nested block quotes:-      </para>-      <blockquote>-        <para>-          nested-        </para>-      </blockquote>-      <blockquote>-        <para>-          nested-        </para>-      </blockquote>-    </blockquote>-    <para>-      This should not be a block quote: 2 &gt; 1.-    </para>-    <para>-      And a following paragraph.-    </para>-  </section>-  <section id="code-blocks">-    <title>Code Blocks</title>-    <para>-      Code:-    </para>-    <screen>----- (should be four hyphens)--sub status {-    print &quot;working&quot;;-}--this code block is indented by one tab-</screen>-    <para>-      And:-    </para>-    <screen>-    this code block is indented by two tabs--These should not be escaped:  \$ \\ \&gt; \[ \{-</screen>-  </section>-  <section id="lists">-    <title>Lists</title>-    <section id="unordered">-      <title>Unordered</title>-      <para>-        Asterisks tight:-      </para>-      <itemizedlist>-        <listitem>-          <para>-            asterisk 1-          </para>-        </listitem>-        <listitem>-          <para>-            asterisk 2-          </para>-        </listitem>-        <listitem>-          <para>-            asterisk 3-          </para>-        </listitem>-      </itemizedlist>-      <para>-        Asterisks loose:-      </para>-      <itemizedlist>-        <listitem>-          <para>-            asterisk 1-          </para>-        </listitem>-        <listitem>-          <para>-            asterisk 2-          </para>-        </listitem>-        <listitem>-          <para>-            asterisk 3-          </para>-        </listitem>-      </itemizedlist>-      <para>-        Pluses tight:-      </para>-      <itemizedlist>-        <listitem>-          <para>-            Plus 1-          </para>-        </listitem>-        <listitem>-          <para>-            Plus 2-          </para>-        </listitem>-        <listitem>-          <para>-            Plus 3-          </para>-        </listitem>-      </itemizedlist>-      <para>-        Pluses loose:-      </para>-      <itemizedlist>-        <listitem>-          <para>-            Plus 1-          </para>-        </listitem>-        <listitem>-          <para>-            Plus 2-          </para>-        </listitem>-        <listitem>-          <para>-            Plus 3-          </para>-        </listitem>-      </itemizedlist>-      <para>-        Minuses tight:-      </para>-      <itemizedlist>-        <listitem>-          <para>-            Minus 1-          </para>-        </listitem>-        <listitem>-          <para>-            Minus 2-          </para>-        </listitem>-        <listitem>-          <para>-            Minus 3-          </para>-        </listitem>-      </itemizedlist>-      <para>-        Minuses loose:-      </para>-      <itemizedlist>-        <listitem>-          <para>-            Minus 1-          </para>-        </listitem>-        <listitem>-          <para>-            Minus 2-          </para>-        </listitem>-        <listitem>-          <para>-            Minus 3-          </para>-        </listitem>-      </itemizedlist>-    </section>-    <section id="ordered">-      <title>Ordered</title>-      <para>-        Tight:-      </para>-      <orderedlist numeration="arabic">-        <listitem>-          <para>-            First-          </para>-        </listitem>-        <listitem>-          <para>-            Second-          </para>-        </listitem>-        <listitem>-          <para>-            Third-          </para>-        </listitem>-      </orderedlist>-      <para>-        and:-      </para>-      <orderedlist numeration="arabic">-        <listitem>-          <para>-            One-          </para>-        </listitem>-        <listitem>-          <para>-            Two-          </para>-        </listitem>-        <listitem>-          <para>-            Three-          </para>-        </listitem>-      </orderedlist>-      <para>-        Loose using tabs:-      </para>-      <orderedlist numeration="arabic">-        <listitem>-          <para>-            First-          </para>-        </listitem>-        <listitem>-          <para>-            Second-          </para>-        </listitem>-        <listitem>-          <para>-            Third-          </para>-        </listitem>-      </orderedlist>-      <para>-        and using spaces:-      </para>-      <orderedlist numeration="arabic">-        <listitem>-          <para>-            One-          </para>-        </listitem>-        <listitem>-          <para>-            Two-          </para>-        </listitem>-        <listitem>-          <para>-            Three-          </para>-        </listitem>-      </orderedlist>-      <para>-        Multiple paragraphs:-      </para>-      <orderedlist numeration="arabic">-        <listitem>-          <para>-            Item 1, graf one.-          </para>-          <para>-            Item 1. graf two. The quick brown fox jumped over the lazy dog's-            back.-          </para>-        </listitem>-        <listitem>-          <para>-            Item 2.-          </para>-        </listitem>-        <listitem>-          <para>-            Item 3.-          </para>-        </listitem>-      </orderedlist>-    </section>-    <section id="nested">-      <title>Nested</title>-      <itemizedlist>-        <listitem>-          <para>-            Tab-          </para>-          <itemizedlist>-            <listitem>-              <para>-                Tab-              </para>-              <itemizedlist>-                <listitem>-                  <para>-                    Tab-                  </para>-                </listitem>-              </itemizedlist>-            </listitem>-          </itemizedlist>-        </listitem>-      </itemizedlist>-      <para>-        Here's another:-      </para>-      <orderedlist numeration="arabic">-        <listitem>-          <para>-            First-          </para>-        </listitem>-        <listitem>-          <para>-            Second:-          </para>-          <itemizedlist>-            <listitem>-              <para>-                Fee-              </para>-            </listitem>-            <listitem>-              <para>-                Fie-              </para>-            </listitem>-            <listitem>-              <para>-                Foe-              </para>-            </listitem>-          </itemizedlist>-        </listitem>-        <listitem>-          <para>-            Third-          </para>-        </listitem>-      </orderedlist>-      <para>-        Same thing but with paragraphs:-      </para>-      <orderedlist numeration="arabic">-        <listitem>-          <para>-            First-          </para>-        </listitem>-        <listitem>-          <para>-            Second:-          </para>-          <itemizedlist>-            <listitem>-              <para>-                Fee-              </para>-            </listitem>-            <listitem>-              <para>-                Fie-              </para>-            </listitem>-            <listitem>-              <para>-                Foe-              </para>-            </listitem>-          </itemizedlist>-        </listitem>-        <listitem>-          <para>-            Third-          </para>-        </listitem>-      </orderedlist>-    </section>-    <section id="tabs-and-spaces">-      <title>Tabs and spaces</title>-      <itemizedlist>-        <listitem>-          <para>-            this is a list item indented with tabs-          </para>-        </listitem>-        <listitem>-          <para>-            this is a list item indented with spaces-          </para>-          <itemizedlist>-            <listitem>-              <para>-                this is an example list item indented with tabs-              </para>-            </listitem>-            <listitem>-              <para>-                this is an example list item indented with spaces-              </para>-            </listitem>-          </itemizedlist>-        </listitem>-      </itemizedlist>-    </section>-    <section id="fancy-list-markers">-      <title>Fancy list markers</title>-      <orderedlist numeration="arabic">-        <listitem override="2">-          <para>-            begins with 2-          </para>-        </listitem>-        <listitem>-          <para>-            and now 3-          </para>-          <para>-            with a continuation-          </para>-          <orderedlist numeration="lowerroman">-            <listitem override="4">-              <para>-                sublist with roman numerals, starting with 4-              </para>-            </listitem>-            <listitem>-              <para>-                more items-              </para>-              <orderedlist numeration="upperalpha">-                <listitem>-                  <para>-                    a subsublist-                  </para>-                </listitem>-                <listitem>-                  <para>-                    a subsublist-                  </para>-                </listitem>-              </orderedlist>-            </listitem>-          </orderedlist>-        </listitem>-      </orderedlist>-      <para>-        Nesting:-      </para>-      <orderedlist numeration="upperalpha">-        <listitem>-          <para>-            Upper Alpha-          </para>-          <orderedlist numeration="upperroman">-            <listitem>-              <para>-                Upper Roman.-              </para>-              <orderedlist numeration="arabic">-                <listitem override="6">-                  <para>-                    Decimal start with 6-                  </para>-                  <orderedlist numeration="loweralpha">-                    <listitem override="3">-                      <para>-                        Lower alpha with paren-                      </para>-                    </listitem>-                  </orderedlist>-                </listitem>-              </orderedlist>-            </listitem>-          </orderedlist>-        </listitem>-      </orderedlist>-      <para>-        Autonumbering:-      </para>-      <orderedlist>-        <listitem>-          <para>-            Autonumber.-          </para>-        </listitem>-        <listitem>-          <para>-            More.-          </para>-          <orderedlist>-            <listitem>-              <para>-                Nested.-              </para>-            </listitem>-          </orderedlist>-        </listitem>-      </orderedlist>-      <para>-        Should not be a list item:-      </para>-      <para>-        M.A.&#160;2007-      </para>-      <para>-        B. Williams-      </para>-    </section>-  </section>-  <section id="definition-lists">-    <title>Definition Lists</title>-    <para>-      Tight using spaces:-    </para>-    <variablelist>-      <varlistentry>-        <term>-          apple-        </term>-        <listitem>-          <para>-            red fruit-          </para>-        </listitem>-      </varlistentry>-      <varlistentry>-        <term>-          orange-        </term>-        <listitem>-          <para>-            orange fruit-          </para>-        </listitem>-      </varlistentry>-      <varlistentry>-        <term>-          banana-        </term>-        <listitem>-          <para>-            yellow fruit-          </para>-        </listitem>-      </varlistentry>-    </variablelist>-    <para>-      Tight using tabs:-    </para>-    <variablelist>-      <varlistentry>-        <term>-          apple-        </term>-        <listitem>-          <para>-            red fruit-          </para>-        </listitem>-      </varlistentry>-      <varlistentry>-        <term>-          orange-        </term>-        <listitem>-          <para>-            orange fruit-          </para>-        </listitem>-      </varlistentry>-      <varlistentry>-        <term>-          banana-        </term>-        <listitem>-          <para>-            yellow fruit-          </para>-        </listitem>-      </varlistentry>-    </variablelist>-    <para>-      Loose:-    </para>-    <variablelist>-      <varlistentry>-        <term>-          apple-        </term>-        <listitem>-          <para>-            red fruit-          </para>-        </listitem>-      </varlistentry>-      <varlistentry>-        <term>-          orange-        </term>-        <listitem>-          <para>-            orange fruit-          </para>-        </listitem>-      </varlistentry>-      <varlistentry>-        <term>-          banana-        </term>-        <listitem>-          <para>-            yellow fruit-          </para>-        </listitem>-      </varlistentry>-    </variablelist>-    <para>-      Multiple blocks with italics:-    </para>-    <variablelist>-      <varlistentry>-        <term>-          <emphasis>apple</emphasis>-        </term>-        <listitem>-          <para>-            red fruit-          </para>-          <para>-            contains seeds, crisp, pleasant to taste-          </para>-        </listitem>-      </varlistentry>-      <varlistentry>-        <term>-          <emphasis>orange</emphasis>-        </term>-        <listitem>-          <para>-            orange fruit-          </para>-          <screen>-{ orange code block }-</screen>-          <blockquote>-            <para>-              orange block quote-            </para>-          </blockquote>-        </listitem>-      </varlistentry>-    </variablelist>-    <para>-      Multiple definitions, tight:-    </para>-    <variablelist>-      <varlistentry>-        <term>-          apple-        </term>-        <listitem>-          <para>-            red fruit-          </para>-          <para>-            computer-          </para>-        </listitem>-      </varlistentry>-      <varlistentry>-        <term>-          orange-        </term>-        <listitem>-          <para>-            orange fruit-          </para>-          <para>-            bank-          </para>-        </listitem>-      </varlistentry>-    </variablelist>-    <para>-      Multiple definitions, loose:-    </para>-    <variablelist>-      <varlistentry>-        <term>-          apple-        </term>-        <listitem>-          <para>-            red fruit-          </para>-          <para>-            computer-          </para>-        </listitem>-      </varlistentry>-      <varlistentry>-        <term>-          orange-        </term>-        <listitem>-          <para>-            orange fruit-          </para>-          <para>-            bank-          </para>-        </listitem>-      </varlistentry>-    </variablelist>-    <para>-      Blank line after term, indented marker, alternate markers:-    </para>-    <variablelist>-      <varlistentry>-        <term>-          apple-        </term>-        <listitem>-          <para>-            red fruit-          </para>-          <para>-            computer-          </para>-        </listitem>-      </varlistentry>-      <varlistentry>-        <term>-          orange-        </term>-        <listitem>-          <para>-            orange fruit-          </para>-          <orderedlist numeration="arabic">-            <listitem>-              <para>-                sublist-              </para>-            </listitem>-            <listitem>-              <para>-                sublist-              </para>-            </listitem>-          </orderedlist>-        </listitem>-      </varlistentry>-    </variablelist>-  </section>-  <section id="html-blocks">-    <title>HTML Blocks</title>-    <para>-      Simple block on one line:-    </para>-    <div>-    foo-    </div>--    <para>-      And nested without indentation:-    </para>-    <div>-<div>-<div>-    foo-    </div>-</div>-<div>-    bar-    </div>-</div>--    <para>-      Interpreted markdown in a table:-    </para>-    <table>-<tr>-<td>-    This is <emphasis>emphasized</emphasis>-    </td>-<td>-    And this is <emphasis role="strong">strong</emphasis>-    </td>-</tr>-</table>--<script type="text/javascript">document.write('This *should not* be interpreted as markdown');</script>--    <para>-      Here's a simple block:-    </para>-    <div>-    -    foo-    </div>--    <para>-      This should be a code block, though:-    </para>-    <screen>-&lt;div&gt;-    foo-&lt;/div&gt;-</screen>-    <para>-      As should this:-    </para>-    <screen>-&lt;div&gt;foo&lt;/div&gt;-</screen>-    <para>-      Now, nested:-    </para>-    <div>-    <div>-        <div>-            -    foo-    </div>-    </div>-</div>--    <para>-      This should just be an HTML comment:-    </para>-    <!-- Comment -->--    <para>-      Multiline:-    </para>-    <!---Blah-Blah--->--<!---    This is another comment.--->--    <para>-      Code block:-    </para>-    <screen>-&lt;!-- Comment --&gt;-</screen>-    <para>-      Just plain comment, with trailing spaces on the line:-    </para>-    <!-- foo -->   --    <para>-      Code:-    </para>-    <screen>-&lt;hr /&gt;-</screen>-    <para>-      Hr's:-    </para>-    <hr>--<hr />--<hr />--<hr>   --<hr />  --<hr /> --<hr class="foo" id="bar" />--<hr class="foo" id="bar" />--<hr class="foo" id="bar">--  </section>-  <section id="inline-markup">-    <title>Inline Markup</title>-    <para>-      This is <emphasis>emphasized</emphasis>, and so-      <emphasis>is this</emphasis>.-    </para>-    <para>-      This is <emphasis role="strong">strong</emphasis>, and so-      <emphasis role="strong">is this</emphasis>.-    </para>-    <para>-      An <emphasis><ulink url="/url">emphasized link</ulink></emphasis>.-    </para>-    <para>-      <emphasis role="strong"><emphasis>This is strong and em.</emphasis></emphasis>-    </para>-    <para>-      So is <emphasis role="strong"><emphasis>this</emphasis></emphasis>-      word.-    </para>-    <para>-      <emphasis role="strong"><emphasis>This is strong and em.</emphasis></emphasis>-    </para>-    <para>-      So is <emphasis role="strong"><emphasis>this</emphasis></emphasis>-      word.-    </para>-    <para>-      This is code: <literal>&gt;</literal>, <literal>$</literal>,-      <literal>\</literal>, <literal>\$</literal>,-      <literal>&lt;html&gt;</literal>.-    </para>-    <para>-      <emphasis role="strikethrough">This is <emphasis>strikeout</emphasis>.</emphasis>-    </para>-    <para>-      Superscripts: a<superscript>bc</superscript>d-      a<superscript><emphasis>hello</emphasis></superscript>-      a<superscript>hello&#160;there</superscript>.-    </para>-    <para>-      Subscripts: H<subscript>2</subscript>O,-      H<subscript>23</subscript>O,-      H<subscript>many&#160;of&#160;them</subscript>O.-    </para>-    <para>-      These should not be superscripts or subscripts, because of the-      unescaped spaces: a^b c^d, a~b c~d.-    </para>-  </section>-  <section id="smart-quotes-ellipses-dashes">-    <title>Smart quotes, ellipses, dashes</title>-    <para>-      <quote>Hello,</quote> said the spider.-      <quote><quote>Shelob</quote> is my name.</quote>-    </para>-    <para>-      <quote>A</quote>, <quote>B</quote>, and <quote>C</quote> are-      letters.-    </para>-    <para>-      <quote>Oak,</quote> <quote>elm,</quote> and <quote>beech</quote>-      are names of trees. So is <quote>pine.</quote>-    </para>-    <para>-      <quote>He said, <quote>I want to go.</quote></quote> Were you alive-      in the 70's?-    </para>-    <para>-      Here is some quoted <quote><literal>code</literal></quote> and a-      <quote><ulink url="http://example.com/?foo=1&amp;bar=2">quoted link</ulink></quote>.-    </para>-    <para>-      Some dashes: one&#8212;two &#8212; three&#8212;four &#8212; five.-    </para>-    <para>-      Dashes between numbers: 5&#8211;7, 255&#8211;66, 1987&#8211;1999.-    </para>-    <para>-      Ellipses&#8230;and&#8230;and&#8230;.-    </para>-  </section>-  <section id="latex">-    <title>LaTeX</title>-    <itemizedlist>-      <listitem>-        <para>-        </para>-      </listitem>-      <listitem>-        <para>-          2+2=4-        </para>-      </listitem>-      <listitem>-        <para>-          <emphasis>x</emphasis> ∈ <emphasis>y</emphasis>-        </para>-      </listitem>-      <listitem>-        <para>-          α ∧ ω-        </para>-      </listitem>-      <listitem>-        <para>-          223-        </para>-      </listitem>-      <listitem>-        <para>-          <emphasis>p</emphasis>-Tree-        </para>-      </listitem>-      <listitem>-        <para>-          Here's some display math:-          \frac{<emphasis>d</emphasis>}{<emphasis>dx</emphasis>}<emphasis>f</emphasis>(<emphasis>x</emphasis>)=\lim<subscript><emphasis>h</emphasis> → 0</subscript>\frac{<emphasis>f</emphasis>(<emphasis>x</emphasis>+<emphasis>h</emphasis>)-<emphasis>f</emphasis>(<emphasis>x</emphasis>)}{<emphasis>h</emphasis>}-        </para>-      </listitem>-      <listitem>-        <para>-          Here's one that has a line break in it:-          α+ω × <emphasis>x</emphasis><superscript>2</superscript>.-        </para>-      </listitem>-    </itemizedlist>-    <para>-      These shouldn't be math:-    </para>-    <itemizedlist>-      <listitem>-        <para>-          To get the famous equation, write <literal>$e = mc^2$</literal>.-        </para>-      </listitem>-      <listitem>-        <para>-          $22,000 is a <emphasis>lot</emphasis> of money. So is $34,000. (It-          worked if <quote>lot</quote> is emphasized.)-        </para>-      </listitem>-      <listitem>-        <para>-          Shoes ($20) and socks ($5).-        </para>-      </listitem>-      <listitem>-        <para>-          Escaped <literal>$</literal>: $73-          <emphasis>this should be emphasized</emphasis> 23$.-        </para>-      </listitem>-    </itemizedlist>-    <para>-      Here's a LaTeX table:-    </para>-    <para>-    </para>-  </section>-  <section id="special-characters">-    <title>Special Characters</title>-    <para>-      Here is some unicode:-    </para>-    <itemizedlist>-      <listitem>-        <para>-          I hat: Î-        </para>-      </listitem>-      <listitem>-        <para>-          o umlaut: ö-        </para>-      </listitem>-      <listitem>-        <para>-          section: §-        </para>-      </listitem>-      <listitem>-        <para>-          set membership: ∈-        </para>-      </listitem>-      <listitem>-        <para>-          copyright: ©-        </para>-      </listitem>-    </itemizedlist>-    <para>-      AT&amp;T has an ampersand in their name.-    </para>-    <para>-      AT&amp;T is another way to write it.-    </para>-    <para>-      This &amp; that.-    </para>-    <para>-      4 &lt; 5.-    </para>-    <para>-      6 &gt; 5.-    </para>-    <para>-      Backslash: \-    </para>-    <para>-      Backtick: `-    </para>-    <para>-      Asterisk: *-    </para>-    <para>-      Underscore: _-    </para>-    <para>-      Left brace: {-    </para>-    <para>-      Right brace: }-    </para>-    <para>-      Left bracket: [-    </para>-    <para>-      Right bracket: ]-    </para>-    <para>-      Left paren: (-    </para>-    <para>-      Right paren: )-    </para>-    <para>-      Greater-than: &gt;-    </para>-    <para>-      Hash: #-    </para>-    <para>-      Period: .-    </para>-    <para>-      Bang: !-    </para>-    <para>-      Plus: +-    </para>-    <para>-      Minus: --    </para>-  </section>-  <section id="links">-    <title>Links</title>-    <section id="explicit">-      <title>Explicit</title>-      <para>-        Just a <ulink url="/url/">URL</ulink>.-      </para>-      <para>-        <ulink url="/url/">URL and title</ulink>.-      </para>-      <para>-        <ulink url="/url/">URL and title</ulink>.-      </para>-      <para>-        <ulink url="/url/">URL and title</ulink>.-      </para>-      <para>-        <ulink url="/url/">URL and title</ulink>-      </para>-      <para>-        <ulink url="/url/">URL and title</ulink>-      </para>-      <para>-        <ulink url="/url/with_underscore">with_underscore</ulink>-      </para>-      <para>-        Email link (<email>nobody@nowhere.net</email>)-      </para>-      <para>-        <ulink url="">Empty</ulink>.-      </para>-    </section>-    <section id="reference">-      <title>Reference</title>-      <para>-        Foo <ulink url="/url/">bar</ulink>.-      </para>-      <para>-        Foo <ulink url="/url/">bar</ulink>.-      </para>-      <para>-        Foo <ulink url="/url/">bar</ulink>.-      </para>-      <para>-        With <ulink url="/url/">embedded [brackets]</ulink>.-      </para>-      <para>-        <ulink url="/url/">b</ulink> by itself should be a link.-      </para>-      <para>-        Indented <ulink url="/url">once</ulink>.-      </para>-      <para>-        Indented <ulink url="/url">twice</ulink>.-      </para>-      <para>-        Indented <ulink url="/url">thrice</ulink>.-      </para>-      <para>-        This should [not][] be a link.-      </para>-      <screen>-[not]: /url-</screen>-      <para>-        Foo <ulink url="/url/">bar</ulink>.-      </para>-      <para>-        Foo <ulink url="/url/">biz</ulink>.-      </para>-    </section>-    <section id="with-ampersands">-      <title>With ampersands</title>-      <para>-        Here's a-        <ulink url="http://example.com/?foo=1&amp;bar=2">link with an ampersand in the URL</ulink>.-      </para>-      <para>-        Here's a link with an amersand in the link text:-        <ulink url="http://att.com/">AT&amp;T</ulink>.-      </para>-      <para>-        Here's an <ulink url="/script?foo=1&amp;bar=2">inline link</ulink>.-      </para>-      <para>-        Here's an-        <ulink url="/script?foo=1&amp;bar=2">inline link in pointy braces</ulink>.-      </para>-    </section>-    <section id="autolinks">-      <title>Autolinks</title>-      <para>-        With an ampersand:-        <ulink url="http://example.com/?foo=1&amp;bar=2"><literal>http://example.com/?foo=1&amp;bar=2</literal></ulink>-      </para>-      <itemizedlist>-        <listitem>-          <para>-            In a list?-          </para>-        </listitem>-        <listitem>-          <para>-            <ulink url="http://example.com/"><literal>http://example.com/</literal></ulink>-          </para>-        </listitem>-        <listitem>-          <para>-            It should.-          </para>-        </listitem>-      </itemizedlist>-      <para>-        An e-mail address: <email>nobody@nowhere.net</email>-      </para>-      <blockquote>-        <para>-          Blockquoted:-          <ulink url="http://example.com/"><literal>http://example.com/</literal></ulink>-        </para>-      </blockquote>-      <para>-        Auto-links should not occur here:-        <literal>&lt;http://example.com/&gt;</literal>-      </para>-      <screen>-or here: &lt;http://example.com/&gt;-</screen>-    </section>-  </section>-  <section id="images">-    <title>Images</title>-    <para>-      From <quote>Voyage dans la Lune</quote> by Georges Melies (1902):-    </para>-    <para>-      <inlinemediaobject>-        <imageobject>-          <objectinfo>-            <title>-              Voyage dans la Lune-            </title>-          </objectinfo>-          <imagedata fileref="lalune.jpg" />-        </imageobject>-      </inlinemediaobject>-    </para>-    <para>-      Here is a movie-      <inlinemediaobject>-        <imageobject>-          <imagedata fileref="movie.jpg" />-        </imageobject>-      </inlinemediaobject>-      icon.-    </para>-  </section>-  <section id="footnotes">-    <title>Footnotes</title>-    <para>-      Here is a footnote-      reference,<footnote>-                  <para>-                    Here is the footnote. It can go anywhere after the footnote-                    reference. It need not be placed at the end of the document.-                  </para>-                </footnote>-      and-      another.<footnote>-                <para>-                  Here's the long note. This one contains multiple blocks.-                </para>-                <para>-                  Subsequent blocks are indented to show that they belong to the-                  footnote (as with list items).-                </para>-                <screen>-  { &lt;code&gt; }-</screen>-                <para>-                  If you want, you can indent every line, but you can also be lazy-                  and just indent the first line of each block.-                </para>-              </footnote>-      This should <emphasis>not</emphasis> be a footnote reference,-      because it contains a space.[^my note] Here is an inline-      note.<footnote>-             <para>-               This is <emphasis>easier</emphasis> to type. Inline notes may-               contain <ulink url="http://google.com">links</ulink> and-               <literal>]</literal> verbatim characters, as well as [bracketed-               text].-             </para>-           </footnote>-    </para>-    <blockquote>-      <para>-        Notes can go in-        quotes.<footnote>-                 <para>-                   In quote.-                 </para>-               </footnote>-      </para>-    </blockquote>-    <orderedlist numeration="arabic">-      <listitem>-        <para>-          And in list-          items.<footnote>-                  <para>-                    In list.-                  </para>-                </footnote>-        </para>-      </listitem>-    </orderedlist>-    <para>-      This paragraph should not be part of the note, as it is not-      indented.-    </para>-  </section>-</article>+<article>+  <articleinfo>+    <title>Pandoc Test Suite</title>+    <author>+      <firstname>John</firstname>+      <surname>MacFarlane</surname>+    </author>+    <author>+      <firstname></firstname>+      <surname>Anonymous</surname>+    </author>+    <date>July 17, 2006</date>+  </articleinfo>+<para>+  This is a set of tests for pandoc. Most of them are adapted from+  John Gruber's markdown test suite.+</para>+<section id="headers">+  <title>Headers</title>+  <section id="level-2-with-an-embedded-link">+    <title>Level 2 with an+           <ulink url="/url">embedded link</ulink></title>+    <section id="level-3-with-emphasis">+      <title>Level 3 with <emphasis>emphasis</emphasis></title>+      <section id="level-4">+        <title>Level 4</title>+        <section id="level-5">+          <title>Level 5</title>+          <para>+          </para>+        </section>+      </section>+    </section>+  </section>+</section>+<section id="level-1">+  <title>Level 1</title>+  <section id="level-2-with-emphasis">+    <title>Level 2 with <emphasis>emphasis</emphasis></title>+    <section id="level-3">+      <title>Level 3</title>+      <para>+        with no blank line+      </para>+    </section>+  </section>+  <section id="level-2">+    <title>Level 2</title>+    <para>+      with no blank line+    </para>+  </section>+</section>+<section id="paragraphs">+  <title>Paragraphs</title>+  <para>+    Here's a regular paragraph.+  </para>+  <para>+    In Markdown 1.0.0 and earlier. Version 8. This line turns into a+    list item. Because a hard-wrapped line in the middle of a paragraph+    looked like a list item.+  </para>+  <para>+    Here's one with a bullet. * criminey.+  </para>+  <para>+    There should be a hard line+    break<literallayout></literallayout>here.+  </para>+</section>+<section id="block-quotes">+  <title>Block Quotes</title>+  <para>+    E-mail style:+  </para>+  <blockquote>+    <para>+      This is a block quote. It is pretty short.+    </para>+  </blockquote>+  <blockquote>+    <para>+      Code in a block quote:+    </para>+    <screen>+sub status {+    print &quot;working&quot;;+}+</screen>+    <para>+      A list:+    </para>+    <orderedlist numeration="arabic">+      <listitem>+        <para>+          item one+        </para>+      </listitem>+      <listitem>+        <para>+          item two+        </para>+      </listitem>+    </orderedlist>+    <para>+      Nested block quotes:+    </para>+    <blockquote>+      <para>+        nested+      </para>+    </blockquote>+    <blockquote>+      <para>+        nested+      </para>+    </blockquote>+  </blockquote>+  <para>+    This should not be a block quote: 2 &gt; 1.+  </para>+  <para>+    And a following paragraph.+  </para>+</section>+<section id="code-blocks">+  <title>Code Blocks</title>+  <para>+    Code:+  </para>+  <screen>+---- (should be four hyphens)++sub status {+    print &quot;working&quot;;+}++this code block is indented by one tab+</screen>+  <para>+    And:+  </para>+  <screen>+    this code block is indented by two tabs++These should not be escaped:  \$ \\ \&gt; \[ \{+</screen>+</section>+<section id="lists">+  <title>Lists</title>+  <section id="unordered">+    <title>Unordered</title>+    <para>+      Asterisks tight:+    </para>+    <itemizedlist>+      <listitem>+        <para>+          asterisk 1+        </para>+      </listitem>+      <listitem>+        <para>+          asterisk 2+        </para>+      </listitem>+      <listitem>+        <para>+          asterisk 3+        </para>+      </listitem>+    </itemizedlist>+    <para>+      Asterisks loose:+    </para>+    <itemizedlist>+      <listitem>+        <para>+          asterisk 1+        </para>+      </listitem>+      <listitem>+        <para>+          asterisk 2+        </para>+      </listitem>+      <listitem>+        <para>+          asterisk 3+        </para>+      </listitem>+    </itemizedlist>+    <para>+      Pluses tight:+    </para>+    <itemizedlist>+      <listitem>+        <para>+          Plus 1+        </para>+      </listitem>+      <listitem>+        <para>+          Plus 2+        </para>+      </listitem>+      <listitem>+        <para>+          Plus 3+        </para>+      </listitem>+    </itemizedlist>+    <para>+      Pluses loose:+    </para>+    <itemizedlist>+      <listitem>+        <para>+          Plus 1+        </para>+      </listitem>+      <listitem>+        <para>+          Plus 2+        </para>+      </listitem>+      <listitem>+        <para>+          Plus 3+        </para>+      </listitem>+    </itemizedlist>+    <para>+      Minuses tight:+    </para>+    <itemizedlist>+      <listitem>+        <para>+          Minus 1+        </para>+      </listitem>+      <listitem>+        <para>+          Minus 2+        </para>+      </listitem>+      <listitem>+        <para>+          Minus 3+        </para>+      </listitem>+    </itemizedlist>+    <para>+      Minuses loose:+    </para>+    <itemizedlist>+      <listitem>+        <para>+          Minus 1+        </para>+      </listitem>+      <listitem>+        <para>+          Minus 2+        </para>+      </listitem>+      <listitem>+        <para>+          Minus 3+        </para>+      </listitem>+    </itemizedlist>+  </section>+  <section id="ordered">+    <title>Ordered</title>+    <para>+      Tight:+    </para>+    <orderedlist numeration="arabic">+      <listitem>+        <para>+          First+        </para>+      </listitem>+      <listitem>+        <para>+          Second+        </para>+      </listitem>+      <listitem>+        <para>+          Third+        </para>+      </listitem>+    </orderedlist>+    <para>+      and:+    </para>+    <orderedlist numeration="arabic">+      <listitem>+        <para>+          One+        </para>+      </listitem>+      <listitem>+        <para>+          Two+        </para>+      </listitem>+      <listitem>+        <para>+          Three+        </para>+      </listitem>+    </orderedlist>+    <para>+      Loose using tabs:+    </para>+    <orderedlist numeration="arabic">+      <listitem>+        <para>+          First+        </para>+      </listitem>+      <listitem>+        <para>+          Second+        </para>+      </listitem>+      <listitem>+        <para>+          Third+        </para>+      </listitem>+    </orderedlist>+    <para>+      and using spaces:+    </para>+    <orderedlist numeration="arabic">+      <listitem>+        <para>+          One+        </para>+      </listitem>+      <listitem>+        <para>+          Two+        </para>+      </listitem>+      <listitem>+        <para>+          Three+        </para>+      </listitem>+    </orderedlist>+    <para>+      Multiple paragraphs:+    </para>+    <orderedlist numeration="arabic">+      <listitem>+        <para>+          Item 1, graf one.+        </para>+        <para>+          Item 1. graf two. The quick brown fox jumped over the lazy dog's+          back.+        </para>+      </listitem>+      <listitem>+        <para>+          Item 2.+        </para>+      </listitem>+      <listitem>+        <para>+          Item 3.+        </para>+      </listitem>+    </orderedlist>+  </section>+  <section id="nested">+    <title>Nested</title>+    <itemizedlist>+      <listitem>+        <para>+          Tab+        </para>+        <itemizedlist>+          <listitem>+            <para>+              Tab+            </para>+            <itemizedlist>+              <listitem>+                <para>+                  Tab+                </para>+              </listitem>+            </itemizedlist>+          </listitem>+        </itemizedlist>+      </listitem>+    </itemizedlist>+    <para>+      Here's another:+    </para>+    <orderedlist numeration="arabic">+      <listitem>+        <para>+          First+        </para>+      </listitem>+      <listitem>+        <para>+          Second:+        </para>+        <itemizedlist>+          <listitem>+            <para>+              Fee+            </para>+          </listitem>+          <listitem>+            <para>+              Fie+            </para>+          </listitem>+          <listitem>+            <para>+              Foe+            </para>+          </listitem>+        </itemizedlist>+      </listitem>+      <listitem>+        <para>+          Third+        </para>+      </listitem>+    </orderedlist>+    <para>+      Same thing but with paragraphs:+    </para>+    <orderedlist numeration="arabic">+      <listitem>+        <para>+          First+        </para>+      </listitem>+      <listitem>+        <para>+          Second:+        </para>+        <itemizedlist>+          <listitem>+            <para>+              Fee+            </para>+          </listitem>+          <listitem>+            <para>+              Fie+            </para>+          </listitem>+          <listitem>+            <para>+              Foe+            </para>+          </listitem>+        </itemizedlist>+      </listitem>+      <listitem>+        <para>+          Third+        </para>+      </listitem>+    </orderedlist>+  </section>+  <section id="tabs-and-spaces">+    <title>Tabs and spaces</title>+    <itemizedlist>+      <listitem>+        <para>+          this is a list item indented with tabs+        </para>+      </listitem>+      <listitem>+        <para>+          this is a list item indented with spaces+        </para>+        <itemizedlist>+          <listitem>+            <para>+              this is an example list item indented with tabs+            </para>+          </listitem>+          <listitem>+            <para>+              this is an example list item indented with spaces+            </para>+          </listitem>+        </itemizedlist>+      </listitem>+    </itemizedlist>+  </section>+  <section id="fancy-list-markers">+    <title>Fancy list markers</title>+    <orderedlist numeration="arabic">+      <listitem override="2">+        <para>+          begins with 2+        </para>+      </listitem>+      <listitem>+        <para>+          and now 3+        </para>+        <para>+          with a continuation+        </para>+        <orderedlist numeration="lowerroman">+          <listitem override="4">+            <para>+              sublist with roman numerals, starting with 4+            </para>+          </listitem>+          <listitem>+            <para>+              more items+            </para>+            <orderedlist numeration="upperalpha">+              <listitem>+                <para>+                  a subsublist+                </para>+              </listitem>+              <listitem>+                <para>+                  a subsublist+                </para>+              </listitem>+            </orderedlist>+          </listitem>+        </orderedlist>+      </listitem>+    </orderedlist>+    <para>+      Nesting:+    </para>+    <orderedlist numeration="upperalpha">+      <listitem>+        <para>+          Upper Alpha+        </para>+        <orderedlist numeration="upperroman">+          <listitem>+            <para>+              Upper Roman.+            </para>+            <orderedlist numeration="arabic">+              <listitem override="6">+                <para>+                  Decimal start with 6+                </para>+                <orderedlist numeration="loweralpha">+                  <listitem override="3">+                    <para>+                      Lower alpha with paren+                    </para>+                  </listitem>+                </orderedlist>+              </listitem>+            </orderedlist>+          </listitem>+        </orderedlist>+      </listitem>+    </orderedlist>+    <para>+      Autonumbering:+    </para>+    <orderedlist>+      <listitem>+        <para>+          Autonumber.+        </para>+      </listitem>+      <listitem>+        <para>+          More.+        </para>+        <orderedlist>+          <listitem>+            <para>+              Nested.+            </para>+          </listitem>+        </orderedlist>+      </listitem>+    </orderedlist>+    <para>+      Should not be a list item:+    </para>+    <para>+      M.A. 2007+    </para>+    <para>+      B. Williams+    </para>+  </section>+</section>+<section id="definition-lists">+  <title>Definition Lists</title>+  <para>+    Tight using spaces:+  </para>+  <variablelist>+    <varlistentry>+      <term>+        apple+      </term>+      <listitem>+        <para>+          red fruit+        </para>+      </listitem>+    </varlistentry>+    <varlistentry>+      <term>+        orange+      </term>+      <listitem>+        <para>+          orange fruit+        </para>+      </listitem>+    </varlistentry>+    <varlistentry>+      <term>+        banana+      </term>+      <listitem>+        <para>+          yellow fruit+        </para>+      </listitem>+    </varlistentry>+  </variablelist>+  <para>+    Tight using tabs:+  </para>+  <variablelist>+    <varlistentry>+      <term>+        apple+      </term>+      <listitem>+        <para>+          red fruit+        </para>+      </listitem>+    </varlistentry>+    <varlistentry>+      <term>+        orange+      </term>+      <listitem>+        <para>+          orange fruit+        </para>+      </listitem>+    </varlistentry>+    <varlistentry>+      <term>+        banana+      </term>+      <listitem>+        <para>+          yellow fruit+        </para>+      </listitem>+    </varlistentry>+  </variablelist>+  <para>+    Loose:+  </para>+  <variablelist>+    <varlistentry>+      <term>+        apple+      </term>+      <listitem>+        <para>+          red fruit+        </para>+      </listitem>+    </varlistentry>+    <varlistentry>+      <term>+        orange+      </term>+      <listitem>+        <para>+          orange fruit+        </para>+      </listitem>+    </varlistentry>+    <varlistentry>+      <term>+        banana+      </term>+      <listitem>+        <para>+          yellow fruit+        </para>+      </listitem>+    </varlistentry>+  </variablelist>+  <para>+    Multiple blocks with italics:+  </para>+  <variablelist>+    <varlistentry>+      <term>+        <emphasis>apple</emphasis>+      </term>+      <listitem>+        <para>+          red fruit+        </para>+        <para>+          contains seeds, crisp, pleasant to taste+        </para>+      </listitem>+    </varlistentry>+    <varlistentry>+      <term>+        <emphasis>orange</emphasis>+      </term>+      <listitem>+        <para>+          orange fruit+        </para>+        <screen>+{ orange code block }+</screen>+        <blockquote>+          <para>+            orange block quote+          </para>+        </blockquote>+      </listitem>+    </varlistentry>+  </variablelist>+  <para>+    Multiple definitions, tight:+  </para>+  <variablelist>+    <varlistentry>+      <term>+        apple+      </term>+      <listitem>+        <para>+          red fruit+        </para>+        <para>+          computer+        </para>+      </listitem>+    </varlistentry>+    <varlistentry>+      <term>+        orange+      </term>+      <listitem>+        <para>+          orange fruit+        </para>+        <para>+          bank+        </para>+      </listitem>+    </varlistentry>+  </variablelist>+  <para>+    Multiple definitions, loose:+  </para>+  <variablelist>+    <varlistentry>+      <term>+        apple+      </term>+      <listitem>+        <para>+          red fruit+        </para>+        <para>+          computer+        </para>+      </listitem>+    </varlistentry>+    <varlistentry>+      <term>+        orange+      </term>+      <listitem>+        <para>+          orange fruit+        </para>+        <para>+          bank+        </para>+      </listitem>+    </varlistentry>+  </variablelist>+  <para>+    Blank line after term, indented marker, alternate markers:+  </para>+  <variablelist>+    <varlistentry>+      <term>+        apple+      </term>+      <listitem>+        <para>+          red fruit+        </para>+        <para>+          computer+        </para>+      </listitem>+    </varlistentry>+    <varlistentry>+      <term>+        orange+      </term>+      <listitem>+        <para>+          orange fruit+        </para>+        <orderedlist numeration="arabic">+          <listitem>+            <para>+              sublist+            </para>+          </listitem>+          <listitem>+            <para>+              sublist+            </para>+          </listitem>+        </orderedlist>+      </listitem>+    </varlistentry>+  </variablelist>+</section>+<section id="html-blocks">+  <title>HTML Blocks</title>+  <para>+    Simple block on one line:+  </para>+  <div>+  foo+  </div>++  <para>+    And nested without indentation:+  </para>+  <div>+<div>+<div>+  foo+  </div>+</div>+<div>+  bar+  </div>+</div>++  <para>+    Interpreted markdown in a table:+  </para>+  <table>+<tr>+<td>+  This is <emphasis>emphasized</emphasis>+  </td>+<td>+  And this is <emphasis role="strong">strong</emphasis>+  </td>+</tr>+</table>++<script type="text/javascript">document.write('This *should not* be interpreted as markdown');</script>++  <para>+    Here's a simple block:+  </para>+  <div>+    +  foo+  </div>++  <para>+    This should be a code block, though:+  </para>+  <screen>+&lt;div&gt;+    foo+&lt;/div&gt;+</screen>+  <para>+    As should this:+  </para>+  <screen>+&lt;div&gt;foo&lt;/div&gt;+</screen>+  <para>+    Now, nested:+  </para>+  <div>+    <div>+        <div>+            +  foo+  </div>+    </div>+</div>++  <para>+    This should just be an HTML comment:+  </para>+  <!-- Comment -->++  <para>+    Multiline:+  </para>+  <!--+Blah+Blah+-->++<!--+    This is another comment.+-->++  <para>+    Code block:+  </para>+  <screen>+&lt;!-- Comment --&gt;+</screen>+  <para>+    Just plain comment, with trailing spaces on the line:+  </para>+  <!-- foo -->   ++  <para>+    Code:+  </para>+  <screen>+&lt;hr /&gt;+</screen>+  <para>+    Hr's:+  </para>+  <hr>++<hr />++<hr />++<hr>   ++<hr />  ++<hr /> ++<hr class="foo" id="bar" />++<hr class="foo" id="bar" />++<hr class="foo" id="bar">++</section>+<section id="inline-markup">+  <title>Inline Markup</title>+  <para>+    This is <emphasis>emphasized</emphasis>, and so+    <emphasis>is this</emphasis>.+  </para>+  <para>+    This is <emphasis role="strong">strong</emphasis>, and so+    <emphasis role="strong">is this</emphasis>.+  </para>+  <para>+    An <emphasis><ulink url="/url">emphasized link</ulink></emphasis>.+  </para>+  <para>+    <emphasis role="strong"><emphasis>This is strong and em.</emphasis></emphasis>+  </para>+  <para>+    So is <emphasis role="strong"><emphasis>this</emphasis></emphasis>+    word.+  </para>+  <para>+    <emphasis role="strong"><emphasis>This is strong and em.</emphasis></emphasis>+  </para>+  <para>+    So is <emphasis role="strong"><emphasis>this</emphasis></emphasis>+    word.+  </para>+  <para>+    This is code: <literal>&gt;</literal>, <literal>$</literal>,+    <literal>\</literal>, <literal>\$</literal>,+    <literal>&lt;html&gt;</literal>.+  </para>+  <para>+    <emphasis role="strikethrough">This is <emphasis>strikeout</emphasis>.</emphasis>+  </para>+  <para>+    Superscripts: a<superscript>bc</superscript>d+    a<superscript><emphasis>hello</emphasis></superscript>+    a<superscript>hello there</superscript>.+  </para>+  <para>+    Subscripts: H<subscript>2</subscript>O,+    H<subscript>23</subscript>O, H<subscript>many of them</subscript>O.+  </para>+  <para>+    These should not be superscripts or subscripts, because of the+    unescaped spaces: a^b c^d, a~b c~d.+  </para>+</section>+<section id="smart-quotes-ellipses-dashes">+  <title>Smart quotes, ellipses, dashes</title>+  <para>+    <quote>Hello,</quote> said the spider.+    <quote><quote>Shelob</quote> is my name.</quote>+  </para>+  <para>+    <quote>A</quote>, <quote>B</quote>, and <quote>C</quote> are+    letters.+  </para>+  <para>+    <quote>Oak,</quote> <quote>elm,</quote> and <quote>beech</quote>+    are names of trees. So is <quote>pine.</quote>+  </para>+  <para>+    <quote>He said, <quote>I want to go.</quote></quote> Were you alive+    in the 70's?+  </para>+  <para>+    Here is some quoted <quote><literal>code</literal></quote> and a+    <quote><ulink url="http://example.com/?foo=1&amp;bar=2">quoted link</ulink></quote>.+  </para>+  <para>+    Some dashes: one—two — three—four — five.+  </para>+  <para>+    Dashes between numbers: 5–7, 255–66, 1987–1999.+  </para>+  <para>+    Ellipses…and…and….+  </para>+</section>+<section id="latex">+  <title>LaTeX</title>+  <itemizedlist>+    <listitem>+      <para>+      </para>+    </listitem>+    <listitem>+      <para>+        2+2=4+      </para>+    </listitem>+    <listitem>+      <para>+        <emphasis>x</emphasis> ∈ <emphasis>y</emphasis>+      </para>+    </listitem>+    <listitem>+      <para>+        α ∧ ω+      </para>+    </listitem>+    <listitem>+      <para>+        223+      </para>+    </listitem>+    <listitem>+      <para>+        <emphasis>p</emphasis>-Tree+      </para>+    </listitem>+    <listitem>+      <para>+        Here's some display math:+        \frac{<emphasis>d</emphasis>}{<emphasis>dx</emphasis>}<emphasis>f</emphasis>(<emphasis>x</emphasis>)=\lim<subscript><emphasis>h</emphasis> → 0</subscript>\frac{<emphasis>f</emphasis>(<emphasis>x</emphasis>+<emphasis>h</emphasis>)-<emphasis>f</emphasis>(<emphasis>x</emphasis>)}{<emphasis>h</emphasis>}+      </para>+    </listitem>+    <listitem>+      <para>+        Here's one that has a line break in it:+        α+ω × <emphasis>x</emphasis><superscript>2</superscript>.+      </para>+    </listitem>+  </itemizedlist>+  <para>+    These shouldn't be math:+  </para>+  <itemizedlist>+    <listitem>+      <para>+        To get the famous equation, write <literal>$e = mc^2$</literal>.+      </para>+    </listitem>+    <listitem>+      <para>+        $22,000 is a <emphasis>lot</emphasis> of money. So is $34,000. (It+        worked if <quote>lot</quote> is emphasized.)+      </para>+    </listitem>+    <listitem>+      <para>+        Shoes ($20) and socks ($5).+      </para>+    </listitem>+    <listitem>+      <para>+        Escaped <literal>$</literal>: $73+        <emphasis>this should be emphasized</emphasis> 23$.+      </para>+    </listitem>+  </itemizedlist>+  <para>+    Here's a LaTeX table:+  </para>+  <para>+  </para>+</section>+<section id="special-characters">+  <title>Special Characters</title>+  <para>+    Here is some unicode:+  </para>+  <itemizedlist>+    <listitem>+      <para>+        I hat: Î+      </para>+    </listitem>+    <listitem>+      <para>+        o umlaut: ö+      </para>+    </listitem>+    <listitem>+      <para>+        section: §+      </para>+    </listitem>+    <listitem>+      <para>+        set membership: ∈+      </para>+    </listitem>+    <listitem>+      <para>+        copyright: ©+      </para>+    </listitem>+  </itemizedlist>+  <para>+    AT&amp;T has an ampersand in their name.+  </para>+  <para>+    AT&amp;T is another way to write it.+  </para>+  <para>+    This &amp; that.+  </para>+  <para>+    4 &lt; 5.+  </para>+  <para>+    6 &gt; 5.+  </para>+  <para>+    Backslash: \+  </para>+  <para>+    Backtick: `+  </para>+  <para>+    Asterisk: *+  </para>+  <para>+    Underscore: _+  </para>+  <para>+    Left brace: {+  </para>+  <para>+    Right brace: }+  </para>+  <para>+    Left bracket: [+  </para>+  <para>+    Right bracket: ]+  </para>+  <para>+    Left paren: (+  </para>+  <para>+    Right paren: )+  </para>+  <para>+    Greater-than: &gt;+  </para>+  <para>+    Hash: #+  </para>+  <para>+    Period: .+  </para>+  <para>+    Bang: !+  </para>+  <para>+    Plus: ++  </para>+  <para>+    Minus: -+  </para>+</section>+<section id="links">+  <title>Links</title>+  <section id="explicit">+    <title>Explicit</title>+    <para>+      Just a <ulink url="/url/">URL</ulink>.+    </para>+    <para>+      <ulink url="/url/">URL and title</ulink>.+    </para>+    <para>+      <ulink url="/url/">URL and title</ulink>.+    </para>+    <para>+      <ulink url="/url/">URL and title</ulink>.+    </para>+    <para>+      <ulink url="/url/">URL and title</ulink>+    </para>+    <para>+      <ulink url="/url/">URL and title</ulink>+    </para>+    <para>+      <ulink url="/url/with_underscore">with_underscore</ulink>+    </para>+    <para>+      Email link (<email>nobody@nowhere.net</email>)+    </para>+    <para>+      <ulink url="">Empty</ulink>.+    </para>+  </section>+  <section id="reference">+    <title>Reference</title>+    <para>+      Foo <ulink url="/url/">bar</ulink>.+    </para>+    <para>+      Foo <ulink url="/url/">bar</ulink>.+    </para>+    <para>+      Foo <ulink url="/url/">bar</ulink>.+    </para>+    <para>+      With <ulink url="/url/">embedded [brackets]</ulink>.+    </para>+    <para>+      <ulink url="/url/">b</ulink> by itself should be a link.+    </para>+    <para>+      Indented <ulink url="/url">once</ulink>.+    </para>+    <para>+      Indented <ulink url="/url">twice</ulink>.+    </para>+    <para>+      Indented <ulink url="/url">thrice</ulink>.+    </para>+    <para>+      This should [not][] be a link.+    </para>+    <screen>+[not]: /url+</screen>+    <para>+      Foo <ulink url="/url/">bar</ulink>.+    </para>+    <para>+      Foo <ulink url="/url/">biz</ulink>.+    </para>+  </section>+  <section id="with-ampersands">+    <title>With ampersands</title>+    <para>+      Here's a+      <ulink url="http://example.com/?foo=1&amp;bar=2">link with an ampersand in the URL</ulink>.+    </para>+    <para>+      Here's a link with an amersand in the link text:+      <ulink url="http://att.com/">AT&amp;T</ulink>.+    </para>+    <para>+      Here's an <ulink url="/script?foo=1&amp;bar=2">inline link</ulink>.+    </para>+    <para>+      Here's an+      <ulink url="/script?foo=1&amp;bar=2">inline link in pointy braces</ulink>.+    </para>+  </section>+  <section id="autolinks">+    <title>Autolinks</title>+    <para>+      With an ampersand:+      <ulink url="http://example.com/?foo=1&amp;bar=2"><literal>http://example.com/?foo=1&amp;bar=2</literal></ulink>+    </para>+    <itemizedlist>+      <listitem>+        <para>+          In a list?+        </para>+      </listitem>+      <listitem>+        <para>+          <ulink url="http://example.com/"><literal>http://example.com/</literal></ulink>+        </para>+      </listitem>+      <listitem>+        <para>+          It should.+        </para>+      </listitem>+    </itemizedlist>+    <para>+      An e-mail address: <email>nobody@nowhere.net</email>+    </para>+    <blockquote>+      <para>+        Blockquoted:+        <ulink url="http://example.com/"><literal>http://example.com/</literal></ulink>+      </para>+    </blockquote>+    <para>+      Auto-links should not occur here:+      <literal>&lt;http://example.com/&gt;</literal>+    </para>+    <screen>+or here: &lt;http://example.com/&gt;+</screen>+  </section>+</section>+<section id="images">+  <title>Images</title>+  <para>+    From <quote>Voyage dans la Lune</quote> by Georges Melies (1902):+  </para>+  <para>+    <inlinemediaobject>+      <imageobject>+        <objectinfo>+          <title>+            Voyage dans la Lune+          </title>+        </objectinfo>+        <imagedata fileref="lalune.jpg" />+      </imageobject>+    </inlinemediaobject>+  </para>+  <para>+    Here is a movie+    <inlinemediaobject>+      <imageobject>+        <imagedata fileref="movie.jpg" />+      </imageobject>+    </inlinemediaobject>+    icon.+  </para>+</section>+<section id="footnotes">+  <title>Footnotes</title>+  <para>+    Here is a footnote+    reference,<footnote>+                <para>+                  Here is the footnote. It can go anywhere after the footnote+                  reference. It need not be placed at the end of the document.+                </para>+              </footnote>+    and+    another.<footnote>+              <para>+                Here's the long note. This one contains multiple blocks.+              </para>+              <para>+                Subsequent blocks are indented to show that they belong to the+                footnote (as with list items).+              </para>+              <screen>+  { &lt;code&gt; }+</screen>+              <para>+                If you want, you can indent every line, but you can also be lazy+                and just indent the first line of each block.+              </para>+            </footnote>+    This should <emphasis>not</emphasis> be a footnote reference,+    because it contains a space.[^my note] Here is an inline+    note.<footnote>+           <para>+             This is <emphasis>easier</emphasis> to type. Inline notes may+             contain <ulink url="http://google.com">links</ulink> and+             <literal>]</literal> verbatim characters, as well as [bracketed+             text].+           </para>+         </footnote>+  </para>+  <blockquote>+    <para>+      Notes can go in+      quotes.<footnote>+               <para>+                 In quote.+               </para>+             </footnote>+    </para>+  </blockquote>+  <orderedlist numeration="arabic">+    <listitem>+      <para>+        And in list+        items.<footnote>+                <para>+                  In list.+                </para>+              </footnote>+      </para>+    </listitem>+  </orderedlist>+  <para>+    This paragraph should not be part of the note, as it is not+    indented.+  </para>+</section>+</article>+ 
tests/writer.html view
@@ -1,1250 +1,1248 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">-<html xmlns="http://www.w3.org/1999/xhtml"-><head-  ><title-    >Pandoc Test Suite</title-    ><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"-     /><meta name="generator" content="pandoc"-     /><meta name="author" content="John MacFarlane"-     /><meta name="author" content="Anonymous"-     /><meta name="date" content="July 17, 2006"-     /></head-  ><body-  ><h1 class="title"-    >Pandoc Test Suite</h1-    ><p-    >This is a set of tests for pandoc. Most of them are adapted from John Gruber&rsquo;s markdown test suite.</p-    ><hr-     /><div id="headers"-    ><h1-      >Headers</h1-      ><div id="level-2-with-an-embedded-link"-      ><h2-	>Level 2 with an <a href="/url"-	  >embedded link</a-	  ></h2-	><div id="level-3-with-emphasis"-	><h3-	  >Level 3 with <em-	    >emphasis</em-	    ></h3-	  ><div id="level-4"-	  ><h4-	    >Level 4</h4-	    ><div id="level-5"-	    ><h5-	      >Level 5</h5-	      ></div-	    ></div-	  ></div-	></div-      ></div-    ><div id="level-1"-    ><h1-      >Level 1</h1-      ><div id="level-2-with-emphasis"-      ><h2-	>Level 2 with <em-	  >emphasis</em-	  ></h2-	><div id="level-3"-	><h3-	  >Level 3</h3-	  ><p-	  >with no blank line</p-	  ></div-	></div-      ><div id="level-2"-      ><h2-	>Level 2</h2-	><p-	>with no blank line</p-	><hr-	 /></div-      ></div-    ><div id="paragraphs"-    ><h1-      >Paragraphs</h1-      ><p-      >Here&rsquo;s a regular paragraph.</p-      ><p-      >In Markdown 1.0.0 and earlier. Version 8. This line turns into a list item. Because a hard-wrapped line in the middle of a paragraph looked like a list item.</p-      ><p-      >Here&rsquo;s one with a bullet. * criminey.</p-      ><p-      >There should be a hard line break<br-	 />here.</p-      ><hr-       /></div-    ><div id="block-quotes"-    ><h1-      >Block Quotes</h1-      ><p-      >E-mail style:</p-      ><blockquote-      ><p-	>This is a block quote. It is pretty short.</p-	></blockquote-      ><blockquote-      ><p-	>Code in a block quote:</p-	><pre-	><code-	  >sub status {-    print &quot;working&quot;;-}-</code-	  ></pre-	><p-	>A list:</p-	><ol style="list-style-type: decimal;"-	><li-	  >item one</li-	  ><li-	  >item two</li-	  ></ol-	><p-	>Nested block quotes:</p-	><blockquote-	><p-	  >nested</p-	  ></blockquote-	><blockquote-	><p-	  >nested</p-	  ></blockquote-	></blockquote-      ><p-      >This should not be a block quote: 2 &gt; 1.</p-      ><p-      >And a following paragraph.</p-      ><hr-       /></div-    ><div id="code-blocks"-    ><h1-      >Code Blocks</h1-      ><p-      >Code:</p-      ><pre-      ><code-	>---- (should be four hyphens)--sub status {-    print &quot;working&quot;;-}--this code block is indented by one tab-</code-	></pre-      ><p-      >And:</p-      ><pre-      ><code-	>    this code block is indented by two tabs--These should not be escaped:  \$ \\ \&gt; \[ \{-</code-	></pre-      ><hr-       /></div-    ><div id="lists"-    ><h1-      >Lists</h1-      ><div id="unordered"-      ><h2-	>Unordered</h2-	><p-	>Asterisks tight:</p-	><ul-	><li-	  >asterisk 1</li-	  ><li-	  >asterisk 2</li-	  ><li-	  >asterisk 3</li-	  ></ul-	><p-	>Asterisks loose:</p-	><ul-	><li-	  ><p-	    >asterisk 1</p-	    ></li-	  ><li-	  ><p-	    >asterisk 2</p-	    ></li-	  ><li-	  ><p-	    >asterisk 3</p-	    ></li-	  ></ul-	><p-	>Pluses tight:</p-	><ul-	><li-	  >Plus 1</li-	  ><li-	  >Plus 2</li-	  ><li-	  >Plus 3</li-	  ></ul-	><p-	>Pluses loose:</p-	><ul-	><li-	  ><p-	    >Plus 1</p-	    ></li-	  ><li-	  ><p-	    >Plus 2</p-	    ></li-	  ><li-	  ><p-	    >Plus 3</p-	    ></li-	  ></ul-	><p-	>Minuses tight:</p-	><ul-	><li-	  >Minus 1</li-	  ><li-	  >Minus 2</li-	  ><li-	  >Minus 3</li-	  ></ul-	><p-	>Minuses loose:</p-	><ul-	><li-	  ><p-	    >Minus 1</p-	    ></li-	  ><li-	  ><p-	    >Minus 2</p-	    ></li-	  ><li-	  ><p-	    >Minus 3</p-	    ></li-	  ></ul-	></div-      ><div id="ordered"-      ><h2-	>Ordered</h2-	><p-	>Tight:</p-	><ol style="list-style-type: decimal;"-	><li-	  >First</li-	  ><li-	  >Second</li-	  ><li-	  >Third</li-	  ></ol-	><p-	>and:</p-	><ol style="list-style-type: decimal;"-	><li-	  >One</li-	  ><li-	  >Two</li-	  ><li-	  >Three</li-	  ></ol-	><p-	>Loose using tabs:</p-	><ol style="list-style-type: decimal;"-	><li-	  ><p-	    >First</p-	    ></li-	  ><li-	  ><p-	    >Second</p-	    ></li-	  ><li-	  ><p-	    >Third</p-	    ></li-	  ></ol-	><p-	>and using spaces:</p-	><ol style="list-style-type: decimal;"-	><li-	  ><p-	    >One</p-	    ></li-	  ><li-	  ><p-	    >Two</p-	    ></li-	  ><li-	  ><p-	    >Three</p-	    ></li-	  ></ol-	><p-	>Multiple paragraphs:</p-	><ol style="list-style-type: decimal;"-	><li-	  ><p-	    >Item 1, graf one.</p-	    ><p-	    >Item 1. graf two. The quick brown fox jumped over the lazy dog&rsquo;s back.</p-	    ></li-	  ><li-	  ><p-	    >Item 2.</p-	    ></li-	  ><li-	  ><p-	    >Item 3.</p-	    ></li-	  ></ol-	></div-      ><div id="nested"-      ><h2-	>Nested</h2-	><ul-	><li-	  >Tab<ul-	    ><li-	      >Tab<ul-		><li-		  >Tab</li-		  ></ul-		></li-	      ></ul-	    ></li-	  ></ul-	><p-	>Here&rsquo;s another:</p-	><ol style="list-style-type: decimal;"-	><li-	  >First</li-	  ><li-	  >Second:<ul-	    ><li-	      >Fee</li-	      ><li-	      >Fie</li-	      ><li-	      >Foe</li-	      ></ul-	    ></li-	  ><li-	  >Third</li-	  ></ol-	><p-	>Same thing but with paragraphs:</p-	><ol style="list-style-type: decimal;"-	><li-	  ><p-	    >First</p-	    ></li-	  ><li-	  ><p-	    >Second:</p-	    ><ul-	    ><li-	      >Fee</li-	      ><li-	      >Fie</li-	      ><li-	      >Foe</li-	      ></ul-	    ></li-	  ><li-	  ><p-	    >Third</p-	    ></li-	  ></ol-	></div-      ><div id="tabs-and-spaces"-      ><h2-	>Tabs and spaces</h2-	><ul-	><li-	  ><p-	    >this is a list item indented with tabs</p-	    ></li-	  ><li-	  ><p-	    >this is a list item indented with spaces</p-	    ><ul-	    ><li-	      ><p-		>this is an example list item indented with tabs</p-		></li-	      ><li-	      ><p-		>this is an example list item indented with spaces</p-		></li-	      ></ul-	    ></li-	  ></ul-	></div-      ><div id="fancy-list-markers"-      ><h2-	>Fancy list markers</h2-	><ol start="2" style="list-style-type: decimal;"-	><li-	  >begins with 2</li-	  ><li-	  ><p-	    >and now 3</p-	    ><p-	    >with a continuation</p-	    ><ol start="4" style="list-style-type: lower-roman;"-	    ><li-	      >sublist with roman numerals, starting with 4</li-	      ><li-	      >more items<ol style="list-style-type: upper-alpha;"-		><li-		  >a subsublist</li-		  ><li-		  >a subsublist</li-		  ></ol-		></li-	      ></ol-	    ></li-	  ></ol-	><p-	>Nesting:</p-	><ol style="list-style-type: upper-alpha;"-	><li-	  >Upper Alpha<ol style="list-style-type: upper-roman;"-	    ><li-	      >Upper Roman.<ol start="6" style="list-style-type: decimal;"-		><li-		  >Decimal start with 6<ol start="3" style="list-style-type: lower-alpha;"-		    ><li-		      >Lower alpha with paren</li-		      ></ol-		    ></li-		  ></ol-		></li-	      ></ol-	    ></li-	  ></ol-	><p-	>Autonumbering:</p-	><ol-	><li-	  >Autonumber.</li-	  ><li-	  >More.<ol-	    ><li-	      >Nested.</li-	      ></ol-	    ></li-	  ></ol-	><p-	>Should not be a list item:</p-	><p-	>M.A.&nbsp;2007</p-	><p-	>B. Williams</p-	><hr-	 /></div-      ></div-    ><div id="definition-lists"-    ><h1-      >Definition Lists</h1-      ><p-      >Tight using spaces:</p-      ><dl-      ><dt-	>apple</dt-	><dd-	>red fruit</dd-	><dt-	>orange</dt-	><dd-	>orange fruit</dd-	><dt-	>banana</dt-	><dd-	>yellow fruit</dd-	></dl-      ><p-      >Tight using tabs:</p-      ><dl-      ><dt-	>apple</dt-	><dd-	>red fruit</dd-	><dt-	>orange</dt-	><dd-	>orange fruit</dd-	><dt-	>banana</dt-	><dd-	>yellow fruit</dd-	></dl-      ><p-      >Loose:</p-      ><dl-      ><dt-	>apple</dt-	><dd-	><p-	  >red fruit</p-	  ></dd-	><dt-	>orange</dt-	><dd-	><p-	  >orange fruit</p-	  ></dd-	><dt-	>banana</dt-	><dd-	><p-	  >yellow fruit</p-	  ></dd-	></dl-      ><p-      >Multiple blocks with italics:</p-      ><dl-      ><dt-	><em-	  >apple</em-	  ></dt-	><dd-	><p-	  >red fruit</p-	  ><p-	  >contains seeds, crisp, pleasant to taste</p-	  ></dd-	><dt-	><em-	  >orange</em-	  ></dt-	><dd-	><p-	  >orange fruit</p-	  ><pre-	  ><code-	    >{ orange code block }-</code-	    ></pre-	  ><blockquote-	  ><p-	    >orange block quote</p-	    ></blockquote-	  ></dd-	></dl-      ><p-      >Multiple definitions, tight:</p-      ><dl-      ><dt-	>apple</dt-	><dd-	>red fruit</dd-	><dd-	>computer</dd-	><dt-	>orange</dt-	><dd-	>orange fruit</dd-	><dd-	>bank</dd-	></dl-      ><p-      >Multiple definitions, loose:</p-      ><dl-      ><dt-	>apple</dt-	><dd-	><p-	  >red fruit</p-	  ></dd-	><dd-	><p-	  >computer</p-	  ></dd-	><dt-	>orange</dt-	><dd-	><p-	  >orange fruit</p-	  ></dd-	><dd-	><p-	  >bank</p-	  ></dd-	></dl-      ><p-      >Blank line after term, indented marker, alternate markers:</p-      ><dl-      ><dt-	>apple</dt-	><dd-	><p-	  >red fruit</p-	  ></dd-	><dd-	><p-	  >computer</p-	  ></dd-	><dt-	>orange</dt-	><dd-	><p-	  >orange fruit</p-	  ><ol style="list-style-type: decimal;"-	  ><li-	    >sublist</li-	    ><li-	    >sublist</li-	    ></ol-	  ></dd-	></dl-      ></div-    ><div id="html-blocks"-    ><h1-      >HTML Blocks</h1-      ><p-      >Simple block on one line:</p-      ><div>foo</div>-<p-      >And nested without indentation:</p-      ><div>-<div>-<div>foo</div>-</div>-<div>bar</div>-</div>-<p-      >Interpreted markdown in a table:</p-      ><table>-<tr>-<td>This is <em-      >emphasized</em-      ></td>-<td>And this is <strong-      >strong</strong-      ></td>-</tr>-</table>--<script type="text/javascript">document.write('This *should not* be interpreted as markdown');</script>-<p-      >Here&rsquo;s a simple block:</p-      ><div>-    foo</div>-<p-      >This should be a code block, though:</p-      ><pre-      ><code-	>&lt;div&gt;-    foo-&lt;/div&gt;-</code-	></pre-      ><p-      >As should this:</p-      ><pre-      ><code-	>&lt;div&gt;foo&lt;/div&gt;-</code-	></pre-      ><p-      >Now, nested:</p-      ><div>-    <div>-        <div>-            foo</div>-    </div>-</div>-<p-      >This should just be an HTML comment:</p-      ><!-- Comment -->-<p-      >Multiline:</p-      ><!---Blah-Blah--->--<!---    This is another comment.--->-<p-      >Code block:</p-      ><pre-      ><code-	>&lt;!-- Comment --&gt;-</code-	></pre-      ><p-      >Just plain comment, with trailing spaces on the line:</p-      ><!-- foo -->   -<p-      >Code:</p-      ><pre-      ><code-	>&lt;hr /&gt;-</code-	></pre-      ><p-      >Hr&rsquo;s:</p-      ><hr>--<hr />--<hr />--<hr>   --<hr />  --<hr /> --<hr class="foo" id="bar" />--<hr class="foo" id="bar" />--<hr class="foo" id="bar">-<hr-       /></div-    ><div id="inline-markup"-    ><h1-      >Inline Markup</h1-      ><p-      >This is <em-	>emphasized</em-	>, and so <em-	>is this</em-	>.</p-      ><p-      >This is <strong-	>strong</strong-	>, and so <strong-	>is this</strong-	>.</p-      ><p-      >An <em-	><a href="/url"-	  >emphasized link</a-	  ></em-	>.</p-      ><p-      ><strong-	><em-	  >This is strong and em.</em-	  ></strong-	></p-      ><p-      >So is <strong-	><em-	  >this</em-	  ></strong-	> word.</p-      ><p-      ><strong-	><em-	  >This is strong and em.</em-	  ></strong-	></p-      ><p-      >So is <strong-	><em-	  >this</em-	  ></strong-	> word.</p-      ><p-      >This is code: <code-	>&gt;</code-	>, <code-	>$</code-	>, <code-	>\</code-	>, <code-	>\$</code-	>, <code-	>&lt;html&gt;</code-	>.</p-      ><p-      ><span style="text-decoration: line-through;"-	>This is <em-	  >strikeout</em-	  >.</span-	></p-      ><p-      >Superscripts: a<sup-	>bc</sup-	>d a<sup-	><em-	  >hello</em-	  ></sup-	> a<sup-	>hello&nbsp;there</sup-	>.</p-      ><p-      >Subscripts: H<sub-	>2</sub-	>O, H<sub-	>23</sub-	>O, H<sub-	>many&nbsp;of&nbsp;them</sub-	>O.</p-      ><p-      >These should not be superscripts or subscripts, because of the unescaped spaces: a^b c^d, a~b c~d.</p-      ><hr-       /></div-    ><div id="smart-quotes-ellipses-dashes"-    ><h1-      >Smart quotes, ellipses, dashes</h1-      ><p-      >&ldquo;Hello,&rdquo; said the spider. &ldquo;&lsquo;Shelob&rsquo; is my name.&rdquo;</p-      ><p-      >&lsquo;A&rsquo;, &lsquo;B&rsquo;, and &lsquo;C&rsquo; are letters.</p-      ><p-      >&lsquo;Oak,&rsquo; &lsquo;elm,&rsquo; and &lsquo;beech&rsquo; are names of trees. So is &lsquo;pine.&rsquo;</p-      ><p-      >&lsquo;He said, &ldquo;I want to go.&rdquo;&rsquo; Were you alive in the 70&rsquo;s?</p-      ><p-      >Here is some quoted &lsquo;<code-	>code</code-	>&rsquo; and a &ldquo;<a href="http://example.com/?foo=1&amp;bar=2"-	>quoted link</a-	>&rdquo;.</p-      ><p-      >Some dashes: one&mdash;two &mdash; three&mdash;four &mdash; five.</p-      ><p-      >Dashes between numbers: 5&ndash;7, 255&ndash;66, 1987&ndash;1999.</p-      ><p-      >Ellipses&hellip;and&hellip;and&hellip;.</p-      ><hr-       /></div-    ><div id="latex"-    ><h1-      >LaTeX</h1-      ><ul-      ><li-	></li-	><li-	><span class="math"-	  >2+2=4</span-	  ></li-	><li-	><span class="math"-	  ><em-	    >x</em-	    >&#8201;&#8712;&#8201;<em-	    >y</em-	    ></span-	  ></li-	><li-	><span class="math"-	  >&#945;&#8201;&#8743;&#8201;&#969;</span-	  ></li-	><li-	><span class="math"-	  >223</span-	  ></li-	><li-	><span class="math"-	  ><em-	    >p</em-	    ></span-	  >-Tree</li-	><li-	>Here&rsquo;s some display math: <span class="math"-	  >\frac{<em-	    >d</em-	    >}{<em-	    >dx</em-	    >}<em-	    >f</em-	    >(<em-	    >x</em-	    >)=\lim<sub-	    ><em-	      >h</em-	      >&#8201;&#8594;&#8201;0</sub-	    >\frac{<em-	    >f</em-	    >(<em-	    >x</em-	    >+<em-	    >h</em-	    >)-<em-	    >f</em-	    >(<em-	    >x</em-	    >)}{<em-	    >h</em-	    >}</span-	  ></li-	><li-	>Here&rsquo;s one that has a line break in it: <span class="math"-	  >&#945;+&#969;&#8201;×&#8201;<em-	    >x</em-	    ><sup-	    >2</sup-	    ></span-	  >.</li-	></ul-      ><p-      >These shouldn&rsquo;t be math:</p-      ><ul-      ><li-	>To get the famous equation, write <code-	  >$e = mc^2$</code-	  >.</li-	><li-	>$22,000 is a <em-	  >lot</em-	  > of money. So is $34,000. (It worked if &ldquo;lot&rdquo; is emphasized.)</li-	><li-	>Shoes ($20) and socks ($5).</li-	><li-	>Escaped <code-	  >$</code-	  >: $73 <em-	  >this should be emphasized</em-	  > 23$.</li-	></ul-      ><p-      >Here&rsquo;s a LaTeX table:</p-      ><p-      ></p-      ><hr-       /></div-    ><div id="special-characters"-    ><h1-      >Special Characters</h1-      ><p-      >Here is some unicode:</p-      ><ul-      ><li-	>I hat: Î</li-	><li-	>o umlaut: ö</li-	><li-	>section: §</li-	><li-	>set membership: &#8712;</li-	><li-	>copyright: ©</li-	></ul-      ><p-      >AT&amp;T has an ampersand in their name.</p-      ><p-      >AT&amp;T is another way to write it.</p-      ><p-      >This &amp; that.</p-      ><p-      >4 &lt; 5.</p-      ><p-      >6 &gt; 5.</p-      ><p-      >Backslash: \</p-      ><p-      >Backtick: `</p-      ><p-      >Asterisk: *</p-      ><p-      >Underscore: _</p-      ><p-      >Left brace: {</p-      ><p-      >Right brace: }</p-      ><p-      >Left bracket: [</p-      ><p-      >Right bracket: ]</p-      ><p-      >Left paren: (</p-      ><p-      >Right paren: )</p-      ><p-      >Greater-than: &gt;</p-      ><p-      >Hash: #</p-      ><p-      >Period: .</p-      ><p-      >Bang: !</p-      ><p-      >Plus: +</p-      ><p-      >Minus: -</p-      ><hr-       /></div-    ><div id="links"-    ><h1-      >Links</h1-      ><div id="explicit"-      ><h2-	>Explicit</h2-	><p-	>Just a <a href="/url/"-	  >URL</a-	  >.</p-	><p-	><a href="/url/" title="title"-	  >URL and title</a-	  >.</p-	><p-	><a href="/url/" title="title preceded by two spaces"-	  >URL and title</a-	  >.</p-	><p-	><a href="/url/" title="title preceded by a tab"-	  >URL and title</a-	  >.</p-	><p-	><a href="/url/" title="title with &quot;quotes&quot; in it"-	  >URL and title</a-	  ></p-	><p-	><a href="/url/" title="title with single quotes"-	  >URL and title</a-	  ></p-	><p-	><a href="/url/with_underscore"-	  >with_underscore</a-	  ></p-	><p-	><script type="text/javascript"-	  >-<!---h='&#110;&#x6f;&#x77;&#104;&#x65;&#114;&#x65;&#46;&#110;&#x65;&#116;';a='&#64;';n='&#110;&#x6f;&#98;&#x6f;&#100;&#x79;';e=n+a+h;-document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'">'+'Email link'+'<\/'+'a'+'>');-// -->-</script-	  ><noscript-	  >&#x45;&#x6d;&#x61;&#x69;&#108;&#32;&#108;&#x69;&#110;&#x6b;&#32;&#40;&#110;&#x6f;&#98;&#x6f;&#100;&#x79;&#32;&#x61;&#116;&#32;&#110;&#x6f;&#x77;&#104;&#x65;&#114;&#x65;&#32;&#100;&#x6f;&#116;&#32;&#110;&#x65;&#116;&#x29;</noscript-	  ></p-	><p-	><a href=""-	  >Empty</a-	  >.</p-	></div-      ><div id="reference"-      ><h2-	>Reference</h2-	><p-	>Foo <a href="/url/"-	  >bar</a-	  >.</p-	><p-	>Foo <a href="/url/"-	  >bar</a-	  >.</p-	><p-	>Foo <a href="/url/"-	  >bar</a-	  >.</p-	><p-	>With <a href="/url/"-	  >embedded [brackets]</a-	  >.</p-	><p-	><a href="/url/"-	  >b</a-	  > by itself should be a link.</p-	><p-	>Indented <a href="/url"-	  >once</a-	  >.</p-	><p-	>Indented <a href="/url"-	  >twice</a-	  >.</p-	><p-	>Indented <a href="/url"-	  >thrice</a-	  >.</p-	><p-	>This should [not][] be a link.</p-	><pre-	><code-	  >[not]: /url-</code-	  ></pre-	><p-	>Foo <a href="/url/" title="Title with &quot;quotes&quot; inside"-	  >bar</a-	  >.</p-	><p-	>Foo <a href="/url/" title="Title with &quot;quote&quot; inside"-	  >biz</a-	  >.</p-	></div-      ><div id="with-ampersands"-      ><h2-	>With ampersands</h2-	><p-	>Here&rsquo;s a <a href="http://example.com/?foo=1&amp;bar=2"-	  >link with an ampersand in the URL</a-	  >.</p-	><p-	>Here&rsquo;s a link with an amersand in the link text: <a href="http://att.com/" title="AT&amp;T"-	  >AT&amp;T</a-	  >.</p-	><p-	>Here&rsquo;s an <a href="/script?foo=1&amp;bar=2"-	  >inline link</a-	  >.</p-	><p-	>Here&rsquo;s an <a href="/script?foo=1&amp;bar=2"-	  >inline link in pointy braces</a-	  >.</p-	></div-      ><div id="autolinks"-      ><h2-	>Autolinks</h2-	><p-	>With an ampersand: <a href="http://example.com/?foo=1&amp;bar=2"-	  ><code-	    >http://example.com/?foo=1&amp;bar=2</code-	    ></a-	  ></p-	><ul-	><li-	  >In a list?</li-	  ><li-	  ><a href="http://example.com/"-	    ><code-	      >http://example.com/</code-	      ></a-	    ></li-	  ><li-	  >It should.</li-	  ></ul-	><p-	>An e-mail address: <script type="text/javascript"-	  >-<!---h='&#110;&#x6f;&#x77;&#104;&#x65;&#114;&#x65;&#46;&#110;&#x65;&#116;';a='&#64;';n='&#110;&#x6f;&#98;&#x6f;&#100;&#x79;';e=n+a+h;-document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'">'+'<code>'+e+'</code>'+'<\/'+'a'+'>');-// -->-</script-	  ><noscript-	  >&#110;&#x6f;&#98;&#x6f;&#100;&#x79;&#32;&#x61;&#116;&#32;&#110;&#x6f;&#x77;&#104;&#x65;&#114;&#x65;&#32;&#100;&#x6f;&#116;&#32;&#110;&#x65;&#116;</noscript-	  ></p-	><blockquote-	><p-	  >Blockquoted: <a href="http://example.com/"-	    ><code-	      >http://example.com/</code-	      ></a-	    ></p-	  ></blockquote-	><p-	>Auto-links should not occur here: <code-	  >&lt;http://example.com/&gt;</code-	  ></p-	><pre-	><code-	  >or here: &lt;http://example.com/&gt;-</code-	  ></pre-	><hr-	 /></div-      ></div-    ><div id="images"-    ><h1-      >Images</h1-      ><p-      >From &ldquo;Voyage dans la Lune&rdquo; by Georges Melies (1902):</p-      ><p-      ><img src="lalune.jpg" title="Voyage dans la Lune" alt="lalune"-	 /></p-      ><p-      >Here is a movie <img src="movie.jpg" alt="movie"-	 /> icon.</p-      ><hr-       /></div-    ><div id="footnotes"-    ><h1-      >Footnotes</h1-      ><p-      >Here is a footnote reference,<a href="#fn1" class="footnoteRef" id="fnref1"-	><sup-	  >1</sup-	  ></a-	> and another.<a href="#fn2" class="footnoteRef" id="fnref2"-	><sup-	  >2</sup-	  ></a-	> This should <em-	>not</em-	> be a footnote reference, because it contains a space.[^my note] Here is an inline note.<a href="#fn3" class="footnoteRef" id="fnref3"-	><sup-	  >3</sup-	  ></a-	></p-      ><blockquote-      ><p-	>Notes can go in quotes.<a href="#fn4" class="footnoteRef" id="fnref4"-	  ><sup-	    >4</sup-	    ></a-	  ></p-	></blockquote-      ><ol style="list-style-type: decimal;"-      ><li-	>And in list items.<a href="#fn5" class="footnoteRef" id="fnref5"-	  ><sup-	    >5</sup-	    ></a-	  ></li-	></ol-      ><p-      >This paragraph should not be part of the note, as it is not indented.</p-      ></div-    ><div class="footnotes"-    ><hr-       /><ol-      ><li id="fn1"-	><p-	  >Here is the footnote. It can go anywhere after the footnote reference. It need not be placed at the end of the document. <a href="#fnref1" class="footnoteBackLink" title="Jump back to footnote 1">&#8617;</a></p-	  ></li-	><li id="fn2"-	><p-	  >Here&rsquo;s the long note. This one contains multiple blocks.</p-	  ><p-	  >Subsequent blocks are indented to show that they belong to the footnote (as with list items).</p-	  ><pre-	  ><code-	    >  { &lt;code&gt; }-</code-	    ></pre-	  ><p-	  >If you want, you can indent every line, but you can also be lazy and just indent the first line of each block. <a href="#fnref2" class="footnoteBackLink" title="Jump back to footnote 2">&#8617;</a></p-	  ></li-	><li id="fn3"-	><p-	  >This is <em-	    >easier</em-	    > to type. Inline notes may contain <a href="http://google.com"-	    >links</a-	    > and <code-	    >]</code-	    > verbatim characters, as well as [bracketed text]. <a href="#fnref3" class="footnoteBackLink" title="Jump back to footnote 3">&#8617;</a></p-	  ></li-	><li id="fn4"-	><p-	  >In quote. <a href="#fnref4" class="footnoteBackLink" title="Jump back to footnote 4">&#8617;</a></p-	  ></li-	><li id="fn5"-	><p-	  >In list. <a href="#fnref5" class="footnoteBackLink" title="Jump back to footnote 5">&#8617;</a></p-	  ></li-	></ol-      ></div-    ></body-  ></html->+<html xmlns="http://www.w3.org/1999/xhtml">+<head>+  <title>Pandoc Test Suite</title>+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />+  <meta name="generator" content="pandoc" />+  <meta name="author" content="John MacFarlane" />+  <meta name="author" content="Anonymous" />+  <meta name="date" content="July 17, 2006" />+</head>+<body>+<h1 class="title">Pandoc Test Suite</h1>+<p+>This is a set of tests for pandoc. Most of them are adapted from John Gruber’s markdown test suite.</p+><hr+ /><div id="headers"+><h1+  >Headers</h1+  ><div id="level-2-with-an-embedded-link"+  ><h2+    >Level 2 with an <a href="/url"+      >embedded link</a+      ></h2+    ><div id="level-3-with-emphasis"+    ><h3+      >Level 3 with <em+	>emphasis</em+	></h3+      ><div id="level-4"+      ><h4+	>Level 4</h4+	><div id="level-5"+	><h5+	  >Level 5</h5+	  ></div+	></div+      ></div+    ></div+  ></div+><div id="level-1"+><h1+  >Level 1</h1+  ><div id="level-2-with-emphasis"+  ><h2+    >Level 2 with <em+      >emphasis</em+      ></h2+    ><div id="level-3"+    ><h3+      >Level 3</h3+      ><p+      >with no blank line</p+      ></div+    ></div+  ><div id="level-2"+  ><h2+    >Level 2</h2+    ><p+    >with no blank line</p+    ><hr+     /></div+  ></div+><div id="paragraphs"+><h1+  >Paragraphs</h1+  ><p+  >Here’s a regular paragraph.</p+  ><p+  >In Markdown 1.0.0 and earlier. Version 8. This line turns into a list item. Because a hard-wrapped line in the middle of a paragraph looked like a list item.</p+  ><p+  >Here’s one with a bullet. * criminey.</p+  ><p+  >There should be a hard line break<br+     />here.</p+  ><hr+   /></div+><div id="block-quotes"+><h1+  >Block Quotes</h1+  ><p+  >E-mail style:</p+  ><blockquote+  ><p+    >This is a block quote. It is pretty short.</p+    ></blockquote+  ><blockquote+  ><p+    >Code in a block quote:</p+    ><pre+    ><code+      >sub status {+    print &quot;working&quot;;+}+</code+      ></pre+    ><p+    >A list:</p+    ><ol style="list-style-type: decimal;"+    ><li+      >item one</li+      ><li+      >item two</li+      ></ol+    ><p+    >Nested block quotes:</p+    ><blockquote+    ><p+      >nested</p+      ></blockquote+    ><blockquote+    ><p+      >nested</p+      ></blockquote+    ></blockquote+  ><p+  >This should not be a block quote: 2 &gt; 1.</p+  ><p+  >And a following paragraph.</p+  ><hr+   /></div+><div id="code-blocks"+><h1+  >Code Blocks</h1+  ><p+  >Code:</p+  ><pre+  ><code+    >---- (should be four hyphens)++sub status {+    print &quot;working&quot;;+}++this code block is indented by one tab+</code+    ></pre+  ><p+  >And:</p+  ><pre+  ><code+    >    this code block is indented by two tabs++These should not be escaped:  \$ \\ \&gt; \[ \{+</code+    ></pre+  ><hr+   /></div+><div id="lists"+><h1+  >Lists</h1+  ><div id="unordered"+  ><h2+    >Unordered</h2+    ><p+    >Asterisks tight:</p+    ><ul+    ><li+      >asterisk 1</li+      ><li+      >asterisk 2</li+      ><li+      >asterisk 3</li+      ></ul+    ><p+    >Asterisks loose:</p+    ><ul+    ><li+      ><p+	>asterisk 1</p+	></li+      ><li+      ><p+	>asterisk 2</p+	></li+      ><li+      ><p+	>asterisk 3</p+	></li+      ></ul+    ><p+    >Pluses tight:</p+    ><ul+    ><li+      >Plus 1</li+      ><li+      >Plus 2</li+      ><li+      >Plus 3</li+      ></ul+    ><p+    >Pluses loose:</p+    ><ul+    ><li+      ><p+	>Plus 1</p+	></li+      ><li+      ><p+	>Plus 2</p+	></li+      ><li+      ><p+	>Plus 3</p+	></li+      ></ul+    ><p+    >Minuses tight:</p+    ><ul+    ><li+      >Minus 1</li+      ><li+      >Minus 2</li+      ><li+      >Minus 3</li+      ></ul+    ><p+    >Minuses loose:</p+    ><ul+    ><li+      ><p+	>Minus 1</p+	></li+      ><li+      ><p+	>Minus 2</p+	></li+      ><li+      ><p+	>Minus 3</p+	></li+      ></ul+    ></div+  ><div id="ordered"+  ><h2+    >Ordered</h2+    ><p+    >Tight:</p+    ><ol style="list-style-type: decimal;"+    ><li+      >First</li+      ><li+      >Second</li+      ><li+      >Third</li+      ></ol+    ><p+    >and:</p+    ><ol style="list-style-type: decimal;"+    ><li+      >One</li+      ><li+      >Two</li+      ><li+      >Three</li+      ></ol+    ><p+    >Loose using tabs:</p+    ><ol style="list-style-type: decimal;"+    ><li+      ><p+	>First</p+	></li+      ><li+      ><p+	>Second</p+	></li+      ><li+      ><p+	>Third</p+	></li+      ></ol+    ><p+    >and using spaces:</p+    ><ol style="list-style-type: decimal;"+    ><li+      ><p+	>One</p+	></li+      ><li+      ><p+	>Two</p+	></li+      ><li+      ><p+	>Three</p+	></li+      ></ol+    ><p+    >Multiple paragraphs:</p+    ><ol style="list-style-type: decimal;"+    ><li+      ><p+	>Item 1, graf one.</p+	><p+	>Item 1. graf two. The quick brown fox jumped over the lazy dog’s back.</p+	></li+      ><li+      ><p+	>Item 2.</p+	></li+      ><li+      ><p+	>Item 3.</p+	></li+      ></ol+    ></div+  ><div id="nested"+  ><h2+    >Nested</h2+    ><ul+    ><li+      >Tab<ul+	><li+	  >Tab<ul+	    ><li+	      >Tab</li+	      ></ul+	    ></li+	  ></ul+	></li+      ></ul+    ><p+    >Here’s another:</p+    ><ol style="list-style-type: decimal;"+    ><li+      >First</li+      ><li+      >Second:<ul+	><li+	  >Fee</li+	  ><li+	  >Fie</li+	  ><li+	  >Foe</li+	  ></ul+	></li+      ><li+      >Third</li+      ></ol+    ><p+    >Same thing but with paragraphs:</p+    ><ol style="list-style-type: decimal;"+    ><li+      ><p+	>First</p+	></li+      ><li+      ><p+	>Second:</p+	><ul+	><li+	  >Fee</li+	  ><li+	  >Fie</li+	  ><li+	  >Foe</li+	  ></ul+	></li+      ><li+      ><p+	>Third</p+	></li+      ></ol+    ></div+  ><div id="tabs-and-spaces"+  ><h2+    >Tabs and spaces</h2+    ><ul+    ><li+      ><p+	>this is a list item indented with tabs</p+	></li+      ><li+      ><p+	>this is a list item indented with spaces</p+	><ul+	><li+	  ><p+	    >this is an example list item indented with tabs</p+	    ></li+	  ><li+	  ><p+	    >this is an example list item indented with spaces</p+	    ></li+	  ></ul+	></li+      ></ul+    ></div+  ><div id="fancy-list-markers"+  ><h2+    >Fancy list markers</h2+    ><ol start="2" style="list-style-type: decimal;"+    ><li+      >begins with 2</li+      ><li+      ><p+	>and now 3</p+	><p+	>with a continuation</p+	><ol start="4" style="list-style-type: lower-roman;"+	><li+	  >sublist with roman numerals, starting with 4</li+	  ><li+	  >more items<ol style="list-style-type: upper-alpha;"+	    ><li+	      >a subsublist</li+	      ><li+	      >a subsublist</li+	      ></ol+	    ></li+	  ></ol+	></li+      ></ol+    ><p+    >Nesting:</p+    ><ol style="list-style-type: upper-alpha;"+    ><li+      >Upper Alpha<ol style="list-style-type: upper-roman;"+	><li+	  >Upper Roman.<ol start="6" style="list-style-type: decimal;"+	    ><li+	      >Decimal start with 6<ol start="3" style="list-style-type: lower-alpha;"+		><li+		  >Lower alpha with paren</li+		  ></ol+		></li+	      ></ol+	    ></li+	  ></ol+	></li+      ></ol+    ><p+    >Autonumbering:</p+    ><ol+    ><li+      >Autonumber.</li+      ><li+      >More.<ol+	><li+	  >Nested.</li+	  ></ol+	></li+      ></ol+    ><p+    >Should not be a list item:</p+    ><p+    >M.A. 2007</p+    ><p+    >B. Williams</p+    ><hr+     /></div+  ></div+><div id="definition-lists"+><h1+  >Definition Lists</h1+  ><p+  >Tight using spaces:</p+  ><dl+  ><dt+    >apple</dt+    ><dd+    >red fruit</dd+    ><dt+    >orange</dt+    ><dd+    >orange fruit</dd+    ><dt+    >banana</dt+    ><dd+    >yellow fruit</dd+    ></dl+  ><p+  >Tight using tabs:</p+  ><dl+  ><dt+    >apple</dt+    ><dd+    >red fruit</dd+    ><dt+    >orange</dt+    ><dd+    >orange fruit</dd+    ><dt+    >banana</dt+    ><dd+    >yellow fruit</dd+    ></dl+  ><p+  >Loose:</p+  ><dl+  ><dt+    >apple</dt+    ><dd+    ><p+      >red fruit</p+      ></dd+    ><dt+    >orange</dt+    ><dd+    ><p+      >orange fruit</p+      ></dd+    ><dt+    >banana</dt+    ><dd+    ><p+      >yellow fruit</p+      ></dd+    ></dl+  ><p+  >Multiple blocks with italics:</p+  ><dl+  ><dt+    ><em+      >apple</em+      ></dt+    ><dd+    ><p+      >red fruit</p+      ><p+      >contains seeds, crisp, pleasant to taste</p+      ></dd+    ><dt+    ><em+      >orange</em+      ></dt+    ><dd+    ><p+      >orange fruit</p+      ><pre+      ><code+	>{ orange code block }+</code+	></pre+      ><blockquote+      ><p+	>orange block quote</p+	></blockquote+      ></dd+    ></dl+  ><p+  >Multiple definitions, tight:</p+  ><dl+  ><dt+    >apple</dt+    ><dd+    >red fruit</dd+    ><dd+    >computer</dd+    ><dt+    >orange</dt+    ><dd+    >orange fruit</dd+    ><dd+    >bank</dd+    ></dl+  ><p+  >Multiple definitions, loose:</p+  ><dl+  ><dt+    >apple</dt+    ><dd+    ><p+      >red fruit</p+      ></dd+    ><dd+    ><p+      >computer</p+      ></dd+    ><dt+    >orange</dt+    ><dd+    ><p+      >orange fruit</p+      ></dd+    ><dd+    ><p+      >bank</p+      ></dd+    ></dl+  ><p+  >Blank line after term, indented marker, alternate markers:</p+  ><dl+  ><dt+    >apple</dt+    ><dd+    ><p+      >red fruit</p+      ></dd+    ><dd+    ><p+      >computer</p+      ></dd+    ><dt+    >orange</dt+    ><dd+    ><p+      >orange fruit</p+      ><ol style="list-style-type: decimal;"+      ><li+	>sublist</li+	><li+	>sublist</li+	></ol+      ></dd+    ></dl+  ></div+><div id="html-blocks"+><h1+  >HTML Blocks</h1+  ><p+  >Simple block on one line:</p+  ><div>foo</div>+<p+  >And nested without indentation:</p+  ><div>+<div>+<div>foo</div>+</div>+<div>bar</div>+</div>+<p+  >Interpreted markdown in a table:</p+  ><table>+<tr>+<td>This is <em+  >emphasized</em+  ></td>+<td>And this is <strong+  >strong</strong+  ></td>+</tr>+</table>++<script type="text/javascript">document.write('This *should not* be interpreted as markdown');</script>+<p+  >Here’s a simple block:</p+  ><div>+    foo</div>+<p+  >This should be a code block, though:</p+  ><pre+  ><code+    >&lt;div&gt;+    foo+&lt;/div&gt;+</code+    ></pre+  ><p+  >As should this:</p+  ><pre+  ><code+    >&lt;div&gt;foo&lt;/div&gt;+</code+    ></pre+  ><p+  >Now, nested:</p+  ><div>+    <div>+        <div>+            foo</div>+    </div>+</div>+<p+  >This should just be an HTML comment:</p+  ><!-- Comment -->+<p+  >Multiline:</p+  ><!--+Blah+Blah+-->++<!--+    This is another comment.+-->+<p+  >Code block:</p+  ><pre+  ><code+    >&lt;!-- Comment --&gt;+</code+    ></pre+  ><p+  >Just plain comment, with trailing spaces on the line:</p+  ><!-- foo -->   +<p+  >Code:</p+  ><pre+  ><code+    >&lt;hr /&gt;+</code+    ></pre+  ><p+  >Hr’s:</p+  ><hr>++<hr />++<hr />++<hr>   ++<hr />  ++<hr /> ++<hr class="foo" id="bar" />++<hr class="foo" id="bar" />++<hr class="foo" id="bar">+<hr+   /></div+><div id="inline-markup"+><h1+  >Inline Markup</h1+  ><p+  >This is <em+    >emphasized</em+    >, and so <em+    >is this</em+    >.</p+  ><p+  >This is <strong+    >strong</strong+    >, and so <strong+    >is this</strong+    >.</p+  ><p+  >An <em+    ><a href="/url"+      >emphasized link</a+      ></em+    >.</p+  ><p+  ><strong+    ><em+      >This is strong and em.</em+      ></strong+    ></p+  ><p+  >So is <strong+    ><em+      >this</em+      ></strong+    > word.</p+  ><p+  ><strong+    ><em+      >This is strong and em.</em+      ></strong+    ></p+  ><p+  >So is <strong+    ><em+      >this</em+      ></strong+    > word.</p+  ><p+  >This is code: <code+    >&gt;</code+    >, <code+    >$</code+    >, <code+    >\</code+    >, <code+    >\$</code+    >, <code+    >&lt;html&gt;</code+    >.</p+  ><p+  ><span style="text-decoration: line-through;"+    >This is <em+      >strikeout</em+      >.</span+    ></p+  ><p+  >Superscripts: a<sup+    >bc</sup+    >d a<sup+    ><em+      >hello</em+      ></sup+    > a<sup+    >hello there</sup+    >.</p+  ><p+  >Subscripts: H<sub+    >2</sub+    >O, H<sub+    >23</sub+    >O, H<sub+    >many of them</sub+    >O.</p+  ><p+  >These should not be superscripts or subscripts, because of the unescaped spaces: a^b c^d, a~b c~d.</p+  ><hr+   /></div+><div id="smart-quotes-ellipses-dashes"+><h1+  >Smart quotes, ellipses, dashes</h1+  ><p+  >“Hello,” said the spider. “‘Shelob’ is my name.”</p+  ><p+  >‘A’, ‘B’, and ‘C’ are letters.</p+  ><p+  >‘Oak,’ ‘elm,’ and ‘beech’ are names of trees. So is ‘pine.’</p+  ><p+  >‘He said, “I want to go.”’ Were you alive in the 70’s?</p+  ><p+  >Here is some quoted ‘<code+    >code</code+    >’ and a “<a href="http://example.com/?foo=1&amp;bar=2"+    >quoted link</a+    >”.</p+  ><p+  >Some dashes: one—two — three—four — five.</p+  ><p+  >Dashes between numbers: 5–7, 255–66, 1987–1999.</p+  ><p+  >Ellipses…and…and….</p+  ><hr+   /></div+><div id="latex"+><h1+  >LaTeX</h1+  ><ul+  ><li+    ></li+    ><li+    ><span class="math"+      >2+2=4</span+      ></li+    ><li+    ><span class="math"+      ><em+	>x</em+	> ∈ <em+	>y</em+	></span+      ></li+    ><li+    ><span class="math"+      >α ∧ ω</span+      ></li+    ><li+    ><span class="math"+      >223</span+      ></li+    ><li+    ><span class="math"+      ><em+	>p</em+	></span+      >-Tree</li+    ><li+    >Here’s some display math: <span class="math"+      >\frac{<em+	>d</em+	>}{<em+	>dx</em+	>}<em+	>f</em+	>(<em+	>x</em+	>)=\lim<sub+	><em+	  >h</em+	  > → 0</sub+	>\frac{<em+	>f</em+	>(<em+	>x</em+	>+<em+	>h</em+	>)-<em+	>f</em+	>(<em+	>x</em+	>)}{<em+	>h</em+	>}</span+      ></li+    ><li+    >Here’s one that has a line break in it: <span class="math"+      >α+ω × <em+	>x</em+	><sup+	>2</sup+	></span+      >.</li+    ></ul+  ><p+  >These shouldn’t be math:</p+  ><ul+  ><li+    >To get the famous equation, write <code+      >$e = mc^2$</code+      >.</li+    ><li+    >$22,000 is a <em+      >lot</em+      > of money. So is $34,000. (It worked if “lot” is emphasized.)</li+    ><li+    >Shoes ($20) and socks ($5).</li+    ><li+    >Escaped <code+      >$</code+      >: $73 <em+      >this should be emphasized</em+      > 23$.</li+    ></ul+  ><p+  >Here’s a LaTeX table:</p+  ><p+  ></p+  ><hr+   /></div+><div id="special-characters"+><h1+  >Special Characters</h1+  ><p+  >Here is some unicode:</p+  ><ul+  ><li+    >I hat: Î</li+    ><li+    >o umlaut: ö</li+    ><li+    >section: §</li+    ><li+    >set membership: ∈</li+    ><li+    >copyright: ©</li+    ></ul+  ><p+  >AT&amp;T has an ampersand in their name.</p+  ><p+  >AT&amp;T is another way to write it.</p+  ><p+  >This &amp; that.</p+  ><p+  >4 &lt; 5.</p+  ><p+  >6 &gt; 5.</p+  ><p+  >Backslash: \</p+  ><p+  >Backtick: `</p+  ><p+  >Asterisk: *</p+  ><p+  >Underscore: _</p+  ><p+  >Left brace: {</p+  ><p+  >Right brace: }</p+  ><p+  >Left bracket: [</p+  ><p+  >Right bracket: ]</p+  ><p+  >Left paren: (</p+  ><p+  >Right paren: )</p+  ><p+  >Greater-than: &gt;</p+  ><p+  >Hash: #</p+  ><p+  >Period: .</p+  ><p+  >Bang: !</p+  ><p+  >Plus: +</p+  ><p+  >Minus: -</p+  ><hr+   /></div+><div id="links"+><h1+  >Links</h1+  ><div id="explicit"+  ><h2+    >Explicit</h2+    ><p+    >Just a <a href="/url/"+      >URL</a+      >.</p+    ><p+    ><a href="/url/" title="title"+      >URL and title</a+      >.</p+    ><p+    ><a href="/url/" title="title preceded by two spaces"+      >URL and title</a+      >.</p+    ><p+    ><a href="/url/" title="title preceded by a tab"+      >URL and title</a+      >.</p+    ><p+    ><a href="/url/" title="title with &quot;quotes&quot; in it"+      >URL and title</a+      ></p+    ><p+    ><a href="/url/" title="title with single quotes"+      >URL and title</a+      ></p+    ><p+    ><a href="/url/with_underscore"+      >with_underscore</a+      ></p+    ><p+    ><script type="text/javascript"+      >+<!--+h='&#110;&#x6f;&#x77;&#104;&#x65;&#114;&#x65;&#46;&#110;&#x65;&#116;';a='&#64;';n='&#110;&#x6f;&#98;&#x6f;&#100;&#x79;';e=n+a+h;+document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'">'+'Email link'+'<\/'+'a'+'>');+// -->+</script+      ><noscript+      >&#x45;&#x6d;&#x61;&#x69;&#108;&#32;&#108;&#x69;&#110;&#x6b;&#32;&#40;&#110;&#x6f;&#98;&#x6f;&#100;&#x79;&#32;&#x61;&#116;&#32;&#110;&#x6f;&#x77;&#104;&#x65;&#114;&#x65;&#32;&#100;&#x6f;&#116;&#32;&#110;&#x65;&#116;&#x29;</noscript+      ></p+    ><p+    ><a href=""+      >Empty</a+      >.</p+    ></div+  ><div id="reference"+  ><h2+    >Reference</h2+    ><p+    >Foo <a href="/url/"+      >bar</a+      >.</p+    ><p+    >Foo <a href="/url/"+      >bar</a+      >.</p+    ><p+    >Foo <a href="/url/"+      >bar</a+      >.</p+    ><p+    >With <a href="/url/"+      >embedded [brackets]</a+      >.</p+    ><p+    ><a href="/url/"+      >b</a+      > by itself should be a link.</p+    ><p+    >Indented <a href="/url"+      >once</a+      >.</p+    ><p+    >Indented <a href="/url"+      >twice</a+      >.</p+    ><p+    >Indented <a href="/url"+      >thrice</a+      >.</p+    ><p+    >This should [not][] be a link.</p+    ><pre+    ><code+      >[not]: /url+</code+      ></pre+    ><p+    >Foo <a href="/url/" title="Title with &quot;quotes&quot; inside"+      >bar</a+      >.</p+    ><p+    >Foo <a href="/url/" title="Title with &quot;quote&quot; inside"+      >biz</a+      >.</p+    ></div+  ><div id="with-ampersands"+  ><h2+    >With ampersands</h2+    ><p+    >Here’s a <a href="http://example.com/?foo=1&amp;bar=2"+      >link with an ampersand in the URL</a+      >.</p+    ><p+    >Here’s a link with an amersand in the link text: <a href="http://att.com/" title="AT&amp;T"+      >AT&amp;T</a+      >.</p+    ><p+    >Here’s an <a href="/script?foo=1&amp;bar=2"+      >inline link</a+      >.</p+    ><p+    >Here’s an <a href="/script?foo=1&amp;bar=2"+      >inline link in pointy braces</a+      >.</p+    ></div+  ><div id="autolinks"+  ><h2+    >Autolinks</h2+    ><p+    >With an ampersand: <a href="http://example.com/?foo=1&amp;bar=2"+      ><code+	>http://example.com/?foo=1&amp;bar=2</code+	></a+      ></p+    ><ul+    ><li+      >In a list?</li+      ><li+      ><a href="http://example.com/"+	><code+	  >http://example.com/</code+	  ></a+	></li+      ><li+      >It should.</li+      ></ul+    ><p+    >An e-mail address: <script type="text/javascript"+      >+<!--+h='&#110;&#x6f;&#x77;&#104;&#x65;&#114;&#x65;&#46;&#110;&#x65;&#116;';a='&#64;';n='&#110;&#x6f;&#98;&#x6f;&#100;&#x79;';e=n+a+h;+document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'">'+'<code>'+e+'</code>'+'<\/'+'a'+'>');+// -->+</script+      ><noscript+      >&#110;&#x6f;&#98;&#x6f;&#100;&#x79;&#32;&#x61;&#116;&#32;&#110;&#x6f;&#x77;&#104;&#x65;&#114;&#x65;&#32;&#100;&#x6f;&#116;&#32;&#110;&#x65;&#116;</noscript+      ></p+    ><blockquote+    ><p+      >Blockquoted: <a href="http://example.com/"+	><code+	  >http://example.com/</code+	  ></a+	></p+      ></blockquote+    ><p+    >Auto-links should not occur here: <code+      >&lt;http://example.com/&gt;</code+      ></p+    ><pre+    ><code+      >or here: &lt;http://example.com/&gt;+</code+      ></pre+    ><hr+     /></div+  ></div+><div id="images"+><h1+  >Images</h1+  ><p+  >From “Voyage dans la Lune” by Georges Melies (1902):</p+  ><p+  ><img src="lalune.jpg" title="Voyage dans la Lune" alt="lalune"+     /></p+  ><p+  >Here is a movie <img src="movie.jpg" alt="movie"+     /> icon.</p+  ><hr+   /></div+><div id="footnotes"+><h1+  >Footnotes</h1+  ><p+  >Here is a footnote reference,<sup+    ><a href="#fn1" class="footnoteRef" id="fnref1"+      >1</a+      ></sup+    > and another.<sup+    ><a href="#fn2" class="footnoteRef" id="fnref2"+      >2</a+      ></sup+    > This should <em+    >not</em+    > be a footnote reference, because it contains a space.[^my note] Here is an inline note.<sup+    ><a href="#fn3" class="footnoteRef" id="fnref3"+      >3</a+      ></sup+    ></p+  ><blockquote+  ><p+    >Notes can go in quotes.<sup+      ><a href="#fn4" class="footnoteRef" id="fnref4"+	>4</a+	></sup+      ></p+    ></blockquote+  ><ol style="list-style-type: decimal;"+  ><li+    >And in list items.<sup+      ><a href="#fn5" class="footnoteRef" id="fnref5"+	>5</a+	></sup+      ></li+    ></ol+  ><p+  >This paragraph should not be part of the note, as it is not indented.</p+  ></div+><div class="footnotes"+><hr+   /><ol+  ><li id="fn1"+    ><p+      >Here is the footnote. It can go anywhere after the footnote reference. It need not be placed at the end of the document. <a href="#fnref1" class="footnoteBackLink" title="Jump back to footnote 1">↩</a></p+      ></li+    ><li id="fn2"+    ><p+      >Here’s the long note. This one contains multiple blocks.</p+      ><p+      >Subsequent blocks are indented to show that they belong to the footnote (as with list items).</p+      ><pre+      ><code+	>  { &lt;code&gt; }+</code+	></pre+      ><p+      >If you want, you can indent every line, but you can also be lazy and just indent the first line of each block. <a href="#fnref2" class="footnoteBackLink" title="Jump back to footnote 2">↩</a></p+      ></li+    ><li id="fn3"+    ><p+      >This is <em+	>easier</em+	> to type. Inline notes may contain <a href="http://google.com"+	>links</a+	> and <code+	>]</code+	> verbatim characters, as well as [bracketed text]. <a href="#fnref3" class="footnoteBackLink" title="Jump back to footnote 3">↩</a></p+      ></li+    ><li id="fn4"+    ><p+      >In quote. <a href="#fnref4" class="footnoteBackLink" title="Jump back to footnote 4">↩</a></p+      ></li+    ><li id="fn5"+    ><p+      >In list. <a href="#fnref5" class="footnoteBackLink" title="Jump back to footnote 5">↩</a></p+      ></li+    ></ol+  ></div+>+</body>+</html> 
tests/writer.latex view
@@ -2,24 +2,22 @@ \usepackage{amsmath} \usepackage[mathletters]{ucs} \usepackage[utf8x]{inputenc}-\usepackage{listings}-\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{} \setlength{\parindent}{0pt} \setlength{\parskip}{6pt plus 2pt minus 1pt}-+\usepackage{fancyvrb}+\usepackage{enumerate}+\usepackage[normalem]{ulem} \newcommand{\textsubscr}[1]{\ensuremath{_{\scriptsize\textrm{#1}}}} \usepackage[breaklinks=true]{hyperref}-\usepackage[normalem]{ulem}-\usepackage{enumerate}-\usepackage{fancyvrb}-\usepackage{graphicx} \usepackage{url}-+\usepackage{graphicx} \setcounter{secnumdepth}{0} \VerbatimFootnotes % allows verbatim text in footnotes+ \title{Pandoc Test Suite} \author{John MacFarlane\\Anonymous} \date{July 17, 2006}+ \begin{document} \maketitle @@ -847,3 +845,4 @@ indented.  \end{document}+
tests/writer.man view
@@ -776,4 +776,5 @@ .PP In list. .SH AUTHORS-John MacFarlane, Anonymous+John MacFarlane; Anonymous.+
tests/writer.markdown view
@@ -1,5 +1,5 @@ % Pandoc Test Suite-% John MacFarlane, Anonymous+% John MacFarlane; Anonymous % July 17, 2006  This is a set of tests for pandoc. Most of them are adapted from
tests/writer.mediawiki view
@@ -238,7 +238,7 @@  Should not be a list item: -M.A.&#160;2007+M.A. 2007  B. Williams @@ -444,9 +444,9 @@  <s>This is ''strikeout''.</s> -Superscripts: a<sup>bc</sup>d a<sup>''hello''</sup> a<sup>hello&#160;there</sup>.+Superscripts: a<sup>bc</sup>d a<sup>''hello''</sup> a<sup>hello there</sup>. -Subscripts: H<sub>2</sub>O, H<sub>23</sub>O, H<sub>many&#160;of&#160;them</sub>O.+Subscripts: H<sub>2</sub>O, H<sub>23</sub>O, H<sub>many of them</sub>O.  These should not be superscripts or subscripts, because of the unescaped spaces: a^b c^d, a~b c~d. @@ -661,3 +661,4 @@  == Notes == <references />+
tests/writer.native view
@@ -1,4 +1,4 @@-Pandoc (Meta [Str "Pandoc",Space,Str "Test",Space,Str "Suite"] ["John MacFarlane","Anonymous"] "July 17, 2006")+Pandoc (Meta [Str "Pandoc",Space,Str "Test",Space,Str "Suite"] [[Str "John",Space,Str "MacFarlane"],[Str "Anonymous"]] [Str "July",Space,Str "17,",Space,Str "2006"]) [ Para [Str "This",Space,Str "is",Space,Str "a",Space,Str "set",Space,Str "of",Space,Str "tests",Space,Str "for",Space,Str "pandoc",Str ".",Space,Str "Most",Space,Str "of",Space,Str "them",Space,Str "are",Space,Str "adapted",Space,Str "from",Space,Str "John",Space,Str "Gruber",Apostrophe,Str "s",Space,Str "markdown",Space,Str "test",Space,Str "suite",Str "."] , HorizontalRule , Header 1 [Str "Headers"]
tests/writer.opendocument view
@@ -1,1615 +1,1468 @@ <?xml version="1.0" encoding="utf-8" ?>--<office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" office:version="1.0">-  <office:scripts />-  <office:font-face-decls>-    <style:font-face style:name="&amp;apos;Lucida Sans Unicode&amp;apos;" svg:font-family="Lucida Sans Unicode" />-    <style:font-face style:name="&amp;apos;Tahoma&amp;apos;" svg:font-family="Tahoma" />-    <style:font-face style:name="&amp;apos;Times New Roman&amp;apos;" svg:font-family="Times New Roman" />-  </office:font-face-decls>-  <office:automatic-styles>-    <text:list-style style:name="L1">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L2">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L3">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L4">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L5">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L6">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L7">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L8">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L9">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L10">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L11">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L12">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L13">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L14">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L15">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L16">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L17">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L18">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L19">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L20">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L21">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L22">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="2" style:num-prefix="(" style:num-suffix=")">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-      <text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-format="i" text:start-value="4" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-      <text:list-level-style-number text:level="3" text:style-name="Numbering_20_Symbols" style:num-format="A" text:start-value="1" style:num-prefix="(" style:num-suffix=")">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L23">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="A" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-      <text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-format="I" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-      <text:list-level-style-number text:level="3" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="6" style:num-prefix="(" style:num-suffix=")">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-      <text:list-level-style-number text:level="4" text:style-name="Numbering_20_Symbols" style:num-format="a" text:start-value="3" style:num-suffix=")">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L24">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-      <text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L25">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <text:list-style style:name="L26">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L27">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L28">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L29">-      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">-        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">-        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">-        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />-      </text:list-level-style-bullet>-    </text:list-style>-    <text:list-style style:name="L30">-      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">-        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />-      </text:list-level-style-number>-    </text:list-style>-    <style:style style:name="T1" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T2" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T3" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T4" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T5" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T6" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T7" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T8" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T9" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T10" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T11" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T12" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T13" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T14" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T15" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T16" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T17" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T18" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T19" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T20" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T21" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T22" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T23" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T24" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T25" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T26" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T27" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T28" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T29" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T30" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T31" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T32" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T33" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T34" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T35" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T36" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T37" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T38" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T39" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>-    <style:style style:name="T40" style:family="text"><style:text-properties style:text-line-through-style="solid" /></style:style>-    <style:style style:name="T41" style:family="text"><style:text-properties style:text-line-through-style="solid" /></style:style>-    <style:style style:name="T42" style:family="text"><style:text-properties style:text-line-through-style="solid" /></style:style>-    <style:style style:name="T43" style:family="text"><style:text-properties style:text-line-through-style="solid" /></style:style>-    <style:style style:name="T44" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" style:text-line-through-style="solid" /></style:style>-    <style:style style:name="T45" style:family="text"><style:text-properties style:text-line-through-style="solid" /></style:style>-    <style:style style:name="T46" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>-    <style:style style:name="T47" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" style:text-position="super 58%" /></style:style>-    <style:style style:name="T48" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>-    <style:style style:name="T49" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>-    <style:style style:name="T50" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>-    <style:style style:name="T51" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>-    <style:style style:name="T52" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>-    <style:style style:name="T53" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>-    <style:style style:name="T54" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>-    <style:style style:name="T55" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>-    <style:style style:name="T56" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>-    <style:style style:name="T57" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>-    <style:style style:name="T58" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T59" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T60" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T61" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T62" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T63" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T64" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T65" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" style:text-position="sub 58%" /></style:style>-    <style:style style:name="T66" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>-    <style:style style:name="T67" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>-    <style:style style:name="T68" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T69" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T70" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T71" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T72" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T73" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T74" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T75" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>-    <style:style style:name="T76" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T77" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T78" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T79" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T80" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T81" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T82" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T83" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T84" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="T85" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>-    <style:style style:name="P1" style:family="paragraph" style:parent-style-name="Quotations">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P2" style:family="paragraph" style:parent-style-name="Quotations">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P3" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P4" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P5" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P6" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L1">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P7" style:family="paragraph" style:parent-style-name="Quotations">-      <style:paragraph-properties fo:margin-left="1.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P8" style:family="paragraph" style:parent-style-name="Quotations">-      <style:paragraph-properties fo:margin-left="1.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P9" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P10" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P11" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P12" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P13" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P14" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P15" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P16" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P17" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P18" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P19" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L2">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P20" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L3">-    </style:style>-    <style:style style:name="P21" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L4">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P22" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L5">-    </style:style>-    <style:style style:name="P23" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L6">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P24" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L7">-    </style:style>-    <style:style style:name="P25" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L8">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P26" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L9">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P27" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L10">-    </style:style>-    <style:style style:name="P28" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L11">-    </style:style>-    <style:style style:name="P29" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L12">-    </style:style>-    <style:style style:name="P30" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L13">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P31" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L14">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P32" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L15">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P33" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L16">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P34" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L17">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P35" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L18">-    </style:style>-    <style:style style:name="P36" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L19">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P37" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L20">-    </style:style>-    <style:style style:name="P38" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L21">-    </style:style>-    <style:style style:name="P39" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L22">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P40" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L23">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P41" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L24">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P42" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P43" style:family="paragraph" style:parent-style-name="Quotations">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P44" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L25">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P45" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P46" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P47" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P48" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P49" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P50" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P51" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L26">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P52" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L27">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P53" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L28">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P54" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P55" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L29">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-    <style:style style:name="P56" style:family="paragraph" style:parent-style-name="Quotations">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P57" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P58" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">-    </style:style>-    <style:style style:name="P59" style:family="paragraph" style:parent-style-name="Quotations">-      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />-    </style:style>-    <style:style style:name="P60" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L30">-      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />-    </style:style>-  </office:automatic-styles>-  <office:body>-    <office:text>-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Pandoc-                                                                    Test Suite</text:h>-      <text:p text:style-name="Author">John MacFarlane</text:p>-      <text:p text:style-name="Author"> Anonymous</text:p>-      <text:p text:style-name="Date">July 17, 2006</text:p>-      <text:p text:style-name="Text_20_body">This is a set of tests for-                                             pandoc. Most of them are adapted from John-                                             Gruber&#8217;s markdown test suite.</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Headers</text:h>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Level-                                                                    2 with an-                                                                    <text:a xlink:type="simple" xlink:href="/url" office:name=""><text:span text:style-name="Definition">embedded link</text:span></text:a></text:h>-      <text:h text:style-name="Heading_20_3" text:outline-level="3">Level-                                                                    3 with-                                                                    <text:span text:style-name="T1">emphasis</text:span></text:h>-      <text:h text:style-name="Heading_20_4" text:outline-level="4">Level-                                                                    4</text:h>-      <text:h text:style-name="Heading_20_5" text:outline-level="5">Level-                                                                    5</text:h>-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Level-                                                                    1</text:h>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Level-                                                                    2 with-                                                                    <text:span text:style-name="T2">emphasis</text:span></text:h>-      <text:h text:style-name="Heading_20_3" text:outline-level="3">Level-                                                                    3</text:h>-      <text:p text:style-name="Text_20_body">with no blank line</text:p>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Level-                                                                    2</text:h>-      <text:p text:style-name="Text_20_body">with no blank line</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Paragraphs</text:h>-      <text:p text:style-name="Text_20_body">Here&#8217;s a regular-                                             paragraph.</text:p>-      <text:p text:style-name="Text_20_body">In Markdown 1.0.0 and-                                             earlier. Version 8. This line turns into a list item.-                                             Because a hard-wrapped line in the middle of a-                                             paragraph looked like a list item.</text:p>-      <text:p text:style-name="Text_20_body">Here&#8217;s one with a-                                             bullet. * criminey.</text:p>-      <text:p text:style-name="Text_20_body">There should be a hard line-                                             break<text:line-break />here.</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Block-                                                                    Quotes</text:h>-      <text:p text:style-name="Text_20_body">E-mail style:</text:p>-      <text:p text:style-name="P1">This is a block quote. It is pretty short.</text:p>-      <text:p text:style-name="P2">Code in a block quote:</text:p>-      <text:p text:style-name="P3">sub status {</text:p>-      <text:p text:style-name="P4"><text:s text:c="4" />print &quot;working&quot;;</text:p>-      <text:p text:style-name="P5">}</text:p>-      <text:p text:style-name="P2">A list:</text:p>-      <text:list text:style-name="L1">-        <text:list-item>-          <text:p text:style-name="P6">item one</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P6">item two</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="P2">Nested block quotes:</text:p>-      <text:p text:style-name="P7">nested</text:p>-      <text:p text:style-name="P8">nested</text:p>-      <text:p text:style-name="Text_20_body">This should not be a block-                                             quote: 2 &gt; 1.</text:p>-      <text:p text:style-name="Text_20_body">And a following-                                             paragraph.</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Code-                                                                    Blocks</text:h>-      <text:p text:style-name="Text_20_body">Code:</text:p>-      <text:p text:style-name="P9">---- (should be four hyphens)</text:p>-      <text:p text:style-name="P10"></text:p>-      <text:p text:style-name="P11">sub status {</text:p>-      <text:p text:style-name="P12"><text:s text:c="4" />print &quot;working&quot;;</text:p>-      <text:p text:style-name="P13">}</text:p>-      <text:p text:style-name="P14"></text:p>-      <text:p text:style-name="P15">this code block is indented by one tab</text:p>-      <text:p text:style-name="Text_20_body">And:</text:p>-      <text:p text:style-name="P16"><text:s text:c="4" />this code block is indented by two tabs</text:p>-      <text:p text:style-name="P17"></text:p>-      <text:p text:style-name="P18">These should not be escaped: <text:s text:c="1" />\$ \\ \&gt; \[ \{</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Lists</text:h>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Unordered</text:h>-      <text:p text:style-name="Text_20_body">Asterisks tight:</text:p>-      <text:list text:style-name="L2">-        <text:list-item>-          <text:p text:style-name="P19">asterisk 1</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P19">asterisk 2</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P19">asterisk 3</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Asterisks loose:</text:p>-      <text:list text:style-name="L3">-        <text:list-item>-          <text:p text:style-name="P20">asterisk 1</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P20">asterisk 2</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P20">asterisk 3</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Pluses tight:</text:p>-      <text:list text:style-name="L4">-        <text:list-item>-          <text:p text:style-name="P21">Plus 1</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P21">Plus 2</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P21">Plus 3</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Pluses loose:</text:p>-      <text:list text:style-name="L5">-        <text:list-item>-          <text:p text:style-name="P22">Plus 1</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P22">Plus 2</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P22">Plus 3</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Minuses tight:</text:p>-      <text:list text:style-name="L6">-        <text:list-item>-          <text:p text:style-name="P23">Minus 1</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P23">Minus 2</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P23">Minus 3</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Minuses loose:</text:p>-      <text:list text:style-name="L7">-        <text:list-item>-          <text:p text:style-name="P24">Minus 1</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P24">Minus 2</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P24">Minus 3</text:p>-        </text:list-item>-      </text:list>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Ordered</text:h>-      <text:p text:style-name="Text_20_body">Tight:</text:p>-      <text:list text:style-name="L8">-        <text:list-item>-          <text:p text:style-name="P25">First</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P25">Second</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P25">Third</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">and:</text:p>-      <text:list text:style-name="L9">-        <text:list-item>-          <text:p text:style-name="P26">One</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P26">Two</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P26">Three</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Loose using tabs:</text:p>-      <text:list text:style-name="L10">-        <text:list-item>-          <text:p text:style-name="P27">First</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P27">Second</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P27">Third</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">and using spaces:</text:p>-      <text:list text:style-name="L11">-        <text:list-item>-          <text:p text:style-name="P28">One</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P28">Two</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P28">Three</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Multiple-                                             paragraphs:</text:p>-      <text:list text:style-name="L12">-        <text:list-item>-          <text:p text:style-name="P29">Item 1, graf one.</text:p>-          <text:p text:style-name="P29">Item 1. graf two. The quick brown fox jumped over the lazy dog&#8217;s back.</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P29">Item 2.</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P29">Item 3.</text:p>-        </text:list-item>-      </text:list>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Nested</text:h>-      <text:list text:style-name="L13">-        <text:list-item>-          <text:p text:style-name="P30">Tab</text:p>-          <text:list text:style-name="L14">-            <text:list-item>-              <text:p text:style-name="P31">Tab</text:p>-              <text:list text:style-name="L15">-                <text:list-item>-                  <text:p text:style-name="P32">Tab</text:p>-                </text:list-item>-              </text:list>-            </text:list-item>-          </text:list>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Here&#8217;s-                                             another:</text:p>-      <text:list text:style-name="L16">-        <text:list-item>-          <text:p text:style-name="P33">First</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P33">Second:</text:p>-          <text:list text:style-name="L17">-            <text:list-item>-              <text:p text:style-name="P34">Fee</text:p>-            </text:list-item>-            <text:list-item>-              <text:p text:style-name="P34">Fie</text:p>-            </text:list-item>-            <text:list-item>-              <text:p text:style-name="P34">Foe</text:p>-            </text:list-item>-          </text:list>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P33">Third</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Same thing but with-                                             paragraphs:</text:p>-      <text:list text:style-name="L18">-        <text:list-item>-          <text:p text:style-name="P35">First</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P35">Second:</text:p>-          <text:list text:style-name="L19">-            <text:list-item>-              <text:p text:style-name="P36">Fee</text:p>-            </text:list-item>-            <text:list-item>-              <text:p text:style-name="P36">Fie</text:p>-            </text:list-item>-            <text:list-item>-              <text:p text:style-name="P36">Foe</text:p>-            </text:list-item>-          </text:list>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P35">Third</text:p>-        </text:list-item>-      </text:list>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Tabs-                                                                    and spaces</text:h>-      <text:list text:style-name="L20">-        <text:list-item>-          <text:p text:style-name="P37">this is a list item indented with tabs</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P37">this is a list item indented with spaces</text:p>-          <text:list text:style-name="L21">-            <text:list-item>-              <text:p text:style-name="P38">this is an example list item indented with tabs</text:p>-            </text:list-item>-            <text:list-item>-              <text:p text:style-name="P38">this is an example list item indented with spaces</text:p>-            </text:list-item>-          </text:list>-        </text:list-item>-      </text:list>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Fancy-                                                                    list markers</text:h>-      <text:list text:style-name="L22">-        <text:list-item>-          <text:p text:style-name="P39">begins with 2</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P39">and now 3</text:p>-          <text:p text:style-name="P39">with a continuation</text:p>-          <text:list>-            <text:list-item>-              <text:p text:style-name="P39">sublist with roman numerals, starting with 4</text:p>-            </text:list-item>-            <text:list-item>-              <text:p text:style-name="P39">more items</text:p>-              <text:list>-                <text:list-item>-                  <text:p text:style-name="P39">a subsublist</text:p>-                </text:list-item>-                <text:list-item>-                  <text:p text:style-name="P39">a subsublist</text:p>-                </text:list-item>-              </text:list>-            </text:list-item>-          </text:list>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Nesting:</text:p>-      <text:list text:style-name="L23">-        <text:list-item>-          <text:p text:style-name="P40">Upper Alpha</text:p>-          <text:list>-            <text:list-item>-              <text:p text:style-name="P40">Upper Roman.</text:p>-              <text:list>-                <text:list-item>-                  <text:p text:style-name="P40">Decimal start with 6</text:p>-                  <text:list>-                    <text:list-item>-                      <text:p text:style-name="P40">Lower alpha with paren</text:p>-                    </text:list-item>-                  </text:list>-                </text:list-item>-              </text:list>-            </text:list-item>-          </text:list>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Autonumbering:</text:p>-      <text:list text:style-name="L24">-        <text:list-item>-          <text:p text:style-name="P41">Autonumber.</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P41">More.</text:p>-          <text:list>-            <text:list-item>-              <text:p text:style-name="P41">Nested.</text:p>-            </text:list-item>-          </text:list>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Should not be a list-                                             item:</text:p>-      <text:p text:style-name="Text_20_body">M.A.&#160;2007</text:p>-      <text:p text:style-name="Text_20_body">B. Williams</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Definition-                                                                    Lists</text:h>-      <text:p text:style-name="Text_20_body">Tight using spaces:</text:p>-      <text:p text:style-name="Definition_20_Term_20_Tight">apple</text:p>-      <text:p text:style-name="Definition_20_Definition_20_Tight">red fruit</text:p>-      <text:p text:style-name="Definition_20_Term_20_Tight">orange</text:p>-      <text:p text:style-name="Definition_20_Definition_20_Tight">orange fruit</text:p>-      <text:p text:style-name="Definition_20_Term_20_Tight">banana</text:p>-      <text:p text:style-name="Definition_20_Definition_20_Tight">yellow fruit</text:p>-      <text:p text:style-name="Text_20_body">Tight using tabs:</text:p>-      <text:p text:style-name="Definition_20_Term_20_Tight">apple</text:p>-      <text:p text:style-name="Definition_20_Definition_20_Tight">red fruit</text:p>-      <text:p text:style-name="Definition_20_Term_20_Tight">orange</text:p>-      <text:p text:style-name="Definition_20_Definition_20_Tight">orange fruit</text:p>-      <text:p text:style-name="Definition_20_Term_20_Tight">banana</text:p>-      <text:p text:style-name="Definition_20_Definition_20_Tight">yellow fruit</text:p>-      <text:p text:style-name="Text_20_body">Loose:</text:p>-      <text:p text:style-name="Definition_20_Term">apple</text:p>-      <text:p text:style-name="Definition_20_Definition">red fruit</text:p>-      <text:p text:style-name="Definition_20_Term">orange</text:p>-      <text:p text:style-name="Definition_20_Definition">orange fruit</text:p>-      <text:p text:style-name="Definition_20_Term">banana</text:p>-      <text:p text:style-name="Definition_20_Definition">yellow fruit</text:p>-      <text:p text:style-name="Text_20_body">Multiple blocks with-                                             italics:</text:p>-      <text:p text:style-name="Definition_20_Term"><text:span text:style-name="T3">apple</text:span></text:p>-      <text:p text:style-name="Definition_20_Definition">red fruit</text:p>-      <text:p text:style-name="Definition_20_Definition">contains seeds, crisp, pleasant to taste</text:p>-      <text:p text:style-name="Definition_20_Term"><text:span text:style-name="T4">orange</text:span></text:p>-      <text:p text:style-name="Definition_20_Definition">orange fruit</text:p>-      <text:p text:style-name="P42">{ orange code block }</text:p>-      <text:p text:style-name="P43">orange block quote</text:p>-      <text:p text:style-name="Text_20_body">Multiple definitions,-                                             tight:</text:p>-      <text:p text:style-name="Definition_20_Term_20_Tight">apple</text:p>-      <text:p text:style-name="Definition_20_Definition_20_Tight">red fruit</text:p>-      <text:p text:style-name="Definition_20_Definition_20_Tight">computer</text:p>-      <text:p text:style-name="Definition_20_Term_20_Tight">orange</text:p>-      <text:p text:style-name="Definition_20_Definition_20_Tight">orange fruit</text:p>-      <text:p text:style-name="Definition_20_Definition_20_Tight">bank</text:p>-      <text:p text:style-name="Text_20_body">Multiple definitions,-                                             loose:</text:p>-      <text:p text:style-name="Definition_20_Term">apple</text:p>-      <text:p text:style-name="Definition_20_Definition">red fruit</text:p>-      <text:p text:style-name="Definition_20_Definition">computer</text:p>-      <text:p text:style-name="Definition_20_Term">orange</text:p>-      <text:p text:style-name="Definition_20_Definition">orange fruit</text:p>-      <text:p text:style-name="Definition_20_Definition">bank</text:p>-      <text:p text:style-name="Text_20_body">Blank line after term,-                                             indented marker, alternate markers:</text:p>-      <text:p text:style-name="Definition_20_Term">apple</text:p>-      <text:p text:style-name="Definition_20_Definition">red fruit</text:p>-      <text:p text:style-name="Definition_20_Definition">computer</text:p>-      <text:p text:style-name="Definition_20_Term">orange</text:p>-      <text:p text:style-name="Definition_20_Definition">orange fruit</text:p>-      <text:list text:style-name="L25">-        <text:list-item>-          <text:p text:style-name="P44">sublist</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P44">sublist</text:p>-        </text:list-item>-      </text:list>-      <text:h text:style-name="Heading_20_1" text:outline-level="1">HTML-                                                                    Blocks</text:h>-      <text:p text:style-name="Text_20_body">Simple block on one-                                             line:</text:p>-      <text:p text:style-name="Text_20_body">foo</text:p>-      <text:p text:style-name="Text_20_body">And nested without-                                             indentation:</text:p>-      <text:p text:style-name="Text_20_body">foo</text:p>-      <text:p text:style-name="Text_20_body">bar</text:p>-      <text:p text:style-name="Text_20_body">Interpreted markdown in a-                                             table:</text:p>-      <text:p text:style-name="Text_20_body">This is-                                             <text:span text:style-name="T5">emphasized</text:span></text:p>-      <text:p text:style-name="Text_20_body">And this is-                                             <text:span text:style-name="T6">strong</text:span></text:p>-      <text:p text:style-name="Text_20_body">Here&#8217;s a simple-                                             block:</text:p>-      <text:p text:style-name="Text_20_body">foo</text:p>-      <text:p text:style-name="Text_20_body">This should be a code block,-                                             though:</text:p>-      <text:p text:style-name="P45">&lt;div&gt;</text:p>-      <text:p text:style-name="P46"><text:s text:c="4" />foo</text:p>-      <text:p text:style-name="P47">&lt;/div&gt;</text:p>-      <text:p text:style-name="Text_20_body">As should this:</text:p>-      <text:p text:style-name="P48">&lt;div&gt;foo&lt;/div&gt;</text:p>-      <text:p text:style-name="Text_20_body">Now, nested:</text:p>-      <text:p text:style-name="Text_20_body">foo</text:p>-      <text:p text:style-name="Text_20_body">This should just be an HTML-                                             comment:</text:p>-      <text:p text:style-name="Text_20_body">Multiline:</text:p>-      <text:p text:style-name="Text_20_body">Code block:</text:p>-      <text:p text:style-name="P49">&lt;!-- Comment --&gt;</text:p>-      <text:p text:style-name="Text_20_body">Just plain comment, with-                                             trailing spaces on the line:</text:p>-      <text:p text:style-name="Text_20_body">Code:</text:p>-      <text:p text:style-name="P50">&lt;hr /&gt;</text:p>-      <text:p text:style-name="Text_20_body">Hr&#8217;s:</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Inline-                                                                    Markup</text:h>-      <text:p text:style-name="Text_20_body">This is-                                             <text:span text:style-name="T7">emphasized</text:span>,-                                             and so-                                             <text:span text:style-name="T8">is</text:span><text:span text:style-name="T9"> </text:span><text:span text:style-name="T10">this</text:span>.</text:p>-      <text:p text:style-name="Text_20_body">This is-                                             <text:span text:style-name="T11">strong</text:span>,-                                             and so-                                             <text:span text:style-name="T12">is</text:span><text:span text:style-name="T13"> </text:span><text:span text:style-name="T14">this</text:span>.</text:p>-      <text:p text:style-name="Text_20_body">An-                                             <text:a xlink:type="simple" xlink:href="/url" office:name=""><text:span text:style-name="Definition"><text:span text:style-name="T15">emphasized</text:span><text:span text:style-name="T16"> </text:span><text:span text:style-name="T17">link</text:span></text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body"><text:span text:style-name="T18">This</text:span><text:span text:style-name="T19"> </text:span><text:span text:style-name="T20">is</text:span><text:span text:style-name="T21"> </text:span><text:span text:style-name="T22">strong</text:span><text:span text:style-name="T23"> </text:span><text:span text:style-name="T24">and</text:span><text:span text:style-name="T25"> </text:span><text:span text:style-name="T26">em</text:span><text:span text:style-name="T27">.</text:span></text:p>-      <text:p text:style-name="Text_20_body">So is-                                             <text:span text:style-name="T28">this</text:span>-                                             word.</text:p>-      <text:p text:style-name="Text_20_body"><text:span text:style-name="T29">This</text:span><text:span text:style-name="T30"> </text:span><text:span text:style-name="T31">is</text:span><text:span text:style-name="T32"> </text:span><text:span text:style-name="T33">strong</text:span><text:span text:style-name="T34"> </text:span><text:span text:style-name="T35">and</text:span><text:span text:style-name="T36"> </text:span><text:span text:style-name="T37">em</text:span><text:span text:style-name="T38">.</text:span></text:p>-      <text:p text:style-name="Text_20_body">So is-                                             <text:span text:style-name="T39">this</text:span>-                                             word.</text:p>-      <text:p text:style-name="Text_20_body">This is code:-                                             <text:span text:style-name="Teletype">&gt;</text:span>,-                                             <text:span text:style-name="Teletype">$</text:span>,-                                             <text:span text:style-name="Teletype">\</text:span>,-                                             <text:span text:style-name="Teletype">\$</text:span>,-                                             <text:span text:style-name="Teletype">&lt;html&gt;</text:span>.</text:p>-      <text:p text:style-name="Text_20_body"><text:span text:style-name="T40">This</text:span><text:span text:style-name="T41"> </text:span><text:span text:style-name="T42">is</text:span><text:span text:style-name="T43"> </text:span><text:span text:style-name="T44">strikeout</text:span><text:span text:style-name="T45">.</text:span></text:p>-      <text:p text:style-name="Text_20_body">Superscripts:-                                             a<text:span text:style-name="T46">bc</text:span>d-                                             a<text:span text:style-name="T47">hello</text:span>-                                             a<text:span text:style-name="T48">hello</text:span><text:span text:style-name="T49">&#160;</text:span><text:span text:style-name="T50">there</text:span>.</text:p>-      <text:p text:style-name="Text_20_body">Subscripts:-                                             H<text:span text:style-name="T51">2</text:span>O,-                                             H<text:span text:style-name="T52">23</text:span>O,-                                             H<text:span text:style-name="T53">many</text:span><text:span text:style-name="T54">&#160;</text:span><text:span text:style-name="T55">of</text:span><text:span text:style-name="T56">&#160;</text:span><text:span text:style-name="T57">them</text:span>O.</text:p>-      <text:p text:style-name="Text_20_body">These should not be-                                             superscripts or subscripts, because of the unescaped-                                             spaces: a^b c^d, a~b c~d.</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Smart-                                                                    quotes, ellipses,-                                                                    dashes</text:h>-      <text:p text:style-name="Text_20_body">&#8220;Hello,&#8221; said-                                             the spider.-                                             &#8220;&#8216;Shelob&#8217; is my name.&#8221;</text:p>-      <text:p text:style-name="Text_20_body">&#8216;A&#8217;,-                                             &#8216;B&#8217;, and &#8216;C&#8217; are-                                             letters.</text:p>-      <text:p text:style-name="Text_20_body">&#8216;Oak,&#8217;-                                             &#8216;elm,&#8217; and &#8216;beech&#8217; are names of-                                             trees. So is &#8216;pine.&#8217;</text:p>-      <text:p text:style-name="Text_20_body">&#8216;He said, &#8220;I want to go.&#8221;&#8217;-                                             Were you alive in the 70&#8217;s?</text:p>-      <text:p text:style-name="Text_20_body">Here is some quoted-                                             &#8216;<text:span text:style-name="Teletype">code</text:span>&#8217;-                                             and a-                                             &#8220;<text:a xlink:type="simple" xlink:href="http://example.com/?foo=1&amp;bar=2" office:name=""><text:span text:style-name="Definition">quoted link</text:span></text:a>&#8221;.</text:p>-      <text:p text:style-name="Text_20_body">Some dashes: one&#8212;two-                                             &#8212; three&#8212;four &#8212; five.</text:p>-      <text:p text:style-name="Text_20_body">Dashes between numbers:-                                             5&#8211;7, 255&#8211;66, 1987&#8211;1999.</text:p>-      <text:p text:style-name="Text_20_body">Ellipses&#8230;and&#8230;and&#8230;.</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">LaTeX</text:h>-      <text:list text:style-name="L26">-        <text:list-item>-          <text:p text:style-name="P51"><text:span text:style-name="Teletype">\cite[22-23]{smith.1899}</text:span></text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P51">2+2=4</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P51"><text:span text:style-name="T58">x</text:span> ∈ <text:span text:style-name="T59">y</text:span></text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P51">α ∧ ω</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P51">223</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P51"><text:span text:style-name="T60">p</text:span>-Tree</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P51">Here&#8217;s some display math: \frac{<text:span text:style-name="T61">d</text:span>}{<text:span text:style-name="T62">dx</text:span>}<text:span text:style-name="T63">f</text:span>(<text:span text:style-name="T64">x</text:span>)=\lim<text:span text:style-name="T65">h</text:span><text:span text:style-name="T66"> → </text:span><text:span text:style-name="T67">0</text:span>\frac{<text:span text:style-name="T68">f</text:span>(<text:span text:style-name="T69">x</text:span>+<text:span text:style-name="T70">h</text:span>)-<text:span text:style-name="T71">f</text:span>(<text:span text:style-name="T72">x</text:span>)}{<text:span text:style-name="T73">h</text:span>}</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P51">Here&#8217;s one that has a line break in it: α+ω × <text:span text:style-name="T74">x</text:span><text:span text:style-name="T75">2</text:span>.</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">These shouldn&#8217;t be-                                             math:</text:p>-      <text:list text:style-name="L27">-        <text:list-item>-          <text:p text:style-name="P52">To get the famous equation, write <text:span text:style-name="Teletype">$e = mc^2$</text:span>.</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P52">$22,000 is a <text:span text:style-name="T76">lot</text:span> of money. So is $34,000. (It worked if &#8220;lot&#8221; is emphasized.)</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P52">Shoes ($20) and socks ($5).</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P52">Escaped <text:span text:style-name="Teletype">$</text:span>: $73 <text:span text:style-name="T77">this</text:span><text:span text:style-name="T78"> </text:span><text:span text:style-name="T79">should</text:span><text:span text:style-name="T80"> </text:span><text:span text:style-name="T81">be</text:span><text:span text:style-name="T82"> </text:span><text:span text:style-name="T83">emphasized</text:span> 23$.</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">Here&#8217;s a LaTeX-                                             table:</text:p>-      <text:p text:style-name="Text_20_body"><text:span text:style-name="Teletype">\begin{tabular}{|l|l|}\hline-Animal &amp; Number \\ \hline-Dog <text:s text:c="3" />&amp; 2 <text:s text:c="5" />\\-Cat <text:s text:c="3" />&amp; 1 <text:s text:c="5" />\\ \hline-\end{tabular}</text:span></text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Special-                                                                    Characters</text:h>-      <text:p text:style-name="Text_20_body">Here is some-                                             unicode:</text:p>-      <text:list text:style-name="L28">-        <text:list-item>-          <text:p text:style-name="P53">I hat: Î</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P53">o umlaut: ö</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P53">section: §</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P53">set membership: ∈</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P53">copyright: ©</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">AT&amp;T has an ampersand in-                                             their name.</text:p>-      <text:p text:style-name="Text_20_body">AT&amp;T is another way to-                                             write it.</text:p>-      <text:p text:style-name="Text_20_body">This &amp; that.</text:p>-      <text:p text:style-name="Text_20_body">4 &lt; 5.</text:p>-      <text:p text:style-name="Text_20_body">6 &gt; 5.</text:p>-      <text:p text:style-name="Text_20_body">Backslash: \</text:p>-      <text:p text:style-name="Text_20_body">Backtick: `</text:p>-      <text:p text:style-name="Text_20_body">Asterisk: *</text:p>-      <text:p text:style-name="Text_20_body">Underscore: _</text:p>-      <text:p text:style-name="Text_20_body">Left brace: {</text:p>-      <text:p text:style-name="Text_20_body">Right brace: }</text:p>-      <text:p text:style-name="Text_20_body">Left bracket: [</text:p>-      <text:p text:style-name="Text_20_body">Right bracket: ]</text:p>-      <text:p text:style-name="Text_20_body">Left paren: (</text:p>-      <text:p text:style-name="Text_20_body">Right paren: )</text:p>-      <text:p text:style-name="Text_20_body">Greater-than: &gt;</text:p>-      <text:p text:style-name="Text_20_body">Hash: #</text:p>-      <text:p text:style-name="Text_20_body">Period: .</text:p>-      <text:p text:style-name="Text_20_body">Bang: !</text:p>-      <text:p text:style-name="Text_20_body">Plus: +</text:p>-      <text:p text:style-name="Text_20_body">Minus: -</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Links</text:h>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Explicit</text:h>-      <text:p text:style-name="Text_20_body">Just a-                                             <text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">URL</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name="title"><text:span text:style-name="Definition">URL and title</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name="title preceded by two spaces"><text:span text:style-name="Definition">URL and title</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name="title preceded by a tab"><text:span text:style-name="Definition">URL and title</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name="title with &quot;quotes&quot; in it"><text:span text:style-name="Definition">URL and title</text:span></text:a></text:p>-      <text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name="title with single quotes"><text:span text:style-name="Definition">URL and title</text:span></text:a></text:p>-      <text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/with_underscore" office:name=""><text:span text:style-name="Definition">with_underscore</text:span></text:a></text:p>-      <text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="mailto:nobody@nowhere.net" office:name=""><text:span text:style-name="Definition">Email link</text:span></text:a></text:p>-      <text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="" office:name=""><text:span text:style-name="Definition">Empty</text:span></text:a>.</text:p>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Reference</text:h>-      <text:p text:style-name="Text_20_body">Foo-                                             <text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">bar</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body">Foo-                                             <text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">bar</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body">Foo-                                             <text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">bar</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body">With-                                             <text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">embedded [brackets]</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">b</text:span></text:a>-                                             by itself should be a link.</text:p>-      <text:p text:style-name="Text_20_body">Indented-                                             <text:a xlink:type="simple" xlink:href="/url" office:name=""><text:span text:style-name="Definition">once</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body">Indented-                                             <text:a xlink:type="simple" xlink:href="/url" office:name=""><text:span text:style-name="Definition">twice</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body">Indented-                                             <text:a xlink:type="simple" xlink:href="/url" office:name=""><text:span text:style-name="Definition">thrice</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body">This should [not][] be a-                                             link.</text:p>-      <text:p text:style-name="P54">[not]: /url</text:p>-      <text:p text:style-name="Text_20_body">Foo-                                             <text:a xlink:type="simple" xlink:href="/url/" office:name="Title with &quot;quotes&quot; inside"><text:span text:style-name="Definition">bar</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body">Foo-                                             <text:a xlink:type="simple" xlink:href="/url/" office:name="Title with &quot;quote&quot; inside"><text:span text:style-name="Definition">biz</text:span></text:a>.</text:p>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">With-                                                                    ampersands</text:h>-      <text:p text:style-name="Text_20_body">Here&#8217;s a-                                             <text:a xlink:type="simple" xlink:href="http://example.com/?foo=1&amp;bar=2" office:name=""><text:span text:style-name="Definition">link with an ampersand in the URL</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body">Here&#8217;s a link with an-                                             amersand in the link text:-                                             <text:a xlink:type="simple" xlink:href="http://att.com/" office:name="AT&amp;T"><text:span text:style-name="Definition">AT&amp;T</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body">Here&#8217;s an-                                             <text:a xlink:type="simple" xlink:href="/script?foo=1&amp;bar=2" office:name=""><text:span text:style-name="Definition">inline link</text:span></text:a>.</text:p>-      <text:p text:style-name="Text_20_body">Here&#8217;s an-                                             <text:a xlink:type="simple" xlink:href="/script?foo=1&amp;bar=2" office:name=""><text:span text:style-name="Definition">inline link in pointy braces</text:span></text:a>.</text:p>-      <text:h text:style-name="Heading_20_2" text:outline-level="2">Autolinks</text:h>-      <text:p text:style-name="Text_20_body">With an ampersand:-                                             <text:a xlink:type="simple" xlink:href="http://example.com/?foo=1&amp;bar=2" office:name=""><text:span text:style-name="Definition"><text:span text:style-name="Teletype">http://example.com/?foo=1&amp;bar=2</text:span></text:span></text:a></text:p>-      <text:list text:style-name="L29">-        <text:list-item>-          <text:p text:style-name="P55">In a list?</text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P55"><text:a xlink:type="simple" xlink:href="http://example.com/" office:name=""><text:span text:style-name="Definition"><text:span text:style-name="Teletype">http://example.com/</text:span></text:span></text:a></text:p>-        </text:list-item>-        <text:list-item>-          <text:p text:style-name="P55">It should.</text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">An e-mail address:-                                             <text:a xlink:type="simple" xlink:href="mailto:nobody@nowhere.net" office:name=""><text:span text:style-name="Definition"><text:span text:style-name="Teletype">nobody@nowhere.net</text:span></text:span></text:a></text:p>-      <text:p text:style-name="P56">Blockquoted: <text:a xlink:type="simple" xlink:href="http://example.com/" office:name=""><text:span text:style-name="Definition"><text:span text:style-name="Teletype">http://example.com/</text:span></text:span></text:a></text:p>-      <text:p text:style-name="Text_20_body">Auto-links should not occur-                                             here:-                                             <text:span text:style-name="Teletype">&lt;http://example.com/&gt;</text:span></text:p>-      <text:p text:style-name="P57">or here: &lt;http://example.com/&gt;</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Images</text:h>-      <text:p text:style-name="Text_20_body">From-                                             &#8220;Voyage dans la Lune&#8221; by Georges Melies-                                             (1902):</text:p>-      <text:p text:style-name="Text_20_body"><draw:frame><draw:image xlink:href="lalune.jpg" xlink:type="simple"  xlink:show="embed" xlink:actuate="onLoad" /></draw:frame></text:p>-      <text:p text:style-name="Text_20_body">Here is a movie-                                             <draw:frame><draw:image xlink:href="movie.jpg" xlink:type="simple"  xlink:show="embed" xlink:actuate="onLoad" /></draw:frame>-                                             icon.</text:p>-      <text:p text:style-name="Horizontal_20_Line" />-      <text:h text:style-name="Heading_20_1" text:outline-level="1">Footnotes</text:h>-      <text:p text:style-name="Text_20_body">Here is a footnote-                                             reference,<text:note text:id="ftn0" text:note-class="footnote"><text:note-citation>1</text:note-citation>-                                                                                                            <text:note-body><text:p text:style-name="Footnote">Here is the footnote. It can go anywhere after the footnote reference. It need not be placed at the end of the document.</text:p></text:note-body></text:note>-                                             and-                                             another.<text:note text:id="ftn1" text:note-class="footnote"><text:note-citation>2</text:note-citation>-                                                                                                          <text:note-body><text:p text:style-name="Footnote">Here&#8217;s the long note. This one contains multiple blocks.</text:p>-                                                                                                                          <text:p text:style-name="Footnote">Subsequent blocks are indented to show that they belong to the footnote (as with list items).</text:p>-                                                                                                                          <text:p text:style-name="P58"><text:s text:c="2" />{ &lt;code&gt; }</text:p>-                                                                                                                          <text:p text:style-name="Footnote">If you want, you can indent every line, but you can also be lazy and just indent the first line of each block.</text:p></text:note-body></text:note>-                                             This should-                                             <text:span text:style-name="T84">not</text:span> be a-                                             footnote reference, because it contains a space.[^my-                                             note] Here is an inline-                                             note.<text:note text:id="ftn2" text:note-class="footnote"><text:note-citation>3</text:note-citation>-                                                                                                       <text:note-body><text:p text:style-name="Footnote">This is <text:span text:style-name="T85">easier</text:span> to type. Inline notes may contain <text:a xlink:type="simple" xlink:href="http://google.com" office:name=""><text:span text:style-name="Definition">links</text:span></text:a> and <text:span text:style-name="Teletype">]</text:span> verbatim characters, as well as [bracketed text].</text:p></text:note-body></text:note></text:p>-      <text:p text:style-name="P59">Notes can go in quotes.<text:note text:id="ftn3" text:note-class="footnote"><text:note-citation>4</text:note-citation>-                                                                                                                <text:note-body><text:p text:style-name="Footnote">In quote.</text:p></text:note-body></text:note></text:p>-      <text:list text:style-name="L30">-        <text:list-item>-          <text:p text:style-name="P60">And in list items.<text:note text:id="ftn4" text:note-class="footnote"><text:note-citation>5</text:note-citation>-                                                                                                               <text:note-body><text:p text:style-name="Footnote">In list.</text:p></text:note-body></text:note></text:p>-        </text:list-item>-      </text:list>-      <text:p text:style-name="Text_20_body">This paragraph should not be-                                             part of the note, as it is not indented.</text:p>-    </office:text>-  </office:body>-  -</office:document-content>+<office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" office:version="1.0">+  <office:automatic-styles>+    <text:list-style style:name="L1">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L2">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L3">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L4">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L5">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L6">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L7">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L8">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L9">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L10">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L11">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L12">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L13">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L14">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L15">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L16">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L17">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L18">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L19">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L20">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L21">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L22">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="2" style:num-prefix="(" style:num-suffix=")">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+      <text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-format="i" text:start-value="4" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+      <text:list-level-style-number text:level="3" text:style-name="Numbering_20_Symbols" style:num-format="A" text:start-value="1" style:num-prefix="(" style:num-suffix=")">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L23">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="A" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+      <text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-format="I" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+      <text:list-level-style-number text:level="3" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="6" style:num-prefix="(" style:num-suffix=")">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+      <text:list-level-style-number text:level="4" text:style-name="Numbering_20_Symbols" style:num-format="a" text:start-value="3" style:num-suffix=")">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L24">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+      <text:list-level-style-number text:level="2" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L25">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <text:list-style style:name="L26">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L27">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L28">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L29">+      <text:list-level-style-bullet text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="0.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="0.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="1.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="1.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="1.75in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="‣">+        <style:list-level-properties text:space-before="2.0in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="⁃">+        <style:list-level-properties text:space-before="2.25in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+      <text:list-level-style-bullet text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." text:bullet-char="•">+        <style:list-level-properties text:space-before="2.5in" text:min-label-width="0.25in" />+      </text:list-level-style-bullet>+    </text:list-style>+    <text:list-style style:name="L30">+      <text:list-level-style-number text:level="1" text:style-name="Numbering_20_Symbols" style:num-format="1" text:start-value="1" style:num-suffix=".">+        <style:list-level-properties text:space-before="0.25in" text:min-label-width="0.25in" />+      </text:list-level-style-number>+    </text:list-style>+    <style:style style:name="T1" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T2" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T3" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T4" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T5" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T6" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T7" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T8" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T9" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T10" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T11" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T12" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T13" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T14" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T15" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T16" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T17" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T18" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T19" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T20" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T21" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T22" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T23" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T24" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T25" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T26" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T27" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T28" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T29" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T30" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T31" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T32" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T33" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T34" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T35" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T36" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T37" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T38" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T39" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold" /></style:style>+    <style:style style:name="T40" style:family="text"><style:text-properties style:text-line-through-style="solid" /></style:style>+    <style:style style:name="T41" style:family="text"><style:text-properties style:text-line-through-style="solid" /></style:style>+    <style:style style:name="T42" style:family="text"><style:text-properties style:text-line-through-style="solid" /></style:style>+    <style:style style:name="T43" style:family="text"><style:text-properties style:text-line-through-style="solid" /></style:style>+    <style:style style:name="T44" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" style:text-line-through-style="solid" /></style:style>+    <style:style style:name="T45" style:family="text"><style:text-properties style:text-line-through-style="solid" /></style:style>+    <style:style style:name="T46" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>+    <style:style style:name="T47" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" style:text-position="super 58%" /></style:style>+    <style:style style:name="T48" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>+    <style:style style:name="T49" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>+    <style:style style:name="T50" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>+    <style:style style:name="T51" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>+    <style:style style:name="T52" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>+    <style:style style:name="T53" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>+    <style:style style:name="T54" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>+    <style:style style:name="T55" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>+    <style:style style:name="T56" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>+    <style:style style:name="T57" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>+    <style:style style:name="T58" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T59" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T60" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T61" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T62" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T63" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T64" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T65" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" style:text-position="sub 58%" /></style:style>+    <style:style style:name="T66" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>+    <style:style style:name="T67" style:family="text"><style:text-properties style:text-position="sub 58%" /></style:style>+    <style:style style:name="T68" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T69" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T70" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T71" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T72" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T73" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T74" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T75" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>+    <style:style style:name="T76" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T77" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T78" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T79" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T80" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T81" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T82" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T83" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T84" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="T85" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic" /></style:style>+    <style:style style:name="P1" style:family="paragraph" style:parent-style-name="Quotations">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P2" style:family="paragraph" style:parent-style-name="Quotations">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P3" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P4" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P5" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P6" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L1">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P7" style:family="paragraph" style:parent-style-name="Quotations">+      <style:paragraph-properties fo:margin-left="1.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P8" style:family="paragraph" style:parent-style-name="Quotations">+      <style:paragraph-properties fo:margin-left="1.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P9" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P10" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P11" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P12" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P13" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P14" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P15" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P16" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P17" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P18" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P19" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L2">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P20" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L3">+    </style:style>+    <style:style style:name="P21" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L4">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P22" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L5">+    </style:style>+    <style:style style:name="P23" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L6">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P24" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L7">+    </style:style>+    <style:style style:name="P25" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L8">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P26" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L9">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P27" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L10">+    </style:style>+    <style:style style:name="P28" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L11">+    </style:style>+    <style:style style:name="P29" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L12">+    </style:style>+    <style:style style:name="P30" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L13">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P31" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L14">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P32" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L15">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P33" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L16">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P34" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L17">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P35" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L18">+    </style:style>+    <style:style style:name="P36" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L19">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P37" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L20">+    </style:style>+    <style:style style:name="P38" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L21">+    </style:style>+    <style:style style:name="P39" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L22">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P40" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L23">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P41" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L24">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P42" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P43" style:family="paragraph" style:parent-style-name="Quotations">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P44" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L25">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P45" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P46" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P47" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P48" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P49" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P50" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P51" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L26">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P52" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L27">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P53" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L28">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P54" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P55" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L29">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+    <style:style style:name="P56" style:family="paragraph" style:parent-style-name="Quotations">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P57" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P58" style:family="paragraph" style:parent-style-name="Preformatted_20_Text">+    </style:style>+    <style:style style:name="P59" style:family="paragraph" style:parent-style-name="Quotations">+      <style:paragraph-properties fo:margin-left="0.5in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" />+    </style:style>+    <style:style style:name="P60" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L30">+      <style:paragraph-properties fo:margin-left="0.0in" fo:margin-right="0in" fo:text-indent="0in" style:auto-text-indent="false" fo:margin-top="0in" fo:margin-bottom="0in" />+    </style:style>+  </office:automatic-styles>+<office:body>+<office:text>+<text:h text:style-name="Heading_20_1" text:outline-level="1">Pandoc Test Suite</text:h>+<text:p text:style-name="Author">John MacFarlane</text:p>+<text:p text:style-name="Author">Anonymous</text:p>+<text:p text:style-name="Date">July 17, 2006</text:p>+<text:p text:style-name="Text_20_body">This is a set of tests for pandoc. Most of them are adapted from John Gruber&#8217;s markdown test suite.</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Headers</text:h>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Level 2 with an <text:a xlink:type="simple" xlink:href="/url" office:name=""><text:span text:style-name="Definition">embedded link</text:span></text:a></text:h>+<text:h text:style-name="Heading_20_3" text:outline-level="3">Level 3 with <text:span text:style-name="T1">emphasis</text:span></text:h>+<text:h text:style-name="Heading_20_4" text:outline-level="4">Level 4</text:h>+<text:h text:style-name="Heading_20_5" text:outline-level="5">Level 5</text:h>+<text:h text:style-name="Heading_20_1" text:outline-level="1">Level 1</text:h>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Level 2 with <text:span text:style-name="T2">emphasis</text:span></text:h>+<text:h text:style-name="Heading_20_3" text:outline-level="3">Level 3</text:h>+<text:p text:style-name="Text_20_body">with no blank line</text:p>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Level 2</text:h>+<text:p text:style-name="Text_20_body">with no blank line</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Paragraphs</text:h>+<text:p text:style-name="Text_20_body">Here&#8217;s a regular paragraph.</text:p>+<text:p text:style-name="Text_20_body">In Markdown 1.0.0 and earlier. Version 8. This line turns into a list item. Because a hard-wrapped line in the middle of a paragraph looked like a list item.</text:p>+<text:p text:style-name="Text_20_body">Here&#8217;s one with a bullet. * criminey.</text:p>+<text:p text:style-name="Text_20_body">There should be a hard line break<text:line-break />here.</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Block Quotes</text:h>+<text:p text:style-name="Text_20_body">E-mail style:</text:p>+<text:p text:style-name="P1">This is a block quote. It is pretty short.</text:p>+<text:p text:style-name="P2">Code in a block quote:</text:p>+<text:p text:style-name="P3">sub status {</text:p>+<text:p text:style-name="P4"><text:s text:c="4" />print &quot;working&quot;;</text:p>+<text:p text:style-name="P5">}</text:p>+<text:p text:style-name="P2">A list:</text:p>+<text:list text:style-name="L1">+  <text:list-item>+    <text:p text:style-name="P6">item one</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P6">item two</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="P2">Nested block quotes:</text:p>+<text:p text:style-name="P7">nested</text:p>+<text:p text:style-name="P8">nested</text:p>+<text:p text:style-name="Text_20_body">This should not be a block quote: 2 &gt; 1.</text:p>+<text:p text:style-name="Text_20_body">And a following paragraph.</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Code Blocks</text:h>+<text:p text:style-name="Text_20_body">Code:</text:p>+<text:p text:style-name="P9">---- (should be four hyphens)</text:p>+<text:p text:style-name="P10"></text:p>+<text:p text:style-name="P11">sub status {</text:p>+<text:p text:style-name="P12"><text:s text:c="4" />print &quot;working&quot;;</text:p>+<text:p text:style-name="P13">}</text:p>+<text:p text:style-name="P14"></text:p>+<text:p text:style-name="P15">this code block is indented by one tab</text:p>+<text:p text:style-name="Text_20_body">And:</text:p>+<text:p text:style-name="P16"><text:s text:c="4" />this code block is indented by two tabs</text:p>+<text:p text:style-name="P17"></text:p>+<text:p text:style-name="P18">These should not be escaped: <text:s text:c="1" />\$ \\ \&gt; \[ \{</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Lists</text:h>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Unordered</text:h>+<text:p text:style-name="Text_20_body">Asterisks tight:</text:p>+<text:list text:style-name="L2">+  <text:list-item>+    <text:p text:style-name="P19">asterisk 1</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P19">asterisk 2</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P19">asterisk 3</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Asterisks loose:</text:p>+<text:list text:style-name="L3">+  <text:list-item>+    <text:p text:style-name="P20">asterisk 1</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P20">asterisk 2</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P20">asterisk 3</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Pluses tight:</text:p>+<text:list text:style-name="L4">+  <text:list-item>+    <text:p text:style-name="P21">Plus 1</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P21">Plus 2</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P21">Plus 3</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Pluses loose:</text:p>+<text:list text:style-name="L5">+  <text:list-item>+    <text:p text:style-name="P22">Plus 1</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P22">Plus 2</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P22">Plus 3</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Minuses tight:</text:p>+<text:list text:style-name="L6">+  <text:list-item>+    <text:p text:style-name="P23">Minus 1</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P23">Minus 2</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P23">Minus 3</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Minuses loose:</text:p>+<text:list text:style-name="L7">+  <text:list-item>+    <text:p text:style-name="P24">Minus 1</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P24">Minus 2</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P24">Minus 3</text:p>+  </text:list-item>+</text:list>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Ordered</text:h>+<text:p text:style-name="Text_20_body">Tight:</text:p>+<text:list text:style-name="L8">+  <text:list-item>+    <text:p text:style-name="P25">First</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P25">Second</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P25">Third</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">and:</text:p>+<text:list text:style-name="L9">+  <text:list-item>+    <text:p text:style-name="P26">One</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P26">Two</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P26">Three</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Loose using tabs:</text:p>+<text:list text:style-name="L10">+  <text:list-item>+    <text:p text:style-name="P27">First</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P27">Second</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P27">Third</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">and using spaces:</text:p>+<text:list text:style-name="L11">+  <text:list-item>+    <text:p text:style-name="P28">One</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P28">Two</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P28">Three</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Multiple paragraphs:</text:p>+<text:list text:style-name="L12">+  <text:list-item>+    <text:p text:style-name="P29">Item 1, graf one.</text:p>+    <text:p text:style-name="P29">Item 1. graf two. The quick brown fox jumped over the lazy dog&#8217;s back.</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P29">Item 2.</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P29">Item 3.</text:p>+  </text:list-item>+</text:list>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Nested</text:h>+<text:list text:style-name="L13">+  <text:list-item>+    <text:p text:style-name="P30">Tab</text:p><text:list text:style-name="L14">+                                                <text:list-item>+                                                  <text:p text:style-name="P31">Tab</text:p><text:list text:style-name="L15">+                                                                                              <text:list-item>+                                                                                                <text:p text:style-name="P32">Tab</text:p>+                                                                                              </text:list-item>+                                                                                            </text:list>+                                                </text:list-item>+                                              </text:list>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Here&#8217;s another:</text:p>+<text:list text:style-name="L16">+  <text:list-item>+    <text:p text:style-name="P33">First</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P33">Second:</text:p>+    <text:list text:style-name="L17">+      <text:list-item>+        <text:p text:style-name="P34">Fee</text:p>+      </text:list-item>+      <text:list-item>+        <text:p text:style-name="P34">Fie</text:p>+      </text:list-item>+      <text:list-item>+        <text:p text:style-name="P34">Foe</text:p>+      </text:list-item>+    </text:list>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P33">Third</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Same thing but with paragraphs:</text:p>+<text:list text:style-name="L18">+  <text:list-item>+    <text:p text:style-name="P35">First</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P35">Second:</text:p>+    <text:list text:style-name="L19">+      <text:list-item>+        <text:p text:style-name="P36">Fee</text:p>+      </text:list-item>+      <text:list-item>+        <text:p text:style-name="P36">Fie</text:p>+      </text:list-item>+      <text:list-item>+        <text:p text:style-name="P36">Foe</text:p>+      </text:list-item>+    </text:list>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P35">Third</text:p>+  </text:list-item>+</text:list>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Tabs and spaces</text:h>+<text:list text:style-name="L20">+  <text:list-item>+    <text:p text:style-name="P37">this is a list item indented with tabs</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P37">this is a list item indented with spaces</text:p><text:list text:style-name="L21">+                                                                                     <text:list-item>+                                                                                       <text:p text:style-name="P38">this is an example list item indented with tabs</text:p>+                                                                                     </text:list-item>+                                                                                     <text:list-item>+                                                                                       <text:p text:style-name="P38">this is an example list item indented with spaces</text:p>+                                                                                     </text:list-item>+                                                                                   </text:list>+  </text:list-item>+</text:list>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Fancy list markers</text:h>+<text:list text:style-name="L22">+  <text:list-item>+    <text:p text:style-name="P39">begins with 2</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P39">and now 3</text:p>+    <text:p text:style-name="P39">with a continuation</text:p>+    <text:list>+      <text:list-item>+        <text:p text:style-name="P39">sublist with roman numerals, starting with 4</text:p>+      </text:list-item>+      <text:list-item>+        <text:p text:style-name="P39">more items</text:p>+        <text:list>+          <text:list-item>+            <text:p text:style-name="P39">a subsublist</text:p>+          </text:list-item>+          <text:list-item>+            <text:p text:style-name="P39">a subsublist</text:p>+          </text:list-item>+        </text:list>+      </text:list-item>+    </text:list>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Nesting:</text:p>+<text:list text:style-name="L23">+  <text:list-item>+    <text:p text:style-name="P40">Upper Alpha</text:p>+    <text:list>+      <text:list-item>+        <text:p text:style-name="P40">Upper Roman.</text:p>+        <text:list>+          <text:list-item>+            <text:p text:style-name="P40">Decimal start with 6</text:p>+            <text:list>+              <text:list-item>+                <text:p text:style-name="P40">Lower alpha with paren</text:p>+              </text:list-item>+            </text:list>+          </text:list-item>+        </text:list>+      </text:list-item>+    </text:list>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Autonumbering:</text:p>+<text:list text:style-name="L24">+  <text:list-item>+    <text:p text:style-name="P41">Autonumber.</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P41">More.</text:p>+    <text:list>+      <text:list-item>+        <text:p text:style-name="P41">Nested.</text:p>+      </text:list-item>+    </text:list>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Should not be a list item:</text:p>+<text:p text:style-name="Text_20_body">M.A. 2007</text:p>+<text:p text:style-name="Text_20_body">B. Williams</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Definition Lists</text:h>+<text:p text:style-name="Text_20_body">Tight using spaces:</text:p>+<text:p text:style-name="Definition_20_Term_20_Tight">apple</text:p>+<text:p text:style-name="Definition_20_Definition_20_Tight">red fruit</text:p>+<text:p text:style-name="Definition_20_Term_20_Tight">orange</text:p>+<text:p text:style-name="Definition_20_Definition_20_Tight">orange fruit</text:p>+<text:p text:style-name="Definition_20_Term_20_Tight">banana</text:p>+<text:p text:style-name="Definition_20_Definition_20_Tight">yellow fruit</text:p>+<text:p text:style-name="Text_20_body">Tight using tabs:</text:p>+<text:p text:style-name="Definition_20_Term_20_Tight">apple</text:p>+<text:p text:style-name="Definition_20_Definition_20_Tight">red fruit</text:p>+<text:p text:style-name="Definition_20_Term_20_Tight">orange</text:p>+<text:p text:style-name="Definition_20_Definition_20_Tight">orange fruit</text:p>+<text:p text:style-name="Definition_20_Term_20_Tight">banana</text:p>+<text:p text:style-name="Definition_20_Definition_20_Tight">yellow fruit</text:p>+<text:p text:style-name="Text_20_body">Loose:</text:p>+<text:p text:style-name="Definition_20_Term">apple</text:p>+<text:p text:style-name="Definition_20_Definition">red fruit</text:p>+<text:p text:style-name="Definition_20_Term">orange</text:p>+<text:p text:style-name="Definition_20_Definition">orange fruit</text:p>+<text:p text:style-name="Definition_20_Term">banana</text:p>+<text:p text:style-name="Definition_20_Definition">yellow fruit</text:p>+<text:p text:style-name="Text_20_body">Multiple blocks with italics:</text:p>+<text:p text:style-name="Definition_20_Term"><text:span text:style-name="T3">apple</text:span></text:p>+<text:p text:style-name="Definition_20_Definition">red fruit</text:p><text:p text:style-name="Definition_20_Definition">contains seeds, crisp, pleasant to taste</text:p>+<text:p text:style-name="Definition_20_Term"><text:span text:style-name="T4">orange</text:span></text:p>+<text:p text:style-name="Definition_20_Definition">orange fruit</text:p><text:p text:style-name="P42">{ orange code block }</text:p><text:p text:style-name="P43">orange block quote</text:p>+<text:p text:style-name="Text_20_body">Multiple definitions, tight:</text:p>+<text:p text:style-name="Definition_20_Term_20_Tight">apple</text:p>+<text:p text:style-name="Definition_20_Definition_20_Tight">red fruit</text:p>+<text:p text:style-name="Definition_20_Definition_20_Tight">computer</text:p>+<text:p text:style-name="Definition_20_Term_20_Tight">orange</text:p>+<text:p text:style-name="Definition_20_Definition_20_Tight">orange fruit</text:p>+<text:p text:style-name="Definition_20_Definition_20_Tight">bank</text:p>+<text:p text:style-name="Text_20_body">Multiple definitions, loose:</text:p>+<text:p text:style-name="Definition_20_Term">apple</text:p>+<text:p text:style-name="Definition_20_Definition">red fruit</text:p>+<text:p text:style-name="Definition_20_Definition">computer</text:p>+<text:p text:style-name="Definition_20_Term">orange</text:p>+<text:p text:style-name="Definition_20_Definition">orange fruit</text:p>+<text:p text:style-name="Definition_20_Definition">bank</text:p>+<text:p text:style-name="Text_20_body">Blank line after term, indented marker, alternate markers:</text:p>+<text:p text:style-name="Definition_20_Term">apple</text:p>+<text:p text:style-name="Definition_20_Definition">red fruit</text:p>+<text:p text:style-name="Definition_20_Definition">computer</text:p>+<text:p text:style-name="Definition_20_Term">orange</text:p>+<text:p text:style-name="Definition_20_Definition">orange fruit</text:p><text:list text:style-name="L25">+                                                                          <text:list-item>+                                                                            <text:p text:style-name="P44">sublist</text:p>+                                                                          </text:list-item>+                                                                          <text:list-item>+                                                                            <text:p text:style-name="P44">sublist</text:p>+                                                                          </text:list-item>+                                                                        </text:list>+<text:h text:style-name="Heading_20_1" text:outline-level="1">HTML Blocks</text:h>+<text:p text:style-name="Text_20_body">Simple block on one line:</text:p>+<text:p text:style-name="Text_20_body">foo</text:p>+<text:p text:style-name="Text_20_body">And nested without indentation:</text:p>+<text:p text:style-name="Text_20_body">foo</text:p>+<text:p text:style-name="Text_20_body">bar</text:p>+<text:p text:style-name="Text_20_body">Interpreted markdown in a table:</text:p>+<text:p text:style-name="Text_20_body">This is <text:span text:style-name="T5">emphasized</text:span></text:p>+<text:p text:style-name="Text_20_body">And this is <text:span text:style-name="T6">strong</text:span></text:p>+<text:p text:style-name="Text_20_body">Here&#8217;s a simple block:</text:p>+<text:p text:style-name="Text_20_body">foo</text:p>+<text:p text:style-name="Text_20_body">This should be a code block, though:</text:p>+<text:p text:style-name="P45">&lt;div&gt;</text:p>+<text:p text:style-name="P46"><text:s text:c="4" />foo</text:p>+<text:p text:style-name="P47">&lt;/div&gt;</text:p>+<text:p text:style-name="Text_20_body">As should this:</text:p>+<text:p text:style-name="P48">&lt;div&gt;foo&lt;/div&gt;</text:p>+<text:p text:style-name="Text_20_body">Now, nested:</text:p>+<text:p text:style-name="Text_20_body">foo</text:p>+<text:p text:style-name="Text_20_body">This should just be an HTML comment:</text:p>+<text:p text:style-name="Text_20_body">Multiline:</text:p>+<text:p text:style-name="Text_20_body">Code block:</text:p>+<text:p text:style-name="P49">&lt;!-- Comment --&gt;</text:p>+<text:p text:style-name="Text_20_body">Just plain comment, with trailing spaces on the line:</text:p>+<text:p text:style-name="Text_20_body">Code:</text:p>+<text:p text:style-name="P50">&lt;hr /&gt;</text:p>+<text:p text:style-name="Text_20_body">Hr&#8217;s:</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Inline Markup</text:h>+<text:p text:style-name="Text_20_body">This is <text:span text:style-name="T7">emphasized</text:span>, and so <text:span text:style-name="T8">is</text:span><text:span text:style-name="T9"> </text:span><text:span text:style-name="T10">this</text:span>.</text:p>+<text:p text:style-name="Text_20_body">This is <text:span text:style-name="T11">strong</text:span>, and so <text:span text:style-name="T12">is</text:span><text:span text:style-name="T13"> </text:span><text:span text:style-name="T14">this</text:span>.</text:p>+<text:p text:style-name="Text_20_body">An <text:a xlink:type="simple" xlink:href="/url" office:name=""><text:span text:style-name="Definition"><text:span text:style-name="T15">emphasized</text:span><text:span text:style-name="T16"> </text:span><text:span text:style-name="T17">link</text:span></text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body"><text:span text:style-name="T18">This</text:span><text:span text:style-name="T19"> </text:span><text:span text:style-name="T20">is</text:span><text:span text:style-name="T21"> </text:span><text:span text:style-name="T22">strong</text:span><text:span text:style-name="T23"> </text:span><text:span text:style-name="T24">and</text:span><text:span text:style-name="T25"> </text:span><text:span text:style-name="T26">em</text:span><text:span text:style-name="T27">.</text:span></text:p>+<text:p text:style-name="Text_20_body">So is <text:span text:style-name="T28">this</text:span> word.</text:p>+<text:p text:style-name="Text_20_body"><text:span text:style-name="T29">This</text:span><text:span text:style-name="T30"> </text:span><text:span text:style-name="T31">is</text:span><text:span text:style-name="T32"> </text:span><text:span text:style-name="T33">strong</text:span><text:span text:style-name="T34"> </text:span><text:span text:style-name="T35">and</text:span><text:span text:style-name="T36"> </text:span><text:span text:style-name="T37">em</text:span><text:span text:style-name="T38">.</text:span></text:p>+<text:p text:style-name="Text_20_body">So is <text:span text:style-name="T39">this</text:span> word.</text:p>+<text:p text:style-name="Text_20_body">This is code: <text:span text:style-name="Teletype">&gt;</text:span>, <text:span text:style-name="Teletype">$</text:span>, <text:span text:style-name="Teletype">\</text:span>, <text:span text:style-name="Teletype">\$</text:span>, <text:span text:style-name="Teletype">&lt;html&gt;</text:span>.</text:p>+<text:p text:style-name="Text_20_body"><text:span text:style-name="T40">This</text:span><text:span text:style-name="T41"> </text:span><text:span text:style-name="T42">is</text:span><text:span text:style-name="T43"> </text:span><text:span text:style-name="T44">strikeout</text:span><text:span text:style-name="T45">.</text:span></text:p>+<text:p text:style-name="Text_20_body">Superscripts: a<text:span text:style-name="T46">bc</text:span>d a<text:span text:style-name="T47">hello</text:span> a<text:span text:style-name="T48">hello</text:span><text:span text:style-name="T49"> </text:span><text:span text:style-name="T50">there</text:span>.</text:p>+<text:p text:style-name="Text_20_body">Subscripts: H<text:span text:style-name="T51">2</text:span>O, H<text:span text:style-name="T52">23</text:span>O, H<text:span text:style-name="T53">many</text:span><text:span text:style-name="T54"> </text:span><text:span text:style-name="T55">of</text:span><text:span text:style-name="T56"> </text:span><text:span text:style-name="T57">them</text:span>O.</text:p>+<text:p text:style-name="Text_20_body">These should not be superscripts or subscripts, because of the unescaped spaces: a^b c^d, a~b c~d.</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Smart quotes, ellipses, dashes</text:h>+<text:p text:style-name="Text_20_body">&#8220;Hello,&#8221; said the spider. &#8220;&#8216;Shelob&#8217; is my name.&#8221;</text:p>+<text:p text:style-name="Text_20_body">&#8216;A&#8217;, &#8216;B&#8217;, and &#8216;C&#8217; are letters.</text:p>+<text:p text:style-name="Text_20_body">&#8216;Oak,&#8217; &#8216;elm,&#8217; and &#8216;beech&#8217; are names of trees. So is &#8216;pine.&#8217;</text:p>+<text:p text:style-name="Text_20_body">&#8216;He said, &#8220;I want to go.&#8221;&#8217; Were you alive in the 70&#8217;s?</text:p>+<text:p text:style-name="Text_20_body">Here is some quoted &#8216;<text:span text:style-name="Teletype">code</text:span>&#8217; and a &#8220;<text:a xlink:type="simple" xlink:href="http://example.com/?foo=1&amp;bar=2" office:name=""><text:span text:style-name="Definition">quoted link</text:span></text:a>&#8221;.</text:p>+<text:p text:style-name="Text_20_body">Some dashes: one&#8212;two &#8212; three&#8212;four &#8212; five.</text:p>+<text:p text:style-name="Text_20_body">Dashes between numbers: 5&#8211;7, 255&#8211;66, 1987&#8211;1999.</text:p>+<text:p text:style-name="Text_20_body">Ellipses&#8230;and&#8230;and&#8230;.</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">LaTeX</text:h>+<text:list text:style-name="L26">+  <text:list-item>+    <text:p text:style-name="P51"><text:span text:style-name="Teletype">\cite[22-23]{smith.1899}</text:span></text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P51">2+2=4</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P51"><text:span text:style-name="T58">x</text:span> ∈ <text:span text:style-name="T59">y</text:span></text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P51">α ∧ ω</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P51">223</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P51"><text:span text:style-name="T60">p</text:span>-Tree</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P51">Here&#8217;s some display math: \frac{<text:span text:style-name="T61">d</text:span>}{<text:span text:style-name="T62">dx</text:span>}<text:span text:style-name="T63">f</text:span>(<text:span text:style-name="T64">x</text:span>)=\lim<text:span text:style-name="T65">h</text:span><text:span text:style-name="T66"> → </text:span><text:span text:style-name="T67">0</text:span>\frac{<text:span text:style-name="T68">f</text:span>(<text:span text:style-name="T69">x</text:span>+<text:span text:style-name="T70">h</text:span>)-<text:span text:style-name="T71">f</text:span>(<text:span text:style-name="T72">x</text:span>)}{<text:span text:style-name="T73">h</text:span>}</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P51">Here&#8217;s one that has a line break in it: α+ω × <text:span text:style-name="T74">x</text:span><text:span text:style-name="T75">2</text:span>.</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">These shouldn&#8217;t be math:</text:p>+<text:list text:style-name="L27">+  <text:list-item>+    <text:p text:style-name="P52">To get the famous equation, write <text:span text:style-name="Teletype">$e = mc^2$</text:span>.</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P52">$22,000 is a <text:span text:style-name="T76">lot</text:span> of money. So is $34,000. (It worked if &#8220;lot&#8221; is emphasized.)</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P52">Shoes ($20) and socks ($5).</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P52">Escaped <text:span text:style-name="Teletype">$</text:span>: $73 <text:span text:style-name="T77">this</text:span><text:span text:style-name="T78"> </text:span><text:span text:style-name="T79">should</text:span><text:span text:style-name="T80"> </text:span><text:span text:style-name="T81">be</text:span><text:span text:style-name="T82"> </text:span><text:span text:style-name="T83">emphasized</text:span> 23$.</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">Here&#8217;s a LaTeX table:</text:p>+<text:p text:style-name="Text_20_body"><text:span text:style-name="Teletype">\begin{tabular}{|l|l|}\hline+Animal &amp; Number \\ \hline+Dog <text:s text:c="3" />&amp; 2 <text:s text:c="5" />\\+Cat <text:s text:c="3" />&amp; 1 <text:s text:c="5" />\\ \hline+\end{tabular}</text:span></text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Special Characters</text:h>+<text:p text:style-name="Text_20_body">Here is some unicode:</text:p>+<text:list text:style-name="L28">+  <text:list-item>+    <text:p text:style-name="P53">I hat: Î</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P53">o umlaut: ö</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P53">section: §</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P53">set membership: ∈</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P53">copyright: ©</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">AT&amp;T has an ampersand in their name.</text:p>+<text:p text:style-name="Text_20_body">AT&amp;T is another way to write it.</text:p>+<text:p text:style-name="Text_20_body">This &amp; that.</text:p>+<text:p text:style-name="Text_20_body">4 &lt; 5.</text:p>+<text:p text:style-name="Text_20_body">6 &gt; 5.</text:p>+<text:p text:style-name="Text_20_body">Backslash: \</text:p>+<text:p text:style-name="Text_20_body">Backtick: `</text:p>+<text:p text:style-name="Text_20_body">Asterisk: *</text:p>+<text:p text:style-name="Text_20_body">Underscore: _</text:p>+<text:p text:style-name="Text_20_body">Left brace: {</text:p>+<text:p text:style-name="Text_20_body">Right brace: }</text:p>+<text:p text:style-name="Text_20_body">Left bracket: [</text:p>+<text:p text:style-name="Text_20_body">Right bracket: ]</text:p>+<text:p text:style-name="Text_20_body">Left paren: (</text:p>+<text:p text:style-name="Text_20_body">Right paren: )</text:p>+<text:p text:style-name="Text_20_body">Greater-than: &gt;</text:p>+<text:p text:style-name="Text_20_body">Hash: #</text:p>+<text:p text:style-name="Text_20_body">Period: .</text:p>+<text:p text:style-name="Text_20_body">Bang: !</text:p>+<text:p text:style-name="Text_20_body">Plus: +</text:p>+<text:p text:style-name="Text_20_body">Minus: -</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Links</text:h>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Explicit</text:h>+<text:p text:style-name="Text_20_body">Just a <text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">URL</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name="title"><text:span text:style-name="Definition">URL and title</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name="title preceded by two spaces"><text:span text:style-name="Definition">URL and title</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name="title preceded by a tab"><text:span text:style-name="Definition">URL and title</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name="title with &quot;quotes&quot; in it"><text:span text:style-name="Definition">URL and title</text:span></text:a></text:p>+<text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name="title with single quotes"><text:span text:style-name="Definition">URL and title</text:span></text:a></text:p>+<text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/with_underscore" office:name=""><text:span text:style-name="Definition">with_underscore</text:span></text:a></text:p>+<text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="mailto:nobody@nowhere.net" office:name=""><text:span text:style-name="Definition">Email link</text:span></text:a></text:p>+<text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="" office:name=""><text:span text:style-name="Definition">Empty</text:span></text:a>.</text:p>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Reference</text:h>+<text:p text:style-name="Text_20_body">Foo <text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">bar</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body">Foo <text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">bar</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body">Foo <text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">bar</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body">With <text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">embedded [brackets]</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body"><text:a xlink:type="simple" xlink:href="/url/" office:name=""><text:span text:style-name="Definition">b</text:span></text:a> by itself should be a link.</text:p>+<text:p text:style-name="Text_20_body">Indented <text:a xlink:type="simple" xlink:href="/url" office:name=""><text:span text:style-name="Definition">once</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body">Indented <text:a xlink:type="simple" xlink:href="/url" office:name=""><text:span text:style-name="Definition">twice</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body">Indented <text:a xlink:type="simple" xlink:href="/url" office:name=""><text:span text:style-name="Definition">thrice</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body">This should [not][] be a link.</text:p>+<text:p text:style-name="P54">[not]: /url</text:p>+<text:p text:style-name="Text_20_body">Foo <text:a xlink:type="simple" xlink:href="/url/" office:name="Title with &quot;quotes&quot; inside"><text:span text:style-name="Definition">bar</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body">Foo <text:a xlink:type="simple" xlink:href="/url/" office:name="Title with &quot;quote&quot; inside"><text:span text:style-name="Definition">biz</text:span></text:a>.</text:p>+<text:h text:style-name="Heading_20_2" text:outline-level="2">With ampersands</text:h>+<text:p text:style-name="Text_20_body">Here&#8217;s a <text:a xlink:type="simple" xlink:href="http://example.com/?foo=1&amp;bar=2" office:name=""><text:span text:style-name="Definition">link with an ampersand in the URL</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body">Here&#8217;s a link with an amersand in the link text: <text:a xlink:type="simple" xlink:href="http://att.com/" office:name="AT&amp;T"><text:span text:style-name="Definition">AT&amp;T</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body">Here&#8217;s an <text:a xlink:type="simple" xlink:href="/script?foo=1&amp;bar=2" office:name=""><text:span text:style-name="Definition">inline link</text:span></text:a>.</text:p>+<text:p text:style-name="Text_20_body">Here&#8217;s an <text:a xlink:type="simple" xlink:href="/script?foo=1&amp;bar=2" office:name=""><text:span text:style-name="Definition">inline link in pointy braces</text:span></text:a>.</text:p>+<text:h text:style-name="Heading_20_2" text:outline-level="2">Autolinks</text:h>+<text:p text:style-name="Text_20_body">With an ampersand: <text:a xlink:type="simple" xlink:href="http://example.com/?foo=1&amp;bar=2" office:name=""><text:span text:style-name="Definition"><text:span text:style-name="Teletype">http://example.com/?foo=1&amp;bar=2</text:span></text:span></text:a></text:p>+<text:list text:style-name="L29">+  <text:list-item>+    <text:p text:style-name="P55">In a list?</text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P55"><text:a xlink:type="simple" xlink:href="http://example.com/" office:name=""><text:span text:style-name="Definition"><text:span text:style-name="Teletype">http://example.com/</text:span></text:span></text:a></text:p>+  </text:list-item>+  <text:list-item>+    <text:p text:style-name="P55">It should.</text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">An e-mail address: <text:a xlink:type="simple" xlink:href="mailto:nobody@nowhere.net" office:name=""><text:span text:style-name="Definition"><text:span text:style-name="Teletype">nobody@nowhere.net</text:span></text:span></text:a></text:p>+<text:p text:style-name="P56">Blockquoted: <text:a xlink:type="simple" xlink:href="http://example.com/" office:name=""><text:span text:style-name="Definition"><text:span text:style-name="Teletype">http://example.com/</text:span></text:span></text:a></text:p>+<text:p text:style-name="Text_20_body">Auto-links should not occur here: <text:span text:style-name="Teletype">&lt;http://example.com/&gt;</text:span></text:p>+<text:p text:style-name="P57">or here: &lt;http://example.com/&gt;</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Images</text:h>+<text:p text:style-name="Text_20_body">From &#8220;Voyage dans la Lune&#8221; by Georges Melies (1902):</text:p>+<text:p text:style-name="Text_20_body"><draw:frame><draw:image xlink:href="lalune.jpg" xlink:type="simple"  xlink:show="embed" xlink:actuate="onLoad" /></draw:frame></text:p>+<text:p text:style-name="Text_20_body">Here is a movie <draw:frame><draw:image xlink:href="movie.jpg" xlink:type="simple"  xlink:show="embed" xlink:actuate="onLoad" /></draw:frame> icon.</text:p>+<text:p text:style-name="Horizontal_20_Line" />+<text:h text:style-name="Heading_20_1" text:outline-level="1">Footnotes</text:h>+<text:p text:style-name="Text_20_body">Here is a footnote reference,<text:note text:id="ftn0" text:note-class="footnote"><text:note-citation>1</text:note-citation><text:note-body><text:p text:style-name="Footnote">Here is the footnote. It can go anywhere after the footnote reference. It need not be placed at the end of the document.</text:p></text:note-body></text:note> and another.<text:note text:id="ftn1" text:note-class="footnote"><text:note-citation>2</text:note-citation><text:note-body><text:p text:style-name="Footnote">Here&#8217;s the long note. This one contains multiple blocks.</text:p><text:p text:style-name="Footnote">Subsequent blocks are indented to show that they belong to the footnote (as with list items).</text:p><text:p text:style-name="P58"><text:s text:c="2" />{ &lt;code&gt; }</text:p><text:p text:style-name="Footnote">If you want, you can indent every line, but you can also be lazy and just indent the first line of each block.</text:p></text:note-body></text:note> This should <text:span text:style-name="T84">not</text:span> be a footnote reference, because it contains a space.[^my note] Here is an inline note.<text:note text:id="ftn2" text:note-class="footnote"><text:note-citation>3</text:note-citation><text:note-body><text:p text:style-name="Footnote">This is <text:span text:style-name="T85">easier</text:span> to type. Inline notes may contain <text:a xlink:type="simple" xlink:href="http://google.com" office:name=""><text:span text:style-name="Definition">links</text:span></text:a> and <text:span text:style-name="Teletype">]</text:span> verbatim characters, as well as [bracketed text].</text:p></text:note-body></text:note></text:p>+<text:p text:style-name="P59">Notes can go in quotes.<text:note text:id="ftn3" text:note-class="footnote"><text:note-citation>4</text:note-citation><text:note-body><text:p text:style-name="Footnote">In quote.</text:p></text:note-body></text:note></text:p>+<text:list text:style-name="L30">+  <text:list-item>+    <text:p text:style-name="P60">And in list items.<text:note text:id="ftn4" text:note-class="footnote"><text:note-citation>5</text:note-citation><text:note-body><text:p text:style-name="Footnote">In list.</text:p></text:note-body></text:note></text:p>+  </text:list-item>+</text:list>+<text:p text:style-name="Text_20_body">This paragraph should not be part of the note, as it is not indented.</text:p>+</office:text>+</office:body>+</office:document-content>+
tests/writer.rst view
@@ -4,7 +4,7 @@  :Author: John MacFarlane :Author: Anonymous-:Date: July 17, 2006+:Date:   July 17, 2006  .. role:: math(raw)    :format: html latex@@ -887,3 +887,4 @@  .. |lalune| image:: lalune.jpg .. |movie| image:: movie.jpg+
tests/writer.rtf view
@@ -3,7 +3,8 @@ \widowctrl\hyphauto  {\pard \qc \f0 \sa180 \li0 \fi0 \b \fs36 Pandoc Test Suite\par}-{\pard \qc \f0 \sa180 \li0 \fi0  John MacFarlane\Anonymous\par}+{\pard \qc \f0 \sa180 \li0 \fi0  John MacFarlane\par}+{\pard \qc \f0 \sa180 \li0 \fi0  Anonymous\par} {\pard \qc \f0 \sa180 \li0 \fi0  July 17, 2006\par} {\pard \ql \f0 \sa180 \li0 \fi0 \par} {\pard \ql \f0 \sa180 \li0 \fi0 This is a set of tests for pandoc. Most of them are adapted from John Gruber\u8217's markdown test suite.\par}@@ -448,6 +449,5 @@ {\pard \ql \f0 \sa0 \li360 \fi-360 1.\tx360\tab And in list items.{\super\chftn}{\*\footnote\chftn\~\plain\pard {\pard \ql \f0 \sa180 \li0 \fi0 In list.\par} }\sa180\par} {\pard \ql \f0 \sa180 \li0 \fi0 This paragraph should not be part of the note, as it is not indented.\par}- } 
tests/writer.texinfo view
@@ -1,5 +1,6 @@ \input texinfo @documentencoding utf-8+ @macro textstrikeout{text} ~~\text\~~ @end macro@@ -22,7 +23,6 @@ @end ifnottex @end macro - @ifnottex @paragraphindent 0 @end ifnottex@@ -32,6 +32,7 @@ @author Anonymous July 17@comma{} 2006 @end titlepage+ @node Top @top Pandoc Test Suite @@ -1010,3 +1011,4 @@ This paragraph should not be part of the note@comma{} as it is not indented.  @bye+