texlive[45091] Master: e-french (21aug17)

commits+karl at tug.org commits+karl at tug.org
Mon Aug 21 22:59:38 CEST 2017


Revision: 45091
          http://tug.org/svn/texlive?view=revision&revision=45091
Author:   karl
Date:     2017-08-21 22:59:38 +0200 (Mon, 21 Aug 2017)
Log Message:
-----------
e-french (21aug17)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/generic/e-french/README
    trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDocEf_Lnx.pdf
    trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDocEf_Win.pdf
    trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDoc_Unx.txt
    trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDoc_Win.txt
    trunk/Master/texmf-dist/doc/generic/e-french/install/Probl_Msg.pdf
    trunk/Master/texmf-dist/doc/generic/e-french/install/Probl_Msg.txt
    trunk/Master/texmf-dist/doc/generic/e-french/manuels/efrench.pdf
    trunk/Master/texmf-dist/doc/generic/e-french/manuels/faq.pdf
    trunk/Master/texmf-dist/doc/generic/e-french/manuels/french_doc.pdf
    trunk/Master/texmf-dist/doc/generic/e-french/manuels/frenchle.pdf
    trunk/Master/texmf-dist/doc/generic/e-french/src/MiniDocEf_Lnx.tex
    trunk/Master/texmf-dist/doc/generic/e-french/src/MiniDocEf_Win.tex
    trunk/Master/texmf-dist/doc/generic/e-french/src/Probl_Msg.tex
    trunk/Master/texmf-dist/doc/generic/e-french/src/efrench.tex
    trunk/Master/texmf-dist/doc/generic/e-french/src/french_doc.txt
    trunk/Master/texmf-dist/doc/generic/e-french/src/frenchle.tex
    trunk/Master/texmf-dist/tex/generic/e-french/french.sty
    trunk/Master/texmf-dist/tex/generic/e-french/frenchle.sty
    trunk/Master/tlpkg/libexec/ctan2tds

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.pdf
    trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.txt
    trunk/Master/texmf-dist/doc/generic/e-french/README-TDS
    trunk/Master/texmf-dist/doc/generic/e-french/bin/linux/
    trunk/Master/texmf-dist/doc/generic/e-french/bin/linux/makefrindex
    trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDocMkfr.pdf
    trunk/Master/texmf-dist/doc/generic/e-french/src/frabbrevlat9.tex
    trunk/Master/texmf-dist/doc/generic/e-french/src/frabbrevutf8.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/
    trunk/Master/texmf-dist/doc/generic/e-french/test/README
    trunk/Master/texmf-dist/doc/generic/e-french/test/french.tst
    trunk/Master/texmf-dist/doc/generic/e-french/test/frenchab.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/frenchla.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.glo
    trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.ind
    trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/frenchll.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/frenchln.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlr.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/frenchrf.pdf
    trunk/Master/texmf-dist/doc/generic/e-french/test/fxench.tst
    trunk/Master/texmf-dist/doc/generic/e-french/test/mya4.sty
    trunk/Master/texmf-dist/doc/generic/e-french/test/myfigure.eps
    trunk/Master/texmf-dist/doc/generic/e-french/test/mygglo.ist
    trunk/Master/texmf-dist/doc/generic/e-french/test/mylist.sty
    trunk/Master/texmf-dist/doc/generic/e-french/test/mysmall.sty
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/EC.def
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/README
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/TSIv5n4.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/TSIv5n48.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/gencoup.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/lgencoup.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/ltesthyp
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/ltstcoup.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/testhyp
    trunk/Master/texmf-dist/doc/generic/e-french/test/tests-formats/tstcoup.tex
    trunk/Master/texmf-dist/doc/generic/e-french/test/texxetlb.ind
    trunk/Master/texmf-dist/doc/generic/e-french/test/texxetlb.tex

Removed Paths:
-------------
    trunk/Master/texmf-dist/doc/generic/e-french/bin/unix/
    trunk/Master/texmf-dist/doc/generic/e-french/install/FilesInTDS.txt

Added: trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.pdf	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.pdf	2017-08-21 20:59:38 UTC (rev 45091)

Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.txt
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.txt	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.txt	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,25 @@
+Problems in french.sty with msg.sty and msg-msg.tex
+===================================================
+
+Maybe, after having installed the e-french package that french 
+announces that msg.sty is missing or that msg-msg.tex is missing. 
+With the new versions of TeXLive, no such problem, 
+by MikTeX v2.9, only msg-msg.tex is missing.
+With a recent update or the newer versions it's OK.
+
+If msg.sty is missing, msg-msg.tex is generally also missing.
+This would be the cas by older or other environnements.
+In any case, these files can be found on the internet. 
+One possibility is CTAN, for exemple to get from
+<http://mirror.ctan.org/tex-archive/macros/latex/contrib/msg/>
+at least the files msg.ins, msg.dtx and msgfiles.dtx. 
+and to download them in a work directory
+   Then with the command 
+     latex msg.ins
+you have the missing files msg.sty and msg-msg.tex,
+in order to put them in your french directory.
+A second possibility is to download them from
+<http://www.efrench.org/distributions/e-fr_msg/>
+
+
+


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/Probl_Msg.txt
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/generic/e-french/README
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/README	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/README	2017-08-21 20:59:38 UTC (rev 45091)
@@ -1,6 +1,6 @@
                       eFrench - French typography for LaTeX
 
-          Version 5.9995 2015-08-17
+          Version 6.01 2017-08-10
 
 e-French, FRENCHLE and FRENCH.
           ------------------- 
@@ -40,7 +40,7 @@
 is in http://www.latex-project.org/lppl.txt and version 1.3 or later 
 is part of all distributions of LaTeX version 2005/12/01 or later.
 
-This work has the LPPL maintenance status \xABmaintained\xBB.
+This work has the LPPL maintenance status «maintained».
 The Current Maintainer of this work is Raymond Juillerat
 (raymond -at- juil-dot-ch).
 

Added: trunk/Master/texmf-dist/doc/generic/e-french/README-TDS
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/README-TDS	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/README-TDS	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,22 @@
+  eFrench distribution             Files in TDS     
+_______________________           _____________________________ 
+
+/texmf/doc/*.*             ->      doc/generic/e-french/*.*  
+/texmf/makeindex/*.ist     ->      makeindex/e-french/*.ist       
+/texmf/tex/*.*             ->      tex/generic/e-french/*.* 
+
+ = = = Could be also placed in a local directory  = = =
+- - - - Linux - Unix TeXLive
+/bin/unix/makefrindex      ->   .../bin/i386-linux/*
+
+- - - - Windows MiKTeX									   
+/bin/windows/makefrindex.cmd -> ...\MiKTeX*.*\miktek\bin\*.*
+
+ = = =  are not meant for TDS   = = =
+README-TDS (this file)
+/install
+README
+- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+for torture-tests to be transfered by the user if wished
+doc/generic/e-french/test/    ->    a local workplace         
+


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/README-TDS
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/bin/linux/makefrindex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/bin/linux/makefrindex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/bin/linux/makefrindex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,2 @@
+#!/bin/bash
+makeindex -s fridx1.ist  $1.idx


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/bin/linux/makefrindex
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/doc/generic/e-french/install/FilesInTDS.txt
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/install/FilesInTDS.txt	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/install/FilesInTDS.txt	2017-08-21 20:59:38 UTC (rev 45091)
@@ -1,14 +0,0 @@
-    Files eFrench in TDS
-
-doc/generic/e-french/          : distrib - /doc
-makeindex/e-french/            : distrib - /makeindex
-tex/generic/e-french/          : distrib - /tex
-
-Could be also placed in a local directory
-bin/ (linux - unix ...)        : distrib - /bin/unix
-miktek/bin/(Windows -Miktex)   : distrib - miktek/bin/
-
-are not necessary :
- distrib - /install
- distrib - README
-

Modified: trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDocEf_Lnx.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDocEf_Win.pdf
===================================================================
(Binary files differ)

Added: trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDocMkfr.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDocMkfr.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDocMkfr.pdf	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDocMkfr.pdf	2017-08-21 20:59:38 UTC (rev 45091)

Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDocMkfr.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDoc_Unx.txt
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDoc_Unx.txt	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDoc_Unx.txt	2017-08-21 20:59:38 UTC (rev 45091)
@@ -16,7 +16,7 @@
    ~/texmf/tex
 or here
    ~/texmf/tex/plain
-(or in the TDS-tree as explained in FilesInTDS.txt)
+(or in the system TDS under tex/plain)
 This way to do has been sucessfully tested under Ubuntu (9 to 11)
 
 Notice

Modified: trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDoc_Win.txt
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDoc_Win.txt	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/install/MiniDoc_Win.txt	2017-08-21 20:59:38 UTC (rev 45091)
@@ -15,7 +15,7 @@
    c:\LocalTexMf\tex\
 or here
    c:\LocalTexMf\tex\plain\
-(or in the TDS-tree as explained in FilesInTDS.txt)
+(or in the system TDS under tex\plain\)
 
  and announce it to  MikTeX 
 (Maintenance - Setting - Roots - Add ...)

Modified: trunk/Master/texmf-dist/doc/generic/e-french/install/Probl_Msg.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/generic/e-french/install/Probl_Msg.txt
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/install/Probl_Msg.txt	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/install/Probl_Msg.txt	2017-08-21 20:59:38 UTC (rev 45091)
@@ -12,6 +12,8 @@
 In any case, these files can be found on the internet. 
 One possibility is CTAN, for exemple to get from
 <http://mirror.ctan.org/tex-archive/macros/latex/contrib/msg/>
+or from
+<http://mirror.ctan.org/tex-archive/macros/latex/contrib/msg.zip>
 at least the files msg.ins, msg.dtx and msgfiles.dtx. 
 and to download them in a work directory
    Then with the command 

Modified: trunk/Master/texmf-dist/doc/generic/e-french/manuels/efrench.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/generic/e-french/manuels/faq.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/generic/e-french/manuels/french_doc.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/generic/e-french/manuels/frenchle.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/generic/e-french/src/MiniDocEf_Lnx.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/src/MiniDocEf_Lnx.tex	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/src/MiniDocEf_Lnx.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -34,7 +34,7 @@
 Les fichiers de /makeindex vont dans le répertoire de même nom de  \TeX{}live
 ou dans le répertoire de travail selon besoins.
 
-En tant que supervisuer on peut suivre les indications de \emph{FilesInTDS.txt} .
+En tant que superviseur on peut suivre les indications de \emph{FilesInTDS.txt} .
 
 \paragraph*{Remarque}
 Si pour une raison ou une autre (ancien \TeX{}live ou autre système), french.sty annonce que msg.sty  ou msg-msg.tex manque, 
@@ -60,6 +60,6 @@
   -- \href{mailto:raymond at juil.ch}{rayj }
 pour l'équipe d'eFrench, pour toute question passer par son initiateur,
 {Laurent Bloch}
-\href{http://www.laurentbloch.org/MySpip3/spip.php?article166}{<http://www.laurentbloch.org/MySpip3/spip.php?article166>}
+\href{https://www.laurentbloch.net/MySpip3/e-french-desormais-dans-les-depots?lang=fr}{e-french désormais dans les dépôts TeXLive et MiKTeX} .
 
 \end{document}

Modified: trunk/Master/texmf-dist/doc/generic/e-french/src/MiniDocEf_Win.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/src/MiniDocEf_Win.tex	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/src/MiniDocEf_Win.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -55,7 +55,7 @@
   -- \href{mailto:raymond at juil.ch}{rayj }
  pour l'équipe d'eFrench, pour toute question passer par son initiateur,
 {Laurent Bloch}
-\href{http://www.laurentbloch.org/MySpip3/spip.php?article166}{<http://www.laurentbloch.org/MySpip3/spip.php?article166>}
+\href{https://www.laurentbloch.net/MySpip3/e-french-desormais-dans-les-depots?lang=fr}{e-french désormais dans les dépôts TeXLive et MiKTeX} .
 
 
 \end{document}

Modified: trunk/Master/texmf-dist/doc/generic/e-french/src/Probl_Msg.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/src/Probl_Msg.tex	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/src/Probl_Msg.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -15,8 +15,7 @@
 l'absence de l'un des deux fichiers msg.sty ou msg-msg.tex. 
 
 Avec les nouvelles version de TeXLive, il n'y a pas de problème de ce genre.
-Avec MikTeX, version 2.9, seul msg-msg.tex manquait, après une mise à jour
-ou dans les nouvelles versions, c'est OK
+Avec MikTeX, version 2.9, seul msg-msg.tex manque.
 
 Si msg.sty manque, alors généralement msg-msg.tex manque aussi.
 C'est le cas avec d'autres environnements ou d'ancienne versions.
@@ -25,8 +24,10 @@
 
 Pour ce faire vous téléchargez de
 
-\href{http://mirror.ctan.org/tex-archive/macros/latex/contrib/msg/}
+\href{http://mirror.ctan.org/tex-archive/macros/latex/contrib/msg}
 {http://mirror.ctan.org/tex-archive/macros/latex/contrib/msg/}\\
+ou de \href{http://mirror.ctan.org/tex-archive/macros/latex/contrib/msg.zip}
+{http://mirror.ctan.org/tex-archive/macros/latex/contrib/msg.zip}\\
 au minimum les fichiers msg.ins, msg.dtx et msgfiles.dtx pour les
 déposer dans un dossier de travail. Avec la commande 
 \textit{latex msg.ins}, vous aurez les fichiers cherchés
@@ -34,16 +35,18 @@
 dans votre dossier french.
 
 Une autre possibilité, c'est de les télécharger de\\
-\href{http://www.efrench.org/distributions/e-fr\_msg/}
-{http://www.efrench.org/distributions/e-fr\_msg/}\\
+%La solution, c'est de les télécharger de\\
+\href{http://svn.tuxfamily.org/viewvc.cgi/efrench\_efrenchsources/trunk/inputs/msg/}
+{http://svn.tuxfamily.org/viewvc.cgi/efrench\_efrenchsources/trunk/inputs/msg/}\\
 
 
-\centering{Bonne utilisation de eFrench !}
+\begin{center}{Bonne utilisation de eFrench !}
+\end{center}
 
   -- \href{mailto:raymond at juil.ch}{rayj }
 pour l'équipe d'eFrench, pour toute question passer par son initiateur,
 {Laurent Bloch}
-\href{http://www.laurentbloch.org/MySpip3/spip.php?article166}{<http://www.laurentbloch.org/MySpip3/spip.php?article166>}
+\href{https://www.laurentbloch.net/MySpip3/e-french-desormais-dans-les-depots?lang=fr}{<https://www.laurentbloch.net/MySpip3/e-french-desormais-dans-les-depots?lang=fr>}
 
 \end{document}
 

Modified: trunk/Master/texmf-dist/doc/generic/e-french/src/efrench.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/src/efrench.tex	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/src/efrench.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -1256,14 +1256,32 @@
 \index{pagestyle@\texttt{\backslash pagestyle}}%
 \index{thispagestyle@\texttt{\backslash thispagestyle}}%
 \end{itemize}
+%===============
+Il faut noter que la classe \verb|letter| actuelle de \LaTeX{}  est
+\index{classe!letter@\texttt{letter}}%
+assez imparfaite ; on est ainsi souvent amen\xE9 \xE0 coder un \verb|\vfill|
+avant le \verb|\end{letter}| lorsque la lettre fait moins d'une page,
+sinon l'adresse du destinataire n'appara\xEEt pas correctement 
+plac\xE9e dans
+la fen\xEAtre de l'enveloppe
 
-%Il faut noter que la classe \verb|letter| actuelle de \LaTeX{}  est
-%\index{classe!letter@\texttt{letter}}%
-%assez imparfaite ; on est ainsi souvent amen\xE9 \xE0 coder un \verb|\vfill|
-%avant le \verb|\end{letter}| lorsque la lettre fait moins d'une page,
-%sinon l'adresse du destinataire n'appara\xEEt pas correctement 
-%plac\xE9e dans
-%la fen\xEAtre de l'enveloppe
+%===============
+%\input{frenchlet}   % activer d\xE8s l'instant o\xF9 lettre.cls, version 3 est sur CTAN
+\MAJ
+\subsection{La classe \emph{lettre} } \label{lettre}
+La classe \texttt{lettre}
+ de l'Observatoire de Gen\xE8ve peut aussi \xEAtre utilis\xE9e
+par  {\eFrench}.
+%https://gna.org/projects/lettre_observatoire
+S'il est vrai que la classe \texttt{lettre} a \xE9t\xE9 con\xE7ue et d\xE9velopp\xE9e d'abord pour \xEAtre utilis\xE9e avec \textsl{babel},
+sa version 3.000 devrait \xEAtre compatible avec \textsl{e-french}.
+Les versions pr\xE9c\xE9dentes sortaient dans certaines configurations (sous Windows avec Mik\TeX) une page blanche avant chaque lettre.
+\subsubsection{Exemples complets d'utilisation}
+On ne peut pas appliquer tels quels les exemples donn\xE9s dans la documentation 
+de la classe \texttt{lettre} sous \textsl{babel}. C'est pourquoi il existe une documentation sp\xE9ciale et
+ des exemples d'utilisation avec {\eFrench} sous
+\url{http://efrench.org/doc/eflettre.zip}
+\endMAJ
 \subsection{Environnements}\label{Environnements}\index{environnements}%
 \subsubsection{Les messages \xE0 la console}\label{messages}
 
@@ -1272,37 +1290,6 @@
  \MAJ Les messages \xE9mis par l'extension {\eFrench} sont en 7-bits, sauf
 ceux qui sont issus de \\
 \textsl{french\_french-msg.tex} qui sont en 8-bits.\endMAJ
-%peuvent \xEAtre en 7-bits (\xE0 la \TeX{}) ou en 8-bits (caract\xE8res accentu\xE9s
-%normaux). Ce choix est fait \xE0 la cr\xE9ation du format par l'installateur
-%(programme \texttt{kbconfig}%
-%%%%%%%%%%%%%%%%%%%%%%
-%\ifnoDOCinstall\else%
-%%%%%%%%%%%%%%%%%%%%%%
-%, cf. \xA7~\ref{kbconfig} page \pageref{kbconfig}%
-%\index{kbconfig@\texttt{kbconfig}}%
-%\fi%
-%).
-%Il est toujours possible de forcer l'option d'\xE9mission en 8-bits en utilisant
-%la commande \verb|\usualmessages|,
-%\index{usualmessages@\texttt{\backslash usualmessages}}%
-%mais attention tous les moteurs \TeX{} ne disposent pas de
-%cette facilit\xE9 et dans ce cas les caract\xE8res 8-bits sont
-%traduits en hexad\xE9cimal (\verb|^^xx|).
-%
-%Vous pouvez aussi demander \xE0 {\eFrench} d'envoyer des messages avec
-%l'ordre \verb|\kbtypeout| au lieu de l'ordre \LaTeX\ \verb|\typeout|.
-%{\eFrench} s'efforcera alors de traduire ces messages selon les
-%options que vous aurez fournies \xE9ventuellement \xE0 l'extension 
-%\emph{keyboard} et selon le codage clavier de votre syst\xE8me
-%d'exploitation (\xE0 condition d'utiliser encore  l'extension 
-%\emph{keyboard} ou d'avoir cr\xE9\xE9 le format \LaTeX\ 
-%avec le configurateur de clavier \texttt{kbconfig}) dont on reparlera 
-%\index{extension!keyboard@\emph{keyboard}}%
-%\index{kbtypeout@\texttt{\backslash kbtypeout}}%
-%\index{kbconfig@\texttt{kbconfig}}%
-%\index{messages!avec \texttt{\backslash kbtypeout}}%
-%plus loin (voir  \xA7~\ref{keyboard}).
-
 \subsubsection{\xC0 propos de c\xE9sure\label{cesure}}
 
 On est souvent d\xE9sempar\xE9 devant les messages \texttt{Overfull hbox}.
@@ -2947,6 +2934,14 @@
 \index{abreviations at abr\xE9viations!\texttt{\backslash abbreviations}}%
 \index{noabreviations@\texttt{\backslash noabbreviations}}%
 d'abr\xE9viations par la commande : \verb|\abbreviations[fichier]|.
+\paragraph*{Abbr\xE9viations pour sources en UTF8} Le fichier d'abbr\xE9viations \MAJ
+ouvert par d\xE9faut (\vers|frab|\-\vers|brev.tex|) est cod\xE9 en latin9.
+\index{codage!utf8@\texttt{utf8}}
+Maintenant existe aussi le m\xEAme en utf8 nomm\xE9 \vers|frab|\-\vers|brev-u8.tex|.
+Libre \xE0 chacun de changer les noms des fichiers d'abbr\xE9viation ou d'appeler
+par la commande \verb|\abbreviations[fichier]|
+celui qui convient au code source.
+\endMAJ
 
 Rappelons qu'en \TeX{} le caract\xE8re \verb|"| est 
 normalement le d\xE9but d'une valeur
@@ -3055,7 +3050,7 @@
 L'option \emph{english} consiste \xE0 d\xE9sactiver les autres extensions de langage.
 Elle est donc toujours pr\xE9sente.
 
-Voici un exemple montrer comment combiner fran\xE7ais et allemand (nouvelle mouture) en utilisant \emph{mlp} :
+Voici un exemple pour montrer comment combiner fran\xE7ais et allemand (nouvelle mouture) en utilisant \emph{mlp} :
 \begin{verbatim}
       \documentclass[ngerman,french,a4paper,11pt]{book} 
       \usepackage[utf8]{inputenc}
@@ -4142,7 +4137,7 @@
 \begin{itemize}
 \item vous avez trouv\xE9 des d\xE9fauts \xE0 l'extension \FrenchPro{} ? %{\eFrench} ?
 proposez-nous alors les corrections/am\xE9lio\-rations ou tout au moins 
-signalez-les-nous(cf. paragraphes pr\xE9c\xE9dents). 
+signalez-les-nous (cf. paragraphes pr\xE9c\xE9dents). 
 
 \item comme pour l'extension \FrenchPro{}, ce document contient des erreurs ;
 elles sont involontaires ; merci de me les signaler ;
@@ -4200,7 +4195,7 @@
 Le statut actuel de
 \eFrench{}  est le r\xE9sultat des travaux de Laurent Bloch, Manuel P\xE9gouri\xE9-Gonnard
 et Raymond Juillerat. Nous remercions le groupe  \lsc{CTAN} de ses nombreuses suggestions 
-et quelques utilisateur des remarques qui nous ont aid\xE9es et permis de peaufiner
+et quelques utilisateurs des remarques qui nous ont aid\xE9s et permis de peaufiner
 le paquet.\\
 \begin{flushright}
 (derni\xE8re mise-\xE0-jour de ce manuel pour \eFrench{} par RayJ le \today)

Added: trunk/Master/texmf-dist/doc/generic/e-french/src/frabbrevlat9.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/src/frabbrevlat9.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/src/frabbrevlat9.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,297 @@
+% !TeX encoding = latin9
+% frabbrev.tex file (French typographic abbreviations) 
+% should always be used in 8bit format (generated from 
+% fxabbrev.tex which is full ASCII 7bit)
+%
+% After Bernard Gaulle's decease this work is now maintained as
+% the e-French project by a group of enthusiast users 
+% under LPPL copyright as declared in http://www.efrench.org/
+%
+%     Don't change this to a 7bits coding except if you are using 7bits input
+%
+% History of mods:
+% ===============
+%    - Change \^i into \xEE_                                    --bg 01/16/92
+%    - Added shorten "cad" (remark coming from Jacques Andre)     --bg 02/07/92
+%    - paragraph sign (\S) followed by a tilde                    --bg 05/15/92
+%    - recoded to 8bits                                           --bg 08/24/92
+%    - add second, seconds, premiers, premi\xE8res, troisi\xE8mes... 
+%                              num\xE9ros, Num\xE9ros  and pages.       
+%                                                                 --bg 01/12/93
+%    - strings containing a space must be within a group.         --bg 98/05/15
+%    - THE FIRST LETTER IS NO MORE TESTED except if the string is
+%      within braces. Thus, any string beginning whith an uppercase 
+%      letter should be enclosed within braces.                 --bg 1999/11/08
+%    - f8abbrev.tex and frabbrev.850 definitely removed.        
+%      f7abbrev.tex rename fxabbrev.tex                         --bg 2000/06/14
+%    - few adds coming from Yves Perrousseaux' book on typo.    --bg 2001/08/03
+%    - corrections for second(s) and seconde(s).                --bg 2001/09/20
+%    - * facility added for plurals ==> 6 changes.
+%    - legal units added and few other names.                   
+%      HAPPY 10 YEARS ANNIVERSARY!                              --bg 2001/01/21
+%    - abbrev. from Louis Gu\xE9ry from CFPJ.                    --bg 2002/02/21
+%
+%   New order : all expressions not UTF8 compatible at end     -- rj 2017-04-20
+
+% Checked name      Replacement
+% ============      ===========
+%
+% Notice that when the checked name is inside braces all that name
+% should be equal to "name" otherwise the first letter is not checked.
+% If checked name begins with "*" then "_name_" and "_name_s" will
+% be checked, the replacement name is the same in the two cases.
+%
+% NB: All macros have to be not expanded.
+
+premier             1\noexpand\ier%
+premiers            1\noexpand\iers%
+premi\xE8re            1\noexpand\iere%
+premi\xE8res           1\noexpand\ieres%
+deuxi\xE8me            2\noexpand\ieme%
+deuxi\xE8mes           2\noexpand\iemes%
+second              2\noexpand\fup{d}%
+seconds             2\noexpand\fup{ds}%
+seconde             2\noexpand\fup{de}%
+secondes            2\noexpand\fup{des}%
+troisi\xE8me           3\noexpand\ieme%
+troisi\xE8mes          3\noexpand\iemes%
+quatri\xE8me           4\noexpand\ieme%
+quatri\xE8mes          4\noexpand\iemes%
+
+primo               \noexpand\quando{1}%
+secundo             \noexpand\quando{2}%
+tertio              \noexpand\quando{3}%
+quarto              \noexpand\quando{4}%
+quinto              \noexpand\quando{5}%
+sexto               \noexpand\quando{6}%
+septuno             \noexpand\quando{7}%
+octavo              \noexpand\quando{8}%
+nono                \noexpand\quando{9}%              
+decimo              \noexpand\quando{10}%
+
+{Num\xE9ro}            \noexpand\Numero%
+{Num\xE9ros}           \noexpand\Numeros%
+num\xE9ro              \noexpand\numero%
+num\xE9ros             \noexpand\numeros%
+
+monsieur            M.%
+messieurs           MM.%
+mademoiselle        M\noexpand\fup{lle}%
+mesdemoiselles      M\noexpand\fup{lles}%
+madame              M\noexpand\fup{me}%
+mesdames            M\noexpand\fup{mes}%
+ma\xEEtre              M\noexpand\fup{e}%
+ma\xEEtres             M\noexpand\fup{es}%
+
+{Compagnie}         c\noexpand\fup{ie}%
+canton              C\noexpand\fup{on}%
+docteur             D\noexpand\fup{r}%
+folio               f\noexpand\fup{o}%
+folios              f\noexpand\fup{os}%
+monseigneur         M\noexpand\fup{gr}%
+paragraphe          \noexpand\S~% doit \xEAtre suivi d'un num\xE9ro.
+recto               r\noexpand\fup{o}%
+verso               v\noexpand\fup{o}%
+
+{Acad\xE9mie}          Acad.%
+adjectif            adj.%
+{Administration}    Admin.%
+ancien              anc.%
+annexe              ann.% from LG 2002/02/21
+{Antiquit\xE9}         Antiq.%
+appendice           append.%
+apr\xE8s               apr.%
+archives            arch.%
+arch\xE9ologie         arch\xE9ol.%
+arithm\xE9tique        arithm.%
+arrondissement      arr.%
+article             art.%
+astronomie          astron.%
+avant               av.%
+avenue              av.% from LG 2002/02/21
+bibliographie       bibliogr.%
+biblioth\xE8que    bibl.% from LG 2002/02/21
+biologie            biol.%
+botanique           bot.%
+boulevard           bd%
+bulletin            bull.%
+cad                 \noexpand\hbox{c.-\xE0-d.}%
+chapitre            chap.%
+chef-lieu           ch.-l.%
+chronologie         chronol.%
+circulaire          circ.%
+circonscription     circonscr.%
+{Code civil}        C.civ.%
+{Code p\xE9nal}        C.p\xE9n.%
+*collaborateur      coll.%
+collection          coll.%
+colonne             col.% from LG 2002/02/21
+commandeur          C.% from LG 2002/02/21
+d\xE9partement         d\xE9p.%
+dictionnaire        dict.%
+document            doc.%
+{Est}               E%
+*\xE9diteur            \xE9d.% * from LG 2002/02/21
+*\xE9dition            \xE9d.% * from LG 2002/02/21
+environ             env.%
+\xE9pitre              \xE9p.%
+\xE9pilogue            \xE9pil.%
+\xE9tablissements      \xC9ts%
+\xE9tymologie          \xE9tym.%
+exemple             ex.%
+exp\xE9diteur          exp.% from LG 2002/02/21
+fascicule           fasc.%
+faubourg            fg%
+f\xE9minin             f\xE9m.%
+feuillet            f.%
+figure              fig.%
+Fr\xE8re               F.% from LG 2002/02/21
+g\xE9ographie          g\xE9ogr.%
+g\xE9ologie            g\xE9ol.%
+g\xE9om\xE9trie           g\xE9om.%
+graphique           graph.%
+gravure             grav.%
+habitants           hab.%
+hauteur             haut.%
+iconographie        iconogr.%
+*illustrations      illustr.% 21/01/2002
+inf\xE9rieur           inf.%
+introduction        introd.%
+invariable          invar.%
+italique            ital.%
+juridique           jur.%
+jurisprudence       jur.%
+*ligne              l.% 21/01/2002
+largeur             larg.%
+latitude            lat.%
+librairie           libr.%
+livre               liv.%
+locution            loc.%
+longitude           long.%
+longueur            long.%
+manuscrit           ms.%
+manuscrits          mss.%
+masculin            masc.%
+math\xE9matiques       math.%
+maximum             max.% from LG 2002/02/21
+m\xE9canique           m\xE9can.%
+m\xE9moire             m\xE9m.% 
+musique             mus.%
+mythologie          myth.%
+{Nord}              N%
+nouveau             nouv.%
+nouvelle            nouv.%
+numismatique        numism.%
+officier            O.% from LG 2002/02/21
+{Ouest}             O% from LG 2002/02/21
+ouvrage             ouvr.%
+*page               p.% 21/01/2002
+partie              part.%
+P\xE8re                P.% from LG 2002/02/21
+photographie        phot.%
+physique            phys.%
+*planche            pl.% 21/01/2002
+reli\xE9             rel.% from LG 2002/02/21
+reliure             rel.%
+r\xE9daction         r\xE9d.
+route               rte% from LG 2002/02/21
+{Sud}               S.%
+science             sc.%
+sc\xE8ne               sc.%
+section             sect.%
+{Saint}             St%
+{Saints}            Sts%
+{Sainte}            Ste%
+{Saintes}           Stes%
+section             sect.% from LG 2002/02/21
+si\xE8cle             s.% from LG 2002/02/21
+{soci\xE9t\xE9}           st\xE9% 21/01/2002
+{Soci\xE9t\xE9}           St\xE9%  Yves Perrousseaux 2001/08/03
+substantif          subst.%
+*suivant            suiv.% 21/01/2002
+*suivante           suiv.% 21/01/2002
+sup\xE8rieur           sup.% from LG 2002/02/21
+suppl\xE9ment          suppl.%
+t\xE9l\xE9phone           t\xE9l.% Yves Perrousseaux 2001/08/03
+tome                t.% from LG 2002/02/21
+traducteur          trad.%
+traduction          trad.%
+variante            var% from LG 2002/02/21
+vers                v.% from LG 2002/02/21
+voir                V% from LG 2002/02/21
+volume              vol.%
+
+% Unit\xE9s l\xE9gales : 
+
+*amp\xE8re             A%
+*are                a%
+*bel                B% from LG 2002/02/21
+*candela            cd% from LG 2002/02/21
+centi               c% from LG 2002/02/21
+*centiare           ca%
+*centigramme        cg%
+*centilitre         cl%
+*centim\xE8tre         cm%
+d\xE9ca                da% from LG 2002/02/21
+*d\xE9calitre          dal%
+d\xE8cam\xE8tre           dam%
+d\xE9ci                d% from LG 2002/02/21
+d\xE9cibel             dB%
+d\xE9cigramme             dg% from LG 2002/02/21
+d\xE9cilitre             dl% from LG 2002/02/21
+*franc              F%
+giga                G% from LG 2002/02/21
+*grade              gr%
+*gramme             g%
+*hectare            ha%
+hect                h% from LG 2002/02/21
+*hectogramme        hg%
+*hectolitre         hl%
+*hectom\xE8tre         hm%
+*hertz              Hz% from LG 2002/02/21
+*heure              h%
+*jour               j%
+*kelvin             K% from LG 2002/02/21
+kilo                k% from LG 2002/02/21
+*kilogramme         kg%
+*kilohertz          kHz% from LG 2002/02/21
+*kilom\xE8tre          km%
+*kilovoltamp\xE8re        kVA% from LG 2002/02/21
+*kilowatt           kW%
+kilowatt-heure      kWh%
+kilowatts-heure     kWh%
+*litre              l%
+lux                 lx% from LG 2002/02/21
+m\xE9ga              M% from LG 2002/02/21
+*m\xE9gahertz          MHz% from LG 2002/02/21
+*m\xE8tre              m%
+% micro est a introduire qd on aura \mu en romain droit.
+milli               m% from LG 2002/02/21
+*millibar           mbar%
+*milligramme        mg% from LG 2002/02/21
+*millilitre         ml%
+*millim\xE8tre         mm%
+*milliseconde        ms% from LG 2002/02/21
+*minute             min%
+*mole               mol% from LG 2002/02/21
+nano                n% from LG 2002/02/21
+*nanoseconde        nc% from LG 2002/02/21
+*newton             N% from LG 2002/02/21
+*pascal             Pa% from LG 2002/02/21
+pico                p% from LG 2002/02/21
+*picoseconde        ps% from LG 2002/02/21
+quintal             q% from LG 2002/02/21
+quintaux            q% from LG 2002/02/21
+*radian             rad% from LG 2002/02/21
+*seconde            s%
+*st\xE8re              st%
+t\xE9ra              T% from LG 2002/02/21
+*thermie            th% from LG 2002/02/21
+*tonne              t%
+*volt               V%
+*watt               W%
+*wattheure          Wh% from LG 2002/02/21
+
+% Excerpt from ``Lexique des r\xE8gles typographiques en usage a l'Imprimerie
+%                nationale'', Abr\xE9viations, p7-11 and few additions.
+% plus other usual (referenced) names.


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/src/frabbrevlat9.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/src/frabbrevutf8.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/src/frabbrevutf8.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/src/frabbrevutf8.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,297 @@
+% frabbrev.tex file (French typographic abbreviations) 
+% should always be used in 8bit format (generated from 
+% fxabbrev.tex which is full ASCII 7bit)
+%
+% After Bernard Gaulle's decease this work is now maintained as
+% the e-French project by a group of enthusiast users 
+% under LPPL copyright as declared in http://www.efrench.org/
+%
+%     Don't change this to a 7bits coding except if you are using 7bits input
+%
+% History of mods:
+% ===============
+%    - Change \^i into î_                                    --bg 01/16/92
+%    - Added shorten "cad" (remark coming from Jacques Andre)     --bg 02/07/92
+%    - paragraph sign (\S) followed by a tilde                    --bg 05/15/92
+%    - recoded to 8bits                                           --bg 08/24/92
+%    - add second, seconds, premiers, premières, troisièmes... 
+%                              numéros, Numéros  and pages.       
+%                                                                 --bg 01/12/93
+%    - strings containing a space must be within a group.         --bg 98/05/15
+%    - THE FIRST LETTER IS NO MORE TESTED except if the string is
+%      within braces. Thus, any string beginning whith an uppercase 
+%      letter should be enclosed within braces.                 --bg 1999/11/08
+%    - f8abbrev.tex and frabbrev.850 definitely removed.        
+%      f7abbrev.tex rename fxabbrev.tex                         --bg 2000/06/14
+%    - few adds coming from Yves Perrousseaux' book on typo.    --bg 2001/08/03
+%    - corrections for second(s) and seconde(s).                --bg 2001/09/20
+%    - * facility added for plurals ==> 6 changes.
+%    - legal units added and few other names.                   
+%      HAPPY 10 YEARS ANNIVERSARY!                              --bg 2001/01/21
+%    - abbrev. from Louis Guéry from CFPJ.                    --bg 2002/02/21
+%%
+%%      checksum        = "20285 297 1013 10463"
+%%
+
+% Checked name      Replacement
+% ============      ===========
+%
+% Notice that when the checked name is inside braces all that name
+% should be equal to "name" otherwise the first letter is not checked.
+% If checked name begins with "*" then "_name_" and "_name_s" will
+% be checked, the replacement name is the same in the two cases.
+%
+% NB: All macros have to be not expanded.
+
+premier             1\noexpand\ier%
+premiers            1\noexpand\iers%
+première            1\noexpand\iere%
+premières           1\noexpand\ieres%
+deuxième            2\noexpand\ieme%
+deuxièmes           2\noexpand\iemes%
+second              2\noexpand\fup{d}%
+seconds             2\noexpand\fup{ds}%
+seconde             2\noexpand\fup{de}%
+secondes            2\noexpand\fup{des}%
+troisième           3\noexpand\ieme%
+troisièmes          3\noexpand\iemes%
+quatrième           4\noexpand\ieme%
+quatrièmes          4\noexpand\iemes%
+
+primo               \noexpand\quando{1}%
+secundo             \noexpand\quando{2}%
+tertio              \noexpand\quando{3}%
+quarto              \noexpand\quando{4}%
+quinto              \noexpand\quando{5}%
+sexto               \noexpand\quando{6}%
+septuno             \noexpand\quando{7}%
+octavo              \noexpand\quando{8}%
+nono                \noexpand\quando{9}%              
+decimo              \noexpand\quando{10}%
+
+{Numéro}            \noexpand\Numero%
+{Numéros}           \noexpand\Numeros%
+numéro              \noexpand\numero%
+numéros             \noexpand\numeros%
+
+monsieur            M.%
+messieurs           MM.%
+mademoiselle        M\noexpand\fup{lle}%
+mesdemoiselles      M\noexpand\fup{lles}%
+madame              M\noexpand\fup{me}%
+mesdames            M\noexpand\fup{mes}%
+maître              M\noexpand\fup{e}%
+maîtres             M\noexpand\fup{es}%
+
+{Compagnie}         c\noexpand\fup{ie}%
+canton              C\noexpand\fup{on}%
+docteur             D\noexpand\fup{r}%
+folio               f\noexpand\fup{o}%
+folios              f\noexpand\fup{os}%
+monseigneur         M\noexpand\fup{gr}%
+paragraphe          \noexpand\S~% doit être suivi d'un numéro.
+recto               r\noexpand\fup{o}%
+verso               v\noexpand\fup{o}%
+
+{Académie}          Acad.%
+adjectif            adj.%
+{Administration}    Admin.%
+ancien              anc.%
+annexe              ann.% from LG 2002/02/21
+{Antiquité}         Antiq.%
+appendice           append.%
+après               apr.%
+archives            arch.%
+archéologie         archéol.%
+arithmétique        arithm.%
+arrondissement      arr.%
+article             art.%
+astronomie          astron.%
+avant               av.%
+avenue              av.% from LG 2002/02/21
+bibliographie       bibliogr.%
+bibliothèque    bibl.% from LG 2002/02/21
+biologie            biol.%
+botanique           bot.%
+boulevard           bd%
+bulletin            bull.%
+cad                 \noexpand\hbox{c.-à-d.}%
+chapitre            chap.%
+chef-lieu           ch.-l.%
+chronologie         chronol.%
+circulaire          circ.%
+circonscription     circonscr.%
+{Code civil}        C.civ.%
+{Code pénal}        C.pén.%
+*collaborateur      coll.%
+collection          coll.%
+colonne             col.% from LG 2002/02/21
+commandeur          C.% from LG 2002/02/21
+département         dép.%
+dictionnaire        dict.%
+document            doc.%
+{Est}               E%
+*éditeur            éd.% * from LG 2002/02/21
+*édition            éd.% * from LG 2002/02/21
+environ             env.%
+épitre              ép.%
+épilogue            épil.%
+établissements      Éts%
+étymologie          étym.%
+exemple             ex.%
+expéditeur          exp.% from LG 2002/02/21
+fascicule           fasc.%
+faubourg            fg%
+féminin             fém.%
+feuillet            f.%
+figure              fig.%
+Frère               F.% from LG 2002/02/21
+géographie          géogr.%
+géologie            géol.%
+géométrie           géom.%
+graphique           graph.%
+gravure             grav.%
+habitants           hab.%
+hauteur             haut.%
+iconographie        iconogr.%
+*illustrations      illustr.% 21/01/2002
+inférieur           inf.%
+introduction        introd.%
+invariable          invar.%
+italique            ital.%
+juridique           jur.%
+jurisprudence       jur.%
+*ligne              l.% 21/01/2002
+largeur             larg.%
+latitude            lat.%
+librairie           libr.%
+livre               liv.%
+locution            loc.%
+longitude           long.%
+longueur            long.%
+manuscrit           ms.%
+manuscrits          mss.%
+masculin            masc.%
+mathématiques       math.%
+maximum             max.% from LG 2002/02/21
+mécanique           mécan.%
+mémoire             mém.% 
+musique             mus.%
+mythologie          myth.%
+{Nord}              N%
+nouveau             nouv.%
+nouvelle            nouv.%
+numismatique        numism.%
+officier            O.% from LG 2002/02/21
+{Ouest}             O% from LG 2002/02/21
+ouvrage             ouvr.%
+*page               p.% 21/01/2002
+partie              part.%
+Père                P.% from LG 2002/02/21
+photographie        phot.%
+physique            phys.%
+*planche            pl.% 21/01/2002
+relié             rel.% from LG 2002/02/21
+reliure             rel.%
+rédaction         réd.
+route               rte% from LG 2002/02/21
+{Sud}               S.%
+science             sc.%
+scène               sc.%
+section             sect.%
+{Saint}             St%
+{Saints}            Sts%
+{Sainte}            Ste%
+{Saintes}           Stes%
+section             sect.% from LG 2002/02/21
+siècle             s.% from LG 2002/02/21
+{société}           sté% 21/01/2002
+{Société}           Sté%  Yves Perrousseaux 2001/08/03
+substantif          subst.%
+*suivant            suiv.% 21/01/2002
+*suivante           suiv.% 21/01/2002
+supèrieur           sup.% from LG 2002/02/21
+supplément          suppl.%
+téléphone           tél.% Yves Perrousseaux 2001/08/03
+tome                t.% from LG 2002/02/21
+traducteur          trad.%
+traduction          trad.%
+variante            var% from LG 2002/02/21
+vers                v.% from LG 2002/02/21
+voir                V% from LG 2002/02/21
+volume              vol.%
+
+% Unités légales : 
+
+*ampère             A%
+*are                a%
+*bel                B% from LG 2002/02/21
+*candela            cd% from LG 2002/02/21
+centi               c% from LG 2002/02/21
+*centiare           ca%
+*centigramme        cg%
+*centilitre         cl%
+*centimètre         cm%
+déca                da% from LG 2002/02/21
+*décalitre          dal%
+dècamètre           dam%
+déci                d% from LG 2002/02/21
+décibel             dB%
+décigramme             dg% from LG 2002/02/21
+décilitre             dl% from LG 2002/02/21
+*franc              F%
+giga                G% from LG 2002/02/21
+*grade              gr%
+*gramme             g%
+*hectare            ha%
+hect                h% from LG 2002/02/21
+*hectogramme        hg%
+*hectolitre         hl%
+*hectomètre         hm%
+*hertz              Hz% from LG 2002/02/21
+*heure              h%
+*jour               j%
+*kelvin             K% from LG 2002/02/21
+kilo                k% from LG 2002/02/21
+*kilogramme         kg%
+*kilohertz          kHz% from LG 2002/02/21
+*kilomètre          km%
+*kilovoltampère        kVA% from LG 2002/02/21
+*kilowatt           kW%
+kilowatt-heure      kWh%
+kilowatts-heure     kWh%
+*litre              l%
+lux                 lx% from LG 2002/02/21
+méga              M% from LG 2002/02/21
+*mégahertz          MHz% from LG 2002/02/21
+*mètre              m%
+% micro est a introduire qd on aura \mu en romain droit.
+milli               m% from LG 2002/02/21
+*millibar           mbar%
+*milligramme        mg% from LG 2002/02/21
+*millilitre         ml%
+*millimètre         mm%
+*milliseconde        ms% from LG 2002/02/21
+*minute             min%
+*mole               mol% from LG 2002/02/21
+nano                n% from LG 2002/02/21
+*nanoseconde        nc% from LG 2002/02/21
+*newton             N% from LG 2002/02/21
+*pascal             Pa% from LG 2002/02/21
+pico                p% from LG 2002/02/21
+*picoseconde        ps% from LG 2002/02/21
+quintal             q% from LG 2002/02/21
+quintaux            q% from LG 2002/02/21
+*radian             rad% from LG 2002/02/21
+*seconde            s%
+*stère              st%
+téra              T% from LG 2002/02/21
+*thermie            th% from LG 2002/02/21
+*tonne              t%
+*volt               V%
+*watt               W%
+*wattheure          Wh% from LG 2002/02/21
+
+% Excerpt from ``Lexique des règles typographiques en usage a l'Imprimerie
+%                nationale'', Abréviations, p7-11 and few additions.
+% plus other usual (referenced) names.


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/src/frabbrevutf8.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/generic/e-french/src/french_doc.txt
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/src/french_doc.txt	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/src/french_doc.txt	2017-08-21 20:59:38 UTC (rev 45091)
@@ -1,92 +1,15 @@
 % This is french_doc.pdf (informations en francais dans 
-% frguide.pdf et frnotes.pdf)
+% efrench.pdf et faq.pdf)
 % 
 % As e-French since 2010 under LPPL Copyright.
 %....................................................................
-% (Copyright notice in English just after the French one)
 % Copyright GUTenberg-Gaulle 1992-1998, Bernard Gaulle 1999-2007:
 % ==============================================================
-% - La distribution de l'extension FrenchPro pour LaTeX etait effectuee
-% selon le mode shareware. Apres installation et essai de ces fichiers
-% pendant un mois vous deviez decider soit de les garder pour en faire
-% un usage regulier soit de les detruire. Si vous les conserviez il vous
-% fallait regler vos droits d'utilisation aupres de l'auteur.
-% - Vous n'etes AUCUNEMENT autorise a modifier les fichiers marques du
-% mot << Copyright >>.
-% - La redistribution gratuite de cette distribution est autorisee
-% dans la mesure ou elle est complete et non pre-installee.
-% Vous n'etes AUCUNEMENT autorise a faire payer cette distribution ou
-% l'utilisation de ses fichiers si ce n'est pour un cout reduit de copie.
-% Tous les logiciels revendus par un circuit commercial sont consideres
-% en tirer benefice (meme s'il ne s'agit pas d'un grand profit) et donc
-% la redistribution est strictement soumise a un accord prealable avec
-% l'auteur.
-% - Vous n'etes PAS AUTORISE a inclure cette distribution dans un progiciel
-% qui reduirait ses possibilites intrinseques ; vous n'avez donc pas
-% le droit, par exemple, de ne redistribuer qu'une partie des fichiers
-% d'origine.
-% - Tous les fichiers de cette distribution sont accessibles gratuitement
-% sur le domaine de l'Internet (dont les serveurs CTAN).
-% - Aucun virus n'a ete detecte au moment ou ces fichiers furent termines
-% et prets a la distribution.
-% - Le code informatique est offert ici dans l'espoir qu'il soit utile et
-% avec la volonte qu'il soit correct mais aucune garantie ne peut etre
-% fournie, de quelque ordre que ce soit. Les utilisateurs l'utilisent
-% entierement a leur propre risque. L'auteur n'admettra et n'acceptera
-% d'etre lie par un quelconque engagement en cas de manque a gagner,
-% direct, indirect, immediat, consecutif ou autre, resultant de son
-% utilisation.
-% - Vous n'etes PAS AUTORISE a vous substituer a l'autorite de l'auteur
-% en appliquant des modifications, meme si de votre point de vue, elles
-% corrigent des deficiences.
-% Les lois internationales, europeennes (91-255) et francaises (94-361)
-% sont applicables.
-% L'utilisateur de ce logiciel peut toutefois le personnaliser a volonte
-% par differents moyens expliques dans la documentation. L'auteur du
-% logiciel n'est toutefois aucunement lie par une modification introduite
-% par une personnalisation utilisateur.
 %
 % En tant qu'e-French sous Copypright LPPL depuis 2010.
 %....................................................................
 % Copyright Gaulle-GUTenberg 1992-1998, B. Gaulle 1999-2007.
 % =========================================================
-% - The distribution of the FrenchFro package for LaTeX was made on
-% the shareware mode. After installation and tests of these files
-% during one month you had to decide either to keep them for
-% further use or to delete them. If you keept them you had to
-% pay the usage fees to the author.
-% - You are NOT ALLOWED to change in any way all files marked
-% with "Copyright".
-% - Free redistribution of this distribution is authorized but only
-% when complete and not pre-installed.
-% You are NOT ALLOWED to take money for the distribution or use of
-% these files except for a nominal charge for copying etc.
-% All softwares sold via commercial distributors are considered to
-% make money, even they don't make an important profit, thus the
-% redistribution is strictly limited to a previous agreement with
-% the author.
-% - You are NOT ALLOWED to include these files in a package/software in
-% a way that will reduce its capabilities or features; this doesn't allow
-% you, for example, to redistribute only few parts of the whole original
-% files.
-% - All the files included in the distribution are available freely inside
-% the Internet domain (and specially on CTAN servers).
-% - There was no virus at the time these files were completed for
-% distribution.
-% - This computer code is offered in hopes that it will be found useful,
-% and in the belief that it is correct, but it is offered without any
-% warranty of any kind, including warranty of fitness for any purpose.
-% Users of this code do so entirely at their own risk. The author neither
-% admits nor accepts any liability for any loss, direct, indirect,
-% consequential, incidental, or otherwise, resulting from the use of this
-% computer code.
-% - You are NOT ALLOWED to substitute author's authority by applying
-% modifications even if, in your point of view, they correct deficiences.
-% International, European (91-255) and French (94-361) laws apply.
-% There is still the possibility for the user to customize this
-% package at his wishes by various means explained in the documentation.
-% The author of the package is not liable for any change introduced
-% by any users customization.
 %.........................................................................V2.5
 %....................................................................
 % NOTICE that this work was done without any formal support.
@@ -96,9 +19,9 @@
 %
 % french.sty was developped by Bernard GAULLE for French-Speaking Users 
 % This file is now a part of the e-French package.
-% For more details please read frnotes.pdf
-\expandafter\ifx\csname frenchTeXmods\endcsname\relax%
-\else \endinput \fi%
+% For more details please read efrench.pdf
+%\expandafter\ifx\csname frenchTeXmods\endcsname\relax%
+%\else \endinput \fi%
 \def\frenchname{french}%
 \def\frenchpack{e-french}%          eFrench
 \def\ds at french{}%
@@ -107,11 +30,11 @@
  \ifx\@unexpandable at protect\undefined\let\protect\empty%
  \else\let\protect\@unexpandable at protect%
  \fi%
-                           \xdef\FSfd{30 octobre 2015}%          eFrench
-                           \xdef\FSfv{V6,0}%                     r j  +
+                           \xdef\FSfd{10 ao\^ut 2017}%          eFrench
+                           \xdef\FSfv{V6,01}%                    r j  +
                            \xdef\frenchstyleid{\FSfv\space-- \FSfd\space --}%
 }}%
-                           \edef\FSfd{2007/06/28 }%
+                           \edef\FSfd{2017/08/10}%
 %
 % History as given by Bernard Gaulle:
 % I started this job years ago (in 1989) firstly
@@ -149,9 +72,8 @@
 %
 % Lastest updates (previous updates infos in history file)
 % ===============
-%
 % V5,995
-%Released --bg 2005/04/18
+% Released --bg 2005/04/18
 % \XeTeXinputencoding is no more running: supporting
 % XeTeX is now differed. Jonathan Kew informed. --bg 2005/12/25
 % V5,996 patch to allow \label to run in math mode. --bg 2005/09/09
@@ -227,7 +149,16 @@
 % possible because eFrench is not compatible with babel but needs the
 % hyphenations rules for french and english. For german or ngerman,
 % the mlp module is responsible for finding the hyphenation.
+% This is possible because german or ngerman and french are the only 
+% language style running without babel.
+%  For babel there are other versions of these language packages. 
 % Changes made by Raymond Juillerat 2015/10/30
+% V6,01   
+% Correction of \originaloutput
+% Changes made by Raymond Juillerat 2017/02/24
+% \newcount, \newdimen, \newbox only not redefind if from eTeX
+% Changes made by Raymond Juillerat 2017/08/10
+% 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
 % Object: DOCUMENT CLASS OPTION for printing French texts with TeX or LaTeX
@@ -684,8 +615,6 @@
 %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
-\NeedsTeXFormat{LaTeX2e}[1996/12/01]%
-\let\auxWARNINGi=\@gobble%
 \def\@txt at msg#1{#1}% -Just get arg and remove {}.
 \def\@gobbleopt[#1]{}%
 \def\f at issue#1#2{#1{#2}\@ifnextchar[{\@gobbleopt}{}% -]
@@ -812,7 +741,7 @@
 \newdimen\@FrDimen% -general def for the style
 \def\usualmessages{\let\ifEightBitOutput\iftrue}%
       \ifnum\inputlineno=-1\def\@o at l{.}% -may be negative
-\else\def\@o at l{ (\`a la ligne \the\inputlineno).}\fi%
+         \else\def\@o at l{ (\`a la ligne \the\inputlineno).}\fi%
   \expandafter\let\expandafter\@aiguORI\expandafter=%
                \csname OT\string1\string\'\endcsname%
   \expandafter\let\expandafter\@gravORI\expandafter=%
@@ -846,7 +775,7 @@
                             }\expandafter\stop%
 \fi%
 {\def\GOfrench{\global\let\ifEightBitOutput\iffalse}% -force seven bits
-\let\add at accent\@gobble\edef\@tempa{\`{}}%
+ \let\add at accent\@gobble\edef\@tempa{\`{}}%
  \def\@tempb{{\setbox \@tempboxa \hbox {}\accent 18 }}%
  \ifx\@tempa\@tempb% -hum, OT1 is just loaded, so no expand.
       \expandafter%
@@ -1026,8 +955,8 @@
 \def\originalinput#1{\ifFrench\english\@finput{#1}\french% -..... \originalinput
                                 \else\@finput{#1}\fi\relax}%
 \def\originaloutput[#1]{% -..................................... \originaloutput
-     \bgroup\ifFrench\english\fi%
-     \def\@riginalout##1##2{\immediate\write##1{##2}\egroup}%
+     \ifFrench\english\fi%
+     \def\@riginalout##1##2{\immediate\write##1{##2}}%
      \@riginalout{#1}}%
 \let\ifFLA\iffalse% -We need \ifFLA now
 \@ifundefined{printindex}{% -makeidx.sty is included (as of 20-jan-87)
@@ -1051,7 +980,7 @@
 \let\@tbs\thebibliography%
 \let\fr at savebib\thebibliography%
 \long\def\thebibliography#1{% -..............USUAL........... \thebibliography
-                            \ifFLA%
+                \ifFLA%
                              \ifx\hyper at refstepcounter\undefined\else%
                               \stepcounter{subparagraph}%
                               \hyper at refstepcounter{subparagraph}%
@@ -1130,7 +1059,7 @@
 \@fW{ -24- %
 %\@txt at msg{\frenchname.sty utilise dans ce document le codage de fonte }%
 %\@txt at msg{\f at encoding.^^J}%
-}%
+    }%
     %
 \f at issue%
 \@fW{ -25- %\@txt at msg{\frenchname.sty affiche ici ses messages en }%
@@ -1325,7 +1254,7 @@
      \def\WindowsUnits{\@wu}\fi%
 %
 \def\FileName{\bgroup% -.............................................. \FileName
-\def\@FNenc at loop##1##2{\@tempcnta`##1\relax%
+              \def\@FNenc at loop##1##2{\@tempcnta`##1\relax%
                                       \loop\catcode\@tempcnta=11%
                                       \ifnum\@tempcnta<`##2\relax%
                                       \advance\@tempcnta\@ne%
@@ -1376,8 +1305,8 @@
         \let\@nobraces\@firstofone% -could be provided separately,
         \let\protect\string%
         \ifEightBitOutput% -eg by kbconfig.
-\def\'####1{\expandafter\@nobraces\@aiguORI####1}%
-\def\`####1{\expandafter\@nobraces\@gravORI####1}%
+             \def\'####1{\expandafter\@nobraces\@aiguORI####1}%
+             \def\`####1{\expandafter\@nobraces\@gravORI####1}%
              \def\^####1{\expandafter\@nobraces\@acchORI####1}%
              \def\"####1{\expandafter\@nobraces\@tremORI####1}%
              \def\c####1{\expandafter\@nobraces\@cediORI####1}%
@@ -1436,7 +1365,7 @@
                        \fi}%
 %#<
 \edef\originalmathcomma% -.................................. \originalmathcomma
-{\noexpand\mathcode`,=\the\mathcode`,}%
+            {\noexpand\mathcode`,=\the\mathcode`,}%
 %#>
 \@tempcnta=\the\mathcode`,\@tempcntb=\the\mathcode`,%
 \divide\@tempcnta by 4096\relax% -On r'ecup`ere la classe (demi octet poids fort)
@@ -1453,7 +1382,7 @@
 \let\ifFTY\iftrue% -For the following definitions:
 \ifx\@tempa\sm at rtcomma% -In case icomma is in force we use:
  \def\frenchmathcomma{% -...................................... \frenchmathcomma
-\def\@mathcomma{\ifFTY\mathcode`\,="8000\fi}%
+                      \def\@mathcomma{\ifFTY\mathcode`\,="8000\fi}%
                       \@mathcomma}%
 \else% -otherwise:
 \edef\frenchmathcomma{% -French math code for comma is usually "013B (ie 315).
@@ -1618,9 +1547,12 @@
 % done in \GOfrench:
 %\def\special#1{\@ifFTYfalse\bgroup\@Fstr\@s at ORI{#1}\egroup\@ifFTYback}%
 % \newcount, \newdimen, \newbox were \outer defs in plain.
+% but with eTeX these definitions are ok (rj, v 6,01)
+\ifx\eTeXversion\undefined%              (rj)   
 \def\newcount{\alloc at 0\count\countdef\insc at unt}% -.................... \newcount
 \def\newdimen{\alloc at 1\dimen\dimendef\insc at unt}% -.................... \newdimen
 \def\newbox{\alloc at 4\box\chardef\insc at unt}% -......................... \newbox
+\fi%                                     (rj)
 %
 %........................................ Modified package's & LaTeX macros
 %
@@ -1672,7 +1604,7 @@
 \@ifundefined{lettrinefont}{\let\lettrinefont\Huge}{}% -........... \lettrinefont
 \let\sv at lf=\lettrinefont% -save it
 \ifx\@pdfcreator\undefined% -Complete pdf creator name.
- \else\addto\@pdfcreator{, with \frenchpack\space shareware}\fi%
+ \else\addto\@pdfcreator{, with \frenchpack\space package}\fi%
 %#>
 % Command to leave chapter counter asis.................... \noresetatpart
 \def\noresetatpart{\ifFLA\let\cl at part\empty\fi}%
@@ -1704,7 +1636,7 @@
      \penalty\@highpenalty%
    \endgroup}}%
 \ifx\RIfM@\undefined\@tempa% -use l at chapter
-\else% % -even with AmS styles
+ \else% % -even with AmS styles
   \ifx\fr at RIfM@cls\undefined\@tempa
 \fi% -but not for AmS classes
 \fi}{}% -undefined in article.sty
@@ -1798,7 +1730,7 @@
 % with a \protected at xdef for \jb at key.
   \def\jb at lbibitem[##1]##2{%
       \gdef\jb at tempb{##1}%
-\protected at xdef\jb at key{##2}%\gdef\jb at key{##2}%
+      \protected at xdef\jb at key{##2}%\gdef\jb at key{##2}%
       \ifjb at index@bib%
          \jb at call@index{aut}{##2}%
          \jb at call@index{ed}{##2}%
@@ -2642,7 +2574,7 @@
    \def\chaptername{Chapitre}%
    \def\appendixname{Annexe}%
    \let\captionsnames\captionsfrench%
-\fi% \else of \ifx\captionsnames\captionsfrench%
+  \fi% \else of \ifx\captionsnames\captionsfrench%
    \let\today\todayfrench%
 \def\@cORI{\@cnsORI% -Restore original caption names
             \let\today\@tdORI%
@@ -2828,7 +2760,7 @@
                     \def\@evenhead{}\def\@evenfoot{}%
                     \else\@ps at fp\fi}%
   \long\def\opening####1{% -.......................................... \opening
-\ifFLA%%% -these 3 counts not saved for other languages (unnecessary)
+     \ifFLA%%% -these 3 counts not saved for other languages (unnecessary)
           \advance\indentedwidth   by -0.25\longindentation%
           \advance\longindentation by  0.22\textwidth%
           \advance\parindent       by  1.5em% -null in standard .....
@@ -2868,7 +2800,7 @@
                           \textbf{\Objectname}\space\@object \par}%
           \fi%
           \par\vspace*{3\parskip}%
-\noindent####1\hfill\vspace*{3\parskip}% no need of \linebreak%
+          \noindent####1\hfill\vspace*{3\parskip}% no need of \linebreak%
           \@wideletter%
     \else\@oORI{####1}%
     \fi}}%
@@ -3205,7 +3137,7 @@
 % include ! ? ; : < > ` ' ^ " in dospecials and sanitize:
 \def\@dospecialsfrench{\do\`\do'\@dsversa}% -..................\@dospecialsfrench
 \def\@dsversa{% -specials reduced for versatim envir..........\@dsversa
-\do\ \do\\\do\{\do\}\do\$\do\&\do\#\do\|\do\^^K\do\_\do\^^A\do\%\do\~% -$emacs
+  \do\ \do\\\do\{\do\}\do\$\do\&\do\#\do\|\do\^^K\do\_\do\^^A\do\%\do\~% -$emacs
   \do\!\do\?\do\;\do\:\do\<\do\>\do\^\do\"}%
 \def\@sanitizefrench{% -.........................................\@sanitizefrench
 % \@makeother\ \@makeother\\\@makeother\$\@makeother\&%$emacs
@@ -3313,8 +3245,8 @@
                               \fi%
                          \string:%
          \@beginparpenalty=\@M\relax%
-         -Page break forbidden after ":"
-\fi}% % -but remains not perfect...
+%         -Page break forbidden after ":"
+         \fi}% % -but remains not perfect...
 % Stuff for \WindowsUnits
 \def\@wu#1{\@@wu#1,\void}%
 \def\@@wu#1,#2{\ifx#1\empty\else\@@@wu #1\fi%
@@ -3510,7 +3442,7 @@
 \fi%
 
 \def\@@FG{\ifCG\f at issue%
-\@fw{-14- %\@txt at msg{fermeture de guillemets non ouverts}%
+               \@fw{-14- %\@txt at msg{fermeture de guillemets non ouverts}%
                    }\fi%
           \ifUSP\unskip\kern+0.13em\else%
                  \ifdim\lastskip>\z@\unskip% -skip previous space
@@ -3836,62 +3768,70 @@
             \else\ifx\@tempb\@excn\@tempc\fi\fi}%
 \gdef\NouveauLangage[##1]##2{%....................... \NouveauLangage[##]{name}
 %-- check for an anormal change in language.dat:
-\expandafter\@ifundefined{l@##2}{}% do nothing, unused at initex
-{% First accept babel definitions (\chardef) of languages.
-\chardef\l at no##1\expandafter\if\csname l@##2\endcsname\l at no\else%
-\edef\l at no{##1}\expandafter%
+   \expandafter\@ifundefined{l@##2}{}% do nothing, unused at initex
+   {% First accept babel definitions (\chardef) of languages.
+    \chardef\l at no##1\expandafter\if\csname l@##2\endcsname\l at no\else%
+    \edef\l at no{##1}\expandafter%
 % Secondly accept our own defs.
-\ifx\csname l@##2\endcsname\l at no% OK
-\else\f at issue\typeout{^^J \frenchname.sty \string: -27- %
+   \ifx\csname l@##2\endcsname\l at no% OK
+   \else\f at issue\typeout{^^J \frenchname.sty \string: -27- %
 %\@txt at msg{language \l at no\space (##2) was initially }%
 %\@txt at msg{(at initex) numbered \csname l@##2\endcsname\space(ERROR!)}%
-}[##2]\f at ERRdat%
-\fi\fi}%
+                        }[##2]\f at ERRdat%
+   \fi\fi}%
 %--
-\expandafter\tl at ng\csname##2TeXmods\endcsname%
-\expandafter\gdef\csname##2 \endcsname% The protected language cs.
-{\expandafter\switchtolanguage\csname ##2TeXmods\endcsname%
-\@Hif\language=##1\@Hfi\relax}%
-\expandafter\gdef\csname##2\endcsname% The language cs.
-{\protect\csname##2 \endcsname}%
-}%\NouveauLangage
-\gdef\Nouveau at Langage[##1]##2{% -....................... \Nouveau at Langage[##]{name}
+         \expandafter\tl at ng\csname##2TeXmods\endcsname%
+         \expandafter\gdef\csname##2 \endcsname% The protected language cs.
+          {\expandafter\switchtolanguage\csname ##2TeXmods\endcsname%
+           \@Hif\language=##1\@Hfi\relax}%
+         \expandafter\gdef\csname##2\endcsname% The language cs.
+                          {\protect\csname##2 \endcsname}%
+                          }%\NouveauLangage
+% ============================================
+% begin definition of Nouveau at Langage
+\def\Nouveau at Langage[##1]##2{% -....................... \Nouveau at Langage[##]{name}
+
 %arabic as a language should not change the definition of \arabic V5,9995  
 % the same is valid for future similar cases V5,9995 
     \expandafter\@ifundefined{##2}{\lang at defifalse}% V5,9995 
                 {\lang at defitrue}% V5,9995  
 %-- check for an anormal change in language.dat:
-    \expandafter\@ifundefined{l@##2}{}% -do nothing, unused at initex
-    {% -First accept babel definitions (\chardef) of languages.
-     \chardef\l at no##1\expandafter\if\csname l@##2\endcsname\l at no\else%
-     \edef\l at no{##1}\expandafter%
-% Secondly accept our own defs.
-    \ifx\csname l@##2\endcsname\l at no% -OK
-    \else\f at issue\typeout{^^J \frenchname.sty \string: -27- %
-%\@txt at msg{language \l at no\space (##2) was initially }%
-%\@txt at msg{(at initex) numbered \csname l@##2\endcsname\space(ERROR!)}%
-                         }[##2]\f at ERRdat%
-    \fi\fi}%
-%--
+    \expandafter\@ifundefined{mlp##2}{\langmlp at defifalse}% 
+                {\langmlp at defitrue}%                           
+    \def\l at n@test{##2}
+   \ifx \l at n@fre\l at n@test\langok at defitrue\fi % french is accepted:\def\l at n@fre{french}%
+   \ifx \l at n@eng\l at n@test\langok at defitrue\fi % english accepted:  \def\l at n@eng{english}%
+%    \iflangok at defi \typeout{ ##1 : ##2}\fi% 
+%                                                    < -- arabic prepare
+    \expandafter\@ifundefined{l@##2}{}%
+         \iflangok at defi 
+         {%            
           \expandafter\tl at ng\csname##2TeXmods\endcsname%
-        \iflang at defi% V5,9995 
-          \expandafter\gdef\csname##2Lang \endcsname% V5,9995 
-          {\expandafter\switchtolanguage\csname ##2TeXmods\endcsname% V5,9995
-           \@Hif\language=##1\@Hfi\relax}% V5,9995 
-          \expandafter\gdef\csname##2Lang\endcsname% V5,9995 
-                           {\protect\csname##2Lang \endcsname}% V5,9995 
-            \typeout{eFrench Info : % V5,9995 
-                <b.o.i>##2Lang commute sur langue ##2 = = = =}% V5,9995 
-            \typeout{eFrench Info : % V5,9995 
-                et <b.o.i>##2TeXmods pour ses extensions = = = =}% V5,9995 
-        \else% V5,9995 
+        \iflang at defi%               ++ test same name existing?
           \expandafter\gdef\csname##2Lang \endcsname%
           {\expandafter\switchtolanguage\csname ##2TeXmods\endcsname%
            \@Hif\language=##1\@Hfi\relax}%
-          \expandafter\gdef\csname##2\endcsname% -The language cs.
+          \expandafter\gdef\csname##2Lang\endcsname% 
+                           {\protect\csname##2Lang \endcsname}% 
+            \typeout{eFrench Info : % 
+               \\##2Lang commute sur langue ##2 }% 
+            \typeout{eFrench Info : % 
+                et \\##2TeXmods pour ses extensions }%
+            \typeout{eFrench Info : % 
+                avec \\ = une seule barre oblique inverse ===}%
+           \else%                   ** name not yet existing
+          \expandafter\gdef\csname##2 \endcsname%
+          {\expandafter\switchtolanguage\csname ##2TeXmods\endcsname%
+           \@Hif\language=##1\@Hfi\relax}%
+          \expandafter\gdef\csname##2\endcsname%
                            {\protect\csname##2 \endcsname}%
-        \fi% V5,9995 
+        \fi%                      same name already existing ?                         
+           }%
+        \fi%                            -- french or english accepted 
                             }% -\Nouveau at Langage
+% end definition of Nouveau at Langage
+% ============================================
+%  using Nouveau at Langage also for dialects:
 % test if #1 equal ``='' that means same language hyphenation but a dialect.
 \edef\@temp@{=}%
 \def\@langue##1##2 ##3 ##4/##5{\def\@tempa{=}\def\@tempb{##1}%
@@ -3900,7 +3840,7 @@
             \relax% -relax Max! Why is it absolutely needed?
             \expandafter\Nouveau at Langage\expandafter[\the\@FrCount]{##2}%
                       \ifnum\@FrCount \@temp@ 0 \@FrCount= -1\fi%
-    \else\edef\@temp@{<}\@l at ngue##1##2 ##3 ##4/{##5}%
+    \else\langok at defifalse\edef\@temp@{<}\@l at ngue##1##2 ##3 ##4/{##5}%
     \fi}%
 \def\@l at ngue##1 ##2 ##3/##4{\Nouveau at Langage[##4]{##1}%
 %%%\typeout{La langue ##1 est utilis\'ee sous le num\'ero \the\@FrCount}
@@ -3911,6 +3851,9 @@
                             }% -end of \Nouveau at Langage
 %
 \let\hyphenation\f at hyphenation% -use our new macro.
+%
+% Nouveau at Langage (as @l at ngue will be use to read language.dat : 
+%
 \openin\@inputcheck = language.dat \def\@tempb{}%
 \ifeof\@inputcheck\@Ffnt{language.dat}%
        \ifx\undefined\french % -language.dat is absent but \french might be def.
@@ -3933,9 +3876,17 @@
                             }}%
        \fi
 \else\@FrCount=-1%
-\newif\iflang at defi% V5,9995 
-\let\englishORI\english% V5,9995  
-\let\english\undefined% V5,9995  
+% ===============================
+% begin some indicators for language testing
+\newif\iflang at defi% V5,9995 RJ
+\newif\iflangmlp at defi% V5,9995 RJ 
+\newif\iflangok at defi% V6,0 RJ
+\def\l at n@fre{french}% V6,0 RJ
+\def\l at n@eng{english}% V6,0 RJ
+\let\englishORI\english% V5,9995 RJ 
+\let\english\undefined% V5,9995 RJ 
+% end some indicators
+% ===============================
 \loop  \endlinechar=-1  \read\@inputcheck to \@lineD  \endlinechar`\^^M%
   \ifx\@lineD\empty  \else \advance\@FrCount by 1%
     \edef\@lineD{\@lineD\space\space/{\the\@FrCount}}%
@@ -3965,7 +3916,7 @@
 \@ifundefined{french}{\@MLtst}{}% -French might be still undefined!
 \@ifundefined{endenglish}{\global\let\endenglish\french}{}% -and \endenglish
 \gdef\tl at ng##1{\ifx ##1\relax\f at issue%
-\@fw{-21- %\@txt at msg{##1 n'est pas d\'efini}%
+                             \@fw{-21- %\@txt at msg{##1 n'est pas d\'efini}%
                                  }[##1]\fi}%
 \ifx\ORIGfrench\french\f at ERRdat\fi%
           \egroup% -this is the end of the marmelade

Modified: trunk/Master/texmf-dist/doc/generic/e-french/src/frenchle.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/src/frenchle.tex	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/src/frenchle.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -1005,7 +1005,7 @@
 \end{center}
 
 \frenchtypography\frenchlayout
-\pagebreak
+%\pagebreak
 Tous les effets que l’on vient de voir pour les notes sont contrôlables par
 les ordres \texttt{{\backslash}french\-typography}\index{frenchtypography@\verb'\frenchtypography'}
  et \verb|\frenchlayout|\index{frenchlayout@\verb'\frenchlayout'}, l’un gérant l’espacement et
@@ -1065,6 +1065,7 @@
 
 Ainsi, la composition par \textit{frenchle} est redevenue tout à fait au standard
 \LaTeX.
+\pagebreak
 \subsection{ Le titrage}
 L’extension \textit{frenchle} traduit et compose les différents éléments servant au
 titrage\index{titrage} dans le document comme vous le trouverez ci-après. Une exception

Added: trunk/Master/texmf-dist/doc/generic/e-french/test/README
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/README	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/README	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,51 @@
+% README of the french style distribution (tst sub-directory)        2003/02/17
+%                        author Bernard Gaulle, adapted Raymond Juillerat 
+%
+
+This material was designed to help (La)TeX users to test the french style
+files installation. 
+
+Quick description of contents:
+
+README.test   : the file you are reading.
+
+fxench.tst    : this file has to be converted to 8-bit and renamed french.tst;
+                this is the bi-lingual torture test basic file used to 
+                typeset the following documents:
+frenchlb.tex  : a french LaTeX book (to be compared at printing level
+                                      with frenchrf.pdf).
+texxetlb.tex  : the same to be run with any TeXXeT engine.
+frenchab.tex  : the same with AmsLaTeX.
+
+frenchln.tex  : the same, loading the french style before \documentstyle.
+                          and testing the "poor man french style" option.
+frenchlr.tex  : a french LaTeX report
+frenchla.tex  : a french LaTeX article
+frenchll.tex  : a french LaTeX letter (just a test)
+
+The previous files require:
+myfigure.eps  : an EPS face (not mine) 
+mygglo.ist    : the file is use with Makeindex to produce my glossary
+mylist.sty    : a verbatim style
+frenchlb.ind  : for those who don't have makeindex, this is the index produced.
+frenchlb.glo  : for those who don't have makeindex, this is the glossary too.
+
+For comparison after installation:
+frenchrf.pdf  : the Torture test (frenchlb) document composed by the author.
+                (The program makeindex was used to produce the index 
+                 i.e. the .ind file and the glossary i.e. the .glo file)
+
+Your "TO DO" list:
+=================
+
+1- Convert the file french.tst to 8-bit.   
+2- Ensure your TEXINPUT path pointing to the inputs directory first. 
+   For LaTeX users: LaTeX frenchlb.tex 
+   For TeX users:     TeX frencht.tex
+3- Print the first 45 pages of frenchlb.pdf.
+4- Print the first 45 pages of frenchrf.pdf and then compare the outputs
+5- Go back to the main directory.
+
+Optional tests are provided, look at the files.
+==============================================================================
+


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/test/README
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/test/french.tst
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/french.tst	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/french.tst	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,3805 @@
+% !TeX encoding = latin9
+% This is the french torture file for all formats.
+%                                   Copyright Bernard Gaulle as in french.doc
+%
+% \xC0 passer en 8 bits conform\xE9ment \xE0 votre syst\xE8me
+%                                                       
+%%      checksum        = "25011 3750 14847 120214"
+%%
+%
+% For localisation:
+%
+\makeatletter%
+\ifx\documentclass\undefined\let\kbAissue\relax\let\typeouA\typeout%
+\else%
+   \let\typeouA\@gobble%
+% For debugging one can remove "msg" access, just uncomment
+%\let\kbAissue\relax% this line.
+   \ifx\kbAissue\undefined%
+% Firstly we add the material to use the "msg" package for localization.
+      \def\kb at issue#1#2{\kb at issue@[#1]#2\void}% The local \issuemsg macro.
+                                      % which will call the real one;
+                                      % #1 is the macro message required.
+                                      % #2 is the message header + msg number
+                                      %    such as "^^J -234-", just message 
+                                      %    number (234) is kept. 
+      \let\kbAissue\kb at issue%
+      \def\kb at issue@[#1]#2-#3-#4\void{\issuemsg[#1]#3(french)}%
+   \ifx\issuemsg\undefined\let\kbAissue\relax\let\typeouA\typeout\fi%
+   \fi%
+\fi%
+\makeatother%
+%
+% For better debugging:
+\ifx\IeC\undefined
+\kbAissue% localise it.
+\typeout{^^J-66- ERROR! This file can't be typeset without any input} 
+   \typeouA{-66- encoding declaration (look at keyboard or inputenc packages.)}
+\expandafter\stop% \usepackage[latin1]{keyboard} should be fine.
+\fi
+\let\FP\frenchpack\hyphenation{e-french} % anciennement French-Pro
+\wlog{Formating \jobname\space with\space\FP\space(\frenchstyleid)}
+%
+%
+\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi%
+\ProvidesFile{french.tst}% 
+        [2005/05/11 The torture test file for the package \FP]% **last mods**
+\ifx\undefined\FmsG\def\FmsG{}\def\SmsG{}\fi
+%
+{\catcode`\<=\active\catcode`\>=\active%
+% Je veux :
+%\global\def<{\left\langle}\global\def>{\right\rangle}
+% Et pour ne pas pouvoir avoir l'effet que localement, 
+% je fais : 
+\gdef<{\myinf}\gdef>{\mysup}
+}
+\label{nulllabel}% null \label for AmSTeX test \ref within a \ref
+\iflatex\makeindex \makeglossary 
+        \csname frhyphex\endcsname% load (again) the exceptions, outside babel
+        \def\NL#1{\Sauter#1Lignes} 
+        \begin{document}
+        \makeatletter
+        \ifx\babel at savevariable\undefined%
+                             \let\FRENCH\frenchTeXmods% 
+                        \else\def\FRENCH{\selectlanguage{french}}% pour babel
+        \fi%
+        \makeatother
+        \csname onecolumn\endcsname % avoid writting \onecolumn 
+                                    % (special effect in frencht.tex)
+        \renewcommand{\thepage}{\roman{page}}%
+        \ifx\documentclass\undefined\else% for 2e
+        % As 2e doesn't accept \verb in arguments:
+        \gdef\myverb|#1|{%\nonfrench
+                         \texttt{#1}%
+                         %\endnonfrench
+                         \relax}%
+        \fi
+\else
+        \let\FRENCH\frenchTeXmods% 
+        \def\NL#1{\par} 
+\fi
+\ifx\myverb\undefined\let\myverb=\verb\fi%
+% global here is just req. for TeX--XeT tests.
+\global\let\myinf\inferieura% A no-op def
+\global\let\mysup\superieura% for a temporary action
+\ifx\undefined\english\let\english\relax\fi%
+% Les \ldots sont $\ldots$ a cause de AmSLaTeX V1.1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def\HyphDiff#1#2{{\setbox0=\vbox{%
+                   \pretolerance=-1 \hyphenpenalty=-10000
+                   \hsize=0pt \leftskip=0pt \rightskip=0pt \parfillskip=0pt
+                   \parindent=0pt \hfuzz=\maxdimen \interlinepenalty=0
+                   \clubpenalty=0 \widowpenalty=0 \brokenpenalty=0
+                       \hskip 0pt #1}%
+                   \setbox2=\hbox{}%
+                   \setbox9=\vbox{\unvbox 0 \loop \unskip \setbox1=\lastbox
+                                            \ifhbox 1 
+                                                 \global\setbox 2 = \hbox{%
+                                            \unhbox 1 \discretionary{}{}{}%
+                                                           \unhbox 2}%
+                                            \repeat}%
+\setbox3\hbox{#2}\ifnum\wd2=\wd3\else
+\kbAissue% localise it.
+\typeout{-31- Wrong French Hyphenation\string! 
+               Are you sure to run with a format ***********}
+\typeouA{-31- in which the french patterns were 
+                installed at initex time\string? ***********}
+\ifECM\else%
+\kbAissue% localise it.
+\typeout{-32- if yes try to switch to T1 font 
+             encoding (\noexpand\usepackage[T1]{fontenc})***}
+\fi%
+\showhyphens{#1}\typeout{(should be\string: #2) 
+  \string<\string<======== *********************************}
+\fi}}
+\HyphDiff{\xE9ventualit\xE9}{\xE9ven-tua-lit\xE9}
+\HyphDiff{d\xE9gazonnage}{d\xE9-ga-zon-nage}
+\HyphDiff{chromosomique}{chro-mo-so-mique}
+%%%%
+\SmsG%
+\typeout{V\'%
+         erification de la sortie de caract\`%
+         eres 8-bits \string:}
+\message{L'\'% \typeout ne transforme pas en 8bits pour l'instant.
+         et\'%
+         e est l\`%
+         a en ao\^%
+         ut \string!} 
+\iflatex%
+\typeout{Essai de macro d'accentuation dans un ordre \string\showhyphens %
+         \string:}
+\showhyphens{Faut-il croire \`%
+             a l'\'%
+             ETERNIT\'%
+             E ? \'%
+             eludons ...}
+\showhyphens{Ao\^%
+             ut 2001 ou l'autre \`%
+             ere ...}
+\fi%
+\FmsG%
+%
+\english% Title page is in english
+\ifx\documentclass\undefined % Still Plain! so no \DeclareFontFamily
+\else%
+% To avoid "No file OMScmtt.fd" message 2004/10/29
+\DeclareFontFamily{OMS}{cmtt}{\skewchar\font48 }
+\DeclareFontShape{OMS}{cmtt}{m}{n}%
+   {<->ssub*cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmtt}{m}{it}%
+   {<->ssub*cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmtt}{m}{sl}%
+   {<->ssub*cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmtt}{m}{sc}%
+   {<->ssub*cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmtt}{bx}{n}%
+   {<->ssub*cmsy/b/n}{}
+\DeclareFontShape{OMS}{cmtt}{bx}{it}%
+   {<->ssub*cmsy/b/n}{}
+\DeclareFontShape{OMS}{cmtt}{bx}{sl}%
+   {<->ssub*cmsy/b/n}{}
+\DeclareFontShape{OMS}{cmtt}{bx}{sc}%
+   {<->ssub*cmsy/b/n}{}
+%%%%%%%%%%%%%%%%%%%%%%%
+\fi% 
+\makeatletter% for \f at encoding 
+\title{\fbox{ \FP\ \LaTeX%
+             \thanks{We are here in english, notice the problem when we use,
+                     like in \texttt{frenchla}, a
+                     {\mdseries\texttt{\textbackslash fnsymbol}}
+                      in a box.\newline%
+                     \indent \hspace*{0.5em}
+                             Notice also that 
+                             {\mdseries\texttt{\textbackslash backslash}}
+                             can't be used.%
+                    }%
+            }\\ \ \\%
+             Version \frenchstyleid\\ \ \\
+             ``Torture'' Test (\jobname) \\ with
+             \ifx\encodingdefault\undefined Unknown
+              \else\ifx\f at encoding\undefined\encodingdefault{} 
+                     \else\f at encoding{} \fi
+             \fi Font Encoding\\\ }
+  \author{Bernard {\sc Gaulle}%
+          \thanks{Thanks to those good guys who helped me.\newline%
+                  \indent\hspace*{0.5em}
+                          This test note is also referred by a
+                         {\mdseries\texttt{\textbackslash refmark}} call.
+                  \label{title:thanks}% 
+                 }%
+          \\ \ \\ et...\refmark{title:thanks}%
+         }%
+% AmS \normalparindent no more exists 2000/06/15, so the code is removed.
+%\makeatletter% Don't let AMS change \parindent
+%\ifx\RIfM@\undefined\else\normalparindent=1em\parindent=\normalparindent\fi%
+%\makeatother
+\makeatother%
+\date{Printed on \today} 
+% As the titlepage is in English but the date in French we let \ier defined:
+{\def\ier{ier}\maketitle}
+\setcounter{page}{2}\thispagestyle{empty}
+\cleardoublepage\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\onecolumn
+\sommaire[4]
+\bigskip 
+\begin{center}
+\noindent\fbox{%
+\begin{minipage}[t]{0.5\textwidth}
+\begin{center} \fbox{\parbox{5cm}{{\bf Remarque} : \\ la commande
+\texttt{\backslash som\-maire}\label{pbverb}%
+\footnote{Cette note a \xE9t\xE9 demand\xE9e depuis une minipage.}%
+\footnote{Cette deuxi\xE8me note aussi.} 
+%%%%NB : \verb|\sommaire| ou \verb|\tableofcontents| produisent des HORREURS,
+%%%%     lorsqu'ils ont utilises dans un \fbox, BUG LATEX !
+ est un apport de \FP.\hfill}} 
+\end{center}
+\end{minipage}
+}
+\end{center}
+
+{% Not a LaTeX redefinition : \def\thefootnote{\fnsymbol{footnote}}
+\renewcommand{\thefootnote}{\fnsymbol{footnote}}%
+Essai de note avec \verb|\fnsymbol|
+\footnote{Note avec une \xE9toile.}.
+
+\def\thefootnote{\relax}
+Essai de note de bas de page non num\xE9rot\xE9e
+\footnote{Note non num\xE9rot\xE9e.}.
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\cleardoublepage
+\chapter*{\prefacename}
+
+{\em Certains croient qu'une pr\xE9face peut apporter de la valeur au livre,
+moi je pense plut\xF4t que cela apporte de la {\em valeur} 
+\xE0 l'auteur...} (dans
+tous les sens du terme).
+
+\cleardoublepage
+
+\twocolumn 
+\renewcommand{\thepage}{\arabic{page}}\setcounter{page}{1}%
+\chapter*{Introduction}
+
+\begin{motsclef}
+french, style, francisation, francophonie, multilingue, 
+english, option, extension. 
+\end{motsclef}
+
+\begin{resume} 
+Ce document a \xE9t\xE9 con\xE7u
+uniquement pour tester intensivement \FP\ (anciennement appel\xE9 
+option de style% 
+   \glossary{\xAB : ; style ? ! \xBB}\index{\xAB : ; style ? \xBB}%
+   \footnote{Cette note a pour but de faire appel \xE0 une macro
+             \texttt{\backslash index} contenant des caract\xE8res actifs.%
+             \index{\xAB : ; depuis la note de bas de page ? \xBB}%
+            } 
+\index{french!Le point d'exclamation est un caract\xE8re sp\xE9cial de Makeindex}%
+\index{<@{\tt\protect\inferieura} ({\tt\protect\backslash inferieura})}% 
+\index{>@{\tt\protect\superieura} ({\tt\protect\backslash superieura})}%
+\index{Magic di N'Konga (auteur c\xE9l\xE8bre)}%
+ \texttt{FrenchPro}).  
+\end{resume}
+
+\bigskip Notez que les deux environnements \verb|resume| et \verb|motsclef|
+(ainsi que \verb|keywords|)
+sont des apports de \FP.
+
+\bigskip Si le libell\xE9 \xAB R\xE9sum\xE9 \xBB appara\xEEt dans la partie
+ anglaise, cela
+signifie que \FP\ ne poss\xE9dait pas de d\xE9finition
+d'\verb|\abstract| et donc l'a remplac\xE9 par \verb|\resume|. Cela signifie
+aussi que les libell\xE9s anglais n'ont pas \xE9t\xE9 d\xE9finis 
+%(\verb|\captionnames|%
+%\footnote{Une extension {\tt fenglish} est fournie conjointement avec
+%\FP\ ; {\tt\backslash captionnames} y est d\xE9fini. 
+%Cette extension {\tt
+%fenglish} est automatiquement appel\xE9e par \FP\  dans le
+%cas que nous avons cit\xE9.}
+% n'\xE9tait pas d\xE9fini par les extensions appel\xE9es avant
+% \FP).
+Rappelez-vous aussi que \verb|\abstract| ne fait pas partie de la classe
+de document \verb|book|.
+
+Remarquez les diff\xE9rences entre les num\xE9ros de notes de bas de page en 
+fran\xE7ais et en anglais, ainsi que l'impression de ce m\xEAme num\xE9ro en
+bas de la page.
+
+\english\newpage
+\begin{keywords} %???\relax% for AMS which has its own macro with #1
+French, Style, Option, Package, French-Speaking usage, English, Multilingual.
+\end{keywords}
+
+\begin{abstract} The object of this paper is to test intensively \FP.
+\end{abstract}
+\NL1
+
+\bigskip Notice that the three environments 
+\verb|resume|, \verb|keywords| and \verb|motsclef|
+are all introduced by \FP.
+
+\bigskip Notice that if the abstract name printed here is not ``Abstract'' you
+are using packages that have no \verb|\abstractname| defined for eng\-lish. 
+ The english package defining such captions is loaded only 
+if \verb|\captionsnames|%
+\footnote{The {\tt fenglish} package is given with \FP,
+so {\tt$\backslash$captionnames} are normally defined because 
+\FP\ is calling automatically the {\tt fenglish} package in the 
+pre\-viously cited case.} was
+previously undefined.  (Remember also that as \verb|\abstract| is not defined
+in the \verb|book| document class the \FP\ assumes it is a
+\verb|\resume|.)
+
+Notice the different typesetting of the footnote numbers in French and English
+as well as the printing of that numbers before the footnote text.\vfill
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%\pagebreak
+\french
+\part{Ce qui marche est ici...}
+\disallowuchyph% ce que je prefere...
+
+\chapter{Avertissements}
+
+Seul le document authentique qui est fourni par l'auteur
+ sous une forme compos\xE9e
+constitue la r\xE9f\xE9rence. Cela veut dire que l'installateur de \FP\ 
+sur un syst\xE8me doit comparer son r\xE9sultat 
+(sous forme papier ou
+fichier \verb|.pdf|) avec la forme authentique fournie par l'auteur.
+
+\bigskip
+
+\bigskip \FP\  a \xE9t\xE9 con\xE7u pour fonctionner 
+avec la majorit\xE9 des formats bas\xE9s sur \LaTeX{}
+\footnote{Au si\xE8cle dernier (XX\ieme), \FP\ \xE9tait appel\xE9 \xAB style 
+\texttt{french} \xBB et pouvait fonctionner en dehors de \LaTeX\ mais
+l'effort pour assurer cette facilit\xE9 dans de trop nombreux formats
+exotiques \xE9tait totalement disproportionn\xE9 ; ceci a donc \xE9t\xE9
+abandonn\xE9 (au moment de la sortie de \LaTeXe).}%
+. 
+
+\bigskip \AllTeX{} est mon logo ; il symbolise {\em tous les \TeX{}} ; on peut
+l'imprimer correctement dans toutes les polices ({\em \AllTeX}, {\bf \AllTeX}, 
+{\sf \AllTeX}, {\tt \AllTeX}, ...) gr\xE2ce \xE0 la partie NFSS de \LaTeXe%
+\footnote{Le document de r\xE9f\xE9rence ({\tt frenchrf})
+a \xE9t\xE9 produit avec NFSS. Ce document-ci a \xE9t\xE9 compos\xE9 avec le format 
+{\tt \fmtname}.}
+.
+
+\newpage\english Only the authentic author's document in a composed form is
+the reference.  That means that the on site \FP\ installator must
+compare his result (paper or \verb|.pdf| file) with the authentic form
+provided by the author.
+\NL2
+
+\bigskip \FP\ was designed to work with all {\em formats\/} 
+based on \LaTeX.
+
+\bigskip \AllTeX{} is my logo ; it's a  symbol for expressing 
+{\em all \TeX{}} ; one can print it correctly in all shapes
+({\em \AllTeX}, {\bf \AllTeX}, 
+{\sf \AllTeX}, {\tt \AllTeX}, etc.) due to the NFSS part of \LaTeXe%
+\footnote{The
+reference document was produced with NFSS of {\tt \fmtname}.}%
+.
+
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{La torture} 
+
+\section{Le saviez-vous ?} Nos journaux, livres, revues,
+articles scientifiques ou autres ont \xE9t\xE9 (en gros) durant les trente
+derni\xE8res ann\xE9es du vingti\xE8me si\xE8cle imprim\xE9s 
+par des machines d'origine
+am\xE9ricaine. Ainsi, petit \xE0 petit, nous perd\xEEmes 
+l'habitude de lire des
+majuscules accentu\xE9es parce que tout simplement les polices
+ de caract\xE8res
+utilisables sur ces machines n'en comportaient pas.
+
+L'usage de plus en plus g\xE9n\xE9ralis\xE9 de l'infor\-ma\-tique 
+{\em am\xE9ricaine} fit ainsi dispara\xEEtre pendant un temps tous
+ les accents de notre langue \xE9crite.
+
+De la m\xEAme mani\xE8re un certain nombre de 
+{\em mauvaises habitudes} furent
+prises quasiment inconsciemment tout simplement parce que les programmes
+informatiques ne pouvaient pas faire autrement. Ainsi de nombreuses {\it
+coquetteries} de notre typographie sont tomb\xE9es dans l'oubli.
+
+Saviez-vous par exemple qu'on n'imprime pas des guillemets comme ceci `` '' ni
+m\xEAme ` ' mais ainsi \xAB \xBB ? Nous nous autoriserons toutefois
+ \xE0 utiliser dans
+ce document ces guillemets %\noenglishquote 
+(` ') que nous consid\xE9rons comme
+{\em techniques}.
+
+\newpage\english \section{Did you know that?}
+Our (french)
+newspapers, books, magazines, scientific articles and other things have
+been printed  the last thirty years (roughly)
+of the twentiest century with american machines. So our
+habits to read accented uppercase letters declined because they simply were
+not included in the machinery.\NL2
+
+Together with American computer usage growth, all french
+diacritics disappeared from our french written language.\NL1
+
+In a same way {\em bad
+habits} took place, inconsciously, for the only reason that computer programs
+could not do otherwise. So, a lot of  french typographic {\em coquetteries\/}
+are largely forgotten.\NL1
+
+ Did you know for example that we never typeset french
+guillemets like this `` '' neither ` ' but%
+{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f at encoding\else%
+\footnote{We switched to \emph{French} here to be able %
+          to print valid glyphs.}%
+\fi} %
+\begin{french}\xAB and \xBB\end{french}? Instead, we will
+authorised ourselves to use (` ') in this document 
+because we consider they are {\em technical} guillemets.
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+*** Cet espace est laiss\xE9 intentionellement \xE0 blanc ***
+\NL3
+\section{Typographie fran\xE7aise}
+%\noenglishquote 
+La typographie fran\xE7aise est sp\xE9cifique en ce qui concerne
+l'utilisation des signes sui\-vants : 
+`\verb|.| \verb|:| \verb|;| \verb|!| \verb|?| \verb|\xAB| \verb|\xBB|'. 
+
+La r\xE9partition des espaces dans une ligne se fait de fa\xE7on 
+\xE9quitable entre les
+mots (jamais \xE0 l'int\xE9rieur des mots) et apr\xE8s 
+la ponctuation (c'est le
+\verb|\frenchspacing| de \TeX{}) contrairement \xE0 la
+ typographie anglaise.
+
+Les `\verb|; ! ?|' doivent \xEAtre pr\xE9c\xE9d\xE9s d'une espace fine 
+ins\xE9cable.  C'est
+ce que nous avons appliqu\xE9 dans \FP.  
+Le cas du `\verb|?|'
+a \xE9t\xE9 trait\xE9 sp\xE9cialement car l'espace fine ayant 
+\xE9t\xE9 jug\xE9e trop grande (par
+des sp\xE9cialistes), a \xE9t\xE9 r\xE9duite tout en adjoignant une peu de 
+{\em glue} d'extensibilit\xE9.
+
+En ce qui concerne le `\verb|:|', le code typogra\-phi\-que%
+\footnote{Nous
+avons choisi d'adopter les recommandations de l'imprimerie nationale
+fran\xE7aise.} pr\xE9cise qu'il est pr\xE9c\xE9d\xE9 
+d'une espace {\em mot\/} 
+ins\xE9cable.
+D'autres ont jug\xE9 que c'\xE9tait inesth\xE9tique et cela a \xE9t\xE9 
+remplac\xE9 par une espace fine. 
+
+Les guillemets fran\xE7ais \xAB doivent \xEAtre suivis d'une espace mot 
+ins\xE9cable qui
+a \xE9t\xE9 remplac\xE9e ici par une espace moindre. 
+Les guillemets fermants \xBB
+sont, eux, pr\xE9c\xE9d\xE9s de la m\xEAme espace.
+
+\SmsG%
+Lorsque la ligne n'est pas assez remplie et qu'il existe un `:', les
+typographes ont --~semble-\hbox{t-il}~-- l'habitude 
+de r\xE9partir largement les espaces autour
+des deux points. C'est ce qui a \xE9t\xE9 fait dans \FP\ qui
+pourra \xE9ventuellement produire une ligne : peu remplie\footnote{Le cas pr\xE9sent\xE9 ici a \xE9t\xE9 
+cr\xE9\xE9 artificiellement et peut donc appara\xEEtre exag\xE9r\xE9 dans
+certaines mises-en-pages.}%
+\penalty-10000% 
+ ou aussi bien une ligne se terminant ainsi : \xAB {\em com\-me % \- pour fourier
+font les pros\/} \xBB
+lorsqu'ils ne trouvent pas d'autre moyen mais il devrait s'agir que de cas
+extr\xEAmes. \xC0 noter que cela a pour avantage de r\xE9duire les
+\verb|over/under-full hbox| de fa\xE7on significative.
+
+Paragraphe de remplissage...\\ ...\\... pour v\xE9rifier que le `:' ne 
+termine ni la page ni la colonne. Ainsi : 
+
+%\englishquote 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{itemize} 
+\item %qu'il s'agisse de verbatim ou d'une liste d'\xE9l\xE9ments 
+les deux points et  le  texte qui suit  
+sont  tous  deux sur la  m\xEAme  page.
+\end{itemize}
+%\newpage % already done with the previous list
+\FmsG%
+\english
+
+\smallskip
+
+\section{French printing}
+
+French printing use specific typographic rules specially in concern with 
+the following: `. : ; ! ?' and french guillemets.
+
+Interword spacing in a line is allways equal (and never modified inside a
+word). It's the same way after punctuation (standard \verb|\frenchspacing|) as
+opposed to the english typography.\NL1
+
+All `; ! ?' are preceeded by a thin and uncuttable space. We apply this
+automatically in \FP. (We have added few stretching {\em glue} to
+the question mark).\NL2
+
+Regarding the `:' we have not inserted an inter-word space but a thin space 
+and also have added some glue.\NL2
+
+\smallskip
+French guillemets are processed the same way. \NL3
+
+In an {\em underfull\/} line containing a `:' man has habits to share spaces
+around the double points. This way used in \FP\ can also produce a
+line with a ragged right, as shown in the french column. This technique
+ reduce a lot of {\em overfull} and {\em underfull} {\tt hboxes} 
+produced by \TeX{}.
+\NL3
+
+As shown also, \FP\ is reluctant to print a double point at the
+end of a page or a column.\french%\noenglishquote
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\section[Dactylographie fran\xE7aise]{Rappels concernant la \newline 
+dactylographie}
+
+Les habitudes de saisie c.-\xE0-d. les habitudes dactylographiques,
+ veulent que les signes suivants
+`\verb|:| \verb|;| \verb|!| \verb|?| \verb|\xBB|' 
+soient toujours pr\xE9c\xE9d\xE9s d'un blanc
+(barre d'espace sur les claviers) et les \verb|\xAB| toujours
+suivis d'un blanc. \FP\ remplacera
+automatiquement ce blanc (\xE0 la composition) par l'espace appropri\xE9e.
+
+{\moretolerance\moretolerance\moretolerance
+Les guillemets fran\xE7ais \xAB (et respectivement \xBB)...
+\footnote{\tthyphenation Avec les options fournies 
+telles \vers|A4| et  \vers|double|\-\vers|column| on obtient
+ l\xE0 un \vers|overfull| \vers|hbox| difficilement r\xE9ductible
+de fa\xE7on automatique mais je l'ai r\xE9duit 
+avec 3 \texttt{\backslash moretolerance}%
+\notthyphenation.} 
+\par}
+%\nooverfullhboxmark
+
+Les vrais guillemets fran\xE7ais \xAB (et respectivement \xBB)
+s'utilisent toujours doubl\xE9s (\verb|\xAB| et respectivement 
+\verb|\xBB|). Ainsi $<$ et $>$ ne 
+sont que des signes math\xE9matiques et n'ont pas
+d'autre sens en fran\xE7ais que : {\em inf\xE9rieur \xE0} et 
+{\em sup\xE9rieur \xE0}.
+
+Il est fortement conseill\xE9 de poursuivre
+ces habitudes dactylographiques qui
+contribuent aussi \xE0 \xE9claircir le texte
+saisi et donc ainsi \xE0 faciliter les
+corrections ult\xE9rieures.
+\NL1
+
+\subsection[Test de la ponctuation fran\xE7aise 
+            \mdseries`\protect\myverb|. : ; ! ?|']
+{Test de la ponctuation \newline fran\xE7aise 
+            \mdseries`\protect\myverb|. : ; ! ?|'} 
+
+Le deux points s'imprime comme ceci : s'il est pr\xE9c\xE9d\xE9 d'un blanc
+(au moins un) sinon rien n'est chang\xE9 (par ex. 11:33). Notez 
+l'espace apr\xE8s le point terminant la phrase ; le point virgule
+est aussi pr\xE9c\xE9d\xE9 d'une espace fine s'il n'est pas coll\xE9 
+au mot le pr\xE9c\xE9dant (comme dans cet exemple d\xFB \xE0 une faute
+de frappe; assez fr\xE9quente).\\
+{\moretolerance
+Oh ! Quoi-donc ? Notez ici l'espacement utilis\xE9
+devant le `!' et le `?'. Il ne faut
+pas oublier aussi de taper le blanc avant, sinon? tout est
+%terriblement 
+ coll\xE9! Voyez-vous la diff\xE9rence ? Bravo !
+}
+
+Mais pour les documents {\em mal\/} saisis (c.-\xE0-d. sans blanc) il est
+toujours possible de sp\xE9cifier la sous-option \verb|\untypedspaces|
+\untypedspaces pour obtenir une insertion automatique des espaces
+manquants comme ici! o\xF9 il avait \xE9t\xE9 saisi `\verb|ici!|'.
+V\xE9rifions pour les autres ponctuations :;? \typedspaces que nous 
+n'obtenons pas :;? serr\xE9es comme ici.
+
+V\xE9rification de l'espacement :
+
+\noindent
+\verb|  \typedspaces X~; Y ; Z;| = \typedspaces X~; Y ; Z;
+
+\noindent
+\verb|\untypedspaces X~; Y ; Z;| = \untypedspaces X~; Y ; Z; \typedspaces
+
+\newpage\english
+\section{French typing}
+French typists have some habits. For example they type a space before `: ; ! ?
+\verb|\xBB|' and after \verb|\xAB|. \FP\ replace automatically this
+blank space by the appropriate spacing.
+
+There is only one kind of quoting in French by the mean of guillemets which
+are allways typed \verb|\xAB| and \verb|\xBB|. Usual english simple and double
+quotes must be prohibited.
+
+\subsection{\mdseries%
+            \texttt{\textbackslash untypedspaces}}%
+This control command offers the ability to repair automatically a document
+badly typed i.e. in which spaces were not typed before french punctuation.
+This bypass can help but is not the good way to use daily because there are
+many cases where, for example, a double point must never be preceeded 
+by a space.
+
+Now we verify that the spacing is unchanged in English:
+
+\noindent
+\verb|  \typedspaces X~; Y ; Z;| = \typedspaces X~; Y ; Z;
+
+\noindent
+\verb|\untypedspaces X~; Y ; Z;| = \untypedspaces X~; Y ; Z; \typedspaces
+
+\subsection{\mdseries%
+            \texttt{\textbackslash wrongtypedspaces}}
+A french typist may input  spaces before
+punctuation as it is usual in French. These unfortunate space
+ can be removed by simply letting \FP\ do it with* the control
+sequence:
+
+\begin{verbatim}
+\letpunctuationactivefor
+               \wrongtypedspaces
+\end{verbatim}
+
+\FRENCH% pour ne pas dire \french
+\letpunctuationactivefor\wrongtypedspaces
+\english
+Let's try the previous example:\par
+\noindent
+\verb|  X~; Y ; Z;| =  X~; Y ; Z;
+
+Now we say \verb|\nowrongtypedspaces|
+\nowrongtypedspaces to come back to the normal
+situation.
+
+\vfill
+\french
+\nowrongtypedspaces% to be sure it is set when english text is skipped
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\csname StopFrenchLbT\endcsname% special case, temporary.
+
+\section[Test des guillemets fran\xE7ais, 7 (<%
+                                          < >%
+                                            >) et 8-bits (\xAB \xBB)]%
+{Test des guillemets \newline fran\xE7ais (\xAB \xBB)}
+\hyphenation{nor-ma-le-ment}
+
+Les guillemets fran\xE7ais s'\xE9crivent et se saisissent 
+\xAB normalement \xBB comme ceci : 
+\verb|\xAB |{\tt nor}\-%
+{\tt male}\-{\tt ment }\verb|\xBB| 
+ ou \xE9ventuellement en italiques mais toujours
+\bgroup% for frenchle
+\xAB \em normalement\/ \xBB %
+\egroup% for frenchle
+; ici nous avons tap\xE9 au clavier :
+\verb|\xAB \em| {\tt normalement}\verb| \xBB|.
+Et en tapant par contre :\\ \verb|\xAB\em| 
+ {\tt anormale\-ment (sans espace)}\verb|\xBB| \  on  obtient...
+\bgroup% for frenchle
+\xAB\em anormale\-ment (sans espace)\/\xBB.
+\egroup% for frenchle
+Re\-mar\-quez que les guillemets font office d'acco\-lades \TeX{} et que donc
+les changements de polices sont restaur\xE9s en sortant de la citation.
+
+Pour les documents d\xE9j\xE0 saisis {\em sans espace} << \FP\ >>
+ins\xE9rera syst\xE9matiquement un espace \xE0 l'endroit
+d\xE9sir\xE9 si l'on a donn\xE9 la sous-option \verb|\untypedspaces|. 
+\untypedspaces 
+Et en tapant \xE0 nouveau 
+\verb|\xAB\em| {\tt anormale\-ment (sans espace)}\verb|\xBB| on obtient
+\bgroup% for frenchle
+\xAB\em anormalement (sans espace)\/\xBB. 
+\egroup% for frenchle
+\typedspaces
+
+Parfois on d\xE9sirera remplacer syst\xE9matiquement tous les 
+guillemets anglais (`` et '') d'un texte par de vrais guillemets 
+fran\xE7ais, il
+suffira alors de fournir l'\xE9trange option :\\
+\texttt{\backslash noenglishdoublequotes}\\
+\noenglishdoublequotes pour obtenir : `` ''.
+
+``  '' (m\xEAme test en d\xE9but de paragraphe).\englishdoublequotes
+ 
+Lorsqu'une citation est faite dans un texte, celle-ci commence
+toujours par des guillemets. \xAB Cette citation peut se poursuivre sur
+plusieurs paragraphes. 
+
+Dans ce cas, le style %\verb|french| 
+ins\xE9rera syst\xE9matiquement les guillemets n\xE9cessaires 
+en d\xE9but de 
+chaque paragraphe. \xBB
+
+Mais une citation peut aussi en contenir une autre. \xAB Dans ce cas l'imprimerie
+ nationale pr\xE9cise dans   ses {\em R\xE8gles typographiques} : 
+\ancientguillemets
+ \xAB Lors\-que la premi\xE8re citation est 
+elle-m\xEAme plac\xE9e entre 
+guillemets, chaque ligne de la seconde d\xE9butera par un 
+guillemet ouvrant. \xBB 
+Ce dispositif, comme on le voit, n'est pas  mis en \xBDuvre ici
+ (voir son application au paragraphe \ref{noeveryparguillemets}). 
+ \xAB La deuxi\xE8me citation peut aussi...
+
+se poursuivre sur un ou 
+plusieurs paragra\-phes. \xBB Notez bien qu'avant cette citation nous avons 
+demand\xE9 les \verb|\ancientguillemets| 
+pour produire ces guillemets fermants
+en d\xE9but de ligne. Le \verb|\todayguillemets| r\xE9tablit la 
+situation une fois
+le deuxi\xE8me niveau termin\xE9. \todayguillemets
+
+{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f at encoding
+\enlargethispage{10pt}% increase probably due to EC fonts metrics?
+\fi}
+Il arrive que la fin d'une citation de deux\-i\xE8me niveau 
+co\xEFncide avec celle
+du premier niveau.  \xAB Dans ce cas il faudra coder, comme ici :\\
+\verb|\endguillemets| 
+\xE0 la place de ``\verb|\xBB|'' \endguillemets. 
+
+Deux tests : \fbox{\begin{guillemets} XXX \end{guillemets}}
+et  \fbox{X \begin{guillemets} XXX \end{guillemets} X} servant \xE0
+v\xE9rifier l'espacement quand on utilise \verb|\begin| et \verb|\end|.
+
+Le paragraphe suivant va alors d\xE9marrer de fa\xE7on 
+tout \xE0 fait normale...
+
+On peut aussi coder :
+\begin{verbatim}
+\begin{guillemets}
+Une citation...
+\end{guillemets}
+\end{verbatim}
+ce qui donnera :
+\begin{guillemets}
+Une citation...
+\end{guillemets}
+et en tapant {\em \xE0 la \TeX} : \verb|\guillemets{}| \verb|Une citation...| 
+\verb|\en|\vers|d|\-\vers|guillemets{}| nous devons  obtenir absolument la m\xEAme chose :
+\guillemets{} Une citation... \endguillemets{}
+
+V\xE9rifions maintenant l'espacement dans les diff\xE9rents cas :
+
+\noindent
+\fbox{\parbox{2cm}{\xABX\dotfill X\xBB}} \%\texttt{\backslash typedspaces}
+ {\em sans blanc}
+
+\noindent
+\fbox{\parbox{2cm}{\xAB X\dotfill X \xBB}} \%\texttt{\backslash typedspaces} 
+{\em normal}
+
+\noindent\untypedspaces
+\fbox{\parbox{2cm}{\xAB X\dotfill X \xBB}} \%\texttt{\backslash untypedspaces} 
+{\em avec blanc}
+
+\noindent
+\fbox{\parbox{2cm}{\xABX\dotfill X\xBB}} \%\texttt{\backslash untypedspaces} 
+{\em sans blanc}
+\typedspaces
+
+\noindent
+\fbox{\parbox{3cm}{A blabla bla blabla : \xAB 
+Ceci est mon test de c\xE9sure \xBB}} \xAB...\xBB reste possible.
+
+\begin{flushleft}
+ Ceci est \xAB un test avec \verb|\raggedright| \xBB qui 
+--~th\xE9oriquement~-- ne devrait plus nous poser de probl\xE8me.
+\end{flushleft}
+
+\subsection{{\mdseries%
+\texttt{\textbackslash noeveryparguillemets}}}\label{noeveryparguillemets}
+Cette option permet de g\xE9rer correctement les citations de second 
+rang mais elle est tout \xE0 fait contraire
+ au processus \verb|\everypar| cit\xE9 pr\xE9c\xE9demment gr\xE2ce auquel
+ les guillemets sont g\xE9n\xE9r\xE9s automatiquement \xE0 chaque 
+d\xE9but de paragraphe.
+Voici ce que produit l'option {\em normale\/} 
+\texttt{\backslash every\-par\-guil\-lemets} sur le paragraphe suivant :
+
+\xAB Tout le monde s'accorde \xE0 trouver l\xE9gitime la division : 
+{\tt extra-ordinaire}. Le cas des mots com\-pos\xE9s est le seul 
+\xE0 rencontrer 
+cette unanimit\xE9. Dans les autres, les opinions sont tr\xE8s partag\xE9es.
+ Frey est le plus cat\xE9gorique : il n'admet de division selon la formation 
+que pour des mots de composition compl\xE8tement fran\xE7aise, et la rejette 
+sinon... Le {\em Code typographique}, tout en adoptant ce m\xEAme point
+ de vue \xAB ... [reconna\xEEt] n\xE9anmoins que certains auteurs de travaux 
+scientifiques pr\xE9f\xE8rent la division \xE9ty\-mologique 
+qui fait ressortir
+ la racine grecque ou latine. \xBB Quant \xE0 Gouriou, il \xE9crit :
+\xAB On pr\xE9f\xE8rera cependant garder la coupure \xE9tymologique
+ chaque fois que les composants sont {\em ais\xE9ment} re\-connaissables. \xBB 
+(L'italique est de Gouriou.) 
+\marginpar{{\footnotesize Ici on a trich\xE9 avec des} \texttt{\backslash!}}
+\!Telle \!est aussi \!l'opinion \!de \!Girodet \xBB. 
+
+Et voici l'effet de \verb|\noeveryparguillemets| :
+\noeveryparguillemets
+
+\xAB Tout le monde s'accorde \xE0 trouver l\xE9gitime la division : 
+{\tt extra-ordinaire}. Le cas des mots com\-pos\xE9s est le seul 
+\xE0 rencontrer 
+cette unanimit\xE9. Dans les autres, les opinions sont tr\xE8s partag\xE9es.
+ Frey est le plus cat\xE9gorique : il n'admet de division selon la formation 
+que pour des mots de composition compl\xE8tement fran\xE7aise, et la rejette 
+sinon... Le {\em Code typo\-graphique}, tout en adoptant ce m\xEAme point
+ de vue \xAB ... [reconna\xEEt] n\xE9anmoins que certains auteurs de travaux 
+scientifiques pr\xE9f\xE8rent la division \xE9ty\-mologique 
+qui fait ressortir
+ la racine grecque ou latine. \xBB Quant \xE0 Gouriou, il \xE9crit :
+\xAB On pr\xE9f\xE8rera cependant garder la coupure \xE9tymologique
+ chaque fois que les  composants sont {\em ais\xE9ment} re\-connaissables. \xBB 
+(L'italique est de Gouriou.) 
+Telle est aussi l'opinion de Girodet \xBB. 
+\everyparguillemets
+
+Il faut noter que cette option impose que le paragraphe commence et se
+termine par des guillemets. % sinon code \guillpar et \parguill
+C'est pour cela que nous n'avons pas mis cette option par d\xE9faut.
+
+\subsubsection{Un test assez m\xE9chant}
+Voici un exemple d'utilisation dans un environement \verb|quotation|%
+\footnote{Nous avons introduit \texttt{\backslash moretolerance} 
+pour obtenir une composition correcte.} :
+\begin{quotation}
+\moretolerance\moretolerance\moretolerance
+\xAB Je ne peux mieux faire que de citer la d\xE9finition qu'a donn\xE9e
+de la gravure un de nos ma\xEEtres fondeurs, Fournier le Jeune :
+
+\xAB La scien\-ce du graveur, dit-il, consiste \xE0 conna\xEEtre la figure
+la plus parfaite que l'on puisse donner aux caract\xE8res, les dimensions
+qu'ils doivent avoir  et \xE0 les repr\xE9senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\xE9tuent des lettres
+\xE0 l'infini par la fonte. \endguillemets
+\end{quotation}
+
+Le m\xEAme exemple sans \verb|quotation|  :
+
+\xAB Je ne peux mieux faire que de citer la d\xE9finition qu'a donn\xE9e
+de la gravure un de nos ma\xEEtres fondeurs, Fournier le Jeune : 
+
+\xAB La scien\-ce du graveur, dit-il, consiste \xE0 con\-na\xEEtre la figure
+la plus parfaite que l'on puisse donner aux caract\xE8res, les dimensions
+qu'ils doivent avoir  et \xE0 les repr\xE9senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\xE9tuent des lettres
+\xE0 l'infini par la fonte. \endguillemets
+\bigskip
+
+\noeveryparguillemets
+Puis avec \verb|\noeveryparguillemets| (c.-\xE0-d. sans \verb|quotation|) :
+
+\xAB Je ne peux mieux faire que de citer la d\xE9finition qu'a donn\xE9e
+de la gravure un de nos ma\xEEtres fondeurs, Fournier le Jeune : 
+
+\xAB La scien\-ce du graveur, dit-il, consiste \xE0 conna\xEE\-tre la figure
+la plus parfaite que l'on puisse donner aux caract\xE8res, les dimensions
+qu'ils doivent avoir  et \xE0 les repr\xE9senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\xE9tuent des lettres
+\xE0 l'infini par la    % En cas d'arr\xEAt \xE0 cet endroit : le format
+fonte. \endguillemets%.fmt utilis\xE9 n'est prob. pas ds le bon codage !
+\bigskip
+
+Et enfin avec \verb|quotation|, voil\xE0 
+ce que cela peut donner\label{quotation} :
+%%% La \marginpar suivante pose un pb de ``Lost Float'' qd elle est
+%%% placee plus loin, pourquoi ?
+\marginpar{{\footnotesize Il y a ici un probl\xE8me \xE0 \xE9tudier en 2 colonnes !}}
+\begin{quotation}
+\xAB Je ne peux mieux faire que de citer la d\xE9finition qu'a donn\xE9e
+de la gravure un de nos ma\xEEtres fondeurs, Fournier le Jeune :
+
+\xAB La scien\-ce du graveur, dit-il, consis\-te \xE0 conna\xEEtre la figure
+la plus parfaite que l'on puisse donner aux caract\xE8res, les dimensions
+qu'ils doivent avoir  et \xE0 les repr\xE9senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\xE9tuent des lettres
+\xE0 l'infini par la fonte.
+ \endguillemets
+\end{quotation}
+\everyparguillemets
+On notera ici les espaces inter-mots beaucoup plus {\em tol\xE9rants}. C'est
+la seule solution trouv\xE9e pour arriver \xE0 imprimer 
+quelque chose d'\xE0 peu
+pr\xE8s correct en double colonnage.
+
+\vfill
+Terminons la page en anglais pour tester le haut de page. Les guillemets
+doivent \xEAtre bons avec le codage T1.
+
+\english
+Let's complete the page with english text in order to test and show
+how will be printed the header.
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\onecolumn
+\subsubsection{M\xEAme test en \mdseries\texttt{\textbackslash onecolumn}}
+Voici un exemple en environement \verb|quotation| :
+\begin{quotation}
+\xAB Je ne peux mieux faire que de citer la d\xE9finition qu'a donn\xE9e
+de la gravure un de nos ma\xEEtres fondeurs, Fournier le Jeune :
+
+\xAB La scien\-ce du graveur, dit-il, consiste \xE0 conna\xEEtre la figure
+la plus parfaite que l'on puisse donner aux caract\xE8res, les dimensions
+qu'ils doivent avoir  et \xE0 les repr\xE9senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\xE9tuent des lettres
+\xE0 l'infini par la fonte. \endguillemets
+\end{quotation}
+
+Le m\xEAme exemple sans \verb|quotation|  :
+
+\xAB Je ne peux mieux faire que de citer la d\xE9finition qu'a donn\xE9e
+de la gravure un de nos ma\xEEtres fondeurs, Fournier le Jeune : 
+
+\xAB La scien\-ce du graveur, dit-il, consiste \xE0 conna\xEEtre la figure
+la plus parfaite que l'on puisse donner aux caract\xE8res, les dimensions
+qu'ils doivent avoir  et \xE0 les repr\xE9senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\xE9tuent des lettres
+\xE0 l'infini par la fonte. \endguillemets
+\bigskip
+
+\noeveryparguillemets
+Puis avec \verb|\noeveryparguillemets| (sans \verb|quotation|) :
+
+\xAB Je ne peux mieux faire que de citer la d\xE9finition qu'a donn\xE9e
+de la gravure un de nos ma\xEEtres fondeurs, Fournier le Jeune : 
+
+\xAB La scien\-ce du graveur, dit-il, consiste \xE0 conna\xEEtre la figure
+la plus parfaite que l'on puisse donner aux caract\xE8res, les dimensions
+qu'ils doivent avoir  et \xE0 les repr\xE9senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\xE9tuent des lettres
+\xE0 l'infini par la fonte. \endguillemets
+\bigskip
+
+Et enfin avec \verb|quotation| :
+\begin{quotation}
+                    \let\bkORI\break
+                    %\def\break{\bkORI\hbox to 0pt{/}}% for debug
+                    %\ancientguillemets% for debug
+\xAB Je ne peux mieux faire que de citer la d\xE9finition qu'a donn\xE9
+de la gravure un de nos ma\xEEtres fondeurs, Fournier le Jeune : 
+
+\xAB La scien\-ce du graveur, dit-il, consiste \xE0 conna\xEEtre la figure
+la plus parfaite que l'on puisse donner aux caract\xE8res, les dimensions
+qu'ils doivent avoir  et \xE0 les repr\xE9senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\xE9tuent des lettres
+\xE0 l'infini par la fonte. \endguillemets
+\end{quotation}
+\everyparguillemets
+
+\subsubsection{Test de \xAB stretchability \xBB}
+
+Les espaces doivent \xEAtre \xE9galement r\xE9partis sur la ligne :
+
+\medskip
+\hbox to \hsize{etiord-gauche\footnote{En plain \TeX{} l'espacement est ici
+\label{etiord}
+                                       curieusement incorrect ! ...}
+ \xAB centre-ertnec \xBB \hbox{}\footnote{... alors qu'il faudrait 
+la m\xEAme r\xE9partition
+                               de l'espace.}%
+                               ehcuag-droite}
+\medskip
+
+\subsection{Test des commandes \mdseries\texttt{\textbackslash ifnum}}
+
+\ifnum 1 < 3 1\verb| < |3 est VRAI, bien s\xFBr ! 
+       \else 1\verb| < |3 est FAUX ! \fi
+comme 
+\ifnum 3 > 1 3\verb| > |1 est aussi VRAI, bien s\xFBr ! 
+       \else 3\verb| > |1 est FAUX ! \fi
+
+\medskip
+
+\subsection{Test des commandes \mdseries\texttt{\textbackslash everypar}}
+
+{J'ai cod\xE9 dans cette section \verb|\everypar{$++\,$}| : \everypar{$++\,$}
+
+Paragraphe 1 \xAB citation niveau 1
+
+Paragraphe 2 \xAB citation niveau 2
+
+Paragraphe 3 fin citation niveau 2 \xBB puis fin niveau 1 \xBB
+
+Paragraphe 4}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage% tjrs en 1 colonne
+\hbox{}\ifx\itshape\undefined\else% avoid old frencht crash
+\subsection{Test de fermeture pr\xE9matur\xE9e}
+
+Il arrive que les guillemets soient ferm\xE9s dans un environnement
+plus int\xE9rieur qui n'apparie donc pas  correctement les blocs.
+Voici un exemple d'utilisation :
+
+\begin{verbatim}
+Ma\xEEtre Corbeau dit \xE0 son clerc : \xAB \itshape Cher coll\xE8gue,
+
+\begin{itemize}
+\item Ah que vous \xEAtes joli !
+\item Ah que vous me semblez beau ! \xBB \upshape  
+et s'enfuit de ce pas...
+\end{itemize}
+
+\endguillemets
+\textsf{Quel homme \xE9trange, n'est-ce pas ?}
+\end{verbatim}
+
+Voici ce que cela donne comme composition :
+
+\medskip
+\bgroup% for frenchle
+Ma\xEEtre Corbeau dit \xE0 son clerc : \xAB \itshape Cher coll\xE8gue,
+
+\SmsG%
+\begin{itemize}
+\item Ah que vous \xEAtes joli !
+\item Ah que vous me semblez beau ! \xBB \upshape 
+et s'enfuit de ce pas...
+\end{itemize}
+\FmsG%
+
+\endguillemets
+\egroup% for frenchle
+\textsf{Quel homme \xE9trange, n'est-ce pas ?}
+
+\medskip
+On notera plusieurs choses. Premi\xE8rement il a fallu
+r\xE9tablir \verb|\upshape| apr\xE8s les guillemets fermants,
+du fait du mauvais appariement des blocs. Ensuite un message
+sort indiquant une fermeture pr\xE9matur\xE9e des guillemets.
+Cette fermeture restant incompl\xE8te on note enfin que l'on a forc\xE9
+un \verb|\endguillemets| pour clore proprement et d\xE9finitivement
+l'environnement guillemets.
+
+\subsection{\mdseries\texttt{\textbackslash everyparguillemetsremoved}}
+\label{noeveryparguillemetsremoved}
+Dans le m\xEAme exemple nous pouvons aussi interdire la g\xE9n\xE9ration
+automatique des guillemets ouvrants \xE0 chaque d\xE9but de paragraphe ;
+il faut alors saisir \verb|\everyparguillemetsremoved| :
+\everyparguillemetsremoved
+
+\medskip
+\bgroup% for frenchle
+Ma\xEEtre Corbeau dit \xE0 son clerc : \xAB \itshape Cher coll\xE8gue,
+
+\SmsG%
+\begin{itemize}
+\item Ah que vous \xEAtes joli !
+\item Ah que vous me semblez beau ! \xBB \upshape 
+et s'enfuit de ce pas...
+\end{itemize}
+\FmsG%
+
+\endguillemets
+\egroup% for frenchle
+\textsf{Quel homme \xE9trange, n'est-ce pas ?}
+
+\medskip
+Il suffit ensuite de r\xE9tablir  \verb|\everyparguillemets|.
+\everyparguillemets
+\fi% ifx \itshape
+
+\subsection{Test de l'espacement}
+{\def\marque#1{\vbox{\halign{\hfil##\hfil\cr 
+                               \llap{\vrule width4.5mm height.4pt}%
+                               \rlap{\vrule width4.5mm height.4pt}\cr
+                               \noalign{\vskip-1cm}%
+                                   #1\cr}}}
+ \Huge
+ \def\ecartement{\fbox{a \xAB \marque{\hbox{$|$}} \xBB b}}
+ \ecartement
+}
+% Difference de taille a voir entre les deux %%%%%%
+\setbox7\hbox{\leftguillemets\ X}
+\setbox8\hbox{X\ \rightguillemets}
+\SmsG%
+\message{Taille des boites page \thepage\space \string: 
+         \the\wd7=\string?=\the\wd8}
+\FmsG%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\onecolumn
+\newpage
+\hbox{}
+\vfill
+\centerline{\Large Page intentionnellement laiss\xE9e blanche}
+\vfill
+\twocolumn
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+
+\subsection{Guillemets interrompus}
+Une citation peut \xEAtre en anglais et donc se commencer par
+\vers|\xAB \|\vers|english| et se terminer par \vers|\|\vers|french \xBB|. Ce cas
+ne doit plus g\xE9n\xE9rer de message 
+{\em fermeture de guillemets non ouverts} !
+Voici le test, r\xE9alis\xE9 ici
+tout d'abord avec l'environnement \vers|nonfrench| :
+
+\medskip
+1 \fbox{\xAB \begin{nonfrench}% LaTeX keeps space
+          Text in English
+          \end{nonfrench}% LaTeX keeps space
+        \xBB}
+
+
+\medskip
+Puis avec : \\
+\verb|\begin{english}| ... \verb|\end{english}| :
+
+\medskip
+% bypass here our TeX--XeT emulation to avoid message: english environment
+% ended by \end{guillemets}
+\def\temp{\begingroup}
+\ifx\beginL\temp
+\else
+{% local redef of english for plain and our specific test file
+ \ifx\undefined\englishORI\else\let\english\englishORI\fi%
+2 \fbox{\xAB \begin{english}%  LaTeX keeps space
+          Text in English 
+          \end{english}%  LaTeX keeps space
+        \xBB}
+
+\medskip
+Et enfin  avec \verb|\|\verb|english| ... \verb|\endenglish| :
+
+\medskip
+3 \fbox{\xAB {\csname english\endcsname
+          Text in English
+          \csname endenglish\endcsname}% space here to remove
+        \xBB}
+}% local redef of english for plain test
+\fi
+
+\medskip
+Ceci avait aussi pour but de tester ces possibilit\xE9s de
+changement de langage et de v\xE9rifier l'espacement qui
+devrait \xEAtre ainsi :
+
+\medskip
+0 \fbox{\xAB Text in English \xBB}
+
+\noenglishdoublequotes
+\subsection{`` {\mdseries\texttt{\textbackslash noenglishdoublequotes}} ''}
+
+Nous avons mis la commande \vers|\noenglish|\-\vers|doublequotes| juste avant
+le titre de section de fa\xE7on \xE0 remplacer les \xAB quotes \xBB anglaises
+par des guillemets fran\xE7ais dans ce titre.
+Il s'agit de v\xE9rifier aussi que la g\xE9n\xE9ration des fichiers auxiliaires
+\verb|.aux| et \verb|.toc| ne pose pas de probl\xE8me lorsque ces fichiers 
+sont r\xE9utilis\xE9s. Bien s\xFBr, si cette option n'est pas activ\xE9e pour tout le
+document, comme ici, on ne retrouvera pas les guillemets fran\xE7ais
+dans la table des mati\xE8res.
+
+\noenglishdoublequotes
+
+\english% histoire de changer de langue ?
+\french
+%\newpage
+\subsection%{\xAB no-french guillemets \xBB}
+           {\mdseries\texttt{\textbackslash nofrenchguillemets}}
+En codant \verb|\nofrenchguillemets|
+\nofrenchguillemets on n'utilise plus
+les guillemets programm\xE9s dans l'extension {\tt french}. Si on les utilise
+malgr\xE9 tout, le r\xE9sultat d\xE9pendra de la police. Ici nous utilisons la
+police \fontname\font{} et nous obtenons : 
+
+<%
+ < en 7-bits >%
+              >
+
+et aussi :
+
+\xAB en 8-bits \xBB. 
+
+R\xE9activons maintenant les guillemets avec la commande
+\verb|\frenchguillemets|
+\frenchguillemets et faisons le m\xEAme test :
+
+<%
+ < en 7-bits >%
+              >
+
+et aussi :
+
+\xAB en 8-bits \xBB. Voyez-vous ? 
+\vfill
+\subsection{Haut de page+guillemets}
+
+\subsubsection{En 8-bits}
+Il ne devrait pas y avoir de probl\xE8me du tout. 
+Car, puisqu'il s'agit d'un guillemet en 8-bits, cela doit
+\xEAtre forc\xE9ment un vrai guillemet fran\xE7ais. Mais, malheureusement,
+{\em la solution pour l'impl\xE9menter n'est pas encore trouv\xE9e avec
+le codage OT1}.
+Le codage de fonte de ce document imprime : 
+\nonfrench <%
+           < >%
+             >%
+\endnonfrench{} 
+ (doit \xEAtre parfait en T1).
+
+\subsubsection{En 7-bits}
+En codage OT1 les guillemets 7-bits de haut de page ne peuvent \xEAtre
+bons sur cette page 
+ {\bf QUE} parce que nous avons termin\xE9 la
+page en fran\xE7ais, sinon nous aurions eu :
+\ifx\textexclamdown\undefined
+    \def\textexclamdown{\xA1}\def\textquestiondown{\xBF}
+\fi
+\textexclamdown\textexclamdown{} et \textquestiondown\textquestiondown
+ 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\hbox{ }\NL{24}
+
+\subsection{Guillemets et maths}
+
+L'\xE9quation suivante ne doit plus produire le fameux message :
+
+{\tt ! Argument of \backslash \string @genG % string pour amslatex
+ has an extra % { pour emacs
+ $\}$% c'est un \delimiter qui pose pb tq avec frencht d'ou mode math
+.}
+
+$$U^{k+1}=U^{k}- {<  g_{k},d_{k} >}$$
+   
+\section{D'autres guillemets}\label{autres}
+Avec \FP\ il est possible de substituer automatiquement aux
+guillemets `anglais' la forme  \noenglishquote `que voici' en donnant la
+sous-option \verb|\noenglishquote|.
+Mais attention, les apostrophes deviennent des accents 
+comme dans : {\em il s'agit ici de l'exemple}
+\englishquote qui aurait d\xFB \xEAtre imprim\xE9 : 
+{\em il s'agit ici de l'exemple}.
+Un usage intensif de cette option est plut\xF4t \xE0 d\xE9conseiller. 
+
+\newpage
+\english
+\section{French guillemets}
+Using french guillemets in an english document (\verb|\xAB| and \verb|\xBB|) will
+give (depending of font encoding) that: \xAB and \xBB, it is normal!
+
+As you can look in the previous columns, french guillemets have specific
+rules. They are used for quotation when an author is cited or each time an
+emphasis is needed. Normally, italic is not used inside a quoted french
+text, excepted when you really want to show some wording.
+
+When opened, each paragraph of the quoted text will start left
+ with the opening french guillemets.
+
+Another quotated text can take place inside a first level. This second level
+citation is also very specific. Each line must start with guillemets. 
+
+The style designer, from time to time, chose to apply here an ancient rule
+by putting here closing guillemets.
+
+The technical tools involved in \FP\ 
+ disallow to have at the same time
+the \verb|\everypar| possibility and the second level mechanism. 
+
+\subsection{Guillemets and maths}
+
+The following equation is always correct:
+
+$$U^{k+1}=U^{k}- {<  g_{k},d_{k} >}$$
+
+and never produce an error message.
+\NL1
+   
+\section{Other guillemets}
+With \FP\ it is possible to replace english guillemets by
+diacritic caracters. But, be careful, all apostrophes will be diacritics too.
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage 
+\section{Trois petits points}
+Les points de suspension sont : ... et non pas ceux de \TeX{} : $\ldots{}$
+\noTeXdots
+En codant \verb|\noTeXdots| les commandes \verb|\dots| ou \verb|\ldots| de
+\LaTeX{} donneront : $\ldots{}$ Mais l'option par d\xE9faut a \xE9t\xE9
+volontairement maintenue au standard  (\verb|\TeXdots|) puisqu'il suffit
+de ne pas les utiliser.\TeXdots
+
+\section{Crochets}
+IBM, en son temps, avait cr\xE9\xE9 l'EBCDIC dans lequel ne figurait pas
+les crochets ([ ]). C'est la raison pour laquelle les utilisateurs IBM
+ont parfois substitu\xE9 $<$ et $>$ aux crochets.  La sous option
+\verb|\EBCDICbrackets| \EBCDICbrackets
+permet de les remplacer comme ici <automatiquement> par des crochets.
+Mais faites attention, les doubles guillemets 
+\verb|<|\verb|<| et \verb|>|\verb|>| % pour eviter la conversion 8bits
+ ne donneront jamais des crochets mais \xAB et \xBB 
+(sauf en mode \verb|verbatim|). On peut en g\xE9n\xE9ral
+se contenter de \verb|< <| et \verb|> >| pour obtenir < < et > >. 
+On revient  \xE0 la situation ant\xE9rieure en tapant la commande suivante :
+\verb|\normalbrackets|\normalbrackets. 
+
+\section{D\xE9bordements}
+Nous venons de choisir  l'option  d'indication de d\xE9bordement de ligne 
+\verb|\overfullhboxmark| et nous voyons son
+effet lorsque la ligne ne peut \xEAtre coup\xE9e gr\xE2ce \xE0 l'impression
+de la petite bo\xEEte noire. 
+%(cf. page \pageref{debordement}).
+Cette option est activ\xE9e au minimum pour une page enti\xE8re. 
+Ne pas sp\xE9cifier l'option et son contraire sur la m\xEAme page sinon
+l'effet est inchang\xE9.
+
+\labelsinmargin
+\section{\mdseries\texttt{\textbackslash labelsinmargin}}%
+\label{labels: in: margin}
+\FP\ offre la possibilit\xE9, comme cela a \xE9t\xE9 demand\xE9
+\xE0 partir de cette section, d'imprimer dans la marge le libell\xE9 des
+\xE9tiquettes utilis\xE9es dans les ordres \verb|\label|. 
+Cette option, utilisable
+aussi en dehors du fran\xE7ais, est la suivante :
+\verb|\labelsinmargin|.
+
+\newpage\english
+\section{Three dots}
+Usual and common \TeX{} and \LaTeX{} dots are not french dots.
+\NL4
+
+\section{Brackets}
+An option is offered to replace \verb|<| and \verb|>| by brackets.
+\NL{11}
+
+\section{\mdseries\texttt{\textbackslash overfullhboxmark}}
+The command \verb|\overfullhboxmark| print a black
+box where your have an overfull \verb|hbox| i.e.\  when a line can't be
+hyphenated. The default is \verb|\nooverfullhboxmark|.
+\NL4
+
+\section{Labels in margin}\label{labels are in margin}
+An option allow you to print the labels you use in a page. These labels are
+printed in margins.
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\section{Des points sur...}
+Inutile de mettre les points sur les i quand on accentue un i. Tout bon
+\xE9diteur de texte doit faire ce travail pour vous. Sinon il existe la 
+sous-option \verb|\idotless| qui produira \idotless
+\let\XX\^% Pour \xE9viter une traduction \xE9ventuelle en 8 bits
+\XX{i} si on lui demande d'imprimer \verb|\^i|.
+\iwithdot La valeur par d\xE9faut
+dans \FP\ est \verb|\iwithdot| qui donnera malgr\xE9 tout de
+bons i accentu\xE9s avec ML\TeX{} (\xEE) s'ils sont saisis directement en 8 
+bits (v\xE9rifiez dans votre fichier source).
+
+{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f at encoding
+\section{Ponctuation et  mode \protect\linebreak % SPECIAL FONTES EC REELLES
+         math\xE9matique}
+\else
+\section{Ponctuation et  mode math\xE9matique}
+\fi}
+Il s'agit de v\xE9rifier que les modifications introduites 
+par l'extension \FP\ 
+ne posent aucun genre de probl\xE8me en mode math\xE9matique.
+\\ Nous d\xE9finissons une macro \verb|\test| :
+\\  \verb|\def\test#1{#1}|\def\test#1{#1}
+\\ pour voir si le mode math\xE9matique peut \xEAtre appel\xE9 
+sans probl\xE8me en
+argument de macro-instructions. L'appel de \verb|\test{$x''$}| ne doit
+pas poser de probl\xE8me%
+\iflatex
+, ni m\xEAme \verb|\texttt{|\-\verb|[$x''=0$]}|
+\\ Ainsi : \verb|\texttt{[$x''=0$]}|
+\\donne : \texttt{[$x''=0$]} et
+\else%
+. \\Ainsi :
+\fi
+\\  \verb|$A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$|
+\\  \verb|\test{$A':B''_1<C_{d'}$}|
+\\donne : $A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$
+\\\phantom{donne :} \test{$A':B''_1<C_{d'}$}
+\\Avec \verb|\noenglishquote|\noenglishquote{} cela...
+\\donne : $A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$
+\\\phantom{donne :} \test{$A':B''_1<C_{d'}$}
+\englishquote
+\\ puis avec \verb|\noenglishdoublequotes| \noenglishdoublequotes et
+`` mise en vedette '' :
+$$%  \begin{displaymath}
+            A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;
+$$%  \end{displaymath}
+$$%  \begin{displaymath}
+            \test{A':B''_1<C_{d'}}
+$$%  \end{displaymath}
+De m\xEAme :
+\begin{verbatim}
+{\tt CALL SUBR($<$iopt$<$,ilopt$>%
+                                 >$)}
+\end{verbatim}
+doit s'imprimer :\\
+{\tt CALL SUBR($<$iopt$<$,ilopt$>%
+                                 >$)}\\
+sans produire le message d'erreur \xAB Fermeture de guillemets non ouverts ! \xBB.
+\englishdoublequotes
+
+
+\newpage\english
+\section{An \i dotless}
+Everybody knows that a french ``{\em i circonflexe}'' has no dot on it. 
+(In my opinion it is a \TeX{} bug to leave the dot when a diacritic is
+put on.) To suppress the dot automatically the best way is to use a well
+programmed text editor. \FP\ offers another opportunity with
+\verb|\idotless|.
+
+\NL3
+
+\section[Math mode and punctuation]{Math mode and \newline punctuation}
+Here we verify that french modifications about punctation
+does not introduce any problem in printing mathematics. 
+\\ We define a new  macro \verb|\test| :
+\\  \verb|\def\test#1{#1}|\def\test#1{#1}
+\\ in order to see if there is no more problem when passing maths
+inside a macro argument. Calling  \verb|\test{$x''$}| must not
+introduce any problem%
+\iflatex
+, as well as \verb|\texttt{|\-\verb|[$x''=0$]}|
+\NL1\\So: \verb|\texttt{[$x''=0$]}|
+\\gives: \texttt{[$x''=0$]} and
+\else%
+. \NL1\\So:
+\fi
+\\\verb|$A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$|
+\\\verb|\test{$A':B''_1<C_{d'}$}|
+\\ gives: $A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$
+\\\phantom{gives:} \test{$A':B''_1<C_{d'}$}
+\\With \verb|\noenglishquote|\noenglishquote{} it$\ldots{}$
+\\gives: $A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$
+\\\phantom{gives:} \test{$A':B''_1<C_{d'}$}
+\englishquote
+\\ and with \verb|\noenglishdoublequotes|\noenglishdoublequotes{}  
+in ``display'' math mode:
+$$%  \begin{displaymath}
+            A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;
+$$%  \end{displaymath}
+$$%  \begin{displaymath}
+            \test{A':B''_1<C_{d'}}
+$$%  \end{displaymath}
+\englishdoublequotes 
+Also:
+\ifx\documentclass\undefined\\ % Still Plain!
+\else\\[-2\baselineskip] % to keep the same spacing as in French
+\fi
+\begin{verbatim}
+{\tt CALL SUBR($<$iopt$<$,ilopt$>%
+                                 >$)}
+\end{verbatim}
+must print:\\
+%\SmsG%
+{\tt CALL SUBR($<$iopt$<$,ilopt$>%
+                                 >$)}\\
+%\FmsG%
+without producing the error message: 
+``Fermeture de guillemets non ouverts !''.
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+Pour ma part lorsque je d\xE9sire des crochets que je n'ai pas
+au clavier, je pr\xE9f\xE8re taper :\\
+\verb|{\tt CALL SUBR(<iopt<,ilopt> >)}| et utiliser
+l'option \verb|\EBCDICbrackets|\EBCDICbrackets{} :\\
+{\tt CALL SUBR(<iopt<,ilopt> >)}
+
+Cette option n'a pas d'effet en mode math\xE9matique :
+$$ 1233 < 1234 <%
+                < 1235 >%
+                        > 1234 > 1233 $$
+\normalbrackets
+
+\makeatletter% we should use \frac with AmS
+\ifx\RIfM@\undefined%\ifx\csname amsmath.sty\endcsname\relax
+     \long\def\text#1{#1}\long\def\frac#1#2{{#1\over#2}}
+\fi
+\makeatother
+
+V\xE9rifions aussi 
+($x < {\frac{1}{3}} < {\frac{1}{2}} > {\frac{1}{4}}$) :
+$$x <  \frac{1}{3}  < \frac{1}{2}   >  \frac{1}{4} $$
+puis aussi :
+
+ \text{\quad pour $|y| < \frac{111}{444}$}
+
+\bigskip
+La double ponctuation ne doit avoir aucun effet 
+(visible) dans une formule en mode
+math\xE9matiques, est-ce bien le cas sur l'exemple ci-dessous :
+
+{\LARGE $$a := b, (c!n=m) \textrm{ ; vrai ?}$$}
+
+On notera que la partie texte de la formule a \xE9t\xE9 saisie avec la
+commande : \\
+\verb|\textrm{ ; vrai ?}|\\
+et que l'espacement fran\xE7ais y a \xE9t\xE9 appliqu\xE9.
+
+\iflatex
+\subsection{Le cas de la virgule}
+En standard \AllTeX{} (ou alors avec l'option sp\xE9ciale 
+\verb|\regularmathcomma| de \FP) le traitement de la virgule
+est sp\xE9cifique, ainsi quand on tape ce qui suit en mode
+math\xE9matique de mise en valeur :
+\regularmathcomma%
+\begin{versatim}
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{\euro}$$
+\end{versatim}
+on obtient des espacements apr\xE8s les virgules,
+qu'il y ait ou non des espaces dans le source \TeX\ :
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{\euro}$$
+(ce qui montre une anomalie dans la composition
+des nombres relatifs)
+\frenchmathcomma
+\fi
+
+\newpage\english
+When I have no brackets on my keyboard I prefer to type:\\
+\verb|{\tt CALL SUBR(<iopt<,ilopt> >)}|\\ using
+ the option \verb|\EBCDICbrackets| but the result in english
+remains unchanged\EBCDICbrackets{}:\\
+{\tt CALL SUBR(<iopt<,ilopt> >)}
+
+And within math mode:
+$$ 1233 < 1234 <%
+                < 1235 >%
+                        > 1234 > 1233 $$
+\normalbrackets
+
+\makeatletter% we should use \frac with AmS
+\ifx\RIfM@\undefined%\ifx\csname amsmath.sty\endcsname\relax
+     \long\def\text#1{#1}\long\def\frac#1#2{{#1\over#2}}
+\fi
+\makeatother
+
+Let's verify also ($x < {\frac{1}{3}} < {\frac{1}{2}} > {\frac{1}{4}}$) :
+$$x < \frac{1}{3} < \frac{1}{2} > \frac{1}{4}$$
+and:
+
+ \text{\quad pour $|y| < \frac{111}{444}$}
+
+\bigskip
+The ``double punctuation'' should not have any effect
+in maths, which is obviously the case in the following
+English example:
+\NL1
+
+{\LARGE $$a := b, (c!n=m) \textrm{ ; vrai ?}$$}
+
+Though the text part of the formula has been typed
+via a command: \\
+\verb|\textrm{ ; vrai ?}|\\
+the french spacing doesn't apply here.
+
+\iflatex
+\subsection{The comma case}
+With \AllTeX{} standard (or with the special \FP\ 
+\verb|\regularmathcomma| the processing of comma is really specific.
+So, when you type in the following in display math mode:
+\regularmathcomma%
+\begin{verbatim}
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 
+      1\,500,00\,\textrm{\euro}$$
+\end{verbatim}
+you will get thin spaces after the commas,
+no matter spaces are given or not in the \TeX\ source:
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{\euro}$$
+(which shows a french typesetting error for
+the relative numbers).
+\frenchmathcomma
+\fi%
+
+\iflatex\french
+\newpage
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+Par contre avec \FP\ on n'obtient 
+aucun espacement suppl\xE9mentaire :
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{\euro}$$
+cela est d\xFB \xE0 l'option \verb|\frenchmathcomma| qui est
+activ\xE9e par d\xE9faut avec \FP.
+Mais cela montre alors une anomalie de composition
+dans les listes $(x,y,z)$.
+
+Si l'on veut des espaces il faut alors les indiquer
+explicitement, comme cela est l'usage, plus
+g\xE9n\xE9ralement, en mode math\xE9matique :
+\begin{versatim}
+$$\textrm{La fonction}\ f(x,\,y)\ 
+  \textrm{ou le Vecteur}\ V(x,\,y,\,z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{\euro}$$
+\end{versatim}
+ce qui donnera :
+$$\textrm{La fonction}\ f(x,\,y)\ 
+  \textrm{ou le Vecteur}\ V(x,\,y,\,z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{\euro}$$
+
+\medskip
+
+On notera que \FP\ ob\xE9it \xE0 l'extension \texttt{icomma}
+lorsque cette derni\xE8re est charg\xE9e avant \FP, mais
+seulement en fran\xE7ais.
+
+
+\newpage\english
+With the \FP\ package there is no space added
+at all:
+\frenchmathcomma%
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{\euro}$$
+this is due to the option \verb|\frenchmathcomma| which is
+defaultly activated in the \FP\ package.
+People will then distinguish a typesetting error
+in the lists $(x,y,z)$.
+
+If you want spaces you should then give them to \TeX\
+explicitely, as usually done, more generally in math mode:
+\begin{verbatim}
+$$\textrm{La fonction}\ f(x,\,y)\ 
+  \textrm{ou le Vecteur}\ 
+      V(x,\,y,\,z)$$
+$$Total=1,255\,\$\ ou\ 
+      1\,500,00\,\textrm{\euro}$$
+\end{verbatim}
+which will give:
+$$\textrm{La fonction}\ f(x,\,y)\ 
+  \textrm{ou le Vecteur}\ V(x,\,y,\,z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{\euro}$$
+\fi
+
+You should notice that \FP\ respect the choice of
+the \texttt{icomma} package when that last one is loaded before
+\FP; but it only applies in French.
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\section{Mon antislash est \mdseries\texttt{\backslash}}
+
+L'antislash n'existe pas dans toutes les polices en OT1.
+Que vous utilisiez \verb|\backslash| ou \verb|\textbackslash|
+vous obtiendrez la m\xEAme chose, ainsi
+en romain droit on obtient :
+
+textbackslash=\textbackslash
+
+backslash=\backslash
+
+\noindent
+mais avec la fonte tt on obtient :
+
+{\tt
+textbackslash=\textbackslash
+
+backslash=\backslash
+}
+\NL2
+
+\section{Notes de bas de page}
+
+\iflatex\makeatletter\xdef\countSAVED{\the\c at footnote}\makeatother\fi
+\long\def\XX{%
+             Num\xE9rotation normale\footnote{Une note normalement num\xE9rot\xE9e.}.
+             {\setcounter{footnote}{0}
+             \renewcommand{\thefootnote}{\fnsymbol{footnote}}
+     
+             Voici une note\footnote{Premi\xE8re note.} 
+             puis une autre\footnote{Deuxi\xE8me note.}
+             puis encore une autre\footnote{Troisi\xE8me note.}
+             }}
+
+Nous comparons ici la composition des notes de bas de page
+(avec et sans \verb|\fnsymbol|)
+dans une langue et dans l'autre. Voyons ce que cela donne :
+
+\XX
+
+\newpage\english
+\section{My antislash is \mdseries\texttt{\textbackslash}}
+
+The antislash glyph doesn't exist in all OT1 font.
+Whatever you use, \verb|\backslash| or \verb|\textbackslash|
+you will obtain the same output, so
+in upright roman you obtain:
+
+textbackslash=\textbackslash
+
+backslash=$\backslash$
+
+\noindent
+but with the tt font you obtain:
+
+{\tt
+textbackslash=\textbackslash
+
+backslash=$\backslash$
+}
+
+\noindent
+but \verb|\backslash| is only available in
+math mode.
+
+\section{Compared footnotes}
+
+We compare the typesetting of footnotes 
+(with and without \verb|\fnsymbol|)
+in one language versus the other. Let's look at them.
+
+\iflatex\makeatletter\c at footnote=\countSAVED\makeatother\fi
+
+\XX
+\iflatex\makeatletter\c at footnote=\countSAVED\makeatother\fi
+\addtocounter{footnote}{1}
+\NL1
+
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+
+\section{\mdseries\texttt{\textbackslash guillemetsinarrays}}
+
+Avec \FP\ l'utilisation de guillemets \xE0 la 
+fran\xE7aise en mode texte dans les environnements \texttt{array} ou 
+\texttt{eqnarray} est possible
+mais il est n\xE9cessaire de prot\xE9ger les op\xE9rateurs
+inf\xE9rieur (\texttt{<}) et sup\xE9rieur (\texttt{>}) lorsqu'ils terminent
+une colonne. On rajoute alors une paire d'accolades ou \verb|\relax| 
+pour terminer la macro-commande :
+\begin{verbatim}
+$
+\begin{array}{ccc}  
+a  & \inferieura        &b\\ 
+a  & \protect<          &b\\ 
+a  & b                  &<\\       
+a  & >{}                &c\\      
+<{}& \xAB \xBB              &c\\     
+<{}& \textrm{\xAB text \xBB}&c 
+\end{array}
+$
+\end{verbatim}
+
+\noindent ce qui donne : 
+
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & \protect<          &b\\ 
+a  & b                  &<\\       
+a  & >{}                &c\\      
+<{}& \xAB \xBB              &c\\     
+<{}& \textrm{\xAB text \xBB}&c 
+\end{array}
+$
+
+\medskip
+On peut \xE9viter d'avoir \xE0 modifier des tableaux existants et dans ce
+cas on codera \verb|\no|\-\verb|guil|\-\verb|lemetsinarrays| :
+
+\begin{verbatim}
+\noguillemetsinarrays
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & <                  &b\\ 
+a  & b                  &<\\       
+a  & >                  &c\\      
+<  & \xAB \xBB              &c\\     
+<  & \textrm{\xAB text \xBB}&c 
+\end{array}
+$
+\end{verbatim}
+
+\noindent ce qui donne alors :
+
+\noguillemetsinarrays
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & <                  &b\\ 
+a  & b                  &<\\       
+a  & >                  &c\\      
+<  & \xAB \xBB              &c\\     
+<  & \textrm{\xAB text \xBB}&c 
+\end{array}
+$
+\guillemetsinarrays% reset default
+
+\newpage\english
+\section{Guillemets in arrays}
+The \FP\ package allows people to print french guillemets
+in \texttt{array} environments (but in text mode). This usually breaks
+the code for \texttt{<} or \texttt{>} when they finish an array slot.
+So you should protect them; like this:
+\NL2
+
+\begin{verbatim}
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & \protect<          &b\\ 
+a  & b                  &<\\       
+a  & >{}                &c\\      
+<{}& \textrm{\xAB text \xBB}&c 
+\end{array}
+$
+\end{verbatim}
+\NL1
+
+\noindent which gives: 
+
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & \protect<          &b\\ 
+a  & b                  &<\\       
+a  & >{}                &c\\      
+<{}& \textrm{\xAB text \xBB}&c 
+\end{array}
+$
+\NL1
+
+\medskip
+
+One can avoid to modify existing arrays and then just say
+\verb|\noguillemetsinarrays| but this command is not
+interesting in English because the problem doesn't exist
+at all:
+
+\begin{verbatim}
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & <                  &b\\ 
+a  & b                  &<\\       
+a  & >                  &c\\      
+<  & \textrm{<< text >> &c 
+\end{array}
+$
+\end{verbatim}
+\NL1
+
+\noindent gives the following result:
+
+\def\GOfrench{\let\ifCLA\iffalse}% To allow dmy and frencht to compile
+\ifx\ifCLA\undefined\expandafter\GOfrench\fi% without error.
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & 
+\ifCLA\expandafter\protect\fi% To allow \ConstantLayout test file.
+<                  &b\\ 
+a  & b                  &<\\       
+a  & 
+\ifCLA\expandafter\protect\fi% To allow \ConstantLayout test file.
+>                  &c\\      
+\ifCLA\expandafter\protect\fi% To allow \ConstantLayout test file.
+<  & \textrm{<< text >>}&c 
+\end{array}
+$
+\NL1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+
+\noguillemetsinarrays% for continuation of column
+Cette commande est aussi valable  pour les environnements
+\texttt{eqnarray} :
+
+\begin{eqnarray}
+a  & <                  &b\\ 
+a  & >                  &c\\      
+<  & \xAB \xBB              &c\\     
+<  & \textrm{\xAB text \xBB}&c 
+\end{eqnarray}
+
+Pour terminer je r\xE9tablis la valeur par d\xE9faut :
+\verb|\guillemetsinarrays| 
+\guillemetsinarrays
+et si j'essaye le m\xEAme exemple j'obtiendrais
+le message : \\
+{\makeatletter\let\@PreserveBraces={% uggly hack for plain
+\vers|! Argument of \@PreserveBraces has an|\\
+\vers|extra }.|
+}% closing hack.
+
+\section{Guillemets verbatim}
+
+Avec l'option \verb|\nofrenchguillemets| il est possible
+--~si \FP\ travaille en codage de fonte du genre \texttt{T1} 
+{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f at encoding\else
+(mais ca ne semble pas \xEAtre le cas ici)\fi}%
+~--
+\nofrenchguillemets
+d'imprimer des guillemets 8-bits en verbatim : \verb|\xAB \xBB|.
+\frenchguillemets
+
+\iflatex
+\section{Environnement guillemets exclus}
+
+\begin{versatim}
+\guillemets{} Je me suis dit que : 
+\xAB avec l'option [...] les  guillemets 
+sont inop\xE9rants. \endguillemets{}
+\end{versatim}
+\SmsG
+\noeveryparguillemets
+\guillemets{}
+\verb|[\guillemets{}]| Je me suis dit que : 
+\xAB avec l'option \vers|\noevery|\-\vers|par|\-\vers|guillemets|
+on ne doit pas avoir un environnement qui se termine avant la fin
+du paragraphe. C'est pourquoi l'environnement \texttt{guillemets} 
+n'est plus autoris\xE9 dans ce cadre.
+D\xE9sormais un message est \xE9mis et ces environnements 
+guillemets sont inop\xE9rants. \endguillemets{}
+
+On note que \verb|\guillemets{}| n'a aucun effet visible
+et que le d\xE9but de paragraphe est forc\xE9 aux premiers 
+caract\xE8res-guillemets ouvrants qui suivent. Le 
+\verb|\endguillemets{}| de fin d'environnement ferme cependant
+le paragraphe.
+
+\guillemets [\verb|\guillemets{}|]\!
+Ces environnements exclus dans le cadre de cette option
+ peuvent \xEAtre de premier ou 
+/\guillemets{} deuxi\xE8me \endguillemets{}/ niveau
+comme ici (slashs). [\verb|\endguillemets{}|]
+\endguillemets{}
+
+\FmsG
+\frenchguillemets
+\fi%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\english
+Notice that with standard \LaTeX\ you obtain a message
+saying that \verb|\guillemotleft| and \verb|\guillemotright|
+are invalid in math mode when you try to use guillemets
+in an \texttt{array} environement.
+\NL{9}
+
+\smallskip
+
+\section{Verbatim Guillemets}
+
+The 8bit french guillemets chars printed within
+a verbatim environnement give here: \verb|\xAB \xBB|
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Utilisation de la \mdseries\texttt{toc}}
+
+Il n'est pas pr\xE9vu de pouvoir composer une table des mati\xE8res ou un
+sommaire dans plus d'une langue.
+On notera que \verb|\sommaire| est un apport de \FP.
+
+\section{Fichiers {\mdseries\texttt{lof}} et {\mdseries\texttt{lot}}}
+On v\xE9rifie ici que la ponctuation fran\xE7aise n'a pas cr\xE9\xE9 
+d'ennui particulier.
+Nous avons laiss\xE9 en blanc la figure \ref{x\xAB:;!?\xBBx} 
+qui n'est qu'un simple
+test. De m\xEAme le tableau \ref{y`\xAB:;!?\xBB'y} n'est l\xE0 que pour 
+cr\xE9er une entr\xE9e dans la liste des tableaux.
+
+Le {\em caption} de la figure 
+\ref{x\xAB:;!?\xBBx} 
+ doit appara\xEEtre com\-me ceci :
+ {\it \xAB essai \xBB ;  2 cm ! pourquoi pas ?}
+\begin{figure}[h]
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\%\vspace*{2cm}
+\ \\
+\ Peu importe la figure...\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{\xAB essai \xBB ;  2 cm ! pourquoi pas ? 
+         \protect\\ (cf. aussi le tableau \ref{frenchdactylo})}
+\label{x\xAB:;!?\xBBx}
+\end{figure}
+
+Le {\em caption} du tableau
+\ref{y`\xAB:;!?\xBB'y}
+ doit \xEAtre comme ceci :
+{\it ` \xAB essai \xBB ;  2 cm ! pourquoi pas ? '}
+\begin{table}[h]
+\caption{` \xAB essai \xBB ;  2 cm ! pourquoi pas ? '  
+         \protect\\ (cf. aussi le tableau \ref{frenchdactylo})}
+\label{y`\xAB:;!?\xBB'y}
+
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ Peu importe le tableau\footnote{Une note de tableau.}...\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+
+On notera les libell\xE9s ({\sc Fig.} et {\sc Tab.}) plus confor\-mes \xE0
+l'usage fran\xE7ais. Ne pas oublier non plus que les titres de tableaux sont
+toujours plac\xE9s, en fran\xE7ais, avant ceux-ci contrairement aux figures.
+
+\FP\ ne pr\xE9voit pas que l'on puisse composer une 
+partie des tables des figures (ou tableaux) en fran\xE7ais et une autre
+en anglais par exemple. Les fichiers \verb|.lof| et \verb|.lot| seront
+donc compos\xE9s enti\xE8rement dans la langue pr\xE9s\xE9lectionn\xE9e.
+
+\newpage\english
+\section{{\mdseries\texttt{toc}} file use}
+No facility is given to typeset the \verb|.toc| in various languages.
+
+Notice that \verb|\sommaire| is a new command brought up with this
+package.
+
+\section{{\mdseries\texttt{lof}} and {\mdseries\texttt{lot}} files}
+Same test in English just to verify  that our french modifications
+does not affect the text in English.
+
+You will notice, of course, that the caption names are re-established
+to their original values ({\bf figure} and {\bf table}).
+
+The following figure (not referable) %(\ref{ex\xAB:;!?\xBBex}) 
+caption must look like:
+\xAB essai \xBB;  2 cm! Why not?
+\begin{figure}[h]
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ No matter how is the figure$\ldots{}$\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{\xAB essai \xBB;  2 cm! Why not?
+         \protect\\ (cf. also the table \ref{frenchdactylo})}
+%\label{ex\xAB:;!?\xBBex}% produit un missing \endcsname
+\end{figure}
+
+The {\em caption} of the table (not referable) %\ref{ey`\xAB:;!?\xBB'ey} 
+must look like: 
+` \xAB essai \xBB;  2 cm! Why not? '
+\begin{table}[h]
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ No matter how is the table\footnotemark% \footnotetext est perdu !
+ $\ldots{}$\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{` \xAB essai \xBB;  2 cm! Why not? '
+         \protect\\ (cf. also the table \ref{frenchdactylo})}
+%\label{ey`\xAB:;!?\xBB'ey}% generates missing \endcsname
+\end{table}\footnotetext{A note from a table.}
+\NL1
+
+Notice that we have here the standard caption names used by \LaTeX{}.
+
+You can see in the French column the specific labels and places of caption
+titles (under the figure but over the table).
+
+Don't try to compose \verb|.lof| and \verb|.lot| files in more than one
+language, it's not designed in this (stupid?) way!
+
+\french
+\begin{table*}[tb]
+\caption{` \xAB essai \xBB ;  2 cm ! pourquoi pas ? '  
+         (cf. aussi le tableau \ref{frenchdactylo})}
+\label{2`\xAB:;!?\xBB'2}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ Peu importe le tableau sur deux colonnes%
+\footnote{Une note de tableau.}...\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\end{table*}
+
+\newpage
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{Encore un tableau...}
+Mais celui-ci est sur deux colonnes si l'option
+\verb|twocolumn| est active. V\xE9rifions simplement
+que le traitement est le m\xEAme qu'en une seule
+colonne.
+
+Le {\em caption} du tableau
+\ref{2`\xAB:;!?\xBB'2}
+ doit \xEAtre comme ceci :
+{\it ` \xAB essai \xBB ;  2 cm ! pourquoi pas ? '}
+
+\section{\sloppy Encore {\mdseries\texttt{\textbackslash labelsinmargin}}}
+
+\xC0 nouveau nous utilisons \verb|\labelsinmargin|
+\labelsinmargin
+pour v\xE9rifier son fonctionnement dans une figure
+et un titre de figure 
+
+\begin{figure}[h]
+\label{label de la figure}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ Peu importe la figure...\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{le titre de la figure avec label
+\label{label du titre fig.}}
+\end{figure}
+
+M\xEAme test avec un tableau :
+\begin{table}[h]
+\label{label du tableau}
+\caption{le titre du tableau avec label\label{label du titre tab.}}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ Peu importe le tableau...\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+
+\sloppypar{
+D\xE9sactivons d\xE9finitivement l'option 
+avec \verb!\nolabelsinmargin!.
+}
+\nolabelsinmargin
+
+\newpage\english
+\NL8
+\section{{\mdseries\texttt{\textbackslash labelsinmargin}} again}
+
+Again we test \verb|\labelsinmargin|
+\labelsinmargin
+to verify that it is running within a figure
+and in a figure's caption. 
+
+\begin{figure}[h]
+\label{label in a figure}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ No matter the figure$\ldots{}$\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{title with a label\label{label in fig. caption}}
+\end{figure}
+
+Same test with a table:
+\begin{table}[h]
+\label{label in a table}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ No matter the table$\ldots{}$\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{title with a label\label{label in a tab. caption}}
+\end{table}
+
+Disactivate definitely the option with \verb!\nolabelsinmargin!.
+\nolabelsinmargin
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+
+\section{Notes dans \mdseries\texttt{\textbackslash caption}}
+
+Si une note dans un tableau doit \xEAtre imprim\xE9e \xE0 la fin du
+tableau, une note dans un titre de tableau doit \xEAtre
+imprim\xE9e en fin de page. Malheureusement \LaTeX{} perd
+le texte des notes dans les environnements {\tt figure} et 
+{\tt table}. L'ex\-ten\-sion \FP\ pr\xE9vient l'utilisateur
+que le texte doit \xEAtre r\xE9ins\xE9r\xE9 \xE0 l'aide de \verb|\footnotetext|.
+
+\begin{table}[h]
+
+\SmsG%
+\caption[Essai de footnote dans un caption de tableau]
+        {L\xE9gende\protect\footnote{Une note de bas de page.}}
+\FmsG%
+
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+%\ \\
+\ Peu importe le tableau...\\
+%\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+\footnotetext{Une note de bas de page.}
+
+\section{{\mdseries\texttt{\textbackslash caption}} vide}
+
+\begin{table}[h]
+\caption{}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+%\ \\
+\ Tableau sans l\xE9gende\\
+%\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+
+\section{\mdseries\texttt{\textbackslash nombre}}
+
+Les nombres en fran\xE7ais sont imprim\xE9s correctement lorsque l'on
+utilise \verb|\nombre|, ainsi :
+
+\begin{verbatim}
+\nombre{123 456,123 456}
+\end{verbatim}
+imprime \nombre{123 456,123 456} au lieu de la forme habituelle
+ {\regularmathcomma $123 456,123 456$}
+ou \mbox{123 456,123 456} suivant que l'on est en mode math
+ou en mode texte.
+
+On y voit des espaces fines \xE0 chaque millier et (normalement)
+une virgule sans espace suppl\xE9mentaire comme cela se produit
+en mode math avec \TeX{} standard.
+
+\section{Autre chose ?}
+Non !
+
+[espace libre utilisable]
+
+\newpage\english
+
+\section{Notes within \mdseries\texttt{\textbackslash caption}}
+
+Normally in French we print table's footnotes at the end of the table
+but it can't be the case when a footnote is called from a caption title.
+But unfortunately footnote's text is lost when inside a \LaTeX{} figure
+or table environnement, as shown here.
+Thus {\tt french.sty} warn the user with the appropriate message, but
+in English nothing is done. 
+
+\begin{table}[h]
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+%\ \\
+\ No matter the table$\ldots{}$\\
+%\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption[footnote try within a table's caption]
+        {Caption title\protect\footnote{A footnote page.}}
+
+\end{table}
+%\footnotetext{A footnote page.}
+
+\section{Empty \mdseries\texttt{\textbackslash caption}}
+
+\begin{table}[h]
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+%\ \\
+\ Empty caption\\
+%\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{}
+\end{table}
+
+\section{\mdseries\texttt{\textbackslash nombre}}
+
+French number should be correctly printed using
+\verb|\nombre|, so :
+
+\begin{verbatim}
+\nombre{123 456,123 456}
+\end{verbatim}
+should not print as usual
+$123 456,123 456$ nor \mbox{123 456,123 456}
+(depending you are in math or in text mode)
+but $123\,456{,}123\,456$.
+\NL1
+
+We see here thin spaces between each thousand part and no
+(usual) space after the comma (as it is in math with standard
+\TeX{}).
+
+\smallskip
+
+\section{Anything else?}
+
+No!
+
+\noindent
+[free space to reuse]
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Le 1\protect\fup{er} paragraphe}
+Notez bien que le 1\fup{er} paragraphe d'une section 
+ne commence jamais au fer \xE0 gauche 
+en fran\xE7ais, comme vous le voyez ici.
+
+Le deuxi\xE8me paragraphe d\xE9marre comme le premier...\footnote{%
+La typographie du titre de section (1\fup{er}) est \xE0 noter ;
+ {\tt mysmaller.sty} a \xE9t\xE9 utilis\xE9 
+\xE0 la compilation de {\tt frenchrf} avec \LaTeX{}. 
+Il existe aussi l'extension {\tt relsize} qui fonctionne
+bien avec \FP.}
+
+\section{Test des listes}\label{listes}
+
+Voici un test d'\xE9num\xE9ration (\verb|itemize|) de \LaTeX{} :
+
+\begin{itemize}
+\item liste de niveau 1 ;
+      \begin{itemize}
+      \item incluant un niveau 2,
+            \begin{itemize}
+            \item mais aussi un niveau 3,
+            \item peu utilis\xE9 ;
+            \end{itemize}
+      \item le niveau 2 se terminant ici ;
+      \end{itemize}
+\item suite de la liste de niveau 1 ;
+\item dernier \xE9l\xE9ment de niveau 1.
+\end{itemize}
+
+On remarquera les deux choses suivantes : 
+\primo les marqueurs sont identiques quel que soit
+le niveau et \secundo aucun \xE9l\xE9ment ne commence par une majuscule.
+\NL2
+
+\section{D\xE9finition de langue}
+
+Cette partie n'a plus de sens (R. J.).
+%On peut se d\xE9finir une  langue comme par exemple le kathmandouais par : \\%
+%\verb|\NouveauLangage[2]|\verb|{kathmandouais}|\\%
+%\global% for TeX--XeT tests
+%\def\kathmandouaisTeXmods{\empty}
+%      \NouveauLangage[2]{kathmandouais} %
+%et ensuite on peut \xE9crire kathmandouais en tapant : 
+%\verb|\kathmandouais|
+%\SmsG%
+%\kathmandouais%Message a ignorer si vous n'avez que 2 langues definies.
+%bla... blabla... bla%
+%\typeout{I AM WRITING KATMANDOUAIS, Ye\string! (language=\the\language)}%
+%\FmsG%
+%\footnote{Mais bien entendu les c\xE9sures ne seront pas bonnes car elles
+%seront faites \xE0 partir d'un language existant. On notera la typographie
+%du num\xE9ro de cette note saisie en {\em Katmandouais}.}
+% et revenir au fran\xE7ais par
+%\verb|\french|\french%
+%\footnote{Si le point qui suit n'est pas accol\xE9 au mot {\tt french}
+%alors cela signifie que des {\em blank space} tra\xEEnent dans 
+%\FP.}.
+%S'il n'y a  pas  de commande \verb|\kathmandouaisTeXmods| de d\xE9finie 
+%rien ne se passera
+%vraiment, cela sera \xE9quivalent \xE0 \verb|\relax|, seul un message 
+%d'avertissement sera \xE9mis.
+
+\newpage\english
+\section{First paragraph}
+In English each paragraph is indented except the first one of a section,
+subsection, etc. as you can see in this example.
+
+Subsequent paragraphs start indented$\ldots{}$\NL1 
+
+\section{Itemized lists}
+Here is the same  french \verb|itemize| list:\NL1 
+
+\begin{itemize}
+\item liste de niveau 1;
+      \begin{itemize}
+      \item incluant un niveau 2,
+            \begin{itemize}
+            \item mais aussi un niveau 3,
+            \item peu utilis\xE9 ;
+            \end{itemize}
+      \item le niveau 2 se terminant ici ;
+      \end{itemize}
+\item suite de la liste de niveau 1 ;
+\item dernier \xE9l\xE9ment de niveau 1.
+\end{itemize}
+
+You can compare english and french lists.
+Notice firstly that item markers are identical at each level and secondly
+that each item never starts with an uppercase letter.
+
+\section{Create a language}
+
+This creation is now obsolete (R. J.).
+%There is a new control sequence to allow {\em the creation} of new language:\\
+%\verb|\NouveauLangage[n]{language}|\\
+%This command is in fact used internally but it can be also used elsewhere 
+%to define a new language which rules will be set by:\\
+% \verb|\<language>TeXmods| (if defined.) The internal language number \verb|n|
+%tells \TeX{} what hyphenation table is to use among those defined at
+%\verb|INITEX| time.
+
+\begin{table*}[th]% pour la page suivante
+\begin{center}
+\fbox{Attention : psfig est p\xE9rim\xE9 ; il n'est utilis\xE9 ici  qu'\xE0 des fins de test. (B. G.)}\\[2ex]
+\fbox{Puisque  psfig est p\xE9rim\xE9 utilisons  graphicx et epstopdf  (R. J.)}               
+\end{center}
+\end{table*}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Caract\xE8res actifs}
+Quelques jeux de macros doivent parfois \xEAtre charg\xE9s 
+directement dans le document
+et utilisent  les caract\xE8res {\em actifs\/} de \FP. Il y
+a alors conflit ouvert. Plusieurs solutions sont offertes, soit utiliser
+l'ordre : \\
+\verb|   \originalinput{fichier}|\\
+ soit :
+\begin{verbatim}
+   \begin{nonfrench}
+          ... macros-instructions...
+   \end{nonfrench}
+\end{verbatim}
+%Nous avons adopt\xE9 la  deuxi\xE8me solution ici : 
+%
+%\tthyphenation
+%\begin{versatim}
+%Saluons au passage Trevor Darrell, l'auteur de \verb|psfig| :
+% \begin{nonfrench}
+%   \let\psfig\undefined
+%   \input mypsfig.sty
+%   \begin{center}
+%       \ \hbox{\vbox{\psfig{figure=%
+%          myfigure.ps,height=1in}}}\  
+%   \end{center}
+% \end{nonfrench}
+%\end{versatim}
+
+%Saluons au passage Trevor Darrell, l'auteur de \verb|psfig| :
+%\begin{nonfrench}
+%   \let\psfig\undefined
+%  \input mypsfig.sty
+%  \begin{center}
+%       \ \hbox{\vbox{\psfig{figure=%
+%          myfigure.ps,height=1in}}}\  
+%  \end{center}
+%\end{nonfrench}
+Mais attention n'utilisez pas en fran\xE7ais un code que 
+vous auriez charg\xE9 
+en anglais ou r\xE9ciproquement !
+
+
+L'extension \FP\ n'est plus compatible avec \verb|psfig|. 
+Mais pour montrer quand m\xEAme  l'image que Bernard Gaule voulait placer ici, la voici
+ayant sous Linux remplac\xE9
+\texttt{myfigure.ps} en son expression encapsul\xE9e \texttt{myfigure.eps}
+par \xAB \texttt{convert myfigure.ps myfigure.eps} \xBB.\NL1
+%L'ordre \texttt{convert} est une commande Linux.
+%En voici l'exemple -- sans utiliser \verb|nonfrench| -- avec 
+%\verb|\psdraft| : 
+%   \let\psfig\undefined
+%  \input mypsfig.sty
+%  \psdraft
+
+Saluons au passage Trevor Darrell, l'auteur de \verb|psfig| :  \begin{center}
+       \ \hbox{\vbox{\includegraphics[height=1in]{myfigure.eps}}}
+%{\psfig{figure=%
+%          myfigure.ps,height=1in}}}\  
+%       \ \hbox{\vbox{\psfig{figure=%
+%          myfigure.ps,height=1in}}}\  
+\NL1
+  \end{center}
+Voici le code modifi\xE9 :
+\begin{verbatim}
+%  \input mypsfig.sty
+%  \psdraft
+ \begin{center}
+      \ \hbox{\vbox{\includegraphics%
+  [height=1in]{myfigure.pdf}}}
+%       \ \hbox{\vbox{\psfig{figure=%
+%          myfigure.ps,height=1in}}}\  
+  \end{center}
+\end{verbatim}
+
+\NL1
+Comme vous le voyez l'appel \xE0 \texttt{mypsfig.sty} n'est plus n\xE9cessaire.
+Mais nous avions charg\xE9 \texttt{graphicx} et \texttt{epstopdf} dans les styles charg\xE9s \xE0 la base.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\english
+\section{Active characters}
+Codes that were designed for English might bring problems when used with  
+\FP\ because few characters are {\em activated\/}. 
+Few solutions are offered, either:\\
+\verb|   \originalinput{file}|
+
+or:
+\begin{verbatim}
+   \begin{nonfrench}
+          ... macros-instructions...
+   \end{nonfrench}
+\end{verbatim}
+%We used here the second solution:
+%\begin{verbatim}
+%Saluons au passage Trevor Darrell, 
+%           l'auteur de \verb|psfig| :
+% \begin{nonfrench}
+%   \let\psfig\undefined
+%   \input mypsfig.sty
+%   \begin{center}
+%       \ \hbox{\vbox{\psfig{figure=%
+%          myfigure.ps,height=1in}}}\  
+%   \end{center}
+% \end{nonfrench}
+%\end{verbatim}
+%
+%\notthyphenation
+%%\begin{nonfrench}% inutile d'obtenir un message de warning
+%   \let\psfig\undefined
+%  \input mypsfig.sty
+But be carefull, don't use in French a code that was loaded in English
+or reciprocally!
+
+The \FP\ extension is no more compatible with \verb|psfig|. 
+
+But in order to show  the image that Bernard Gaule had in mind to place here, you can see it
+after having converted with the  Linux command \texttt{convert myfigure.ps myfigure.eps} 
+his original \texttt{myfigure.ps} in an encapsulated version \texttt{myfigure.eps}.
+
+%\NL1
+Saluons au passage Trevor Darrell, %
+           l'auteur de \verb|psfig| :
+  \begin{center}
+       \ \hbox{\vbox{\includegraphics[height=1in]{myfigure.eps}}}
+%       \ \hbox{\vbox{\psfig{figure=%
+%          myfigure.ps,height=1in}}}\  
+  \end{center}
+\NL1
+%%\end{nonfrench}
+Here is the modified code:
+\begin{verbatim}
+%  \input mypsfig.sty
+%  \psdraft
+ \begin{center}
+      \ \hbox{\vbox{\includegraphics%
+   [height=1in]{myfigure.eps}}}
+%       \ \hbox{\vbox{\psfig{figure=%
+%          myfigure.ps,height=1in}}}\  
+  \end{center}
+\end{verbatim}
+As you can see, a call to \texttt{mypsfig.sty} is no more necessary.
+But \texttt{graphicx} and \texttt{epstopdf} have been loaded in the main module.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+
+\section{Abr\xE9viations}
+\abbreviations 
+Si on demande \verb|\abbreviations| alors on a  
+acc\xE8s \xE0 un fichier d'abr\xE9\-via\-tions 
+typo\-graphi\-ques fran\xE7aises. 
+Ainsi je saisis \verb|"monseigneur"| et j'imprime "monseigneur"\!.
+De m\xEAme, avec ML\TeX{} je saisis \verb|"deuxi\xE8me"| 
+(v\xE9rifiez dans le
+source que ce mot est bien cod\xE9 en 8bits) et j'imprime "deuxi\xE8me"\!%
+. %alors que le fichier d'abr\xE9viations contient \verb|"deuxi\`|\verb|eme"|.
+Ainsi il n'est plus vraiment indispensable de se rappeler que
+l'abr\xE9viation de madame est "madame" (et ma\xEEtre : "ma\xEEtre"\!).
+
+Lorsqu'un mot ne figure pas dans le fichier d'abr\xE9viations, il est alors 
+imprim\xE9 tel que. Ainsi \verb|"GUTenberg"| imprimera 
+\SmsG%
+"GUTenberg".
+\FmsG%
+ Mais n'oubliez jamais le double guillemet fermant sinon vous obtiendrez
+ un message du genre : 
+\begin{versatim}
+ Paragraph ended before \AbbrevName was complete.
+\end{versatim}
+ 
+Je peux aussi donner mon  fichier personnel d'abr\xE9viations en codant :\\
+\verb|\abreviations[mon_fichier_personnel]|
+
+On retire ces possibilit\xE9s par la commande \verb|\noabbreviations|.
+N'oublions pas que le caract\xE8re \verb|"|  sert normalement en \TeX{} 
+comme en \LaTeX{} \xE0 exprimer les nombres en hexad\xE9cimal.
+
+\section{Monsieur s'abr\xE8ge "Monsieur"}
+
+Que je saisisse \verb|"Monsieur"| ou \verb|"monsieur"|
+j'obtiens la m\xEAme abr\xE9viation : "Monsieur" ou "monsieur", respectivement.
+
+Il n'en est pas toujours de m\xEAme... ainsi lorsqu'on saisit
+\verb|"Num\xE9ro"| et \verb|"num\xE9ro"| on obtient respectivement : 
+"Num\xE9ro" et "num\xE9ro", car \verb|Num\xE9ro|
+est une entr\xE9e dans le fichier des abbr\xE9viations o\xF9 il est \xE9crit
+\verb|{Num\xE9ro}|.
+
+Il est d\xE9sormais possible de placer une abr\xE9viation dans un titre
+de chapitre ou de section, comme le titre de cette section le
+d\xE9montre ; nous avons saisi :
+\begin{verbatim} 
+\section{Monsieur s'abr\xE8ge "Monsieur"}
+\end{verbatim}
+
+\noabbreviations
+
+\newpage\english
+
+\section{Abbreviations}
+The abbreviation facility offered in \FP\ is based on
+an abbreviations file. When requested by \verb|\abbreviations| one
+may call any \verb|"abbreviation"|. If this abbreviation is found in the
+file it will be replaced by the typographic expansion, if not it will
+be printed as is.\NL2
+
+But never forget the ending double quotes otherwise you will obtain the
+terrible message:
+{\tt Paragraph} {\tt ended before} \texttt{\textbackslash AbbrevName} 
+{\tt was complete.}
+\NL4
+
+You can have your own abbreviations file by calling:
+\verb|\abreviations[my_file]|.\NL1
+
+Saying \verb|\noabbreviations| this facility is lost. Remember that the
+char \verb|"| is used normally in \TeX{} as in \LaTeX{} to start an
+hexadecimal number.
+
+But used in English, \verb|"monsieur"| will give "monsieur"%
+\footnote{Notice the quoting!}.
+
+\newpage\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{Autres macros utiles}
+\verb|\fsc{KnUtH}| permet d'imprimer \fsc{KnUtH} et \verb|\lsc{SnCf}| 
+donne \lsc{SnCf}. Cela doit aussi marcher si le mot commence par une
+accentuation comme ici avec le mot \fsc{\'% a laisser tq a cause du 7bits
+epinal} et m\xEAme quand cette accentuation est plus loin dans
+le mot comme ici dans \fsc{ANDR\'% a laisser tq a cause du 7bits
+E}.
+
+\bigskip
+Voici une note%
+\footnote{La note.\label{NOTE}}
+de bas de page command\xE9e par \verb|\footnote{La note.\label{NOTE}}|.
+Je peux faire \xE0 nouveau appel \xE0 cette note\refmark{NOTE} 
+ par l'ordre \verb|\refmark{NOTE}|.
+
+\bigskip
+Par analogie avec l'environnement \verb|verse| :
+\begin{verse}
+%\moretolerance % pour eviter un leger overfull hbox
+1\iere{} ligne : cette ligne est bien trop longue, elle doit \xEAtre coup\xE9e autant de fois que n\xE9cessaire...\\
+2\ieme{} ligne : le test terrible de...\\%
+3\ieme{} ligne : `ceci est le test des quotes'\\
+\end{verse}
+\tthyphenation
+voici le m\xEAme test (sans \verb|\\|)
+avec l'environnement \vers|versatim| qui est 
+un environnement \vers|verba|\-\vers|tim| compos\xE9 
+avec des coupures de lignes
+comme l'est l'environnement \verb|verse| et dont les {\em quotes} peuvent
+\xEAtre imprim\xE9es avec des accents si on pr\xE9cise 
+\vers|\noenglishquote| :
+\noenglishquote
+\begin{versatim}
+1\iere{} ligne : cette ligne est bien trop longue,  elle doit \xEAtre coup\xE9e autant de fois que n\xE9cessaire...
+2\ieme{} ligne : le test terrible de \end{document} 
+3\ieme{} ligne : `ceci est le test des quotes'
+\end{versatim}
+\englishquote
+
+\allowuchyph
+Et maintenant voici l'ordre r\xE9duit \verb|\vers| qui 
+s'utilise comme \verb|\verb| et doit permettre de couper une
+longue cha\xEEne de caract\xE8res \texttt{ver\-batim}. Celle-ci
+sera coup\xE9e par d\xE9faut entre les mots (\vers|\notthyphe|\-\vers|nation|)
+mais pourra l'\xEAtre \xE0 l'int\xE9rieur des mots si on pr\xE9cise 
+\tthyphenation \vers|\tthyphe|\-\vers|nation| comme ici : \xAB
+\vers|Longue Cha\xEEne De Caract\xE8res \xC0 Couper Absolument| \xBB.
+Les mots commen\xE7ant en majuscule ne pourront \xEAtre coup\xE9s
+que si \vers|\uchyph=1|, valeur par d\xE9faut dans \FP\ 
+(\vers|\|\vers|allow|\-\vers|uchyph|) qui est utilis\xE9e pour cette
+partie uniquement.
+
+\subsection*{Test de {\mdseries\texttt{\textbackslash fsc}} 
+(\fsc{French CAPS})}
+Ce paragraphe teste la protection de certaines macro-instructions.
+
+\disallowuchyph\notthyphenation
+\newpage\english
+\section{Other useful macros}
+French patronymic names are printed in small capitals with the first
+letter in uppercase. That is done with the \verb|\fsc| macro.
+Another macro \verb|\lsc| is available to print all the word(s) in small
+capitals, specially usefull for trademark or companies names.
+
+\LaTeX{} is at the current time unable to print a \verb|\ref| as
+a footnotemark, the command \verb|\refmark| is able to do that.
+
+Also, \LaTeX{} doesn't offer any {\tt verbatim} style able to
+hyphenate lines. \FP\ is able to do this with the
+environment {\tt versatim} or the \texttt{\textbackslash vers} order within a
+line.
+
+These environments allow to replace the {\tt tt} quoting
+({\tt ` '}) by more realistic ones ({\tt\`{ } \'{ }}) with
+the order \texttt{\textbackslash noenglishquote}. Of course this environment
+produce nothing different from the standard \verb|verbatim| when 
+used in \verb|\english|:
+{\overfullrule=5pt
+
+\hfuzz=30pt
+\begin{versatim}
+1\iere{} ligne : cette ligne est bien trop
+2\ieme{} ligne : le test terrible de...
+3\ieme{} ligne : `ceci est le test des...
+\end{versatim}
+
+\SmsG%
+
+And now this a test of a long string within a \verb|\vers|: 
+``\vers|Longue Cha\xEEne De Caract\xE8res \xC0 Couper A|
+This string would be hyphenated only if someone said
+\verb|\tthyphenation| previously.
+}
+
+\FmsG%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Accents et {\mdseries\tt tabbing}}
+\FP\ apporte une solution pour pouvoir introduire
+des lettres accentu\xE9es dans un environnement \vers|tabbing| lorsque
+le source \TeX{} est en 7bits ou utilise Ml\TeX{}
+\footnote{%
+Cette option est aussi utile d\xE9sormais en T1 car les lettres accentu\xE9es
+sont traduites avec \FP, de fa\xE7on interne, en 7-bits \xE0 la \TeX.
+         }%
+ ; c'est l'option par d\xE9faut 
+\vers|\|\vers|tabbing|\-\vers|accents|\tabbingaccents. L'exem\-ple :
+\begin{tabbing}
+Les TYPES : \=  Les matieres  \= Les genres \kill
+Bidon :     \>   d'huile      \>$A'=B''$\` normal \\
+Caisse :    \>   \`%
+                   a outils     \> rustique \\
+Toile :     \>   \a`%
+                   a matelas    \> confort  
+\end{tabbing}
+\notabbingaccents
+doit s'imprimer ainsi :
+\begin{tabbing}
+Les TYPES : \=  Les matieres  \= Les genres \kill
+Bidon :     \>   d'huile      \>$A'=B''$\` normal \\
+Caisse :    \>\a`a outils     \> rustique \\
+Toile :     \>\a`a matelas    \> confort  \\
+\end{tabbing}
+\vspace*{-0.5\baselineskip}
+Nous l'avions saisi comme suit :
+\begin{versatim}
+\begin{tabbing}
+Les TYPES : \=  Les matieres  \= Les genres \kill
+Bidon :     \>   d'huile      \>$A'=B''$\` normal \\
+Caisse :    \>   \`%
+                   a outils     \> rustique \\
+Toile :     \>   \a`%
+                   a matelas    \> confort  
+\end{tabbing}
+\end{versatim}
+
+\section{Figurettes}
+Le style \verb|french| propose un environnement sp\xE9cial, appel\xE9 
+\verb|figurette|,
+ pour placer les figures \xE0 l'enfroit exact o\xF9 
+ces figures se pr\xE9sentent
+dans le texte. Cela est particuli\xE8rement utile pour des petites figures,
+domaine o\xF9 \LaTeX{} n'est pas adapt\xE9 en standard. 
+Pour r\xE9aliser ceci :
+  \begin{figurette}
+        \center\fbox{essai}\endcenter% rajoute pour plain TeX
+  \caption{Ceci est une figurette}
+                 \label{figurette}
+  \end{figurette}
+Nous avons \xE9crit :
+\begin{verbatim}
+  \begin{figurette}
+        \center\fbox{essai}
+  \caption{Ceci est une figurette}
+                 \label{figurette}
+  \end{figurette}
+\end{verbatim}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\english
+\section{Diacritics \& {\mdseries\tt tabbing}}
+There is no way in a \LaTeX{} \texttt{tabbing} to put diacritics on letters
+as we use them usually. Here is how is printed the {\tt tabbing}
+you can find in the french part:
+
+\begin{tabbing}
+Les TYPES : \=  Les matieres  \= Les genres \kill
+Bidon :     \>   d'huile      \>$A'=B''$\` normal \\
+Caisse :    \>   \`%
+                   a outils     \> rustique \\
+Toile :     \>   \`%
+                   a matelas    \> confort  
+\end{tabbing}
+
+and that would normally be printed as follows:
+
+\begin{tabbing}
+Les TYPES : \=  Les matieres  \= Les genres \kill
+Bidon :     \>   d'huile      \>$A'=B''$\` normal \\
+Caisse :    \>\a`a outils     \> rustique \\
+Toile :     \>\a`a matelas    \> confort  \\
+\end{tabbing}
+
+  \begin{figurette}
+        \center\fbox{essai}\endcenter% rajoute pour plain TeX
+  \caption{Originally a figurette}
+        \label{engfig}
+  \end{figurette}
+\NL{4}
+
+\section{Little figures}
+
+\FP\ offers a special environment called
+\verb|figurette| which allows to put little figures EXACTLY
+where they appear in the text. This is a lack in the present
+versions of \LaTeX{}. In English the environment \verb|figurette|
+is replaced by an environment \verb|figure[h]|; look at figure
+\ref{engfig} we tried to put here without success and we
+typed like this:
+
+\begin{verbatim}
+  \begin{figurette}
+        \center\fbox{essai}
+  \caption{Originally a figurette}
+        \label{engfig}
+  \end{figurette}
+\end{verbatim}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\ifx\drapeaufg\undefined\else
+\section{Composition \protect\linebreak en drapeau}
+\xC0 gauche on trouve une composition justifi\xE9e standard \LaTeX.
+Dessous, une composition avec l'environnement \texttt{drapeaufg}
+propos\xE9 par l'extension \FP, il s'agit d'une composition
+\emph{en drapeau, au fer} \xE0 gauche. \xC0 droite, il s'agit aussi d'une
+composition \emph{en drapeau, au fer} \xE0 gauche mais cette fois-ci avec
+l'environnement \texttt{drapeaufgIN}, sans coupure de mots, comme cela
+est recommand\xE9 par l'imprimerie nationale.
+
+\subsection{Tests ordinaires}
+\textbf{\large Texte justifi\xE9 de r\xE9f\xE9rence}
+
+\medskip
+\def\GOfrench{\noindent{\fboxsep 0pt\fboxrule 0.2pt\fbox{\advance\hsize by -2pt
+      \hbox{\vbox{\noindent
+\xAB Par ailleurs, les lignes n'occupant pas toute la
+  justification (titres ou l\xE9gendes le plus souvent) peuvent \xEAtre
+  \emph{centr\xE9es} ou se pr\xE9senter align\xE9es verticalement
+  par la gauche sur la
+  marge de gauche de la page, ou \XX 
+  verticalement par la droite sur la marge de
+  droite de la page. On dira alors qu'elles sont compos\xE9es
+\emph{en drapeau, au fer} \xE0 gauche ou \emph{en drapeau, au fer} \xE0 droite.
+Dans ce type de composition, les coupures de mots sont proscrites et les
+rejets \xE0 la ligne devront ob\xE9ir \xE0 une certaine logique souvent dict\xE9e par le
+sens. Ainsi on ne s\xE9parera pas l'article du substantif, le pronom personnel
+sujet de son verbe, l'adjectif num\xE9ral du nom auquel il se \XX
+rapporte, \etc. \xBB
+(r\xE8gles Imprimerie Nationale, p~153)%
+}}\hss}}}
+
+\let\XX\relax
+\GOfrench
+
+\hbox{}
+
+\textbf{\large Drapeau, au fer \xE0 gauche}
+
+\medskip
+\begin{drapeaufg}
+\GOfrench
+\end{drapeaufg}
+
+\newpage
+\enlargethispage{20pt}\hbox{}\smallskip
+
+\hbox{}\smallskip\NL5
+Dans ce dernier cas, des d\xE9bordements dans la marge droite
+sont possibles ; ils sont \xE0 traiter
+au cas par cas par de simples coupures de lignes plac\xE9es aux endroits
+recommand\xE9s par l'imprimerie nationale (selon texte encadr\xE9). Le 
+dernier texte est ainsi corrig\xE9.\NL3\vspace*{-2.5pt}
+
+\textbf{\large Drapeau \xAB fg \xBB, selon IN}
+
+\medskip
+\begin{drapeaufgIN}
+\GOfrench
+\end{drapeaufgIN}
+
+\medskip
+\textbf{\large Drapeau \xAB fg IN \xBB, corrig\xE9}
+
+\medskip
+\let\XX\\
+\begin{drapeaufgIN}
+\GOfrench
+\end{drapeaufgIN}
+
+\newpage
+\subsection{Tests en drapeau \xAB fg \xBB, aux limites}
+Voici deux tests aux limites de la composition 
+\emph{en drapeau, au fer} \xE0 gauche, sur une colonne
+\xE9troite (2cm) tout d'abord avec l'environnement
+\texttt{drapeaufg} et ensuite avec la recommandation
+de l'imprimerie nationale appliqu\xE9e \xE0 
+\FP\ (ou interpr\xE8t\xE9e par l'environnement \texttt{drapeaufgIN}).
+
+Les coefficients de laideur (\texttt{badness})
+accept\xE9s sont \xE9lev\xE9s, c'est la raison pour laquelle
+aucun message d'\texttt{underfull hbox} 
+(tout comme celui d'\texttt{overfull}) 
+n'est \xE9mis dans les deux cas
+ci-dessous.
+
+\bigskip
+
+\def\temp{\noindent{\fboxsep 0pt\fboxrule 0.2pt\fbox{\advance\hsize by -2pt
+      \hbox{\vbox{\noindent
+ instit  instits
+institut instituts
+institution institutions
+institutionnel institutionnels
+institutionnelle institutionnelles 
+institutionnellement
+constitutionnellement
+inconstitutionnellement
+}}\hss}}}
+
+\let\XX\relax
+\parbox{2cm}{%
+\begin{drapeaufg}
+\hsize=2cm
+\temp
+\end{drapeaufg}
+}
+\hspace*{0.5cm}
+\parbox{2cm}{%
+\begin{drapeaufgIN}
+\hsize=2cm
+\temp
+\end{drapeaufgIN}
+}
+
+\newpage
+\subsection{Tests en drapeau \xAB fd \xBB, aux limites}
+Nous effectuons ici les m\xEAmes test mais avec
+les environnements \texttt{drapeaufd} (fer \xE0 droite)
+et \texttt{drapeaufdIN} (selon imprimerie nationale). 
+En fait, l'environnement
+\texttt{drapeaufd} est tout simplement
+un \texttt{raggedleft}.
+\NL{9}
+
+\let\XX\relax
+\parbox{2cm}{%
+\begin{drapeaufd}
+%\mbox{Avec \the\rightskip :}
+\hsize=2cm
+\temp
+\end{drapeaufd}
+}
+\hspace*{0.5cm}
+\parbox{2cm}{%
+\begin{drapeaufdIN}
+%\mbox{Avec \the\rightskip :}
+\hsize=2cm
+\temp
+\end{drapeaufdIN}
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\Large
+\let\XX\relax
+\subsection{Test \xAB fd \xBB classique}
+
+\begin{drapeaufd}
+\GOfrench
+\end{drapeaufd}
+
+\normalsize\bigskip
+
+L'\xBDil aiguis\xE9 sera troubl\xE9 car
+les deux colonnes ne sont pas align\xE9es horizontalement ;
+cela est d\xFB \xE0 la diff\xE9rence de mat\xE9riel \xE0 composer, au total, 
+dans chacune des deux colonnes.
+
+\vfill
+
+\newpage
+\Large	
+\subsection{Test \xAB fd \xBB IN}
+\begin{drapeaufdIN}
+\GOfrench
+\end{drapeaufdIN}
+
+\normalsize\bigskip
+
+Quelque soit le corps de la police (dans les limites
+classiques de \LaTeX{}), avec cette largeur de colonne, 
+on n'obtient pas de diff\xE9rence
+de mise en page entre les deux environnements. Les r\xE8gles
+de l'imprimerie nationale sont donc plus largement appliqu\xE9es
+dans ce cas.
+
+\vfill
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\onecolumn
+\newpage\french
+\hbox{}
+\vfill
+\centerline{\Large Page intentionnellement laiss\xE9e blanche}
+\vfill
+\twocolumn
+
+\fi% on a saute si drapeaufg est inconnu (frencht)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Lettrines}
+\SmsG% lettrine reduite a 1 seule lettre !
+Voici le test des lettrines propos\xE9es en mode semi-automatique
+avec \FP\ :
+
+\bigskip
+\verb|                  \flettrine{Quoi ?}|
+\flettrine{Quoi ?} {Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s.
+
+\xAB Ici d\xE9marre une lettrine dans une citation.
+
+\bigskip
+\lettrine{Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s.
+
+\bigskip
+\flettrine{Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s.
+
+et la citation se termine ici. \xBB
+
+\bigskip
+\verb|     \font\lettrinefont=cmr17 scaled|\\
+{\font\lettrinefont=cmr17 scaled \magstep5
+\verb|   \magstep5\lettrine[`` {Paris} '']|
+\lettrine[`` {Paris} '']
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s.\par}
+
+\bigskip
+\verb|            \lettrine[\xAB {Paris} \xBB]|
+\lettrine[\xAB {Paris} \xBB]
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s.
+
+\bigskip
+\verb|             \flettrine[\xAB {Paris} ]|
+\flettrine[\xAB {Paris} ] 
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s. \xBB
+
+\bigskip
+\tthyphenation\noindent
+\vers|\|\vers|font\lettrinefont=cmti12 scaled| \!\vers| \magstep4\lettrine|
+{\em \% v\xE9rification d'italique.}
+\font\lettrinefont=cmti12 scaled \magstep4\lettrine
+Blalbla {\bf je blablate},  tu blablates,  ils blablatent, b... 
+(ceci est l'exemple m\xEAme de ce qu'il ne faut pas faire car ainsi
+le mot n'est pas mis en petites capitales). Ceci avait pour but
+de tester une police italique.
+
+\bigskip
+\lettrine{L'absurdit\xE9} de cette lettrine...
+
+\notthyphenation
+\FmsG
+
+\newpage\english
+
+\section{Illuminated letters}
+
+Look at the French part of this document because, in English,
+these macros have no effect:
+
+\bigskip
+\verb|                  \flettrine{Quoi ?}|
+\flettrine{Quoi ?} {Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s.
+
+\xAB Ici d\xE9marre une lettrine dans une citation.
+
+\bigskip
+\lettrine{Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s.
+
+\bigskip
+\flettrine{Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s.
+
+et la citation se termine ici. \xBB
+
+\bigskip
+\verb|     \font\lettrinefont=cmr17 scaled|\\
+{\font\lettrinefont=cmr17 scaled \magstep5
+\verb|   \magstep5\lettrine[`` {Paris} '']|
+\lettrine[`` {Paris} '']
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s.\par}
+
+\bigskip
+\verb|            \lettrine[\xAB {Paris} \xBB]|
+\lettrine[\xAB {Paris} \xBB]
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s.
+
+\bigskip
+\verb|             \flettrine[\xAB {Paris} ]|
+\flettrine[\xAB {Paris} ] 
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\xE2ce au coll\xE8gue allemand E.~{\sc Scha\-l\xFCck} et
+ aux diff\xE9rents codes qu'il
+m'a donn\xE9s. \xBB
+
+\bigskip
+\noindent
+\verb|\font\lettrinefont=cmti12 scaled| \verb| \magstep4\lettrine|
+%{\em \% v\xE9rification d'italique.}
+\font\lettrinefont=cmti12 scaled \magstep4\lettrine
+Blalbla {\bf je blablate},  tu blablates, ils blablatent, b... 
+(ceci est l'exemple m\xEAme de ce qu'il ne faut pas faire car ainsi
+le mot n'est pas mis en petites capitales). Ceci avait pour but
+de tester une police italique.
+
+\bigskip
+\lettrine{L'absurdit\xE9} de cette lettrine...
+
+\onecolumn\newpage%
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%  ===\xBB\xBB Il n'y a plus d'anglais au del\xE0 de cette limite \xAB\xAB===
+\def\lastlinein#1{\expandafter\gdef\csname #1\endcsname{\relax}}
+\lastlinein{english}% this is for frencht.tex
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Lettrines automatiques ou non}
+
+\bigskip
+\lettrine{THIS IS A TEST} (a non-automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+                   
+\bigskip
+\flettrine{THIS IS A TEST} (a non-automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+\bigskip
+\automaticlettrine
+
+\lettrine{THIS IS A TEST} (a default automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+\bigskip
+\flettrine{THIS IS A TEST} (a default automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+
+\bigskip
+\def\lettrinefontname{cmr17}
+\lettrine{THIS IS A TEST} (a cmr17 automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+\bigskip
+\flettrine{THIS IS A TEST} (a cmr17 automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+\bigskip
+\lettrine{Que vaut ce test ?} (en automatique)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+\bigskip
+\noautomaticlettrine
+\lettrine{THIS IS A TEST} (a non-automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+                   
+\bigskip
+\lettrine{Que vaut ce test ?} (non-automatique)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\section{\xC9num\xE9rations}
+L'espacement des \xE9num\xE9rations fran\xE7aises est
+ profond\xE9ment modifi\xE9 avec \FP, pour s'en
+convaincre voir le test des listes page \pageref{listes} ou
+l'environnement \texttt{order} ci-apr\xE8s.
+
+\section{L'environnement \xAB {\mdseries\texttt{order}} \xBB}
+Un environnement sp\xE9cifique est propos\xE9, il s'agit de l'environnement
+\verb|order| pour \LaTeX{} dont voici un petit exemple :
+
+\begin{order}
+\item Bien regarder ;
+\item l'espacement de chaque \xE9l\xE9ment est sp\xE9cial ;
+\item l'espacement vertical est aussi diff\xE9rent.
+\item A-D-O-P-T-E-Z \ \ L-E !
+\end{order}
+
+Ce prototype correspond bien aux \xE9num\xE9rations 
+fran\xE7aises  (je ne
+parle pas uniquement des marqueurs  -- primo, secundo, \etc. -- 
+mais aussi de la gestion des espaces). En voici un autre exemple
+concret :
+\NL1
+
+Les guillemets entrent aussi en ligne de compte : \xAB Je citerai
+3 cas tr\xE8s importants :
+\begin{order}
+\item le premier cas ;
+\item le second ;
+\item le dernier.
+\end{order}
+qui sont [...] \xBB
+\NL1
+
+\xC0 noter que ce m\xE9canisme de rajout des guillemets en d\xE9but de 
+chaque \xE9l\xE9ment de liste marche aussi avec un environnement 
+comme \texttt{itemize}.
+
+\expandafter\ifx\csname frenchTeXmods\endcsname\relax
+            \space% ce test ne marche pas en LaTeX standard.
+\else
+     \ifx\frenchTeXmods\empty\space% ni en dummy french !
+     \else
+\section{Tests aux limites des guillemets anglais}
+
+V\xE9rifions qu'il est possible d'activer temporairement
+quelques caract\xE8res sans perturber le traitement. Exemple :
+
+\begin{verbatim}
+{\catcode`\'=\active\catcode`\'=\active
+ `` Test guillemets anglais ''
+}
+\end{verbatim}
+
+{\catcode`\'=\active\catcode`\'=\active
+ `` Test guillemets anglais ''
+}
+     \fi
+\fi
+
+Un cas bien sp\xE9cial avait \xE9t\xE9 rencontr\xE9 avec l'extension \myverb|amstex|
+qui utilisait une r\xE9f\xE9rence avec des math\xE9matiques dans une autre 
+r\xE9f\xE9rence, ce qui entrainait une boucle infinie avec \FP. Voici 
+le test en question : 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% this code generates a loop with versions of french < V3,42 %%%%%%
+\makeatletter
+\def\r at ref{{\ref{nulllabel}$'$}}{1}
+\makeatother
+\ref{ref} = 1 $'$ % boucle garantie si < V3,42
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+Autre test aux limites ?
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\section{\xAB Autres tests \xBB}
+Nous sommes ici en une colonne.
+
+\bigskip
+Voici un test d'encadr\xE9 contenant le mode \verb|centering| : 
+\begin{center}\fbox{%
+\parbox{6cm}{\begin{center}Information : si vous voulez  me joindre,
+mon t\xE9l.  : 01 69 35 85 40. Je n'y suis qu'aux horaires de
+bureau.\end{center}}%
+     }\end{center}
+
+Bon ?\footnote{L'objet de cette note de bas de page est 
+de v\xE9rifier l'espacement des inf\xE9rieurs et sup\xE9rieurs,
+\primo en \texttt{\backslash tt} : 
+\texttt{XXXX ===> <=== YYYY} et
+\secundo en {\tt verbatim} : 
+\myverb|french V4 < french V5 > frenchOLD|% 
+.}
+
+\begin{table*}[h]
+\caption{Dactylographie et typographie compar\xE9es}
+\label{frenchdactylo}
+\vspace*{1cm}
+\huge
+\begin{tabular}{|r|r|}
+\hline
+dactylographie\ \ \ \ \hfill & \ \ \ typographie\ \ \ \hfill\\
+\hline
+    \verb|use \dots or \ldots| \ & use \dots\ or $\ldots{}$\ \\
+        \verb|utilisez...|     \           & utilisez...\  \\
+        \verb|semi-colon;|     \           &  semi-colon;\ \\
+        \verb|point-virgule ;| \           & point-virgule ;\  \\
+        \verb|My god!|         \           & My god!\ \\
+        \verb|Mon dieu !|      \           & Mon Dieu !\ \\
+        \verb|Why not?|        \           & Why not?\ \\
+        \verb|Pourquoi pas ?|  \           & Pourquoi pas ?\ \\
+        \verb|``I say''|       \           & ``I say''\ \\
+        \verb|\xAB Je dis \xBB|    \           & \xAB Je dis \xBB\ \\
+        \verb|He said: Yes|    \           & He said: Yes\ \\
+        \verb|Il dit : non|    \           & Il dit : non\ \\
+        \verb|$1\,234,567$|    \           & $1\,234,567$\ \\
+        \verb|$f(x,\,y)$|      \           & $f(x,\,y)$\ \\
+\hline
+\end{tabular}
+\normalsize
+\end{table*}
+
+\newpage
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifx\itshape\undefined\else% avoid old frencht crash
+\subsection{Test des guillemets dans un \mdseries\texttt{\backslash edef}}
+
+Les guillemets peuvent \xEAtre appel\xE9s dans une d\xE9finition de macro
+telle que \verb|\edef| mais comme les guillemets ne sont pas expansibles
+enti\xE8rement il a donc fallu arriver \xE0 r\xE9aliser une d\xE9finition acceptable.
+
+Ainsi \verb|\edef\testedef{\xAB essai \xBB}|
+\edef\testedef{\xAB essai \xBB}
+donnera la curieuse d\xE9finition suivante : \\
+\hbox{}\hfill\texttt{\meaning\testedef} ; \\
+elle reste compl\xE8tement expansible (dans certaines conditions)
+ou pas du tout (comme ici appel\xE9e en tt on obtiendra 
+le r\xE9sultat suivant : \texttt{\testedef}).
+\fi
+
+\subsection{{\mdseries\tt <{}} et {\mdseries\tt >{}} red\xE9finis}
+
+Mes utilisateurs sont terribles ! Ils veulent le beurre, l'argent du
+beurre et aussi la fermi\xE8re... S'ils codent 
+\verb9\def\truc<#1|#2>{/#1 OU #2/}9
+ ils veulent pouvoir obtenir
+/Essai OU Erreur/ en saisissant \verb9\truc<Essai|Erreur>9. Faisons
+l'essai r\xE9el :
+{\def\truc<#1|#2>{/#1 OU #2/} \truc<Essai|Erreur>}.
+
+Encore plus fort : nous voulons avoir une notation de Backus-Naur 
+c'est-\xE0-dire des \verb|\rangle| et \verb|\langle|. Voici la 
+d\xE9finition que nous avons entr\xE9e avant le \verb|\begin{document}| :
+\begin{verbatim}
+{\catcode`\<=\active\catcode`\>=\active%
+\global\def<{\left\langle}\global\def>{\right\rangle}
+}
+\end{verbatim}
+
+Pour tester l'efficacit\xE9 de ces macros il suffit alors de faire
+par exemple :
+\begin{verbatim}
+\xAB $<assignement>$ \xBB
+\end{verbatim}
+\xE0 condition que l'option \verb|\frenchguillemets| soit
+active (en maths).
+
+Essayons cela : 
+% en fait il faut reactiver cela maintenant :
+{%
+ \gdef\myinf{\left\langle}%
+ \gdef\mysup{\right\rangle}%
+\xAB $\frenchguillemets% on a \nofrenchguillemets avec AmSTeX
+   <assignement>$ \xBB.
+}%
+% Remettre ici pour frenchle
+\global\let\myinf\inferieura% A no-op def
+\global\let\mysup\superieura% for a temporary action
+
+\subsection{\mdseries\texttt{\textbackslash special}}
+L'inclusion d'une commande \verb|\special| est ici test\xE9e :\\
+{%%%%%%%%%%%% attention : commentaires impossible dans cette partie.
+ \catcode`\%=12
+ \texttt{\backslash special}\verb|{ps:|{\tt %%%
+                                     }\verb| Texte bidon {`\xABmanuel:C;!?\xBB'}}|
+ \special{ps:%%% 
+                 Texte bidon {`\xABmanuel:C;!?\xBB'}}
+}
+
+\subsection{{\mdseries\texttt{\textbackslash refmark}} dans un tableau}
+
+O\xF9 l'on reparle encore de \verb|\refmark|...
+
+La note \ref{bas} est r\xE9f\xE9renc\xE9e depuis le tableau ci-dessous, tout comme
+les notes du tableau lui-m\xEAme.
+
+  \begin{table}[htbp]
+    \begin{center}
+      \begin{tabular}{|c|l|}
+        \hline
+        Lettre & Utilisation\\
+        \hline
+        {\tt h} & petit blabla gentil et anodin \refmark{bas}\\
+        {\tt l} & ici reblabla assez moyen\refmark{bas}$^,$\refmark{refnote}\\
+        {\tt L} & autre grand grand grand blabla 
+                  \footnote{La note du tableau \xAB refmark \xBB.\label{refnote}}\\
+        \hline
+      \end{tabular}
+      \caption{Le titre du tableau.}
+  \end{center}
+\end{table}
+
+En dehors du tableau on peut faire appel\footnote{La note de page.\label{bas}}
+\xE0 une note qui est, par contre, r\xE9f\xE9renc\xE9e dans le tableau. Tout cela
+est r\xE9alis\xE9 gr\xE2ce \xE0 l'ordre \verb|\refmark| introduit par l'extension
+\FP.
+
+\subsection{{\mdseries\texttt{\textbackslash nombre}} en argument}
+
+Voici un test simple permettant de valider \verb|\nombre| lorsqu'il
+est en argument d'une macro-instruction :
+
+\begin{verbatim}
+\noindent
+1\,234 un nombre simple !\\
+$*$\\
+\nombre{1 234} un nombre simple !\\
+\nombre{1 234,5} avec une d\xE9cimale.\\
+\texttt{\nombre{1 234,56} avec fonte tt.}\\
+\emph{\nombre{1 234,567} en mode emphas\xE9.}\\
+\nombre{1 234,567 8} avec encore une d\xE9cimale.
+\end{verbatim}
+
+Il faut noter que l'ordre \verb|\nombre| est toujours compos\xE9 en mode
+math\xE9matique ce qui force l'utilisation des fontes math\xE9matiques. 
+Tout changement de fonte doit donc \xEAtre pr\xE9cis\xE9 de fa\xE7on ad hoc.
+Par ailleurs, la composition n'est garantie que si l'option
+\verb|\nofiles| n'a pas \xE9t\xE9 indiqu\xE9e en d\xE9but de document.
+Voici ce que ce test donne :
+
+\noindent
+1\,234 un nombre simple !\\
+$*$\\
+\nombre{1 234} un nombre simple !\\
+\nombre{1 234,5} avec une d\xE9cimale.\\
+\texttt{\nombre{1 234,56} avec fonte tt.}\\
+\emph{\nombre{1 234,567} en mode emphas\xE9.}\\
+\nombre{1 234,567 8} avec encore une d\xE9cimale.
+
+\ifx\documentclass\undefined % Still Plain! so no \DeclareFontFamily
+\else%
+\subsection{{\mdseries\texttt{\textbackslash label}} en mode math}
+
+Il s'agit ici de tester la commande \verb|\label| dans un environnement
+\verb|equation| :
+
+\begin{verbatim}
+V\xE9rifions le num\xE9ro de l'\xE9quation \ref{labelequation} ci-dessous :
+\begin{equation}\label{labelequation}
+V_{Lm}=\frac{L}{t_p}
+\end{equation}
+\end{verbatim}
+
+Voici le r\xE9sultat du test :
+
+V\xE9rifions le num\xE9ro de l'\xE9quation \ref{labelequation} ci-dessous :
+\begin{equation}\label{labelequation}
+V_{Lm}=\frac{L}{t_p}
+\end{equation}
+\fi
+
+\csname TexteComplementaire\endcsname
+
+\subsection{Bibliographie}
+Voyons maintenant la bibliographie.
+Dans \cite{`\xABmanuel:Gaulle;!?\xBB'} on trouvera...
+\nocite{`\xABmerci:Ronan;!?\xBB'} 
+Par contre  
+\cite[pp.1--3, X \& consorts]{\xABblabla\xBB} 
+est beaucoup plus fourni en exemples et commentaires... Mais dans 
+\cite[p. 25 \S~13 {{\it et seq.}}]{`\xABtorture:Gaulle;!?\xBB'} 
+toutes ces informations
+sont plus d\xE9taill\xE9es.
+
+Ce qui suit n'est pas un exemple de belle bibliographie, juste une
+v\xE9rification de bon fonctionnement.
+
+\bibliographystyle{plain}
+
+\begin{thebibliography}{Knuth 99}
+
+\section*{Bibliographie dans le document}
+
+\bibitem[Knuth 99]{\xABblabla\xBB} Le \TeX book ou la  \xAB  bible \xBB 
+         des gourous \TeX
+\bibitem{`\xABmanuel:Gaulle;!?\xBB'} B. {\sc Gaulle}, {\em 
+         Le r\xE9sultat d'une \xAB {\em dure} \xBB journ\xE9e de travail !}
+\bibitem{`\xABmerci:Ronan;!?\xBB'} R. {\sc Keryell}, {\em 
+         Le gentil normalien qui m'a beaucoup aid\xE9 gr\xE2ce \xE0 sa th\xE8se...}
+\bibitem{`\xABtorture:Gaulle;!?\xBB'} B. {\sc Gaulle}, {\em 
+         Notice d'utilisation du style french}, 1991-1999.
+\bibitem{`\xABtortureFP:Gaulle;!?\xBB'} B. {\sc Gaulle}, {\em 
+         Notice d'utilisation de l'extension \FP\ pour \LaTeX}, 2000-20xx.
+\end{thebibliography}
+
+\ifx\documentclass\undefined % Still Plain! so skip
+\else%
+\section*{\phantom{\normalsize[Knuth 99]}Bibliographie en dehors du document}
+
+Avec certaines extensions de bibliographie il peut s'av\xE9rer utile
+de prot\xE9ger les caract\xE8res actifs \xE0 l'int\xE9rieur m\xEAme de la base
+de donn\xE9es bibliographique.
+
+\bibliography{testbib}
+\fi%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\listoffigures
+\listoftables
+\glossary{Fa\xE7on cordon bleu}
+\glossaires
+\section*{Glossaire des mots techniques}
+\printglossary[\jobname.glo]
+
+\noindent -- magnification
+
+\noindent -- caract\xE8res sp\xE9ciaux : \NL1
+
+{\huge%\frenchmacros n'est pas utile ici
+\begin{tabular}{|c|c|}
+\hline
+Pour imprimer ceci & Saisir cela\\ \hline
+\at                & \verb|\at|\\ \hline
+\texttt{\vert}     & \verb|\texttt{\vert}|\\ \hline
+\tilde             & \verb|\tilde|\\ \hline
+\texttt{\backslash}& \verb|\texttt{\backslash}|\\ \hline
+\chap              & \verb|\chap|\\ \hline
+\degre             & \verb|\degre| \\ \hline
+\degres            & \verb|\degres| \\ \hline
+\normalsize
+1\ier{} \xE9tage      & \verb|1\ier{} \xE9tage| \\ \hline
+\normalsize
+(2\ieme\!)         & \verb|(2\ieme\!)| \\ \hline
+\primo             & \verb|\primo|\\ \hline
+\secundo)          & \verb|\secundo)|\\ 
+\hline
+\end{tabular}
+} \NL1
+
+On notera que le caract\xE8re \verb|\degre| n'est pas le signe typographique
+usuellement utilis\xE9 pour exprimer 
+des degr\xE9s mais que \verb|\degres| est
+plus conforme \xE0 la tradition. On remarque bien les diff\xE9rences entre
+\verb|\primo| et \verb|\secundo)| 
+(la forme parenth\xE9s\xE9e n'est pas valable
+en {\em belle} typographie fran\xE7aise).
+\primo... \secundo... \tertio... \quarto...
+\primo)... \secundo)... \tertio)... \quarto)...
+
+\section*{Glossaire argotique}
+Le pied
+
+\printindex
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\part{Ce qui ne marche pas (bien)...}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{Quelques questions \xE0 \xE9tudier}
+
+Cette partie ne comporte que des \xAB anomalies \xBB que l'auteur esp\xE8re
+r\xE9soudre d'ici quelque temps, 
+gr\xE2ce \xE0 votre aide... peut \xEAtre ? 
+
+En fait il ne reste vraiment
+pas grand chose \xE0 r\xE8gler mais ce sont probablement des
+vieux probl\xE8mes sacr\xE9ment compliqu\xE9s.
+
+\section{Le \xAB 2 points \xBB}
+Le \xAB 2 points \xBB a une f\xE2cheuse tendance 
+\xE0 rester en bas de page lorsqu'il est
+suivi d'un {\tt verbatim}. Il serait souhaitable d'en trouver la raison.
+
+\section{Les guillemets}
+
+Le probl\xE8me avec \verb|quotation| page \pageref{quotation}.
+
+%Et la perte d'informations
+%dans le cas de  \verb|\noeveryparguillemets| lorsque l'on d\xE9marre
+%une citation dans un paragraphe d\xE9j\xE0 commenc\xE9.
+%
+%Vraiment tr\xE8s {\em fragile} ce \verb|\noeveryparguillemets| ! (
+
+Voir le cas des notes
+de bas de page ou en marge qui produis(ai ?)ent des d\xE9sastres
+avec \verb|\noeveryparguillemets|.
+
+\section{Le cas des extensions mal \xE9crites ...}
+
+... ne se r\xE9sout souvent que par la modification de l'extension en question.
+Cela a \xE9t\xE9 le cas de nombreuses extensions depuis le d\xE9but de \frenchname{} 
+et j'ai bien peur que cela continue \emph{\xE9ternellement}%  (et \xE0 propos : qui me succ\xE8dera ?)
+. 
+Ici Bernard Gaulle ajoutait (d\xE9j\xE0 en 2002) : \xAB et \xE0 propos : qui me succ\xE9dera ? \xBB.
+Nous pensons que  le groupe de travail autour du projet e-french r\xE9pond \xE0 sa question.
+
+Certains cas sont insolubles, par exemple : 
+l'extension \verb|here.sty| 
+red\xE9finissait \xAB au vol \xBB 
+l'ordre \LaTeX{} \verb|\table| au lieu
+de modifier l'existant ; cela posait un r\xE9el probl\xE8me \xE0 FrenchPro
+qui se base sur la modification d'une commande \verb|\table|
+existante. Heureusement ce style p\xE9rim\xE9 peut \xEAtre remplac\xE9
+avantageusement par \verb|float|.
+
+Notons qu'aujourd'hui avec les diverses variantes de \texttt{float}, 
+ce probl\xE8me n'existe plus (comme bien d'autres d'ailleurs).
+
+\chapter{Am\xE9liorations \xE0 envisager}
+
+\section{Index et bibliographie}
+Deux th\xE8mes qui n'ont que tr\xE8s peu \xE9t\xE9 abord\xE9s.
+
+\section{Abr\xE9viations}
+Il est f\xE2cheux d'avoir \xE0 conna\xEEtre quelles sont les mots
+abr\xE9geables pour pouvoir demander leur abr\xE9viation ; autant les saisir
+correctement d\xE8s le d\xE9but...
+
+Faut-il arr\xEAter la composition \LaTeX{} quand une abr\xE9viation 
+n'est pas trouv\xE9e ? 
+
+Faut-il offrir la possibilit\xE9 de lister toutes les abr\xE9viations ?
+
+\annexes
+\hsize=18cm
+%
+%\chapter{Copyright}
+%\Mylisting{copyrigh.tex}
+%
+%\chapter{Le fichier \mdseries{\tt language.dat}}
+%\Mylisting{language.dat}
+
+\chapter{Le fichier \mdseries{\tt frabbrev.tex}}
+\Mylisting{frabbrev.tex}
+
+% retire pour mettre french.cmd 98/06
+%\chapter{Le fichier \mdseries{\tt french.dmy}}
+%My\listing{french.dmy}
+
+\chapter{Le fichier \mdseries{\tt french.cmd}}
+\Mylisting{french.cmd}
+
+\chapter{Le fichier \mdseries{\tt french.chk}}
+\Mylisting{french.chk}
+%
+%\chapter{Un style english (\mdseries{\tt fenglish})}
+%\Mylisting{fenglish_doc}
+
+%\chapter{Le code de l'extension \FP}
+%
+%\Mylisting{french_doc.txt}
+
+\newpage
+\hsize=15cm
+\abbreviations\noenglishdoublequotes
+\tableofcontents
+\noabbreviations\englishdoublequotes% remove options set for toc.
+
+\english %=\relax if english text (see \lastlinein)
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Added: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchab.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/frenchab.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/frenchab.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,68 @@
+% !TeX encoding = latin9
+% This is frenchab.tex
+%
+%         French Torture Test with AmsLaTeX (main style: book)
+%                                    Copyright Bernard Gaulle as in french.doc
+%             
+%                                                last mods 2006/04/25
+%
+\advance\hoffset by -10pt% marge droite (chez moi) pas totalement imprimee
+%
+\documentclass[twocolumn]{book}
+ \usepackage[latin9]{inputenc}% pour le codage d'entr\xE9e, ici latin9
+ \usepackage[T1]{fontenc}% pour utiliser les fontes ec (et cm en math)
+\usepackage{amsmath,mylist,mya4,graphicx,french}
+\usepackage{eurosym} %for the \xA4 
+\usepackage{epstopdf}% so graphicx accepts eps images
+\setlength{\textwidth}{410pt}%% 
+\let\Stop\undefined
+% Localisation code for numbered \typeout: "\kbAissue% localise it."
+% For debugging one can remove "msg" access, just uncomment
+%\let\kbAissue\relax% this line.
+\makeatletter
+   \ifx\kbAissue\undefined%
+% Firstly we add the material to use the "msg" package for localization.
+      \def\kb at issue#1#2{\kb at issue@[#1]#2\void}% The local \issuemsg macro.
+                                      % which will call the real one;
+                                      % #1 is the macro message required.
+                                      % #2 is the message header + msg number
+                                      %    such as "^^J -234-", just message 
+                                      %    number (234) is kept. 
+      \let\kbAissue\kb at issue%
+      \def\kb at issue@[#1]#2-#3-#4\void{\issuemsg[#1]#3(french)}%
+   \ifx\issuemsg\undefined\let\kbAissue\relax\let\typeouA\typeout\fi%
+   \fi%
+\makeatother
+%
+\ifx\endfrench\switchtolanguage
+\kbAissue% localise it.
+                 \typeout{-37a- ANOMALIE : french actif.}\Stop\fi
+\def\LPLAIN{lplain}
+\ifx\fmtname\LPLAIN\else\def\LPLAIN{LaTeX2e}\fi
+\ifx\fmtname\LPLAIN\else\relax
+                 \typeout{**********************************************}
+\kbAissue% localise it.
+     \typeout{-36- ANOMALIE : format LaTeX (\fmtname) non standard.}
+     \typeout{CORRIGER pour avoir \fmtname=\LPLAIN\space ou ancien nom.}
+\Stop% Vous devez avoir  dans ltvers.dtx : \def\fmtname{LaTeX2e} !
+\fi
+\let\iflatex\iftrue
+\def\SmsG{\typeout%
+    {\string<\string<--------------------------------------------------------}}
+\def\FmsG{\typeout%
+    {--------------------------------------------------------\string>\string>}}
+{\SmsG\obeyspaces
+\typeout{(          Test de torture du style \frenchname}
+\typeout{(Ce test genere deliberement quelques messages d'erreur. )}
+\typeout{(Pour vous permettre de distinguer les messages d'erreur )}
+\typeout{(normaux de ceux qui sont anormaux, j'ai encadre, comme  )}
+\typeout{(ici, ces messages ; ne vous en preoccupez pas.  --bg    )}
+\FmsG}%
+\frenchtest
+\ifx\endfrench\switchtolanguage\else
+\kbAissue% localise it.
+                 \typeout{-37b- ANOMALIE : french inactif.}\Stop\fi
+\end{document}
+%%
+%%      checksum        = "21525 63 238 2681"
+%%


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchab.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchla.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/frenchla.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/frenchla.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,21 @@
+% !TeX encoding = latin9
+% This is frenchlb.tex
+%
+%          French Torture Test with LaTeX (main style article)
+%                                    Copyright Bernard Gaulle as in french.doc
+%
+%                                             last mods 2006/04/25
+%
+\documentclass[twocolumn]{article}
+ \usepackage[latin9]{inputenc}% pour le codage d'entr\xE9e, ici latin9
+ \usepackage[T1]{fontenc}% pour utiliser les fontes ec (et cm en math)
+\usepackage{eurosym} %for the \xA4 
+\usepackage{mylist,mya4,graphicx,french}
+\usepackage{epstopdf}% so graphicx accepts eps images
+\setlength{\textwidth}{410pt}%%  
+\let\iflatex\iftrue
+\frenchtest
+\end{document}
+%%
+%%      checksum        = "13164 16 42 436"
+%%


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchla.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.glo
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.glo	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.glo	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,2 @@
+\glossaryentry{\IeC {<<} : ; style ? ! \IeC {>>}}{1}
+\glossaryentry{Fa\c con cordon bleu}{47}

Added: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.ind
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.ind	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.ind	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,24 @@
+\begin{theindex}
+{\large \bf \hfil--\ Symboles --\ \hfil}\nopagebreak
+
+  \item {\tt\protect\inferieura} ({\tt\protect\backslash inferieura}) \dotfill  
+		1
+  \item {\tt\protect\superieura} ({\tt\protect\backslash superieura}) \dotfill  
+		1
+  \item \IeC {<<} : ; depuis la note de bas de page ? \IeC {>>} \dotfill  
+		1
+  \item \IeC {<<} : ; style ? \IeC {>>} \dotfill  1
+
+  \indexspace
+{\large \bf \hfil--\ F --\ \hfil}\nopagebreak
+
+  \item french
+    \subitem Le point d'exclamation est un caract\`ere sp\'ecial de Makeindex \dotfill  
+		1
+
+  \indexspace
+{\large \bf \hfil--\ M --\ \hfil}\nopagebreak
+
+  \item Magic di N'Konga (auteur c\'el\`ebre) \dotfill  1
+
+\end{theindex}


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.ind
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,84 @@
+% !TeX encoding = latin9
+% This is frenchlb.tex
+%
+%           French Torture Test with LaTeX (main style: book)
+%                                    Copyright Bernard Gaulle as in french.doc
+%
+%                                           last mods 2006/04/25
+%
+\advance\hoffset by 20pt% pour centrer l'ensemble.
+\documentclass[twocolumn,twoside,a4paper]{book}%  
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Si vous n'avez pas utilis\xE9 kbconfig pour cr\xE9er le format, 
+% probablement avez-vous besoin de :
+ \usepackage[latin9]{inputenc}% pour le codage d'entr\xE9e, ici latin9
+ \usepackage[T1]{fontenc}% pour utiliser les fontes ec (et cm en math)
+% Ou alors \usepackage[decmulti]{inputenc}% pour le codage d'entr\xE9e mais c'est
+% vous qui l'aurez choisi... Moi je pr\xE9f\xE8re encore keyboard (cad kbconfig).
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\usepackage{mysmall,graphicx,mylist}
+\usepackage{eurosym} %for the \xA4 
+\usepackage{epstopdf}% so graphicx accepts eps images
+%\usepackage[tracefiles]{msg}% Only usefull for tracing purpose.
+% Plut\^ot que \usepackage{french} on fait appel \xE0 mlp pour charger french :
+\usepackage[anglais,francais]{mlp}
+\setlength{\textheight}{225mm}% a4paper is a little shorter...than a4.sty
+\setlength{\textwidth}{410pt}%% 
+\listfiles
+
+\catcode`\@=11
+\let\Stop\undefined\ifx\@@end\undefined\let\@@end\end\fi
+% Localisation code for numbered \typeout: "\kbAissue% localise it."
+% For debugging one can remove "msg" access, just uncomment
+%\let\kbAissue\relax% this line.
+   \ifx\kbAissue\undefined%
+% Firstly we add the material to use the "msg" package for localization.
+      \def\kb at issue#1#2{\kb at issue@[#1]#2\void}% The local \issuemsg macro.
+                                      % which will call the real one;
+                                      % #1 is the macro message required.
+                                      % #2 is the message header + msg number
+                                      %    such as "^^J -234-", just message 
+                                      %    number (234) is kept. 
+      \let\kbAissue\kb at issue%
+      \def\kb at issue@[#1]#2-#3-#4\void{\issuemsg[#1]#3(french)}%
+   \ifx\issuemsg\undefined\let\kbAissue\relax\let\typeouA\typeout\fi%
+   \fi%
+%
+\ifx\endfrench\switchtolanguage
+\kbAissue% localise it.
+                 \typeout{-37a- ANOMALIE : extension french active ici.}\Stop
+\@@end
+\fi
+\def\LPLAIN{lplain}
+\ifx\fmtname\LPLAIN\else\relax
+                 \def\LPLAIN{LaTeX2e}
+                 \ifx\fmtname\LPLAIN\else\relax
+                 \typeout{**********************************************}
+\kbAissue% localise it.
+     \typeout{-36- ANOMALIE \string: nom de format LaTeX (\fmtname) invalide.}
+     \typeouA{-36b- CORRIGER pour avoir \fmtname=\LPLAIN\space ou ancien nom.}
+\Stop% Vous devez avoir dans ltvers.dtx : \def\fmtname{LaTeX2e} !
+\@@end
+                 \fi
+\fi
+\catcode`\@=12
+\let\iflatex\iftrue
+\def\SmsG{\typeout%
+    {\string<\string<--------------------------------------------------------}}
+\def\FmsG{\typeout{}\typeout%
+    {--------------------------------------------------------\string>\string>}}
+{\SmsG\obeyspaces
+\typeout{(          Test de torture du style \frenchname}
+\typeout{(Ce test genere deliberement quelques messages d'erreur. )}
+\typeout{(Pour vous permettre de distinguer les messages d'erreur )}
+\typeout{(normaux de ceux qui sont anormaux, j'ai encadre, comme  )}
+\typeout{(ici, ces messages ; ne vous en preoccupez pas.  --bg    )}
+\FmsG}%
+\frenchtest
+\ifx\endfrench\switchtolanguage\else
+\kbAissue% localise it.
+      \typeout{-37b- ANOMALIE \string: extension french inactive ici.}\Stop\fi%
+\end{document}
+%%
+%%      checksum        = "10201 81 331 3632"
+%%


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlb.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchll.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/frenchll.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/frenchll.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,102 @@
+% This is frenchll.tex
+%
+%           French Torture Test with LaTeX (main style: letter)
+%                                     Copyright Bernard Gaulle as in french.doc
+%
+%                                                          last mods 2006/04/25
+% 7bits file.
+%
+%%
+%%      checksum        = "09076 98 267 3191"
+%%
+\advance\hoffset by -10pt% marge droite (chez moi) pas totalement imprimee
+\advance\voffset by -20pt% marge haute  (chez moi) pas totalement imprimee
+%
+\def\twocolumn{\relax}% Un peu debile de pouvoir faire une lettre en 2 colonnes
+%
+\def\TT#1{\gdef\TITLE{#1}}
+\def\formhead{\Huge \bf Association GUTenberg}
+\def\formfoot{\bf Si\`ege social : C/o Irisa, campus de Beaulieu, 
+              F--35042 Rennes cedex.}
+\def\title#1{\french
+       \begin{letter}{M. Dupond\\
+               17, rue St. \'Eloi\\
+               24140 La monzie montastruc}
+              \yourref{votre lettre du 15 courant}
+              \ourref{bg-004-92}
+              \object{Remerciements}
+              \opening{Cher Monsieur X,}
+
+               Voici...
+Blabla habituel, b, khwd  djhlheqw  lwj wljlwd  lkwd wx, jh, 2d 
+ wkjyujb 2d, jhgoi2w 1w3dh, jljkwds m, hlwd blhwdl  wbwd  khw2db
+ bbklwyh,  wluw  bowdb, wlup ; 4f  ; iw
+13, nbjh3d mldfkm, mhowedm mnpi13m eef.
+    \fclosing[7]{Veuillez agr\'eer, cher X, l'expression de mes salutations les
+                plus distingu\'ees.}
+       \cc{Monsieur le directeur Y}
+       \encl{lettre du ministre Z}
+       \PS{J'oubliais de...}
+\vfill
+       \end{letter}
+       \english
+       \begin{letter}{M. Smith\\
+               17,  St. Patrick street\\
+               YORK WZG-21, England}
+               \opening{Dear Sir,}
+               \par
+               Here is...\vfill
+       \closing{Yours,}
+       \cc{Y}
+       \encl{Z}
+       I forgot to say...
+\vfill
+       \end{letter}
+       \french
+       \TT{#1}
+}
+% Pseudo definitions de macros non autorisees dans le style letter
+\def\maketitle{\expandafter\let\csname table*\endcsname\table%
+               \expandafter\let\csname endtable*\endcsname\endtable%
+               \expandafter\let\csname chapter*\endcsname\chapter%
+               \expandafter\let\csname section*\endcsname\section%
+               \TITLE}
+\def\tableofcontents{}
+\def\part{\par}
+\def\chapter{\par}
+\def\section{\par}
+\def\subsection{\par}
+\def\subsubsection{\par}
+\makeatletter
+\def\caption{\@ifnextchar[\@caption\@@caption%]
+                                           }
+\def\@caption[#1]#2{\@@caption{#2}}
+\def\@@caption#1{\centerline{#1}}
+\makeatother
+\def\figure{}\def\endfigure{}
+\let\table\relax\let\endtable\relax% as in endfloat
+\def\thebibliography{}\def\endthebibliography{}\def\bibitem{}
+\def\listoffigures{}\def\listoftables{}
+\def\printglossary[#1]{\relax}
+\newcounter{chapter}\newcounter{section}
+%
+\documentclass{letter}
+\usepackage[latin9]{inputenc}% pour le codage d'entrée, ici latin9
+ \usepackage[T1]{fontenc}% pour utiliser les fontes ec (et cm en math)
+\usepackage{eurosym} %for the € 
+\usepackage{mylist,mya4,graphicx,french}
+\usepackage{epstopdf}% so graphicx accepts eps images
+\address{Bernard {\sc Gaulle}\\4, avenue Cadoux-Girault\\
+         F--92270 Bois-Colombes}
+\location{\em Paris, le}
+\signature{B. {\sc Gaulle} (votre serviteur...)}
+\email{gaulle at idris.fr}
+\setlength{\textwidth}{410pt}%% 
+\ifx\documentclass\undefined
+%\input mypsfig.sty
+%\else
+%\usepackage{mypsfig}
+\fi
+\let\iflatex\iftrue
+\frenchtest
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchll.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchln.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/frenchln.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/frenchln.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,35 @@
+% This is frenchln.tex
+%
+%         French Torture Test with LaTeX, 
+%         with the ``Poor Man French'' package.
+%         (main style: book)
+%                             Copyright Bernard Gaulle as in french.doc
+%
+%                                                last mods 2006/04/25
+%
+% 7bits file.
+%
+% (case of a french document sent to another system where there is no
+%  french customization. So the french style is sent before the document
+%  and that is *that* whole document which is typeset by LaTeX.)
+% 
+% I tested it without language.dat nor frenglish.sty nor abbrevfr.tex.
+% and with no language specification coming from INTEX time
+%\let\french\undefined\let\fhyph\undefined
+%\let\english\undefined\let\ehyph\undefined
+%
+\documentclass[twocolumn]{book}
+\usepackage[latin9]{inputenc}% pour le codage d'entrée, ici latin9
+ \usepackage[T1]{fontenc}% pour utiliser les fontes ec (et cm en math)
+\usepackage{eurosym} %for the ¤ 
+\usepackage{mylist,mya4,graphicx,pmfrench}
+\usepackage{epstopdf}% so graphicx accepts eps images
+\setlength{\textwidth}{410pt}%% 
+\let\iflatex\iftrue
+\gdef\listing#1{\leavevmode{\it \% le fichier {\tt #1} 
+                            est d\'elib\'er\'ement non imprim\'e.}\par}
+\frenchtest
+\end{document}
+%%
+%%      checksum        = "14399 31 126 1062"
+%%


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchln.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlr.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlr.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlr.tex	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,18 @@
+% This is frenchlr.tex
+%
+%         French Torture Test with LaTeX (main style: report)
+%                           Copyright Bernard Gaulle as in french.doc
+%
+%                                      last mods 2006/04/25
+%
+\let\iflatex=\iftrue
+\documentclass[twocolumn]{report}
+\usepackage[latin9]{inputenc}% pour le codage d'entrée, ici latin9
+ \usepackage[T1]{fontenc}% pour utiliser les fontes ec (et cm en math)
+\usepackage{eurosym} %for the ¤ 
+\usepackage{mylist,mya4,graphicx,french}
+\usepackage{epstopdf}% so graphicx accepts eps images
+\setlength{\textwidth}{410pt}%
+
+\frenchtest
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchlr.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchrf.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchrf.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/frenchrf.pdf	2017-08-21 20:51:34 UTC (rev 45090)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/frenchrf.pdf	2017-08-21 20:59:38 UTC (rev 45091)

Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/test/frenchrf.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/test/fxench.tst
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/fxench.tst	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/fxench.tst	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,3750 @@
+% This is the french torture file for all formats.
+%                                   Copyright Bernard Gaulle as in french.doc
+%
+% \`{A} passer en 8 bits conform\'{e}ment \`{a} votre syst\`{e}me
+%                                                       
+%%      checksum        = "26167 3750 15103 125091"
+%%
+%
+% For localisation:
+%
+\makeatletter%
+\ifx\documentclass\undefined\let\kbAissue\relax\let\typeouA\typeout%
+\else%
+   \let\typeouA\@gobble%
+% For debugging one can remove "msg" access, just uncomment
+%\let\kbAissue\relax% this line.
+   \ifx\kbAissue\undefined%
+% Firstly we add the material to use the "msg" package for localization.
+      \def\kb at issue#1#2{\kb at issue@[#1]#2\void}% The local \issuemsg macro.
+                                      % which will call the real one;
+                                      % #1 is the macro message required.
+                                      % #2 is the message header + msg number
+                                      %    such as "^^J -234-", just message 
+                                      %    number (234) is kept. 
+      \let\kbAissue\kb at issue%
+      \def\kb at issue@[#1]#2-#3-#4\void{\issuemsg[#1]#3(french)}%
+   \ifx\issuemsg\undefined\let\kbAissue\relax\let\typeouA\typeout\fi%
+   \fi%
+\fi%
+\makeatother%
+%
+% For better debugging:
+\ifx\IeC\undefined
+\kbAissue% localise it.
+\typeout{^^J-66- ERROR! This file can't be typeset without any input} 
+   \typeouA{-66- encoding declaration (look at keyboard or inputenc packages.)}
+\expandafter\stop% \usepackage[latin1]{keyboard} should be fine.
+\fi
+\let\FP\frenchpack\hyphenation{French-Pro}
+\wlog{Formating \jobname\space with\space\FP\space(\frenchstyleid)}
+%
+%
+\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi%
+\ProvidesFile{french.tst}% 
+        [2005/05/11 The torture test file for the package \FP]% **last mods**
+\ifx\undefined\FmsG\def\FmsG{}\def\SmsG{}\fi
+%
+{\catcode`\<=\active\catcode`\>=\active%
+% Je veux :
+%\global\def<{\left\langle}\global\def>{\right\rangle}
+% Et pour ne pas pouvoir avoir l'effet que localement, 
+% je fais : 
+\gdef<{\myinf}\gdef>{\mysup}
+}
+\label{nulllabel}% null \label for AmSTeX test \ref within a \ref
+\iflatex\makeindex \makeglossary 
+        \csname frhyphex\endcsname% load (again) the exceptions, outside babel
+        \def\NL#1{\Sauter#1Lignes} 
+        \begin{document}
+        \makeatletter
+        \ifx\babel at savevariable\undefined%
+                             \let\FRENCH\frenchTeXmods% 
+                        \else\def\FRENCH{\selectlanguage{french}}% pour babel
+        \fi%
+        \makeatother
+        \csname onecolumn\endcsname % avoid writting \onecolumn 
+                                    % (special effect in frencht.tex)
+        \renewcommand{\thepage}{\roman{page}}%
+        \ifx\documentclass\undefined\else% for 2e
+        % As 2e doesn't accept \verb in arguments:
+        \gdef\myverb|#1|{%\nonfrench
+                         \texttt{#1}%
+                         %\endnonfrench
+                         \relax}%
+        \fi
+\else
+        \let\FRENCH\frenchTeXmods% 
+        \def\NL#1{\par} 
+\fi
+\ifx\myverb\undefined\let\myverb=\verb\fi%
+% global here is just req. for TeX--XeT tests.
+\global\let\myinf\inferieura% A no-op def
+\global\let\mysup\superieura% for a temporary action
+\ifx\undefined\english\let\english\relax\fi%
+% Les \ldots sont $\ldots$ a cause de AmSLaTeX V1.1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def\HyphDiff#1#2{{\setbox0=\vbox{%
+                   \pretolerance=-1 \hyphenpenalty=-10000
+                   \hsize=0pt \leftskip=0pt \rightskip=0pt \parfillskip=0pt
+                   \parindent=0pt \hfuzz=\maxdimen \interlinepenalty=0
+                   \clubpenalty=0 \widowpenalty=0 \brokenpenalty=0
+                       \hskip 0pt #1}%
+                   \setbox2=\hbox{}%
+                   \setbox9=\vbox{\unvbox 0 \loop \unskip \setbox1=\lastbox
+                                            \ifhbox 1 
+                                                 \global\setbox 2 = \hbox{%
+                                            \unhbox 1 \discretionary{}{}{}%
+                                                           \unhbox 2}%
+                                            \repeat}%
+\setbox3\hbox{#2}\ifnum\wd2=\wd3\else
+\kbAissue% localise it.
+\typeout{-31- Wrong French Hyphenation\string! 
+               Are you sure to run with a format ***********}
+\typeouA{-31- in which the french patterns were 
+                installed at initex time\string? ***********}
+\ifECM\else%
+\kbAissue% localise it.
+\typeout{-32- if yes try to switch to T1 font 
+             encoding (\noexpand\usepackage[T1]{fontenc})***}
+\fi%
+\showhyphens{#1}\typeout{(should be\string: #2) 
+  \string<\string<======== *********************************}
+\fi}}
+\HyphDiff{\'{e}ventualit\'{e}}{\'{e}ven-tua-lit\'{e}}
+\HyphDiff{d\'{e}gazonnage}{d\'{e}-ga-zon-nage}
+\HyphDiff{chromosomique}{chro-mo-so-mique}
+%%%%
+\SmsG%
+\typeout{V\'%
+         erification de la sortie de caract\`%
+         eres 8-bits \string:}
+\message{L'\'% \typeout ne transforme pas en 8bits pour l'instant.
+         et\'%
+         e est l\`%
+         a en ao\^%
+         ut \string!} 
+\iflatex%
+\typeout{Essai de macro d'accentuation dans un ordre \string\showhyphens %
+         \string:}
+\showhyphens{Faut-il croire \`%
+             a l'\'%
+             ETERNIT\'%
+             E ? \'%
+             eludons ...}
+\showhyphens{Ao\^%
+             ut 2001 ou l'autre \`%
+             ere ...}
+\fi%
+\FmsG%
+%
+\english% Title page is in english
+\ifx\documentclass\undefined % Still Plain! so no \DeclareFontFamily
+\else%
+% To avoid "No file OMScmtt.fd" message 2004/10/29
+\DeclareFontFamily{OMS}{cmtt}{\skewchar\font48 }
+\DeclareFontShape{OMS}{cmtt}{m}{n}%
+   {<->ssub*cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmtt}{m}{it}%
+   {<->ssub*cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmtt}{m}{sl}%
+   {<->ssub*cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmtt}{m}{sc}%
+   {<->ssub*cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmtt}{bx}{n}%
+   {<->ssub*cmsy/b/n}{}
+\DeclareFontShape{OMS}{cmtt}{bx}{it}%
+   {<->ssub*cmsy/b/n}{}
+\DeclareFontShape{OMS}{cmtt}{bx}{sl}%
+   {<->ssub*cmsy/b/n}{}
+\DeclareFontShape{OMS}{cmtt}{bx}{sc}%
+   {<->ssub*cmsy/b/n}{}
+%%%%%%%%%%%%%%%%%%%%%%%
+\fi% 
+\makeatletter% for \f at encoding 
+\title{\fbox{ \FP\ \LaTeX%
+             \thanks{We are here in english, notice the problem when we use,
+                     like in \texttt{frenchla}, a
+                     {\mdseries\texttt{\textbackslash fnsymbol}}
+                      in a box.\newline%
+                     \indent \hspace*{0.5em}
+                             Notice also that 
+                             {\mdseries\texttt{\textbackslash backslash}}%
+                             can't be used.%
+                    }%
+            }\\ \ \\%
+             Version \frenchstyleid\\ \ \\
+             ``Torture'' Test (\jobname) \\ with
+             \ifx\encodingdefault\undefined Unknown
+              \else\ifx\f at encoding\undefined\encodingdefault{} 
+                     \else\f at encoding{} \fi
+             \fi Font Encoding\\\ }
+  \author{Bernard {\sc Gaulle}%
+          \thanks{Thanks to those good guys who helped me.\newline%
+                  \indent\hspace*{0.5em}
+                          This test note is also referred by a
+                         {\mdseries\texttt{\textbackslash refmark}} call.
+                  \label{title:thanks}% 
+                 }%
+          \\ \ \\ et...\refmark{title:thanks}%
+         }%
+% AmS \normalparindent no more exists 2000/06/15, so the code is removed.
+%\makeatletter% Don't let AMS change \parindent
+%\ifx\RIfM@\undefined\else\normalparindent=1em\parindent=\normalparindent\fi%
+%\makeatother
+\makeatother%
+\date{Printed on \today} 
+% As the titlepage is in English but the date in French we let \ier defined:
+{\def\ier{ier}\maketitle}
+\setcounter{page}{2}\thispagestyle{empty}
+\cleardoublepage\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\onecolumn
+\sommaire[4]
+\bigskip 
+\begin{center}
+\noindent\fbox{%
+\begin{minipage}[t]{0.5\textwidth}
+\begin{center} \fbox{\parbox{5cm}{{\bf Remarque} : \\ la commande
+\texttt{\backslash som\-maire}\label{pbverb}%
+\footnote{Cette note a \'{e}t\'{e} demand\'{e}e depuis une minipage.}%
+\footnote{Cette deuxi\`{e}me note aussi.} 
+%%%%NB : \verb|\sommaire| ou \verb|\tableofcontents| produisent des HORREURS,
+%%%%     lorsqu'ils ont utilises dans un \fbox, BUG LATEX !
+ est un apport de \FP.\hfill}} 
+\end{center}
+\end{minipage}
+}
+\end{center}
+
+{% Not a LaTeX redefinition : \def\thefootnote{\fnsymbol{footnote}}
+\renewcommand{\thefootnote}{\fnsymbol{footnote}}%
+Essai de note avec \verb|\fnsymbol|
+\footnote{Note avec une \'{e}toile.}.
+
+\def\thefootnote{\relax}
+Essai de note de bas de page non num\'{e}rot\'{e}e
+\footnote{Note non num\'{e}rot\'{e}e.}.
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\cleardoublepage
+\chapter*{\prefacename}
+
+{\em Certains croient qu'une pr\'{e}face peut apporter de la valeur au livre,
+moi je pense plut\^{o}t que cela apporte de la {\em valeur} 
+\`{a} l'auteur...} (dans
+tous les sens du terme).
+
+\cleardoublepage
+
+\twocolumn 
+\renewcommand{\thepage}{\arabic{page}}\setcounter{page}{1}%
+\chapter*{Introduction}
+
+\begin{motsclef}
+french, style, francisation, francophonie, multilingue, 
+english, option, extension. 
+\end{motsclef}
+
+\begin{resume} 
+Ce document a \'{e}t\'{e} con\c{c}u
+uniquement pour tester intensivement \FP\ (anciennement appel\'{e} 
+option de style% 
+   \glossary{<< : ; style ? ! >>}\index{<< : ; style ? >>}%
+   \footnote{Cette note a pour but de faire appel \`{a} une macro
+             \texttt{\backslash index} contenant des caract\`{e}res actifs.%
+             \index{<< : ; depuis la note de bas de page ? >>}%
+            } 
+\index{french!Le point d'exclamation est un caract\`{e}re sp\'{e}cial de Makeindex}%
+\index{<@{\tt\protect\inferieura} ({\tt\protect\backslash inferieura})}% 
+\index{>@{\tt\protect\superieura} ({\tt\protect\backslash superieura})}%
+\index{Magic di N'Konga (auteur c\'{e}l\`{e}bre)}%
+ \texttt{french}).  
+\end{resume}
+
+\bigskip Notez que les deux environnements \verb|resume| et \verb|motsclef|
+(ainsi que \verb|keywords|)
+sont des apports de \FP.
+
+\bigskip Si le libell\'{e} << R\'{e}sum\'{e} >> appara\^{\i}t dans la partie
+ anglaise, cela
+signifie que \FP\ ne poss\'{e}dait pas de d\'{e}finition
+d'\verb|\abstract| et donc l'a remplac\'{e} par \verb|\resume|. Cela signifie
+aussi que les libell\'{e}s anglais n'ont pas \'{e}t\'{e} d\'{e}finis 
+(\verb|\captionnames|%
+\footnote{Une extension {\tt fenglish} est fournie conjointement avec
+\FP\ ; {\tt\backslash captionnames} y est d\'{e}fini. 
+Cette extension {\tt
+fenglish} est automatiquement appel\'{e}e par \FP\  dans le
+cas que nous avons cit\'{e}.}
+ n'\'{e}tait pas d\'{e}fini par les extensions appel\'{e}es avant
+ \FP).
+Rappelez-vous aussi que \verb|\abstract| ne fait pas partie de la classe
+de document \verb|book|.
+
+Remarquez les diff\'{e}rences entre les num\'{e}ros de notes de bas de page en 
+fran\c{c}ais et en anglais, ainsi que l'impression de ce m\^{e}me num\'{e}ro en
+bas de la page.
+
+\english\newpage
+\begin{keywords} %???\relax% for AMS which has its own macro with #1
+French, Style, Option, Package, French-Speaking usage, English, Multilingual.
+\end{keywords}
+
+\begin{abstract} The object of this paper is to test intensively \FP.
+\end{abstract}
+\NL1
+
+\bigskip Notice that the three environments 
+\verb|resume|, \verb|keywords| and \verb|motsclef|
+are all introduced by \FP.
+
+\bigskip Notice that if the abstract name printed here is not ``Abstract'' you
+are using packages that have no \verb|\abstractname| defined for eng\-lish. 
+ The english package defining such captions is loaded only 
+if \verb|\captionsnames|%
+\footnote{The {\tt fenglish} package is given with \FP,
+so {\tt$\backslash$captionnames} are normally defined because 
+\FP\ is calling automatically the {\tt fenglish} package in the 
+pre\-viously cited case.} was
+previously undefined.  (Remember also that as \verb|\abstract| is not defined
+in the \verb|book| document class the \FP\ assumes it is a
+\verb|\resume|.)
+
+Notice the different typesetting of the footnote numbers in French and English
+as well as the printing of that numbers before the footnote text.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\french
+\part{Ce qui marche est ici...}
+\disallowuchyph% ce que je prefere...
+
+\chapter{Avertissements}
+
+Seul le document authentique qui est fourni par l'auteur
+ sous une forme compos\'{e}e
+constitue la r\'{e}f\'{e}rence. Cela veut dire que l'installateur de \FP\ 
+sur un syst\`{e}me doit comparer son r\'{e}sultat 
+(sous forme papier ou
+fichier \verb|.dvi|) avec la forme authentique fournie par l'auteur.
+
+\bigskip
+
+\bigskip \FP\  a \'{e}t\'{e} con\c{c}u pour fonctionner 
+avec la majorit\'{e} bas\'{e}s sur \LaTeX{}
+\footnote{Au si\`{e}cle dernier (XX\ieme), \FP\ \'{e}tait appel\'{e} << style 
+\texttt{french} >> et pouvait fonctionner en dehors de \LaTeX\ mais
+l'effort pour assurer cette facilit\'{e} dans de trop nombreux formats
+exotiques \'{e}tait totalement disproportionn\'{e} ; ceci a donc \'{e}t\'{e}
+abandonn\'{e} (au moment de la sortie de \LaTeXe).}%
+. 
+
+\bigskip \AllTeX{} est mon logo ; il symbolise {\em tous les \TeX{}} ; on peut
+l'imprimer correctement dans toutes les polices ({\em \AllTeX}, {\bf \AllTeX}, 
+{\sf \AllTeX}, {\tt \AllTeX}, ...) gr\^{a}ce \`{a} la partie NFSS de \LaTeXe%
+\footnote{Le document de r\'{e}f\'{e}rence ({\tt frenchrf})
+a \'{e}t\'{e} produit avec NFSS. Ce document-ci a \'{e}t\'{e} compos\'{e} avec le format 
+{\tt \fmtname}.}
+.
+
+\newpage\english Only the authentic author's document in a composed form is
+the reference.  That means that the on site \FP\ installator must
+compare his result (paper or \verb|.dvi| file) with the authentic form
+provided by the author.
+\NL3
+
+\bigskip \FP\ was designed to work with all {\em formats\/} 
+based on \LaTeX.
+
+\bigskip \AllTeX{} is my logo ; it's a  symbol for expressing 
+{\em all \TeX{}} ; one can print it correctly in all shapes
+({\em \AllTeX}, {\bf \AllTeX}, 
+{\sf \AllTeX}, {\tt \AllTeX}, etc.) due to the NFSS part of \LaTeXe%
+\footnote{The
+reference document was produced with NFSS of {\tt \fmtname}.}%
+.
+
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{La torture} 
+
+\section{Le saviez-vous ?} Nos journaux, livres, revues,
+articles scientifiques ou autres ont \'{e}t\'{e}
+ pendant ces trente derni\`{e}res ann\'{e}es imprim\'{e}s 
+par des machines d'origine
+am\'{e}ricaine. Ainsi, petit \`{a} petit, nous perd\^{\i}mes 
+l'habitude de lire des
+majuscules accentu\'{e}es parce que tout simplement les polices
+ de caract\`{e}res
+utilisables sur ces machines n'en comportaient pas.
+
+L'usage de plus en plus g\'{e}n\'{e}ralis\'{e} de l'infor\-ma\-tique 
+{\em am\'{e}ricaine} fit ainsi dispara\^{\i}tre pendant un temps tous
+ les accents de notre langue \'{e}crite.
+
+De la m\^{e}me mani\`{e}re un certain nombre de 
+{\em mauvaises habitudes} furent
+prises quasiment inconsciemment tout simplement parce que les programmes
+informatiques ne pouvaient pas faire autrement. Ainsi de nombreuses {\it
+coquetteries} de notre typographie sont tomb\'{e}es dans l'oubli.
+
+Saviez-vous par exemple qu'on n'imprime pas des guillemets comme ceci `` '' ni
+m\^{e}me ` ' mais ainsi << >> ? Nous nous autoriserons toutefois
+ \`{a} utiliser dans
+ce document ces guillemets %\noenglishquote 
+(` ') que nous consid\'{e}rons comme
+{\em techniques}.
+
+\newpage\english \section{Did you know that?}
+Our (french)
+newspapers, books, magazines, scientific articles and other things have
+been printed with american machines during these last thirty years. So our
+habits to read accented uppercase letters declined because they simply were
+not included in the machinery.\NL2
+
+Together with American computer usage growth, all french
+diacritics disappeared from our french written language.\NL1
+
+In a same way {\em bad
+habits} took place, inconsciously, for the only reason that computer programs
+could not do otherwise. So, a lot of  french typographic {\em coquetteries\/}
+are largely forgotten.\NL2
+
+ Did you know for example that we never typeset french
+guillemets like this `` '' neither ` ' but%
+{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f at encoding\else%
+\footnote{We switched to \emph{French} here to be able %
+          to print valid glyphs.}%
+\fi} %
+\begin{french}<< and >>\end{french}? Instead, we will
+authorised ourselves to use (` ') in this document 
+because we consider they are {\em technical} guillemets.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+*** Cet espace est laiss\'{e} intentionellement \`{a} blanc ***
+\NL3
+\section{Typographie fran\c{c}aise}
+%\noenglishquote 
+La typographie fran\c{c}aise est sp\'{e}cifique en ce qui concerne
+l'utilisation des signes sui\-vants : 
+`\verb|.| \verb|:| \verb|;| \verb|!| \verb|?| \verb|<<| \verb|>>|'. 
+
+La r\'{e}partition des espaces dans une ligne se fait de fa\c{c}on 
+\'{e}quitable entre les
+mots (jamais \`{a} l'int\'{e}rieur des mots) et apr\`{e}s 
+la ponctuation (c'est le
+\verb|\frenchspacing| de \TeX{}) contrairement \`{a} la
+ typographie anglaise.
+
+Les `\verb|; ! ?|' doivent \^{e}tre pr\'{e}c\'{e}d\'{e}s d'une espace fine 
+ins\'{e}cable.  C'est
+ce que nous avons appliqu\'{e} dans \FP.  
+Le cas du `\verb|?|'
+a \'{e}t\'{e} trait\'{e} sp\'{e}cialement car l'espace fine ayant 
+\'{e}t\'{e} jug\'{e}e trop grande (par
+des sp\'{e}cialistes), a \'{e}t\'{e} r\'{e}duite tout en adjoignant une peu de 
+{\em glue} d'extensibilit\'{e}.
+
+En ce qui concerne le `\verb|:|', le code typogra\-phi\-que%
+\footnote{Nous
+avons choisi d'adopter les recommandations de l'imprimerie nationale
+fran\c{c}aise.} pr\'{e}cise qu'il est pr\'{e}c\'{e}d\'{e} 
+d'une espace {\em mot\/} 
+ins\'{e}cable.
+D'autres ont jug\'{e} que c'\'{e}tait inesth\'{e}tique et cela a \'{e}t\'{e} 
+remplac\'{e} par une espace fine. 
+
+Les guillemets fran\c{c}ais << doivent \^{e}tre suivis d'une espace mot 
+ins\'{e}cable qui
+a \'{e}t\'{e} remplac\'{e}e ici par une espace moindre. 
+Les guillemets fermants >>
+sont, eux, pr\'{e}c\'{e}d\'{e}s de la m\^{e}me espace.
+
+\SmsG%
+Lorsque la ligne n'est pas assez remplie et qu'il existe un `:', les
+typographes ont --~semble-\hbox{t-il}~-- l'habitude 
+de r\'{e}partir largement les espaces autour
+des deux points. C'est ce qui a \'{e}t\'{e} fait dans \FP\ qui
+pourra \'{e}ventuellement produire une ligne : 
+peu remplie\footnote{Le cas pr\'{e}sent\'{e} ici a \'{e}t\'{e} 
+cr\'{e}\'{e} artificiellement et peut donc appara\^{\i}tre exag\'{e}r\'{e} dans
+certaines mises-en-pages.}%
+\penalty-10000% 
+ ou aussi bien une ligne se terminant ainsi : << {\em com\-me % \- pour fourier
+font les pros\/} >>
+lorsqu'ils ne trouvent pas d'autre moyen mais il devrait s'agir que de cas
+extr\^{e}mes. \`{A} noter que cela a pour avantage de r\'{e}duire les
+\verb|over/under-full hbox| de fa\c{c}on significative.
+
+Paragraphe de remplissage...\\ ...\\... pour v\'{e}rifier que le `:' ne 
+termine ni la page ni la colonne. Ainsi : 
+
+%\englishquote 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{itemize} 
+\item %qu'il s'agisse de verbatim ou d'une liste d'\'{e}l\'{e}ments 
+les deux points et  le  texte qui suit  
+sont  tous  deux sur la  m\^{e}me  page.
+\end{itemize}
+%\newpage % already done with the previous list
+\FmsG%
+\english
+
+\smallskip
+
+\section{French printing}
+
+French printing use specific typographic rules specially in concern with 
+the following: `. : ; ! ?' and french guillemets.
+
+Interword spacing in a line is allways equal (and never modified inside a
+word). It's the same way after punctuation (standard \verb|\frenchspacing|) as
+opposed to the english typography.\NL1
+
+All `; ! ?' are preceeded by a thin and uncuttable space. We apply this
+automatically in \FP. (We have added few stretching {\em glue} to
+the question mark).\NL2
+
+Regarding the `:' we have not inserted an inter-word space but a thin space 
+and also have added some glue.\NL2
+
+\smallskip
+French guillemets are processed the same way. \NL3
+
+In an {\em underfull\/} line containing a `:' man has habits to share spaces
+around the double points. This way used in \FP\ can also produce a
+line with a ragged right, as shown in the french column. This technique
+ reduce a lot of {\em overfull} and {\em underfull} {\tt hboxes} 
+produced by \TeX{}.
+\NL3
+
+As shown also, \FP\ is reluctant to print a double point at the
+end of a page or a column.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french%\noenglishquote
+\section[Dactylographie fran\c{c}aise]{Rappels concernant la \newline 
+dactylographie}
+
+Les habitudes de saisie c.-\`{a}-d. les habitudes dactylographiques,
+ veulent que les signes suivants
+`\verb|:| \verb|;| \verb|!| \verb|?| \verb|>>|' 
+soient toujours pr\'{e}c\'{e}d\'{e}s d'un blanc
+(barre d'espace sur les claviers) et les \verb|<<| toujours
+suivis d'un blanc. \FP\ remplacera
+automatiquement ce blanc (\`{a} la composition) par l'espace appropri\'{e}e.
+
+{\moretolerance\moretolerance\moretolerance
+Les guillemets fran\c{c}ais << (et respectivement >>)...
+\footnote{\tthyphenation Avec les options fournies 
+telles \vers|A4| et  \vers|double|\-\vers|column| on obtient
+ l\`{a} un \vers|overfull| \vers|hbox| difficilement r\'{e}ductible
+de fa\c{c}on automatique mais je l'ai r\'{e}duit 
+avec 3 \texttt{\backslash moretolerance}%
+\notthyphenation.} 
+\par}
+%\nooverfullhboxmark
+
+Les vrais guillemets fran\c{c}ais << (et respectivement >>)
+s'utilisent toujours doubl\'{e}s (\verb|<<| et respectivement 
+\verb|>>|). Ainsi $<$ et $>$ ne 
+sont que des signes math\'{e}matiques et n'ont pas
+d'autre sens en fran\c{c}ais que : {\em inf\'{e}rieur \`{a}} et 
+{\em sup\'{e}rieur \`{a}}.
+
+Il est fortement conseill\'{e} de poursuivre
+ces habitudes dactylographiques qui
+contribuent aussi \`{a} \'{e}claircir le texte
+saisi et donc ainsi \`{a} faciliter les
+corrections ult\'{e}rieures.
+\NL1
+
+\subsection[Test de la ponctuation fran\c{c}aise 
+            \mdseries`\protect\myverb|. : ; ! ?|']
+{Test de la ponctuation \newline fran\c{c}aise 
+            \mdseries`\protect\myverb|. : ; ! ?|'} 
+
+Le deux points s'imprime comme ceci : s'il est pr\'{e}c\'{e}d\'{e} d'un blanc
+(au moins un) sinon rien n'est chang\'{e} (par ex. 11:33). Notez 
+l'espace apr\`{e}s le point terminant la phrase ; le point virgule
+est aussi pr\'{e}c\'{e}d\'{e} d'une espace fine s'il n'est pas coll\'{e} 
+au mot le pr\'{e}c\'{e}dant (comme dans cet exemple d\^{u} \`{a} une faute
+de frappe; assez fr\'{e}quente).\\
+{\moretolerance
+Oh ! Quoi-donc ? Notez ici l'espacement utilis\'{e}
+devant le `!' et le `?'. Il ne faut
+pas oublier aussi de taper le blanc avant, sinon? tout est
+%terriblement 
+ coll\'{e}! Voyez-vous la diff\'{e}rence ? Bravo !
+}
+
+Mais pour les documents {\em mal\/} saisis (c.-\`{a}-d. sans blanc) il est
+toujours possible de sp\'{e}cifier la sous-option \verb|\untypedspaces|
+\untypedspaces pour obtenir une insertion automatique des espaces
+manquants comme ici! o\`{u} il avait \'{e}t\'{e} saisi `\verb|ici!|'.
+V\'{e}rifions pour les autres ponctuations :;? \typedspaces que nous 
+n'obtenons pas :;? serr\'{e}es comme ici.
+
+V\'{e}rification de l'espacement :
+
+\noindent
+\verb|  \typedspaces X~; Y ; Z;| = \typedspaces X~; Y ; Z;
+
+\noindent
+\verb|\untypedspaces X~; Y ; Z;| = \untypedspaces X~; Y ; Z; \typedspaces
+
+\newpage\english
+\section{French typing}
+French typists have some habits. For example they type a space before `: ; ! ?
+\verb|>>|' and after \verb|<<|. \FP\ replace automatically this
+blank space by the appropriate spacing.
+
+There is only one kind of quoting in French by the mean of guillemets which
+are allways typed \verb|<<| and \verb|>>|. Usual english simple and double
+quotes must be prohibited.
+
+\subsection{\mdseries%
+            \texttt{\textbackslash untypedspaces}}%
+This control command offers the ability to repair automatically a document
+badly typed i.e. in which spaces were not typed before french punctuation.
+This bypass can help but is not the good way to use daily because there are
+many cases where, for example, a double point must never be preceeded 
+by a space.
+
+Now we verify that the spacing is unchanged in English:
+
+\noindent
+\verb|  \typedspaces X~; Y ; Z;| = \typedspaces X~; Y ; Z;
+
+\noindent
+\verb|\untypedspaces X~; Y ; Z;| = \untypedspaces X~; Y ; Z; \typedspaces
+
+\subsection{\mdseries%
+            \texttt{\textbackslash wrongtypedspaces}}
+A french typist may input  spaces before
+punctuation as it is usual in French. These unfortunate space
+ can be removed by simply letting \FP\ do it with* the control
+sequence:
+
+\begin{verbatim}
+\letpunctuationactivefor
+               \wrongtypedspaces
+\end{verbatim}
+
+\FRENCH% pour ne pas dire \french
+\letpunctuationactivefor\wrongtypedspaces
+\english
+Let's try the previous example:\par
+\noindent
+\verb|  X~; Y ; Z;| =  X~; Y ; Z;
+
+Now we say \verb|\nowrongtypedspaces|
+\nowrongtypedspaces to come back to the normal
+situation.
+
+\vfill
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\nowrongtypedspaces% to be sure it is set when english text is skipped
+\csname StopFrenchLbT\endcsname% special case, temporary.
+
+\section[Test des guillemets fran\c{c}ais, 7 (<%
+                                          < >%
+                                            >) et 8-bits (<< >>)]%
+{Test des guillemets \newline fran\c{c}ais (<< >>)}
+\hyphenation{nor-ma-le-ment}
+
+Les guillemets fran\c{c}ais s'\'{e}crivent et se saisissent 
+<< normalement >> comme ceci : 
+\verb|<< |{\tt nor}\-%
+{\tt male}\-{\tt ment }\verb|>>| 
+ ou \'{e}ventuellement en italiques mais toujours
+\bgroup% for frenchle
+<< \em normalement\/ >> %
+\egroup% for frenchle
+; ici nous avons tap\'{e} au clavier :
+\verb|<< \em| {\tt normalement}\verb| >>|.
+Et en tapant par contre :\\ \verb|<<\em| 
+ {\tt anormale\-ment (sans espace)}\verb|>>| \  on  obtient...
+\bgroup% for frenchle
+<<\em anormale\-ment (sans espace)\/>>.
+\egroup% for frenchle
+Re\-mar\-quez que les guillemets font office d'acco\-lades \TeX{} et que donc
+les changements de polices sont restaur\'{e}s en sortant de la citation.
+
+Pour les documents d\'{e}j\`{a} saisis {\em sans espace} \FP\ 
+ins\'{e}rera syst\'{e}matiquement un espace \`{a} l'endroit
+d\'{e}sir\'{e} si l'on a donn\'{e} la sous-option \verb|\untypedspaces|. 
+\untypedspaces 
+Et en tapant \`{a} nouveau 
+\verb|<<\em| {\tt anormale\-ment (sans espace)}\verb|>>| on obtient
+\bgroup% for frenchle
+<<\em anormalement (sans espace)\/>>. 
+\egroup% for frenchle
+\typedspaces
+
+Parfois on d\'{e}sirera remplacer syst\'{e}matiquement tous les 
+guillemets anglais (`` et '') d'un texte par de vrais guillemets 
+fran\c{c}ais, il
+suffira alors de fournir l'\'{e}trange option :\\
+\texttt{\backslash noenglishdoublequotes}\\
+\noenglishdoublequotes pour obtenir : `` ''.
+
+``  '' (m\^{e}me test en d\'{e}but de paragraphe).\englishdoublequotes
+ 
+Lorsqu'une citation est faite dans un texte, celle-ci commence
+toujours par des guillemets. << Cette citation peut se poursuivre sur
+plusieurs paragraphes. 
+
+Dans ce cas, le style %\verb|french| 
+ins\'{e}rera syst\'{e}matiquement les guillemets n\'{e}cessaires 
+en d\'{e}but de 
+chaque paragraphe. >>
+
+Mais une citation peut aussi en contenir une autre. << Dans ce cas l'imprimerie
+ nationale pr\'{e}cise dans   ses {\em R\`{e}gles typographiques} : 
+\ancientguillemets
+ << Lors\-que la premi\`{e}re citation est 
+elle-m\^{e}me plac\'{e}e entre 
+guillemets, chaque ligne de la seconde d\'{e}butera par un 
+guillemet ouvrant. >> 
+Ce dispositif, comme on le voit, n'est pas  mis en {\oe}uvre ici
+ (voir son application au paragraphe \ref{noeveryparguillemets}). 
+ << La deuxi\`{e}me citation peut aussi...
+
+se poursuivre sur un ou 
+plusieurs paragra\-phes. >> Notez bien qu'avant cette citation nous avons 
+demand\'{e} les \verb|\ancientguillemets| 
+pour produire ces guillemets fermants
+en d\'{e}but de ligne. Le \verb|\todayguillemets| r\'{e}tablit la 
+situation une fois
+le deuxi\`{e}me niveau termin\'{e}. \todayguillemets
+
+{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f at encoding
+\enlargethispage{10pt}% increase probably due to EC fonts metrics?
+\fi}
+Il arrive que la fin d'une citation de deux\-i\`{e}me niveau 
+co\"{\i}ncide avec celle
+du premier niveau.  << Dans ce cas il faudra coder, comme ici :\\
+\verb|\endguillemets| 
+\`{a} la place de ``\verb|>>|'' \endguillemets. 
+
+Deux tests : \fbox{\begin{guillemets} XXX \end{guillemets}}
+et  \fbox{X \begin{guillemets} XXX \end{guillemets} X} servant \`{a}
+v\'{e}rifier l'espacement quand on utilise \verb|\begin| et \verb|\end|.
+
+Le paragraphe suivant va alors d\'{e}marrer de fa\c{c}on 
+tout \`{a} fait normale...
+
+On peut aussi coder :
+\begin{verbatim}
+\begin{guillemets}
+Une citation...
+\end{guillemets}
+\end{verbatim}
+ce qui donnera :
+\begin{guillemets}
+Une citation...
+\end{guillemets}
+et en tapant {\em \`{a} la \TeX} : \verb|\guillemets{}| \verb|Une citation...| 
+\verb|\en|\vers|d|\-\vers|guillemets{}| nous devons  obtenir absolument la m\^{e}me chose :
+\guillemets{} Une citation... \endguillemets{}
+
+V\'{e}rifions maintenant l'espacement dans les diff\'{e}rents cas :
+
+\noindent
+\fbox{\parbox{2cm}{<<X\dotfill X>>}} \%\texttt{\backslash typedspaces}
+ {\em sans blanc}
+
+\noindent
+\fbox{\parbox{2cm}{<< X\dotfill X >>}} \%\texttt{\backslash typedspaces} 
+{\em normal}
+
+\noindent\untypedspaces
+\fbox{\parbox{2cm}{<< X\dotfill X >>}} \%\texttt{\backslash untypedspaces} 
+{\em avec blanc}
+
+\noindent
+\fbox{\parbox{2cm}{<<X\dotfill X>>}} \%\texttt{\backslash untypedspaces} 
+{\em sans blanc}
+\typedspaces
+
+\noindent
+\fbox{\parbox{3cm}{A blabla bla blabla : << 
+Ceci est mon test de c\'{e}sure >>}} <<...>> reste possible.
+
+\begin{flushleft}
+ Ceci est << un test avec \verb|\raggedright| >> qui 
+--~th\'{e}oriquement~-- ne devrait plus nous poser de probl\`{e}me.
+\end{flushleft}
+
+\subsection{{\mdseries%
+\texttt{\textbackslash noeveryparguillemets}}}\label{noeveryparguillemets}
+Cette option permet de g\'{e}rer correctement les citations de second 
+rang mais elle est tout \`{a} fait contraire
+ au processus \verb|\everypar| cit\'{e} pr\'{e}c\'{e}demment gr\^{a}ce auquel
+ les guillemets sont g\'{e}n\'{e}r\'{e}s automatiquement \`{a} chaque 
+d\'{e}but de paragraphe.
+Voici ce que produit l'option {\em normale\/} 
+\texttt{\backslash every\-par\-guil\-lemets} sur le paragraphe suivant :
+
+<< Tout le monde s'accorde \`{a} trouver l\'{e}gitime la division : 
+{\tt extra-ordinaire}. Le cas des mots com\-pos\'{e}s est le seul 
+\`{a} rencontrer 
+cette unanimit\'{e}. Dans les autres, les opinions sont tr\`{e}s partag\'{e}es.
+ Frey est le plus cat\'{e}gorique : il n'admet de division selon la formation 
+que pour des mots de composition compl\`{e}tement fran\c{c}aise, et la rejette 
+sinon... Le {\em Code typographique}, tout en adoptant ce m\^{e}me point
+ de vue << ... [reconna\^{\i}t] n\'{e}anmoins que certains auteurs de travaux 
+scientifiques pr\'{e}f\`{e}rent la division \'{e}ty\-mologique 
+qui fait ressortir
+ la racine grecque ou latine. >> Quant \`{a} Gouriou, il \'{e}crit :
+<< On pr\'{e}f\`{e}rera cependant garder la coupure \'{e}tymologique
+ chaque fois que les composants sont {\em ais\'{e}ment} re\-connaissables. >> 
+(L'italique est de Gouriou.) 
+\marginpar{{\footnotesize Ici on a trich\'{e} avec des} \texttt{\backslash!}}
+\!Telle \!est aussi \!l'opinion \!de \!Girodet >>. 
+
+Et voici l'effet de \verb|\noeveryparguillemets| :
+\noeveryparguillemets
+
+<< Tout le monde s'accorde \`{a} trouver l\'{e}gitime la division : 
+{\tt extra-ordinaire}. Le cas des mots com\-pos\'{e}s est le seul 
+\`{a} rencontrer 
+cette unanimit\'{e}. Dans les autres, les opinions sont tr\`{e}s partag\'{e}es.
+ Frey est le plus cat\'{e}gorique : il n'admet de division selon la formation 
+que pour des mots de composition compl\`{e}tement fran\c{c}aise, et la rejette 
+sinon... Le {\em Code typo\-graphique}, tout en adoptant ce m\^{e}me point
+ de vue << ... [reconna\^{\i}t] n\'{e}anmoins que certains auteurs de travaux 
+scientifiques pr\'{e}f\`{e}rent la division \'{e}ty\-mologique 
+qui fait ressortir
+ la racine grecque ou latine. >> Quant \`{a} Gouriou, il \'{e}crit :
+<< On pr\'{e}f\`{e}rera cependant garder la coupure \'{e}tymologique
+ chaque fois que les  composants sont {\em ais\'{e}ment} re\-connaissables. >> 
+(L'italique est de Gouriou.) 
+Telle est aussi l'opinion de Girodet >>. 
+\everyparguillemets
+
+Il faut noter que cette option impose que le paragraphe commence et se
+termine par des guillemets. % sinon code \guillpar et \parguill
+C'est pour cela que nous n'avons pas mis cette option par d\'{e}faut.
+
+\subsubsection{Un test assez m\'{e}chant}
+Voici un exemple d'utilisation dans un environement \verb|quotation|%
+\footnote{Nous avons introduit \texttt{\backslash moretolerance} 
+pour obtenir une composition correcte.} :
+\begin{quotation}
+\moretolerance\moretolerance\moretolerance
+<< Je ne peux mieux faire que de citer la d\'{e}finition qu'a donn\'{e}e
+de la gravure un de nos ma\^{\i}tres fondeurs, Fournier le Jeune :
+
+<< La scien\-ce du graveur, dit-il, consiste \`{a} conna\^{\i}tre la figure
+la plus parfaite que l'on puisse donner aux caract\`{e}res, les dimensions
+qu'ils doivent avoir  et \`{a} les repr\'{e}senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\'{e}tuent des lettres
+\`{a} l'infini par la fonte. \endguillemets
+\end{quotation}
+
+Le m\^{e}me exemple sans \verb|quotation|  :
+
+<< Je ne peux mieux faire que de citer la d\'{e}finition qu'a donn\'{e}e
+de la gravure un de nos ma\^{\i}tres fondeurs, Fournier le Jeune : 
+
+<< La scien\-ce du graveur, dit-il, consiste \`{a} con\-na\^{\i}tre la figure
+la plus parfaite que l'on puisse donner aux caract\`{e}res, les dimensions
+qu'ils doivent avoir  et \`{a} les repr\'{e}senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\'{e}tuent des lettres
+\`{a} l'infini par la fonte. \endguillemets
+\bigskip
+
+\noeveryparguillemets
+Puis avec \verb|\noeveryparguillemets| (c.-\`{a}-d. sans \verb|quotation|) :
+
+<< Je ne peux mieux faire que de citer la d\'{e}finition qu'a donn\'{e}e
+de la gravure un de nos ma\^{\i}tres fondeurs, Fournier le Jeune : 
+
+<< La scien\-ce du graveur, dit-il, consiste \`{a} conna\^{\i}\-tre la figure
+la plus parfaite que l'on puisse donner aux caract\`{e}res, les dimensions
+qu'ils doivent avoir  et \`{a} les repr\'{e}senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\'{e}tuent des lettres
+\`{a} l'infini par la    % En cas d'arr\^{e}t \`{a} cet endroit : le format
+fonte. \endguillemets%.fmt utilis\'{e} n'est prob. pas ds le bon codage !
+\bigskip
+
+Et enfin avec \verb|quotation|, voil\`{a} 
+ce que cela peut donner\label{quotation} :
+%%% La \marginpar suivante pose un pb de ``Lost Float'' qd elle est
+%%% placee plus loin, pourquoi ?
+\marginpar{{\footnotesize Il y a ici un probl\`{e}me \`{a} \'{e}tudier en 2 colonnes !}}
+\begin{quotation}
+<< Je ne peux mieux faire que de citer la d\'{e}finition qu'a donn\'{e}e
+de la gravure un de nos ma\^{\i}tres fondeurs, Fournier le Jeune :
+
+<< La scien\-ce du graveur, dit-il, consis\-te \`{a} conna\^{\i}tre la figure
+la plus parfaite que l'on puisse donner aux caract\`{e}res, les dimensions
+qu'ils doivent avoir  et \`{a} les repr\'{e}senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\'{e}tuent des lettres
+\`{a} l'infini par la fonte.
+ \endguillemets
+\end{quotation}
+\everyparguillemets
+On notera ici les espaces inter-mots beaucoup plus {\em tol\'{e}rants}. C'est
+la seule solution trouv\'{e}e pour arriver \`{a} imprimer 
+quelque chose d'\`{a} peu
+pr\`{e}s correct en double colonnage.
+
+\vfill
+Terminons la page en anglais pour tester le haut de page. Les guillemets
+doivent \^{e}tre bons avec le codage T1.
+
+\english
+Let's complete the page with english text in order to test and show
+how will be printed the header.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\onecolumn
+\subsubsection{M\^{e}me test en \mdseries\texttt{\textbackslash onecolumn}}
+Voici un exemple en environement \verb|quotation| :
+\begin{quotation}
+<< Je ne peux mieux faire que de citer la d\'{e}finition qu'a donn\'{e}e
+de la gravure un de nos ma\^{\i}tres fondeurs, Fournier le Jeune :
+
+<< La scien\-ce du graveur, dit-il, consiste \`{a} conna\^{\i}tre la figure
+la plus parfaite que l'on puisse donner aux caract\`{e}res, les dimensions
+qu'ils doivent avoir  et \`{a} les repr\'{e}senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\'{e}tuent des lettres
+\`{a} l'infini par la fonte. \endguillemets
+\end{quotation}
+
+Le m\^{e}me exemple sans \verb|quotation|  :
+
+<< Je ne peux mieux faire que de citer la d\'{e}finition qu'a donn\'{e}e
+de la gravure un de nos ma\^{\i}tres fondeurs, Fournier le Jeune : 
+
+<< La scien\-ce du graveur, dit-il, consiste \`{a} conna\^{\i}tre la figure
+la plus parfaite que l'on puisse donner aux caract\`{e}res, les dimensions
+qu'ils doivent avoir  et \`{a} les repr\'{e}senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\'{e}tuent des lettres
+\`{a} l'infini par la fonte. \endguillemets
+\bigskip
+
+\noeveryparguillemets
+Puis avec \verb|\noeveryparguillemets| (sans \verb|quotation|) :
+
+<< Je ne peux mieux faire que de citer la d\'{e}finition qu'a donn\'{e}e
+de la gravure un de nos ma\^{\i}tres fondeurs, Fournier le Jeune : 
+
+<< La scien\-ce du graveur, dit-il, consiste \`{a} conna\^{\i}tre la figure
+la plus parfaite que l'on puisse donner aux caract\`{e}res, les dimensions
+qu'ils doivent avoir  et \`{a} les repr\'{e}senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\'{e}tuent des lettres
+\`{a} l'infini par la fonte. \endguillemets
+\bigskip
+
+Et enfin avec \verb|quotation| :
+\begin{quotation}
+                    \let\bkORI\break
+                    %\def\break{\bkORI\hbox to 0pt{/}}% for debug
+                    %\ancientguillemets% for debug
+<< Je ne peux mieux faire que de citer la d\'{e}finition qu'a donn\'{e}
+de la gravure un de nos ma\^{\i}tres fondeurs, Fournier le Jeune : 
+
+<< La scien\-ce du graveur, dit-il, consiste \`{a} conna\^{\i}tre la figure
+la plus parfaite que l'on puisse donner aux caract\`{e}res, les dimensions
+qu'ils doivent avoir  et \`{a} les repr\'{e}senter sur l'acier pour les frapper
+sur le cuivre afin d'en former des matrices qui perp\'{e}tuent des lettres
+\`{a} l'infini par la fonte. \endguillemets
+\end{quotation}
+\everyparguillemets
+
+\subsubsection{Test de << stretchability >>}
+
+Les espaces doivent \^{e}tre \'{e}galement r\'{e}partis sur la ligne :
+
+\medskip
+\hbox to \hsize{etiord-gauche\footnote{En plain \TeX{} l'espacement est ici
+\label{etiord}
+                                       curieusement incorrect ! ...}
+ << centre-ertnec >> \hbox{}\footnote{... alors qu'il faudrait 
+la m\^{e}me r\'{e}partition
+                               de l'espace.}%
+                               ehcuag-droite}
+\medskip
+
+\subsection{Test des commandes \mdseries\texttt{\textbackslash ifnum}}
+
+\ifnum 1 < 3 1\verb| < |3 est VRAI, bien s\^{u}r ! 
+       \else 1\verb| < |3 est FAUX ! \fi
+comme 
+\ifnum 3 > 1 3\verb| > |1 est aussi VRAI, bien s\^{u}r ! 
+       \else 3\verb| > |1 est FAUX ! \fi
+
+\medskip
+
+\subsection{Test des commandes \mdseries\texttt{\textbackslash everypar}}
+
+{J'ai cod\'{e} dans cette section \verb|\everypar{$++\,$}| : \everypar{$++\,$}
+
+Paragraphe 1 << citation niveau 1
+
+Paragraphe 2 << citation niveau 2
+
+Paragraphe 3 fin citation niveau 2 >> puis fin niveau 1 >>
+
+Paragraphe 4}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage% tjrs en 1 colonne
+\hbox{}\ifx\itshape\undefined\else% avoid old frencht crash
+\subsection{Test de fermeture pr\'{e}matur\'{e}e}
+
+Il arrive que les guillemets soient ferm\'{e}s dans un environnement
+plus int\'{e}rieur qui n'apparie donc pas  correctement les blocs.
+Voici un exemple d'utilisation :
+
+\begin{verbatim}
+Ma\^{\i}tre Corbeau dit \`{a} son clerc : << \itshape Cher coll\`{e}gue,
+
+\begin{itemize}
+\item Ah que vous \^{e}tes joli !
+\item Ah que vous me semblez beau ! >> \upshape  
+et s'enfuit de ce pas...
+\end{itemize}
+
+\endguillemets
+\textsf{Quel homme \'{e}trange, n'est-ce pas ?}
+\end{verbatim}
+
+Voici ce que cela donne comme composition :
+
+\medskip
+\bgroup% for frenchle
+Ma\^{\i}tre Corbeau dit \`{a} son clerc : << \itshape Cher coll\`{e}gue,
+
+\SmsG%
+\begin{itemize}
+\item Ah que vous \^{e}tes joli !
+\item Ah que vous me semblez beau ! >> \upshape 
+et s'enfuit de ce pas...
+\end{itemize}
+\FmsG%
+
+\endguillemets
+\egroup% for frenchle
+\textsf{Quel homme \'{e}trange, n'est-ce pas ?}
+
+\medskip
+On notera plusieurs choses. Premi\`{e}rement il a fallu
+r\'{e}tablir \verb|\upshape| apr\`{e}s les guillemets fermants,
+du fait du mauvais appariement des blocs. Ensuite un message
+sort indiquant une fermeture pr\'{e}matur\'{e}e des guillemets.
+Cette fermeture restant incompl\`{e}te on note enfin que l'on a forc\'{e}
+un \verb|\endguillemets| pour clore proprement et d\'{e}finitivement
+l'environnement guillemets.
+
+\subsection{\mdseries\texttt{\textbackslash everyparguillemetsremoved}}
+\label{noeveryparguillemetsremoved}
+Dans le m\^{e}me exemple nous pouvons aussi interdire la g\'{e}n\'{e}ration
+automatique des guillemets ouvrants \`{a} chaque d\'{e}but de paragraphe ;
+il faut alors saisir \verb|\everyparguillemetsremoved| :
+\everyparguillemetsremoved
+
+\medskip
+\bgroup% for frenchle
+Ma\^{\i}tre Corbeau dit \`{a} son clerc : << \itshape Cher coll\`{e}gue,
+
+\SmsG%
+\begin{itemize}
+\item Ah que vous \^{e}tes joli !
+\item Ah que vous me semblez beau ! >> \upshape 
+et s'enfuit de ce pas...
+\end{itemize}
+\FmsG%
+
+\endguillemets
+\egroup% for frenchle
+\textsf{Quel homme \'{e}trange, n'est-ce pas ?}
+
+\medskip
+Il suffit ensuite de r\'{e}tablir  \verb|\everyparguillemets|.
+\everyparguillemets
+\fi% ifx \itshape
+
+\subsection{Test de l'espacement}
+{\def\marque#1{\vbox{\halign{\hfil##\hfil\cr 
+                               \llap{\vrule width4.5mm height.4pt}%
+                               \rlap{\vrule width4.5mm height.4pt}\cr
+                               \noalign{\vskip-1cm}%
+                                   #1\cr}}}
+ \Huge
+ \def\ecartement{\fbox{a << \marque{\hbox{$|$}} >> b}}
+ \ecartement
+}
+% Difference de taille a voir entre les deux %%%%%%
+\setbox7\hbox{\leftguillemets\ X}
+\setbox8\hbox{X\ \rightguillemets}
+\SmsG%
+\message{Taille des boites page \thepage\space \string: 
+         \the\wd7=\string?=\the\wd8}
+\FmsG%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\onecolumn
+\newpage
+\hbox{}
+\vfill
+\centerline{\Large Page intentionnellement laiss\'{e}e blanche}
+\vfill
+\twocolumn
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+
+\subsection{Guillemets interrompus}
+Une citation peut \^{e}tre en anglais et donc se commencer par
+\vers|<< \|\vers|english| et se terminer par \vers|\|\vers|french >>|. Ce cas
+ne doit plus g\'{e}n\'{e}rer de message 
+{\em fermeture de guillemets non ouverts} !
+Voici le test, r\'{e}alis\'{e} ici
+tout d'abord avec l'environnement \vers|nonfrench| :
+
+\medskip
+1 \fbox{<< \begin{nonfrench}% LaTeX keeps space
+          Text in English
+          \end{nonfrench}% LaTeX keeps space
+        >>}
+
+
+\medskip
+Puis avec : \\
+\verb|\begin{english}| ... \verb|\end{english}| :
+
+\medskip
+% bypass here our TeX--XeT emulation to avoid message: english environment
+% ended by \end{guillemets}
+\def\temp{\begingroup}
+\ifx\beginL\temp
+\else
+{% local redef of english for plain and our specific test file
+ \ifx\undefined\englishORI\else\let\english\englishORI\fi%
+2 \fbox{<< \begin{english}%  LaTeX keeps space
+          Text in English 
+          \end{english}%  LaTeX keeps space
+        >>}
+
+\medskip
+Et enfin  avec \verb|\|\verb|english| ... \verb|\endenglish| :
+
+\medskip
+3 \fbox{<< {\csname english\endcsname
+          Text in English
+          \csname endenglish\endcsname}% space here to remove
+        >>}
+}% local redef of english for plain test
+\fi
+
+\medskip
+Ceci avait aussi pour but de tester ces possibilit\'{e}s de
+changement de langage et de v\'{e}rifier l'espacement qui
+devrait \^{e}tre ainsi :
+
+\medskip
+0 \fbox{<< Text in English >>}
+
+\noenglishdoublequotes
+\subsection{`` {\mdseries\texttt{\textbackslash noenglishdoublequotes}} ''}
+
+Nous avons mis la commande \vers|\noenglish|\-\vers|doublequotes| juste avant
+le titre de section de fa\c{c}on \`{a} remplacer les << quotes >> anglaises
+par des guillemets fran\c{c}ais dans ce titre.
+Il s'agit de v\'{e}rifier aussi que la g\'{e}n\'{e}ration des fichiers auxiliaires
+\verb|.aux| et \verb|.toc| ne pose pas de probl\`{e}me lorsque ces fichiers 
+sont r\'{e}utilis\'{e}s. Bien s\^{u}r, si cette option n'est pas activ\'{e}e pour tout le
+document, comme ici, on ne retrouvera pas les guillemets fran\c{c}ais
+dans la table des mati\`{e}res.
+
+\noenglishdoublequotes
+
+\english% histoire de changer de langue ?
+
+\newpage\french
+\subsection%{<< no-french guillemets >>}
+           {\mdseries\texttt{\textbackslash nofrenchguillemets}}
+En codant \verb|\nofrenchguillemets|
+\nofrenchguillemets on n'utilise plus
+les guillemets programm\'{e}s dans l'extension {\tt french}. Si on les utilise
+malgr\'{e} tout, le r\'{e}sultat d\'{e}pendra de la police. Ici nous utilisons la
+police \fontname\font{} et nous obtenons : 
+
+<%
+ < en 7-bits >%
+              >
+
+et aussi :
+
+<< en 8-bits >>. 
+
+R\'{e}activons maintenant les guillemets avec la commande
+\verb|\frenchguillemets|
+\frenchguillemets et faisons le m\^{e}me test :
+
+<%
+ < en 7-bits >%
+              >
+
+et aussi :
+
+<< en 8-bits >>. Voyez-vous ? 
+\vfill
+\subsection{Haut de page+guillemets}
+
+\subsubsection{En 8-bits}
+Il ne devrait pas y avoir de probl\`{e}me du tout. 
+Car, puisqu'il s'agit d'un guillemet en 8-bits, cela doit
+\^{e}tre forc\'{e}ment un vrai guillemet fran\c{c}ais. Mais, malheureusement,
+{\em la solution pour l'impl\'{e}menter n'est pas encore trouv\'{e}e avec
+le codage OT1}.
+Le codage de fonte de ce document imprime : 
+\nonfrench <%
+           < >%
+             >%
+\endnonfrench{} 
+ (doit \^{e}tre parfait en T1).
+
+\subsubsection{En 7-bits}
+En codage OT1 les guillemets 7-bits de haut de page ne peuvent \^{e}tre
+bons sur cette page 
+ {\bf QUE} parce que nous avons termin\'{e} la
+page en fran\c{c}ais, sinon nous aurions eu :
+\ifx\textexclamdown\undefined
+    \def\textexclamdown{!`}\def\textquestiondown{?`}
+\fi
+\textexclamdown\textexclamdown{} et \textquestiondown\textquestiondown
+ 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\hbox{ }\NL{25}
+
+\subsection{Guillemets et maths}
+
+L'\'{e}quation suivante ne doit plus produire le fameux message :
+
+{\tt ! Argument of \backslash \string @genG % string pour amslatex
+ has an extra % { pour emacs
+ $\}$% c'est un \delimiter qui pose pb tq avec frencht d'ou mode math
+.}
+
+$$U^{k+1}=U^{k}- {<  g_{k},d_{k} >}$$
+   
+\section{D'autres guillemets}\label{autres}
+Avec \FP\ il est possible de substituer automatiquement aux
+guillemets `anglais' la forme  \noenglishquote `que voici' en donnant la
+sous-option \verb|\noenglishquote|.
+Mais attention, les apostrophes deviennent des accents 
+comme dans : {\em il s'agit ici de l'exemple}
+\englishquote qui aurait d\^{u} \^{e}tre imprim\'{e} : 
+{\em il s'agit ici de l'exemple}.
+Un usage intensif de cette option est plut\^{o}t \`{a} d\'{e}conseiller. 
+
+\newpage\english
+\section{French guillemets}
+Using french guillemets in an english document (\verb|<<| and \verb|>>|) will
+give (depending of font encoding) that: << and >>, it is normal!
+
+As you can look in the previous columns, french guillemets have specific
+rules. They are used for quotation when an author is cited or each time an
+emphasis is needed. Normally, italic is not used inside a quoted french
+text, excepted when you really want to show some wording.
+
+When opened, each paragraph of the quoted text will start left
+ with the opening french guillemets.
+
+Another quotated text can take place inside a first level. This second level
+citation is also very specific. Each line must start with guillemets. 
+
+The style designer, from time to time, chose to apply here an ancient rule
+by putting here closing guillemets.
+
+The technical tools involved in \FP\ 
+ disallow to have at the same time
+the \verb|\everypar| possibility and the second level mechanism. 
+
+\subsection{Guillemets and maths}
+
+The following equation is always correct:
+
+$$U^{k+1}=U^{k}- {<  g_{k},d_{k} >}$$
+
+and never produce an error message.
+\NL1
+   
+\section{Other guillemets}
+With \FP\ it is possible to replace english guillemets by
+diacritic caracters. But, be careful, all apostrophes will be diacritics too.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french 
+\section{Trois petits points}
+Les points de suspension sont : ... et non pas ceux de \TeX{} : $\ldots{}$
+\noTeXdots
+En codant \verb|\noTeXdots| les commandes \verb|\dots| ou \verb|\ldots| de
+\LaTeX{} donneront : $\ldots{}$ Mais l'option par d\'{e}faut a \'{e}t\'{e}
+volontairement maintenue au standard  (\verb|\TeXdots|) puisqu'il suffit
+de ne pas les utiliser.\TeXdots
+
+\section{Crochets}
+IBM, en son temps, avait cr\'{e}\'{e} l'EBCDIC dans lequel ne figurait pas
+les crochets ([ ]). C'est la raison pour laquelle les utilisateurs IBM
+ont parfois substitu\'{e} $<$ et $>$ aux crochets.  La sous option
+\verb|\EBCDICbrackets| \EBCDICbrackets
+permet de les remplacer comme ici <automatiquement> par des crochets.
+Mais faites attention, les doubles guillemets 
+\verb|<|\verb|<| et \verb|>|\verb|>| % pour eviter la conversion 8bits
+ ne donneront jamais des crochets mais << et >> 
+(sauf en mode \verb|verbatim|). On peut en g\'{e}n\'{e}ral
+se contenter de \verb|< <| et \verb|> >| pour obtenir < < et > >. 
+On revient  \`{a} la situation ant\'{e}rieure en tapant la commande suivante :
+\verb|\normalbrackets|\normalbrackets. 
+
+\section{D\'{e}bordements}
+Nous venons de choisir  l'option  d'indication de d\'{e}bordement de ligne 
+\verb|\overfullhboxmark| et nous voyons son
+effet lorsque la ligne ne peut \^{e}tre coup\'{e}e gr\^{a}ce \`{a} l'impression
+de la petite bo\^{\i}te noire. 
+%(cf. page \pageref{debordement}).
+Cette option est activ\'{e}e au minimum pour une page enti\`{e}re. 
+Ne pas sp\'{e}cifier l'option et son contraire sur la m\^{e}me page sinon
+l'effet est inchang\'{e}.
+
+\labelsinmargin
+\section{\mdseries\texttt{\textbackslash labelsinmargin}}%
+\label{labels: in: margin}
+\FP\ offre la possibilit\'{e}, comme cela a \'{e}t\'{e} demand\'{e}
+\`{a} partir de cette section, d'imprimer dans la marge le libell\'{e} des
+\'{e}tiquettes utilis\'{e}es dans les ordres \verb|\label|. 
+Cette option, utilisable
+aussi en dehors du fran\c{c}ais, est la suivante :
+\verb|\labelsinmargin|.
+
+\newpage\english
+\section{Three dots}
+Usual and common \TeX{} and \LaTeX{} dots are not french dots.
+\NL4
+
+\section{Brackets}
+An option is offered to replace \verb|<| and \verb|>| by brackets.
+\NL{11}
+
+\section{\mdseries\texttt{\textbackslash overfullhboxmark}}
+The command \verb|\overfullhboxmark| print a black
+box where your have an overfull \verb|hbox| i.e.\  when a line can't be
+hyphenated. The default is \verb|\nooverfullhboxmark|.
+\NL4
+
+\section{Labels in margin}\label{labels are in margin}
+An option allow you to print the labels you use in a page. These labels are
+printed in margins.
+ 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Des points sur...}
+Inutile de mettre les points sur les i quand on accentue un i. Tout bon
+\'{e}diteur de texte doit faire ce travail pour vous. Sinon il existe la 
+sous-option \verb|\idotless| qui produira \idotless
+\let\XX\^% Pour \'{e}viter une traduction \'{e}ventuelle en 8 bits
+\XX{i} si on lui demande d'imprimer \verb|\^i|.
+\iwithdot La valeur par d\'{e}faut
+dans \FP\ est \verb|\iwithdot| qui donnera malgr\'{e} tout de
+bons i accentu\'{e}s avec ML\TeX{} (\^{\i}) s'ils sont saisis directement en 8 
+bits (v\'{e}rifiez dans votre fichier source).
+
+{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f at encoding
+\section{Ponctuation et  mode \protect\linebreak % SPECIAL FONTES EC REELLES
+         math\'{e}matique}
+\else
+\section{Ponctuation et  mode math\'{e}matique}
+\fi}
+Il s'agit de v\'{e}rifier que les modifications introduites 
+par l'extension \FP\ 
+ne posent aucun genre de probl\`{e}me en mode math\'{e}matique.
+\\ Nous d\'{e}finissons une macro \verb|\test| :
+\\  \verb|\def\test#1{#1}|\def\test#1{#1}
+\\ pour voir si le mode math\'{e}matique peut \^{e}tre appel\'{e} 
+sans probl\`{e}me en
+argument de macro-instructions. L'appel de \verb|\test{$x''$}| ne doit
+pas poser de probl\`{e}me%
+\iflatex
+, ni m\^{e}me \verb|\texttt{|\-\verb|[$x''=0$]}|
+\\ Ainsi : \verb|\texttt{[$x''=0$]}|
+\\donne : \texttt{[$x''=0$]} et
+\else%
+. \\Ainsi :
+\fi
+\\  \verb|$A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$|
+\\  \verb|\test{$A':B''_1<C_{d'}$}|
+\\donne : $A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$
+\\\phantom{donne :} \test{$A':B''_1<C_{d'}$}
+\\Avec \verb|\noenglishquote|\noenglishquote{} cela...
+\\donne : $A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$
+\\\phantom{donne :} \test{$A':B''_1<C_{d'}$}
+\englishquote
+\\ puis avec \verb|\noenglishdoublequotes| \noenglishdoublequotes et
+`` mise en vedette '' :
+$$%  \begin{displaymath}
+            A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;
+$$%  \end{displaymath}
+$$%  \begin{displaymath}
+            \test{A':B''_1<C_{d'}}
+$$%  \end{displaymath}
+De m\^{e}me :
+\begin{verbatim}
+{\tt CALL SUBR($<$iopt$<$,ilopt$>%
+                                 >$)}
+\end{verbatim}
+doit s'imprimer :\\
+{\tt CALL SUBR($<$iopt$<$,ilopt$>%
+                                 >$)}\\
+sans produire le message d'erreur << Fermeture de guillemets non ouverts ! >>.
+\englishdoublequotes
+
+
+\newpage\english
+\section{An \i dotless}
+Everybody knows that a french ``{\em i circonflexe}'' has no dot on it. 
+(In my opinion it is a \TeX{} bug to leave the dot when a diacritic is
+put on.) To suppress the dot automatically the best way is to use a well
+programmed text editor. \FP\ offers another opportunity with
+\verb|\idotless|.
+
+\NL2
+
+\section[Math mode and punctuation]{Math mode and \newline punctuation}
+Here we verify that french modifications about punctation
+does not introduce any problem in printing mathematics. 
+\\ We define a new  macro \verb|\test| :
+\\  \verb|\def\test#1{#1}|\def\test#1{#1}
+\\ in order to see if there is no more problem when passing maths
+inside a macro argument. Calling  \verb|\test{$x''$}| must not
+introduce any problem%
+\iflatex
+, as well as \verb|\texttt{|\-\verb|[$x''=0$]}|
+\NL1\\So: \verb|\texttt{[$x''=0$]}|
+\\gives: \texttt{[$x''=0$]} and
+\else%
+. \NL1\\So:
+\fi
+\\\verb|$A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$|
+\\\verb|\test{$A':B''_1<C_{d'}$}|
+\\ gives: $A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$
+\\\phantom{gives:} \test{$A':B''_1<C_{d'}$}
+\\With \verb|\noenglishquote|\noenglishquote{} it$\ldots{}$
+\\gives: $A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;$
+\\\phantom{gives:} \test{$A':B''_1<C_{d'}$}
+\englishquote
+\\ and with \verb|\noenglishdoublequotes|\noenglishdoublequotes{}  
+in ``display'' math mode:
+$$%  \begin{displaymath}
+            A':B''_1<C_{d'}>D^2\ et\,\ !n\ ?\ ;
+$$%  \end{displaymath}
+$$%  \begin{displaymath}
+            \test{A':B''_1<C_{d'}}
+$$%  \end{displaymath}
+\englishdoublequotes 
+Also:
+\ifx\documentclass\undefined\\ % Still Plain!
+\else\\[-2\baselineskip] % to keep the same spacing as in French
+\fi
+\begin{verbatim}
+{\tt CALL SUBR($<$iopt$<$,ilopt$>%
+                                 >$)}
+\end{verbatim}
+must print:\\
+%\SmsG%
+{\tt CALL SUBR($<$iopt$<$,ilopt$>%
+                                 >$)}\\
+%\FmsG%
+without producing the error message: 
+``Fermeture de guillemets non ouverts !''.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+Pour ma part lorsque je d\'{e}sire des crochets que je n'ai pas
+au clavier, je pr\'{e}f\`{e}re taper :\\
+\verb|{\tt CALL SUBR(<iopt<,ilopt> >)}| et utiliser
+l'option \verb|\EBCDICbrackets|\EBCDICbrackets{} :\\
+{\tt CALL SUBR(<iopt<,ilopt> >)}
+
+Cette option n'a pas d'effet en mode math\'{e}matique :
+$$ 1233 < 1234 <%
+                < 1235 >%
+                        > 1234 > 1233 $$
+\normalbrackets
+
+\makeatletter% we should use \frac with AmS
+\ifx\RIfM@\undefined%\ifx\csname amsmath.sty\endcsname\relax
+     \long\def\text#1{#1}\long\def\frac#1#2{{#1\over#2}}
+\fi
+\makeatother
+
+V\'{e}rifions aussi 
+($x < {\frac{1}{3}} < {\frac{1}{2}} > {\frac{1}{4}}$) :
+$$x <  \frac{1}{3}  < \frac{1}{2}   >  \frac{1}{4} $$
+puis aussi :
+
+ \text{\quad pour $|y| < \frac{111}{444}$}
+
+\bigskip
+La double ponctuation ne doit avoir aucun effet 
+(visible) dans une formule en mode
+math\'{e}matiques, est-ce bien le cas sur l'exemple ci-dessous :
+
+{\LARGE $$a := b, (c!n=m) \textrm{ ; vrai ?}$$}
+
+On notera que la partie texte de la formule a \'{e}t\'{e} saisie avec la
+commande : \\
+\verb|\textrm{ ; vrai ?}|\\
+et que l'espacement fran\c{c}ais y a \'{e}t\'{e} appliqu\'{e}.
+
+\iflatex
+\subsection{Le cas de la virgule}
+En standard \AllTeX{} (ou alors avec l'option sp\'{e}ciale 
+\verb|\regularmathcomma| de \FP) le traitement de la virgule
+est sp\'{e}cifique, ainsi quand on tape ce qui suit en mode
+math\'{e}matique de mise en valeur :
+\regularmathcomma%
+\begin{versatim}
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{EUR}$$
+\end{versatim}
+on obtient des espacements apr\`{e}s les virgules,
+qu'il y ait ou non des espaces dans le source \TeX\ :
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{EUR}$$
+(ce qui montre une anomalie dans la composition
+des nombres relatifs)
+\frenchmathcomma
+\fi
+
+\newpage\english
+When I have no brackets on my keyboard I prefer to type:\\
+\verb|{\tt CALL SUBR(<iopt<,ilopt> >)}|\\ using
+ the option \verb|\EBCDICbrackets| but the result in english
+remains unchanged\EBCDICbrackets{}:\\
+{\tt CALL SUBR(<iopt<,ilopt> >)}
+
+And within math mode:
+$$ 1233 < 1234 <%
+                < 1235 >%
+                        > 1234 > 1233 $$
+\normalbrackets
+
+\makeatletter% we should use \frac with AmS
+\ifx\RIfM@\undefined%\ifx\csname amsmath.sty\endcsname\relax
+     \long\def\text#1{#1}\long\def\frac#1#2{{#1\over#2}}
+\fi
+\makeatother
+
+Let's verify also ($x < {\frac{1}{3}} < {\frac{1}{2}} > {\frac{1}{4}}$) :
+$$x < \frac{1}{3} < \frac{1}{2} > \frac{1}{4}$$
+and:
+
+ \text{\quad pour $|y| < \frac{111}{444}$}
+
+\bigskip
+The ``double punctuation'' should not have any effect
+in maths, which is obviously the case in the following
+English example:
+\NL1
+
+{\LARGE $$a := b, (c!n=m) \textrm{ ; vrai ?}$$}
+
+Though the text part of the formula has been typed
+via a command: \\
+\verb|\textrm{ ; vrai ?}|\\
+the french spacing doesn't apply here.
+
+\iflatex
+\subsection{The comma case}
+With \AllTeX{} standard (or with the special \FP\ 
+\verb|\regularmathcomma| the processing of comma is really specific.
+So, when you type in the following in display math mode:
+\regularmathcomma%
+\begin{verbatim}
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 
+      1\,500,00\,\textrm{EUR}$$
+\end{verbatim}
+you will get thin spaces after the commas,
+no matter spaces are given or not in the \TeX\ source:
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{EUR}$$
+(which shows a french typesetting error for
+the relative numbers).
+\frenchmathcomma
+\fi%
+
+\iflatex
+\newpage\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+Par contre avec \FP\ on n'obtient 
+aucun espacement suppl\'{e}mentaire :
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{EUR}$$
+cela est d\^{u} \`{a} l'option \verb|\frenchmathcomma| qui est
+activ\'{e}e par d\'{e}faut avec \FP.
+Mais cela montre alors une anomalie de composition
+dans les listes $(x,y,z)$.
+
+Si l'on veut des espaces il faut alors les indiquer
+explicitement, comme cela est l'usage, plus
+g\'{e}n\'{e}ralement, en mode math\'{e}matique :
+\begin{versatim}
+$$\textrm{La fonction}\ f(x,\,y)\ 
+  \textrm{ou le Vecteur}\ V(x,\,y,\,z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{EUR}$$
+\end{versatim}
+ce qui donnera :
+$$\textrm{La fonction}\ f(x,\,y)\ 
+  \textrm{ou le Vecteur}\ V(x,\,y,\,z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{EUR}$$
+
+\medskip
+
+On notera que \FP\ ob\'{e}it \`{a} l'extension \texttt{icomma}
+lorsque cette derni\`{e}re est charg\'{e}e avant \FP, mais
+seulement en fran\c{c}ais.
+
+
+\newpage\english
+With the \FP\ package there is no space added
+at all:
+\frenchmathcomma%
+$$\textrm{La fonction}\ f(x,y)\ 
+  \textrm{ou le Vecteur}\ V(x, y, z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{EUR}$$
+this is due to the option \verb|\frenchmathcomma| which is
+defaultly activated in the \FP\ package.
+People will then distinguish a typesetting error
+in the lists $(x,y,z)$.
+
+If you want spaces you should then give them to \TeX\
+explicitely, as usually done, more generally in math mode:
+\begin{verbatim}
+$$\textrm{La fonction}\ f(x,\,y)\ 
+  \textrm{ou le Vecteur}\ 
+      V(x,\,y,\,z)$$
+$$Total=1,255\,\$\ ou\ 
+      1\,500,00\,\textrm{EUR}$$
+\end{verbatim}
+which will give:
+$$\textrm{La fonction}\ f(x,\,y)\ 
+  \textrm{ou le Vecteur}\ V(x,\,y,\,z)$$
+$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{EUR}$$
+\fi
+
+You should notice that \FP\ respect the choice of
+the \texttt{icomma} package when that last one is loaded before
+\FP; but it only applies in French.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Mon antislash est \mdseries\texttt{\backslash}}
+
+L'antislash n'existe pas dans toutes les polices en OT1.
+Que vous utilisiez \verb|\backslash| ou \verb|\textbackslash|
+vous obtiendrez la m\^{e}me chose, ainsi
+en romain droit on obtient :
+
+textbackslash=\textbackslash
+
+backslash=\backslash
+
+\noindent
+mais avec la fonte tt on obtient :
+
+{\tt
+textbackslash=\textbackslash
+
+backslash=\backslash
+}
+\NL2
+
+\section{Notes de bas de page}
+
+\iflatex\makeatletter\xdef\countSAVED{\the\c at footnote}\makeatother\fi
+\long\def\XX{%
+             Num\'{e}rotation normale\footnote{Une note normalement num\'{e}rot\'{e}e.}.
+             {\setcounter{footnote}{0}
+             \renewcommand{\thefootnote}{\fnsymbol{footnote}}
+     
+             Voici une note\footnote{Premi\`{e}re note.} 
+             puis une autre\footnote{Deuxi\`{e}me note.}
+             puis encore une autre\footnote{Troisi\`{e}me note.}
+             }}
+
+Nous comparons ici la composition des notes de bas de page
+(avec et sans \verb|\fnsymbol|)
+dans une langue et dans l'autre. Voyons ce que cela donne :
+
+\XX
+
+\newpage\english
+\section{My antislash is \mdseries\texttt{\textbackslash}}
+
+The antislash glyph doesn't exist in all OT1 font.
+Whatever you use, \verb|\backslash| or \verb|\textbackslash|
+you will obtain the same output, so
+in upright roman you obtain:
+
+textbackslash=\textbackslash
+
+backslash=$\backslash$
+
+\noindent
+but with the tt font you obtain:
+
+{\tt
+textbackslash=\textbackslash
+
+backslash=$\backslash$
+}
+
+\noindent
+but \verb|\backslash| is only available in
+math mode.
+
+\section{Compared footnotes}
+
+We compare the typesetting of footnotes 
+(with and without \verb|\fnsymbol|)
+in one language versus the other. Let's look at them.
+
+\iflatex\makeatletter\c at footnote=\countSAVED\makeatother\fi
+
+\XX
+\iflatex\makeatletter\c at footnote=\countSAVED\makeatother\fi
+\addtocounter{footnote}{1}
+\NL1
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+
+\section{\mdseries\texttt{\textbackslash guillemetsinarrays}}
+
+Avec \FP\ l'utilisation de guillemets \`{a} la 
+fran\c{c}aise en mode texte dans les environnements \texttt{array} ou 
+\texttt{eqnarray} est possible
+mais il est n\'{e}cessaire de prot\'{e}ger les op\'{e}rateurs
+inf\'{e}rieur (\texttt{<}) et sup\'{e}rieur (\texttt{>}) lorsqu'ils terminent
+une colonne. On rajoute alors une paire d'accolades ou \verb|\relax| 
+pour terminer la macro-commande :
+\begin{verbatim}
+$
+\begin{array}{ccc}  
+a  & \inferieura        &b\\ 
+a  & \protect<          &b\\ 
+a  & b                  &<\\       
+a  & >{}                &c\\      
+<{}& << >>              &c\\     
+<{}& \textrm{<< text >>}&c 
+\end{array}
+$
+\end{verbatim}
+
+\noindent ce qui donne : 
+
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & \protect<          &b\\ 
+a  & b                  &<\\       
+a  & >{}                &c\\      
+<{}& << >>              &c\\     
+<{}& \textrm{<< text >>}&c 
+\end{array}
+$
+
+\medskip
+On peut \'{e}viter d'avoir \`{a} modifier des tableaux existants et dans ce
+cas on codera \verb|\no|\-\verb|guil|\-\verb|lemetsinarrays| :
+
+\begin{verbatim}
+\noguillemetsinarrays
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & <                  &b\\ 
+a  & b                  &<\\       
+a  & >                  &c\\      
+<  & << >>              &c\\     
+<  & \textrm{<< text >>}&c 
+\end{array}
+$
+\end{verbatim}
+
+\noindent ce qui donne alors :
+
+\noguillemetsinarrays
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & <                  &b\\ 
+a  & b                  &<\\       
+a  & >                  &c\\      
+<  & << >>              &c\\     
+<  & \textrm{<< text >>}&c 
+\end{array}
+$
+\guillemetsinarrays% reset default
+
+\newpage\english
+\section{Guillemets in arrays}
+The \FP\ package allows people to print french guillemets
+in \texttt{array} environments (but in text mode). This usually breaks
+the code for \texttt{<} or \texttt{>} when they finish an array slot.
+So you should protect them; like this:
+\NL2
+
+\begin{verbatim}
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & \protect<          &b\\ 
+a  & b                  &<\\       
+a  & >{}                &c\\      
+<{}& \textrm{<< text >>}&c 
+\end{array}
+$
+\end{verbatim}
+\NL1
+
+\noindent which gives: 
+
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & \protect<          &b\\ 
+a  & b                  &<\\       
+a  & >{}                &c\\      
+<{}& \textrm{<< text >>}&c 
+\end{array}
+$
+\NL1
+
+\medskip
+
+One can avoid to modify existing arrays and then just say
+\verb|\noguillemetsinarrays| but this command is not
+interesting in English because the problem doesn't exist
+at all:
+
+\begin{verbatim}
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & <                  &b\\ 
+a  & b                  &<\\       
+a  & >                  &c\\      
+<  & \textrm{<< text >>}&c 
+\end{array}
+$
+\end{verbatim}
+\NL1
+
+\noindent gives the following result:
+
+\def\GOfrench{\let\ifCLA\iffalse}% To allow dmy and frencht to compile
+\ifx\ifCLA\undefined\expandafter\GOfrench\fi% without error.
+$
+\begin{array}{ccc}
+a  & \inferieura        &b\\ 
+a  & 
+\ifCLA\expandafter\protect\fi% To allow \ConstantLayout test file.
+<                  &b\\ 
+a  & b                  &<\\       
+a  & 
+\ifCLA\expandafter\protect\fi% To allow \ConstantLayout test file.
+>                  &c\\      
+\ifCLA\expandafter\protect\fi% To allow \ConstantLayout test file.
+<  & \textrm{<< text >>}&c 
+\end{array}
+$
+\NL1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+
+\noguillemetsinarrays% for continuation of column
+Cette commande est aussi valable  pour les environnements
+\texttt{eqnarray} :
+
+\begin{eqnarray}
+a  & <                  &b\\ 
+a  & >                  &c\\      
+<  & << >>              &c\\     
+<  & \textrm{<< text >>}&c 
+\end{eqnarray}
+
+Pour terminer je r\'{e}tablis la valeur par d\'{e}faut :
+\verb|\guillemetsinarrays| 
+\guillemetsinarrays
+et si j'essaye le m\^{e}me exemple j'obtiendrais
+le message : \\
+{\makeatletter\let\@PreserveBraces={% uggly hack for plain
+\vers|! Argument of \@PreserveBraces has an|\\
+\vers|extra }.|
+}% closing hack.
+
+\section{Guillemets verbatim}
+
+Avec l'option \verb|\nofrenchguillemets| il est possible
+--~si \FP\ travaille en codage de fonte du genre \texttt{T1} 
+{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f at encoding\else
+(mais ca ne semble pas \^{e}tre le cas ici)\fi}%
+~--
+\nofrenchguillemets
+d'imprimer des guillemets 8-bits en verbatim : \verb|<< >>|.
+\frenchguillemets
+
+\iflatex
+\section{Environnement guillemets exclus}
+
+\begin{versatim}
+\guillemets{} Je me suis dit que : 
+<< avec l'option [...] les  guillemets 
+sont inop\'{e}rants. \endguillemets{}
+\end{versatim}
+\SmsG
+\noeveryparguillemets
+\guillemets{}
+\verb|[\guillemets{}]| Je me suis dit que : 
+<< avec l'option \vers|\noevery|\-\vers|par|\-\vers|guillemets|
+on ne doit pas avoir un environnement qui se termine avant la fin
+du paragraphe. C'est pourquoi l'environnement \texttt{guillemets} 
+n'est plus autoris\'{e} dans ce cadre.
+D\'{e}sormais un message est \'{e}mis et ces environnements 
+guillemets sont inop\'{e}rants. \endguillemets{}
+
+On note que \verb|\guillemets{}| n'a aucun effet visible
+et que le d\'{e}but de paragraphe est forc\'{e} aux premiers 
+caract\`{e}res-guillemets ouvrants qui suivent. Le 
+\verb|\endguillemets{}| de fin d'environnement ferme cependant
+le paragraphe.
+
+\guillemets [\verb|\guillemets{}|]\!
+Ces environnements exclus dans le cadre de cette option
+ peuvent \^{e}tre de premier ou 
+/\guillemets{} deuxi\`{e}me \endguillemets{}/ niveau
+comme ici (slashs). [\verb|\endguillemets{}|]
+\endguillemets{}
+
+\FmsG
+\frenchguillemets
+\fi%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\english
+Notice that with standard \LaTeX\ you obtain a message
+saying that \verb|\guillemotleft| and \verb|\guillemotright|
+are invalid in math mode when you try to use guillemets
+in an \texttt{array} environement.
+\NL{9}
+
+\smallskip
+
+\section{Verbatim Guillemets}
+
+The 8bit french guillemets chars printed within
+a verbatim environnement give here: \verb|<< >>|
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Utilisation de la \mdseries\texttt{toc}}
+
+Il n'est pas pr\'{e}vu de pouvoir composer une table des mati\`{e}res ou un
+sommaire dans plus d'une langue.
+On notera que \verb|\sommaire| est un apport de \FP.
+
+\section{Fichiers {\mdseries\texttt{lof}} et {\mdseries\texttt{lot}}}
+On v\'{e}rifie ici que la ponctuation fran\c{c}aise n'a pas cr\'{e}\'{e} 
+d'ennui particulier.
+Nous avons laiss\'{e} en blanc la figure \ref{x<<:;!?>>x} 
+qui n'est qu'un simple
+test. De m\^{e}me le tableau \ref{y`<<:;!?>>'y} n'est l\`{a} que pour 
+cr\'{e}er une entr\'{e}e dans la liste des tableaux.
+
+Le {\em caption} de la figure 
+\ref{x<<:;!?>>x} 
+ doit appara\^{\i}tre com\-me ceci :
+ {\it << essai >> ;  2 cm ! pourquoi pas ?}
+\begin{figure}[h]
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\%\vspace*{2cm}
+\ \\
+\ Peu importe la figure...\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{<< essai >> ;  2 cm ! pourquoi pas ? 
+         \protect\\ (cf. aussi le tableau \ref{frenchdactylo})}
+\label{x<<:;!?>>x}
+\end{figure}
+
+Le {\em caption} du tableau
+\ref{y`<<:;!?>>'y}
+ doit \^{e}tre comme ceci :
+{\it ` << essai >> ;  2 cm ! pourquoi pas ? '}
+\begin{table}[h]
+\caption{` << essai >> ;  2 cm ! pourquoi pas ? '  
+         \protect\\ (cf. aussi le tableau \ref{frenchdactylo})}
+\label{y`<<:;!?>>'y}
+
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ Peu importe le tableau\footnote{Une note de tableau.}...\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+
+On notera les libell\'{e}s ({\sc Fig.} et {\sc Tab.}) plus confor\-mes \`{a}
+l'usage fran\c{c}ais. Ne pas oublier non plus que les titres de tableaux sont
+toujours plac\'{e}s, en fran\c{c}ais, avant ceux-ci contrairement aux figures.
+
+\FP\ ne pr\'{e}voit pas que l'on puisse composer une 
+partie des tables des figures (ou tableaux) en fran\c{c}ais et une autre
+en anglais par exemple. Les fichiers \verb|.lof| et \verb|.lot| seront
+donc compos\'{e}s enti\`{e}rement dans la langue pr\'{e}s\'{e}lectionn\'{e}e.
+
+\newpage\english
+\section{{\mdseries\texttt{toc}} file use}
+No facility is given to typeset the \verb|.toc| in various languages.
+
+Notice that \verb|\sommaire| is a new command brought up with this
+package.
+
+\section{{\mdseries\texttt{lof}} and {\mdseries\texttt{lot}} files}
+Same test in English just to verify  that our french modifications
+does not affect the text in English.
+
+You will notice, of course, that the caption names are re-established
+to their original values ({\bf figure} and {\bf table}).
+
+The following figure (not referable) %(\ref{ex<<:;!?>>ex}) 
+caption must look like:
+<< essai >>;  2 cm! Why not?
+\begin{figure}[h]
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ No matter how is the figure$\ldots{}$\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{<< essai >>;  2 cm! Why not?
+         \protect\\ (cf. also the table \ref{frenchdactylo})}
+%\label{ex<<:;!?>>ex}% produit un missing \endcsname
+\end{figure}
+
+The {\em caption} of the table (not referable) %\ref{ey`<<:;!?>>'ey} 
+must look like: 
+` << essai >>;  2 cm! Why not? '
+\begin{table}[h]
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ No matter how is the table\footnotemark% \footnotetext est perdu !
+ $\ldots{}$\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{` << essai >>;  2 cm! Why not? '
+         \protect\\ (cf. also the table \ref{frenchdactylo})}
+%\label{ey`<<:;!?>>'ey}% generates missing \endcsname
+\end{table}\footnotetext{A note from a table.}
+\NL1
+
+Notice that we have here the standard caption names used by \LaTeX{}.
+
+You can see in the French column the specific labels and places of caption
+titles (under the figure but over the table).
+
+Don't try to compose \verb|.lof| and \verb|.lot| files in more than one
+language, it's not designed in this (stupid?) way!
+
+\french
+\begin{table*}[tb]
+\caption{` << essai >> ;  2 cm ! pourquoi pas ? '  
+         (cf. aussi le tableau \ref{frenchdactylo})}
+\label{2`<<:;!?>>'2}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ Peu importe le tableau sur deux colonnes%
+\footnote{Une note de tableau.}...\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\end{table*}
+
+\newpage
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{Encore un tableau...}
+Mais celui-ci est sur deux colonnes si l'option
+\verb|twocolumn| est active. V\'{e}rifions simplement
+que le traitement est le m\^{e}me qu'en une seule
+colonne.
+
+Le {\em caption} du tableau
+\ref{2`<<:;!?>>'2}
+ doit \^{e}tre comme ceci :
+{\it ` << essai >> ;  2 cm ! pourquoi pas ? '}
+
+\section{\sloppy Encore {\mdseries\texttt{\textbackslash labelsinmargin}}}
+
+\`{A} nouveau nous utilisons \verb|\labelsinmargin|
+\labelsinmargin
+pour v\'{e}rifier son fonctionnement dans une figure
+et un titre de figure 
+
+\begin{figure}[h]
+\label{label de la figure}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ Peu importe la figure...\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{le titre de la figure avec label
+\label{label du titre fig.}}
+\end{figure}
+
+M\^{e}me test avec un tableau :
+\begin{table}[h]
+\label{label du tableau}
+\caption{le titre du tableau avec label\label{label du titre tab.}}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ Peu importe le tableau...\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+
+\sloppypar{
+D\'{e}sactivons d\'{e}finitivement l'option 
+avec \verb!\nolabelsinmargin!.
+}
+\nolabelsinmargin
+
+\newpage\english
+\NL8
+\section{{\mdseries\texttt{\textbackslash labelsinmargin}} again}
+
+Again we test \verb|\labelsinmargin|
+\labelsinmargin
+to verify that it is running within a figure
+and in a figure's caption. 
+
+\begin{figure}[h]
+\label{label in a figure}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ No matter the figure$\ldots{}$\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{title with a label\label{label in fig. caption}}
+\end{figure}
+
+Same test with a table:
+\begin{table}[h]
+\label{label in a table}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+\ \\
+\ No matter the table$\ldots{}$\\
+\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{title with a label\label{label in a tab. caption}}
+\end{table}
+
+Disactivate definitely the option with \verb!\nolabelsinmargin!.
+\nolabelsinmargin
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+
+\section{Notes dans \mdseries\texttt{\textbackslash caption}}
+
+Si une note dans un tableau doit \^{e}tre imprim\'{e}e \`{a} la fin du
+tableau, une note dans un titre de tableau doit \^{e}tre
+imprim\'{e}e en fin de page. Malheureusement \LaTeX{} perd
+le texte des notes dans les environnements {\tt figure} et 
+{\tt table}. L'ex\-ten\-sion \FP\ pr\'{e}vient l'utilisateur
+que le texte doit \^{e}tre r\'{e}ins\'{e}r\'{e} \`{a} l'aide de \verb|\footnotetext|.
+
+\begin{table}[h]
+
+\SmsG%
+\caption[Essai de footnote dans un caption de tableau]
+        {L\'{e}gende\protect\footnote{Une note de bas de page.}}
+\FmsG%
+
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+%\ \\
+\ Peu importe le tableau...\\
+%\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+\footnotetext{Une note de bas de page.}
+
+\section{{\mdseries\texttt{\textbackslash caption}} vide}
+
+\begin{table}[h]
+\caption{}
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+%\ \\
+\ Tableau sans l\'{e}gende\\
+%\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+
+\section{\mdseries\texttt{\textbackslash nombre}}
+
+Les nombres en fran\c{c}ais sont imprim\'{e}s correctement lorsque l'on
+utilise \verb|\nombre|, ainsi :
+
+\begin{verbatim}
+\nombre{123 456,123 456}
+\end{verbatim}
+imprime \nombre{123 456,123 456} au lieu de la forme habituelle
+ {\regularmathcomma $123 456,123 456$}
+ou \mbox{123 456,123 456} suivant que l'on est en mode math
+ou en mode texte.
+
+On y voit des espaces fines \`{a} chaque millier et (normalement)
+une virgule sans espace suppl\'{e}mentaire comme cela se produit
+en mode math avec \TeX{} standard.
+
+\section{Autre chose ?}
+Non !
+
+[espace libre utilisable]
+
+\newpage\english
+
+\section{Notes within \mdseries\texttt{\textbackslash caption}}
+
+Normally in French we print table's footnotes at the end of the table
+but it can't be the case when a footnote is called from a caption title.
+But unfortunately footnote's text is lost when inside a \LaTeX{} figure
+or table environnement, as shown here.
+Thus {\tt french.sty} warn the user with the appropriate message, but
+in English nothing is done. 
+
+\begin{table}[h]
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+%\ \\
+\ No matter the table$\ldots{}$\\
+%\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption[footnote try within a table's caption]
+        {Caption title\protect\footnote{A footnote page.}}
+
+\end{table}
+%\footnotetext{A footnote page.}
+
+\section{Empty \mdseries\texttt{\textbackslash caption}}
+
+\begin{table}[h]
+\begin{center}
+\begin{tabular}{|c|}
+\hline
+\ \hfill \ \\
+%\ \\
+\ Empty caption\\
+%\ \\
+\ \\
+\hline
+\end{tabular}
+\end{center}
+\caption{}
+\end{table}
+
+\section{\mdseries\texttt{\textbackslash nombre}}
+
+French number should be correctly printed using
+\verb|\nombre|, so :
+
+\begin{verbatim}
+\nombre{123 456,123 456}
+\end{verbatim}
+should not print as usual
+$123 456,123 456$ nor \mbox{123 456,123 456}
+(depending you are in math or in text mode)
+but $123\,456{,}123\,456$.
+\NL1
+
+We see here thin spaces between each thousand part and no
+(usual) space after the comma (as it is in math with standard
+\TeX{}).
+
+\smallskip
+
+\section{Anything else?}
+
+No!
+
+\noindent
+[free space to reuse]
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Le 1\protect\fup{er} paragraphe}
+Notez bien que le 1\fup{er} paragraphe d'une section 
+ne commence jamais au fer \`{a} gauche 
+en fran\c{c}ais, comme vous le voyez ici.
+
+Le deuxi\`{e}me paragraphe d\'{e}marre comme le premier...\footnote{%
+La typographie du titre de section (1\fup{er}) est \`{a} noter ;
+ {\tt mysmaller.sty} a \'{e}t\'{e} utilis\'{e} 
+\`{a} la compilation de {\tt frenchrf} avec \LaTeX{}. 
+Il existe aussi l'extension {\tt relsize} qui fonctionne
+bien avec \FP.}
+
+\section{Test des listes}\label{listes}
+
+Voici un test d'\'{e}num\'{e}ration (\verb|itemize|) de \LaTeX{} :
+
+\begin{itemize}
+\item liste de niveau 1 ;
+      \begin{itemize}
+      \item incluant un niveau 2,
+            \begin{itemize}
+            \item mais aussi un niveau 3,
+            \item peu utilis\'{e} ;
+            \end{itemize}
+      \item le niveau 2 se terminant ici ;
+      \end{itemize}
+\item suite de la liste de niveau 1 ;
+\item dernier \'{e}l\'{e}ment de niveau 1.
+\end{itemize}
+
+On remarquera les deux choses suivantes : 
+\primo les marqueurs sont identiques quel que soit
+le niveau et \secundo aucun \'{e}l\'{e}ment ne commence par une majuscule.
+\NL2
+
+\section{D\'{e}finition de langue}
+
+On peut se d\'{e}finir une  langue comme par exemple le kathmandouais par : \\%
+\verb|\NouveauLangage[2]|\verb|{kathmandouais}|\\%
+\global% for TeX--XeT tests
+\def\kathmandouaisTeXmods{\empty}
+      \NouveauLangage[2]{kathmandouais} %
+et ensuite on peut \'{e}crire kathmandouais en tapant : 
+\verb|\kathmandouais|
+\SmsG%
+\kathmandouais%Message a ignorer si vous n'avez que 2 langues definies.
+bla... blabla... bla%
+\typeout{I AM WRITING KATMANDOUAIS, Ye\string! (language=\the\language)}%
+\FmsG%
+\footnote{Mais bien entendu les c\'{e}sures ne seront pas bonnes car elles
+seront faites \`{a} partir d'un language existant. On notera la typographie
+du num\'{e}ro de cette note saisie en {\em Katmandouais}.}
+ et revenir au fran\c{c}ais par
+\verb|\french|\french%
+\footnote{Si le point qui suit n'est pas accol\'{e} au mot {\tt french}
+alors cela signifie que des {\em blank space} tra\^{\i}nent dans 
+\FP.}.
+S'il n'y a  pas  de commande \verb|\kathmandouaisTeXmods| de d\'{e}finie 
+rien ne se passera
+vraiment, cela sera \'{e}quivalent \`{a} \verb|\relax|, seul un message 
+d'avertissement sera \'{e}mis.
+
+\newpage\english
+\section{First paragraph}
+In English each paragraph is indented except the first one of a section,
+subsection, etc. as you can see in this example.
+
+Subsequent paragraphs start indented$\ldots{}$\NL1 
+
+\section{Itemized lists}
+Here is the same  french \verb|itemize| list:\NL1 
+
+\begin{itemize}
+\item liste de niveau 1;
+      \begin{itemize}
+      \item incluant un niveau 2,
+            \begin{itemize}
+            \item mais aussi un niveau 3,
+            \item peu utilis\'{e} ;
+            \end{itemize}
+      \item le niveau 2 se terminant ici ;
+      \end{itemize}
+\item suite de la liste de niveau 1 ;
+\item dernier \'{e}l\'{e}ment de niveau 1.
+\end{itemize}
+
+You can compare english and french lists.
+Notice firstly that item markers are identical at each level and secondly
+that each item never starts with an uppercase letter.
+
+\section{Create a language}
+There is a new control sequence to allow {\em the creation} of new language:\\
+\verb|\NouveauLangage[n]{language}|\\
+This command is in fact used internally but it can be also used elsewhere 
+to define a new language which rules will be set by:\\
+ \verb|\<language>TeXmods| (if defined.) The internal language number \verb|n|
+tells \TeX{} what hyphenation table is to use among those defined at
+\verb|INITEX| time.
+
+\begin{table*}[th]% pour la page suivante
+\begin{center}
+\fbox{Attention : psfig est p\'{e}rim\'{e} ; il n'est utilis\'{e} ici
+      qu'\`{a} des fins de test.}
+\end{center}
+\end{table*}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Caract\`{e}res actifs}
+Quelques jeux de macros doivent parfois \^{e}tre charg\'{e}s 
+directement dans le document
+et utilisent  les caract\`{e}res {\em actifs\/} de \FP. Il y
+a alors conflit ouvert. Plusieurs solutions sont offertes, soit utiliser
+l'ordre : \\
+\verb|   \originalinput{fichier}|\\
+ soit :
+\begin{verbatim}
+   \begin{nonfrench}
+          ... macros-instructions...
+   \end{nonfrench}
+\end{verbatim}
+Nous avons adopt\'{e} la  deuxi\`{e}me solution ici : 
+
+\tthyphenation
+\begin{versatim}
+Saluons au passage Trevor Darrell, l'auteur de \verb|psfig| :
+ \begin{nonfrench}
+   \let\psfig\undefined
+   \input mypsfig.sty
+   \begin{center}
+       \ \hbox{\vbox{\psfig{figure=%
+          myfigure.ps,height=1in}}}\  
+   \end{center}
+ \end{nonfrench}
+\end{versatim}
+
+Saluons au passage Trevor Darrell, l'auteur de \verb|psfig| :
+\begin{nonfrench}
+   \let\psfig\undefined
+  \input mypsfig.sty
+  \begin{center}
+       \ \hbox{\vbox{\psfig{figure=%
+          myfigure.ps,height=1in}}}\  
+  \end{center}
+\end{nonfrench}
+Mais attention n'utilisez pas en fran\c{c}ais un code que 
+vous auriez charg\'{e} 
+en anglais ou r\'{e}ciproquement !
+
+En fait, l'extension \FP\ est compatible avec \verb|psfig|.
+En voici l'exemple -- sans utiliser \verb|nonfrench| -- avec 
+\verb|\psdraft| : 
+   \let\psfig\undefined
+  \input mypsfig.sty
+  \psdraft
+  \begin{center}
+       \ \hbox{\vbox{\psfig{figure=%
+          myfigure.ps,height=1in}}}\  
+  \end{center}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\english
+\section{Active characters}
+Codes that were designed for English might bring problems when used with  
+\FP\ because few characters are {\em activated\/}. 
+Few solutions are offered, either:\\
+\verb|   \originalinput{file}|
+
+or:
+\begin{verbatim}
+   \begin{nonfrench}
+          ... macros-instructions...
+   \end{nonfrench}
+\end{verbatim}
+We used here the second solution:
+\begin{verbatim}
+Saluons au passage Trevor Darrell, 
+           l'auteur de \verb|psfig| :
+ \begin{nonfrench}
+   \let\psfig\undefined
+   \input mypsfig.sty
+   \begin{center}
+       \ \hbox{\vbox{\psfig{figure=%
+          myfigure.ps,height=1in}}}\  
+   \end{center}
+ \end{nonfrench}
+\end{verbatim}
+
+\notthyphenation
+Saluons au passage Trevor Darrell, %
+           l'auteur de \verb|psfig| :
+%\begin{nonfrench}% inutile d'obtenir un message de warning
+   \let\psfig\undefined
+  \input mypsfig.sty
+  \begin{center}
+       \ \hbox{\vbox{\psfig{figure=%
+          myfigure.ps,height=1in}}}\  
+  \end{center}
+%\end{nonfrench}
+But be carefull, don't use in French a code that was loaded in English
+or reciprocally!
+\NL1
+
+In fact the \FP\ is fully compatible with \verb|psfig| once
+\FP\ starts working i.e. after the 
+\vers|\|\vers|begin{document}|.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+
+\section{Abr\'{e}viations}
+\abbreviations 
+Si on demande \verb|\abbreviations| alors on a  
+acc\`{e}s \`{a} un fichier d'abr\'{e}\-via\-tions 
+typo\-graphi\-ques fran\c{c}aises. 
+Ainsi je saisis \verb|"monseigneur"| et j'imprime "monseigneur"\!.
+De m\^{e}me, avec ML\TeX{} je saisis \verb|"deuxi\`{e}me"| 
+(v\'{e}rifiez dans le
+source que ce mot est bien cod\'{e} en 8bits) et j'imprime "deuxi\`{e}me"\!%
+. %alors que le fichier d'abr\'{e}viations contient \verb|"deuxi\`|\verb|eme"|.
+Ainsi il n'est plus vraiment indispensable de se rappeler que
+l'abr\'{e}viation de madame est "madame" (et ma\^{\i}tre : "ma\^{\i}tre"\!).
+
+Lorsqu'un mot ne figure pas dans le fichier d'abr\'{e}viations, il est alors 
+imprim\'{e} tel que. Ainsi \verb|"GUTenberg"| imprimera 
+\SmsG%
+"GUTenberg".
+\FmsG%
+ Mais n'oubliez jamais le double guillemet fermant sinon vous obtiendrez
+ un message du genre : 
+\begin{versatim}
+ Paragraph ended before \AbbrevName was complete.
+\end{versatim}
+ 
+Je peux aussi donner mon  fichier personnel d'abr\'{e}viations en codant :\\
+\verb|\abreviations[mon_fichier_personnel]|
+
+On retire ces possibilit\'{e}s par la commande \verb|\noabbreviations|.
+N'oublions pas que le caract\`{e}re \verb|"|  sert normalement en \TeX{} 
+comme en \LaTeX{} \`{a} exprimer les nombres en hexad\'{e}cimal.
+
+\section{Monsieur s'abr\`{e}ge "Monsieur"}
+
+Que je saisisse \verb|"Monsieur"| ou \verb|"monsieur"|
+j'obtiens la m\^{e}me abr\'{e}viation : "Monsieur" ou "monsieur", respectivement.
+
+Il n'en est pas toujours de m\^{e}me... ainsi lorsqu'on saisit
+\verb|"Num\'{e}ro"| et \verb|"num\'{e}ro"| on obtient respectivement : 
+"Num\'{e}ro" et "num\'{e}ro", car \verb|Num\'{e}ro|
+est une entr\'{e}e dans le fichier des abbr\'{e}viations o\`{u} il est \'{e}crit
+\verb|{Num\'{e}ro}|.
+
+Il est d\'{e}sormais possible de placer une abr\'{e}viation dans un titre
+de chapitre ou de section, comme le titre de cette section le
+d\'{e}montre ; nous avons saisi :
+\begin{verbatim} 
+\section{Monsieur s'abr\`{e}ge "Monsieur"}
+\end{verbatim}
+
+\noabbreviations
+
+\newpage\english
+
+\section{Abbreviations}
+The abbreviation facility offered in \FP\ is based on
+an abbreviations file. When requested by \verb|\abbreviations| one
+may call any \verb|"abbreviation"|. If this abbreviation is found in the
+file it will be replaced by the typographic expansion, if not it will
+be printed as is.\NL2
+
+But never forget the ending double quotes otherwise you will obtain the
+terrible message:
+{\tt Paragraph} {\tt ended before} \texttt{\textbackslash AbbrevName} 
+{\tt was complete.}
+\NL4
+
+You can have your own abbreviations file by calling:
+\verb|\abreviations[my_file]|.\NL1
+
+Saying \verb|\noabbreviations| this facility is lost. Remember that the
+char \verb|"| is used normally in \TeX{} as in \LaTeX{} to start an
+hexadecimal number.
+
+But used in English, \verb|"monsieur"| will give "monsieur"%
+\footnote{Notice the quoting!}.
+
+\newpage\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{Autres macros utiles}
+\verb|\fsc{KnUtH}| permet d'imprimer \fsc{KnUtH} et \verb|\lsc{SnCf}| 
+donne \lsc{SnCf}. Cela doit aussi marcher si le mot commence par une
+accentuation comme ici avec le mot \fsc{\'% a laisser tq a cause du 7bits
+epinal} et m\^{e}me quand cette accentuation est plus loin dans
+le mot comme ici dans \fsc{ANDR\'% a laisser tq a cause du 7bits
+E}.
+
+\bigskip
+Voici une note%
+\footnote{La note.\label{NOTE}}
+de bas de page command\'{e}e par \verb|\footnote{La note.\label{NOTE}}|.
+Je peux faire \`{a} nouveau appel \`{a} cette note\refmark{NOTE} 
+ par l'ordre \verb|\refmark{NOTE}|.
+
+\bigskip
+Par analogie avec l'environnement \verb|verse| :
+\begin{verse}
+%\moretolerance % pour eviter un leger overfull hbox
+1\iere{} ligne : cette ligne est bien trop longue, elle doit \^{e}tre coup\'{e}e autant de fois que n\'{e}cessaire...\\
+2\ieme{} ligne : le test terrible de...\\%
+3\ieme{} ligne : `ceci est le test des quotes'\\
+\end{verse}
+\tthyphenation
+voici le m\^{e}me test (sans \verb|\\|)
+avec l'environnement \vers|versatim| qui est 
+un environnement \vers|verba|\-\vers|tim| compos\'{e} 
+avec des coupures de lignes
+comme l'est l'environnement \verb|verse| et dont les {\em quotes} peuvent
+\^{e}tre imprim\'{e}es avec des accents si on pr\'{e}cise 
+\vers|\noenglishquote| :
+\noenglishquote
+\begin{versatim}
+1\iere{} ligne : cette ligne est bien trop longue,  elle doit \^{e}tre coup\'{e}e autant de fois que n\'{e}cessaire...
+2\ieme{} ligne : le test terrible de \end{document} 
+3\ieme{} ligne : `ceci est le test des quotes'
+\end{versatim}
+\englishquote
+
+\allowuchyph
+Et maintenant voici l'ordre r\'{e}duit \verb|\vers| qui 
+s'utilise comme \verb|\verb| et doit permettre de couper une
+longue cha\^{\i}ne de caract\`{e}res \texttt{ver\-batim}. Celle-ci
+sera coup\'{e}e par d\'{e}faut entre les mots (\vers|\notthyphe|\-\vers|nation|)
+mais pourra l'\^{e}tre \`{a} l'int\'{e}rieur des mots si on pr\'{e}cise 
+\tthyphenation \vers|\tthyphe|\-\vers|nation| comme ici : <<
+\vers|Longue Cha\^{\i}ne De Caract\`{e}res \`{A} Couper Absolument| >>.
+Les mots commen\c{c}ant en majuscule ne pourront \^{e}tre coup\'{e}s
+que si \vers|\uchyph=1|, valeur par d\'{e}faut dans \FP\ 
+(\vers|\|\vers|allow|\-\vers|uchyph|) qui est utilis\'{e}e pour cette
+partie uniquement.
+
+\subsection*{Test de {\mdseries\texttt{\textbackslash fsc}} 
+(\fsc{French CAPS})}
+Ce paragraphe teste la protection de certaines macro-instructions.
+
+\disallowuchyph\notthyphenation
+\newpage\english
+\section{Other useful macros}
+French patronymic names are printed in small capitals with the first
+letter in uppercase. That is done with the \verb|\fsc| macro.
+Another macro \verb|\lsc| is available to print all the word(s) in small
+capitals, specially usefull for trademark or companies names.
+
+\LaTeX{} is at the current time unable to print a \verb|\ref| as
+a footnotemark, the command \verb|\refmark| is able to do that.
+
+Also, \LaTeX{} doesn't offer any {\tt verbatim} style able to
+hyphenate lines. \FP\ is able to do this with the
+environment {\tt versatim} or the \texttt{\textbackslash vers} order within a
+line.
+
+These environments allow to replace the {\tt tt} quoting
+({\tt ` '}) by more realistic ones ({\tt\`{ } \'{ }}) with
+the order \texttt{\textbackslash noenglishquote}. Of course this environment
+produce nothing different from the standard \verb|verbatim| when 
+used in \verb|\english|:
+{\overfullrule=5pt
+
+\hfuzz=30pt
+\begin{versatim}
+1\iere{} ligne : cette ligne est bien trop
+2\ieme{} ligne : le test terrible de...
+3\ieme{} ligne : `ceci est le test des...
+\end{versatim}
+
+\SmsG%
+
+And now this a test of a long string within a \verb|\vers|: 
+``\vers|Longue Cha\^{\i}ne De Caract\`{e}res \`{A} Couper A|
+This string would be hyphenated only if someone said
+\verb|\tthyphenation| previously.
+}
+
+\FmsG%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Accents et {\mdseries\tt tabbing}}
+\FP\ apporte une solution pour pouvoir introduire
+des lettres accentu\'{e}es dans un environnement \vers|tabbing| lorsque
+le source \TeX{} est en 7bits ou utilise Ml\TeX{}
+\footnote{%
+Cette option est aussi utile d\'{e}sormais en T1 car les lettres accentu\'{e}es
+sont traduites avec \FP, de fa\c{c}on interne, en 7-bits \`{a} la \TeX.
+         }%
+ ; c'est l'option par d\'{e}faut 
+\vers|\|\vers|tabbing|\-\vers|accents|\tabbingaccents. L'exem\-ple :
+\begin{tabbing}
+Les TYPES : \=  Les matieres  \= Les genres \kill
+Bidon :     \>   d'huile      \>$A'=B''$\` normal \\
+Caisse :    \>   \`%
+                   a outils     \> rustique \\
+Toile :     \>   \a`%
+                   a matelas    \> confort  
+\end{tabbing}
+\notabbingaccents
+doit s'imprimer ainsi :
+\begin{tabbing}
+Les TYPES : \=  Les matieres  \= Les genres \kill
+Bidon :     \>   d'huile      \>$A'=B''$\` normal \\
+Caisse :    \>\a`a outils     \> rustique \\
+Toile :     \>\a`a matelas    \> confort  \\
+\end{tabbing}
+\vspace*{-0.5\baselineskip}
+Nous l'avions saisi comme suit :
+\begin{versatim}
+\begin{tabbing}
+Les TYPES : \=  Les matieres  \= Les genres \kill
+Bidon :     \>   d'huile      \>$A'=B''$\` normal \\
+Caisse :    \>   \`%
+                   a outils     \> rustique \\
+Toile :     \>   \a`%
+                   a matelas    \> confort  
+\end{tabbing}
+\end{versatim}
+
+\section{Figurettes}
+Le style \verb|french| propose un environnement sp\'{e}cial, appel\'{e} 
+\verb|figurette|,
+ pour placer les figures \`{a} l'enfroit exact o\`{u} 
+ces figures se pr\'{e}sentent
+dans le texte. Cela est particuli\`{e}rement utile pour des petites figures,
+domaine o\`{u} \LaTeX{} n'est pas adapt\'{e} en standard. 
+Pour r\'{e}aliser ceci :
+  \begin{figurette}
+        \center\fbox{essai}\endcenter% rajoute pour plain TeX
+  \caption{Ceci est une figurette}
+                 \label{figurette}
+  \end{figurette}
+Nous avons \'{e}crit :
+\begin{verbatim}
+  \begin{figurette}
+        \center\fbox{essai}
+  \caption{Ceci est une figurette}
+                 \label{figurette}
+  \end{figurette}
+\end{verbatim}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\english
+\section{Diacritics \& {\mdseries\tt tabbing}}
+There is no way in a \LaTeX{} \texttt{tabbing} to put diacritics on letters
+as we use them usually. Here is how is printed the {\tt tabbing}
+you can find in the french part:
+
+\begin{tabbing}
+Les TYPES : \=  Les matieres  \= Les genres \kill
+Bidon :     \>   d'huile      \>$A'=B''$\` normal \\
+Caisse :    \>   \`%
+                   a outils     \> rustique \\
+Toile :     \>   \`%
+                   a matelas    \> confort  
+\end{tabbing}
+
+and that would normally be printed as follows:
+
+\begin{tabbing}
+Les TYPES : \=  Les matieres  \= Les genres \kill
+Bidon :     \>   d'huile      \>$A'=B''$\` normal \\
+Caisse :    \>\a`a outils     \> rustique \\
+Toile :     \>\a`a matelas    \> confort  \\
+\end{tabbing}
+
+  \begin{figurette}
+        \center\fbox{essai}\endcenter% rajoute pour plain TeX
+  \caption{Originally a figurette}
+        \label{engfig}
+  \end{figurette}
+\NL{4}
+
+\section{Little figures}
+
+\FP\ offers a special environment called
+\verb|figurette| which allows to put little figures EXACTLY
+where they appear in the text. This is a lack in the present
+versions of \LaTeX{}. In English the environment \verb|figurette|
+is replaced by an environment \verb|figure[h]|; look at figure
+\ref{engfig} we tried to put here without success and we
+typed like this:
+
+\begin{verbatim}
+  \begin{figurette}
+        \center\fbox{essai}
+  \caption{Originally a figurette}
+        \label{engfig}
+  \end{figurette}
+\end{verbatim}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\ifx\drapeaufg\undefined\else
+\section{Composition \protect\linebreak en drapeau}
+\`{A} gauche on trouve une composition justifi\'{e}e standard \LaTeX.
+Dessous, une composition avec l'environnement \texttt{drapeaufg}
+propos\'{e} par l'extension \FP, il s'agit d'une composition
+\emph{en drapeau, au fer} \`{a} gauche. \`{A} droite, il s'agit aussi d'une
+composition \emph{en drapeau, au fer} \`{a} gauche mais cette fois-ci avec
+l'environnement \texttt{drapeaufgIN}, sans coupure de mots, comme cela
+est recommand\'{e} par l'imprimerie nationale.
+
+\subsection{Tests ordinaires}
+\textbf{\large Texte justifi\'{e} de r\'{e}f\'{e}rence}
+
+\medskip
+\def\GOfrench{\noindent{\fboxsep 0pt\fboxrule 0.2pt\fbox{\advance\hsize by -2pt
+      \hbox{\vbox{\noindent
+<< Par ailleurs, les lignes n'occupant pas toute la
+  justification (titres ou l\'{e}gendes le plus souvent) peuvent \^{e}tre
+  \emph{centr\'{e}es} ou se pr\'{e}senter align\'{e}es verticalement
+  par la gauche sur la
+  marge de gauche de la page, ou \XX 
+  verticalement par la droite sur la marge de
+  droite de la page. On dira alors qu'elles sont compos\'{e}es
+\emph{en drapeau, au fer} \`{a} gauche ou \emph{en drapeau, au fer} \`{a} droite.
+Dans ce type de composition, les coupures de mots sont proscrites et les
+rejets \`{a} la ligne devront ob\'{e}ir \`{a} une certaine logique souvent dict\'{e}e par le
+sens. Ainsi on ne s\'{e}parera pas l'article du substantif, le pronom personnel
+sujet de son verbe, l'adjectif num\'{e}ral du nom auquel il se \XX
+rapporte, \etc. >>
+(r\`{e}gles Imprimerie Nationale, p~153)%
+}}\hss}}}
+
+\let\XX\relax
+\GOfrench
+
+\hbox{}
+
+\textbf{\large Drapeau, au fer \`{a} gauche}
+
+\medskip
+\begin{drapeaufg}
+\GOfrench
+\end{drapeaufg}
+
+\newpage
+\enlargethispage{20pt}\hbox{}\smallskip
+
+\hbox{}\smallskip\NL5
+Dans ce dernier cas, des d\'{e}bordements dans la marge droite
+sont possibles ; ils sont \`{a} traiter
+au cas par cas par de simples coupures de lignes plac\'{e}es aux endroits
+recommand\'{e}s par l'imprimerie nationale (selon texte encadr\'{e}). Le 
+dernier texte est ainsi corrig\'{e}.\NL3\vspace*{-2.5pt}
+
+\textbf{\large Drapeau << fg >>, selon IN}
+
+\medskip
+\begin{drapeaufgIN}
+\GOfrench
+\end{drapeaufgIN}
+
+\medskip
+\textbf{\large Drapeau << fg IN >>, corrig\'{e}}
+
+\medskip
+\let\XX\\
+\begin{drapeaufgIN}
+\GOfrench
+\end{drapeaufgIN}
+
+\newpage
+\subsection{Tests en drapeau << fg >>, aux limites}
+Voici deux tests aux limites de la composition 
+\emph{en drapeau, au fer} \`{a} gauche, sur une colonne
+\'{e}troite (2cm) tout d'abord avec l'environnement
+\texttt{drapeaufg} et ensuite avec la recommandation
+de l'imprimerie nationale appliqu\'{e}e \`{a} 
+\FP\ (ou interpr\`{e}t\'{e}e par l'environnement \texttt{drapeaufgIN}).
+
+Les coefficients de laideur (\texttt{badness})
+accept\'{e}s sont \'{e}lev\'{e}s, c'est la raison pour laquelle
+aucun message d'\texttt{underfull hbox} 
+(tout comme celui d'\texttt{overfull}) 
+n'est \'{e}mis dans les deux cas
+ci-dessous.
+
+\bigskip
+
+\def\temp{\noindent{\fboxsep 0pt\fboxrule 0.2pt\fbox{\advance\hsize by -2pt
+      \hbox{\vbox{\noindent
+ instit  instits
+institut instituts
+institution institutions
+institutionnel institutionnels
+institutionnelle institutionnelles 
+institutionnellement
+constitutionnellement
+inconstitutionnellement
+}}\hss}}}
+
+\let\XX\relax
+\parbox{2cm}{%
+\begin{drapeaufg}
+\hsize=2cm
+\temp
+\end{drapeaufg}
+}
+\hspace*{0.5cm}
+\parbox{2cm}{%
+\begin{drapeaufgIN}
+\hsize=2cm
+\temp
+\end{drapeaufgIN}
+}
+
+\newpage
+\subsection{Tests en drapeau << fd >>, aux limites}
+Nous effectuons ici les m\^{e}mes test mais avec
+les environnements \texttt{drapeaufd} (fer \`{a} droite)
+et \texttt{drapeaufdIN} (selon imprimerie nationale). 
+En fait, l'environnement
+\texttt{drapeaufd} est tout simplement
+un \texttt{raggedleft}.
+\NL{9}
+
+\let\XX\relax
+\parbox{2cm}{%
+\begin{drapeaufd}
+%\mbox{Avec \the\rightskip :}
+\hsize=2cm
+\temp
+\end{drapeaufd}
+}
+\hspace*{0.5cm}
+\parbox{2cm}{%
+\begin{drapeaufdIN}
+%\mbox{Avec \the\rightskip :}
+\hsize=2cm
+\temp
+\end{drapeaufdIN}
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\Large
+\let\XX\relax
+\subsection{Test << fd >> classique}
+
+\begin{drapeaufd}
+\GOfrench
+\end{drapeaufd}
+
+\normalsize\bigskip
+
+L'{\oe}il aiguis\'{e} sera troubl\'{e} car
+les deux colonnes ne sont pas align\'{e}es horizontalement ;
+cela est d\^{u} \`{a} la diff\'{e}rence de mat\'{e}riel \`{a} composer, au total, 
+dans chacune des deux colonnes.
+
+\vfill
+
+\newpage
+\Large
+\subsection{Test << fd >> IN}
+\begin{drapeaufdIN}
+\GOfrench
+\end{drapeaufdIN}
+
+\normalsize\bigskip
+
+Quelque soit le corps de la police (dans les limites
+classiques de \LaTeX{}), avec cette largeur de colonne, 
+on n'obtient pas de diff\'{e}rence
+de mise en page entre les deux environnements. Les r\`{e}gles
+de l'imprimerie nationale sont donc plus largement appliqu\'{e}es
+dans ce cas.
+
+\vfill
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\onecolumn
+\newpage\french
+\hbox{}
+\vfill
+\centerline{\Large Page intentionnellement laiss\'{e}e blanche}
+\vfill
+\twocolumn
+
+\fi% on a saute si drapeaufg est inconnu (frencht)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Lettrines}
+\SmsG% lettrine reduite a 1 seule lettre !
+Voici le test des lettrines propos\'{e}es en mode semi-automatique
+avec \FP\ :
+
+\bigskip
+\verb|                  \flettrine{Quoi ?}|
+\flettrine{Quoi ?} {Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s.
+
+<< Ici d\'{e}marre une lettrine dans une citation.
+
+\bigskip
+\lettrine{Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s.
+
+\bigskip
+\flettrine{Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s.
+
+et la citation se termine ici. >>
+
+\bigskip
+\verb|     \font\lettrinefont=cmr17 scaled|\\
+{\font\lettrinefont=cmr17 scaled \magstep5
+\verb|   \magstep5\lettrine[`` {Paris} '']|
+\lettrine[`` {Paris} '']
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s.\par}
+
+\bigskip
+\verb|            \lettrine[<< {Paris} >>]|
+\lettrine[<< {Paris} >>]
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s.
+
+\bigskip
+\verb|             \flettrine[<< {Paris} ]|
+\flettrine[<< {Paris} ] 
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s. >>
+
+\bigskip
+\tthyphenation\noindent
+\vers|\|\vers|font\lettrinefont=cmti12 scaled| \!\vers| \magstep4\lettrine|
+{\em \% v\'{e}rification d'italique.}
+\font\lettrinefont=cmti12 scaled \magstep4\lettrine
+Blalbla {\bf je blablate},  tu blablates,  ils blablatent, b... 
+(ceci est l'exemple m\^{e}me de ce qu'il ne faut pas faire car ainsi
+le mot n'est pas mis en petites capitales). Ceci avait pour but
+de tester une police italique.
+
+\bigskip
+\lettrine{L'absurdit\'{e}} de cette lettrine...
+
+\notthyphenation
+\FmsG
+
+\newpage\english
+
+\section{Illuminated letters}
+
+Look at the French part of this document because, in English,
+these macros have no effect:
+
+\bigskip
+\verb|                  \flettrine{Quoi ?}|
+\flettrine{Quoi ?} {Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s.
+
+<< Ici d\'{e}marre une lettrine dans une citation.
+
+\bigskip
+\lettrine{Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s.
+
+\bigskip
+\flettrine{Paris}
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s.
+
+et la citation se termine ici. >>
+
+\bigskip
+\verb|     \font\lettrinefont=cmr17 scaled|\\
+{\font\lettrinefont=cmr17 scaled \magstep5
+\verb|   \magstep5\lettrine[`` {Paris} '']|
+\lettrine[`` {Paris} '']
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s.\par}
+
+\bigskip
+\verb|            \lettrine[<< {Paris} >>]|
+\lettrine[<< {Paris} >>]
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s.
+
+\bigskip
+\verb|             \flettrine[<< {Paris} ]|
+\flettrine[<< {Paris} ] 
+{sera toujours Paris}.  Ceci est une lettrine obtenue
+gr\^{a}ce au coll\`{e}gue allemand E.~{\sc Scha\-l\"{u}ck} et
+ aux diff\'{e}rents codes qu'il
+m'a donn\'{e}s. >>
+
+\bigskip
+\noindent
+\verb|\font\lettrinefont=cmti12 scaled| \verb| \magstep4\lettrine|
+%{\em \% v\'{e}rification d'italique.}
+\font\lettrinefont=cmti12 scaled \magstep4\lettrine
+Blalbla {\bf je blablate},  tu blablates, ils blablatent, b... 
+(ceci est l'exemple m\^{e}me de ce qu'il ne faut pas faire car ainsi
+le mot n'est pas mis en petites capitales). Ceci avait pour but
+de tester une police italique.
+
+\bigskip
+\lettrine{L'absurdit\'{e}} de cette lettrine...
+
+\onecolumn\newpage%
+\french
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%  ===>>>> Il n'y a plus d'anglais au del\`{a} de cette limite <<<<===
+\def\lastlinein#1{\expandafter\gdef\csname #1\endcsname{\relax}}
+\lastlinein{english}% this is for frencht.tex
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage\french
+\section{Lettrines automatiques ou non}
+
+\bigskip
+\lettrine{THIS IS A TEST} (a non-automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+                   
+\bigskip
+\flettrine{THIS IS A TEST} (a non-automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+\bigskip
+\automaticlettrine
+\lettrine{THIS IS A TEST} (a default automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+\bigskip
+\flettrine{THIS IS A TEST} (a default automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+
+\bigskip
+\def\lettrinefontname{cmr17}
+\lettrine{THIS IS A TEST} (a cmr17 automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+\bigskip
+\flettrine{THIS IS A TEST} (a cmr17 automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+\bigskip
+\lettrine{Que vaut ce test ?} (en automatique)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+\bigskip
+\noautomaticlettrine
+\lettrine{THIS IS A TEST} (a non-automatic one)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+                   
+\bigskip
+\lettrine{Que vaut ce test ?} (non-automatique)
+is a piece of text and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more and some more and some more and some more
+and some more and some more.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\section{\'{E}num\'{e}rations}
+L'espacement des \'{e}num\'{e}rations fran\c{c}aises est
+ profond\'{e}ment modifi\'{e} avec \FP, pour s'en
+convaincre voir le test des listes page \pageref{listes} ou
+l'environnement \texttt{order} ci-apr\`{e}s.
+
+\section{L'environnement << {\mdseries\texttt{order}} >>}
+Un environnement sp\'{e}cifique est propos\'{e}, il s'agit de l'environnement
+\verb|order| pour \LaTeX{} dont voici un petit exemple :
+
+\begin{order}
+\item Bien regarder ;
+\item l'espacement de chaque \'{e}l\'{e}ment est sp\'{e}cial ;
+\item l'espacement vertical est aussi diff\'{e}rent.
+\item A-D-O-P-T-E-Z \ \ L-E !
+\end{order}
+
+Ce prototype correspond bien aux \'{e}num\'{e}rations 
+fran\c{c}aises  (je ne
+parle pas uniquement des marqueurs  -- primo, secundo, \etc. -- 
+mais aussi de la gestion des espaces). En voici un autre exemple
+concret :
+\NL1
+
+Les guillemets entrent aussi en ligne de compte : << Je citerai
+3 cas tr\`{e}s importants :
+\begin{order}
+\item le premier cas ;
+\item le second ;
+\item le dernier.
+\end{order}
+qui sont [...] >>
+\NL1
+
+\`{A} noter que ce m\'{e}canisme de rajout des guillemets en d\'{e}but de 
+chaque \'{e}l\'{e}ment de liste marche aussi avec un environnement 
+comme \texttt{itemize}.
+
+\expandafter\ifx\csname frenchTeXmods\endcsname\relax
+            \space% ce test ne marche pas en LaTeX standard.
+\else
+     \ifx\frenchTeXmods\empty\space% ni en dummy french !
+     \else
+\section{Tests aux limites des guillemets anglais}
+
+V\'{e}rifions qu'il est possible d'activer temporairement
+quelques caract\`{e}res sans perturber le traitement. Exemple :
+
+\begin{verbatim}
+{\catcode`\'=\active\catcode`\'=\active
+ `` Test guillemets anglais ''
+}
+\end{verbatim}
+
+{\catcode`\'=\active\catcode`\'=\active
+ `` Test guillemets anglais ''
+}
+     \fi
+\fi
+
+Un cas bien sp\'{e}cial avait \'{e}t\'{e} rencontr\'{e} avec l'extension \myverb|amstex|
+qui utilisait une r\'{e}f\'{e}rence avec des math\'{e}matiques dans une autre 
+r\'{e}f\'{e}rence, ce qui entrainait une boucle infinie avec \FP. Voici 
+le test en question : 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% this code generates a loop with versions of french < V3,42 %%%%%%
+\makeatletter
+\def\r at ref{{\ref{nulllabel}$'$}}{1}
+\makeatother
+\ref{ref} = 1 $'$ % boucle garantie si < V3,42
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+Autre test aux limites ?
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\section{<< Autres tests >>}
+Nous sommes ici en une colonne.
+
+\bigskip
+Voici un test d'encadr\'{e} contenant le mode \verb|centering| : 
+\begin{center}\fbox{%
+\parbox{6cm}{\begin{center}Information : si vous voulez  me joindre,
+mon t\'{e}l.  : 01 69 35 85 40. Je n'y suis qu'aux horaires de
+bureau.\end{center}}%
+     }\end{center}
+
+Bon ?\footnote{L'objet de cette note de bas de page est 
+de v\'{e}rifier l'espacement des inf\'{e}rieurs et sup\'{e}rieurs,
+\primo en \texttt{\backslash tt} : 
+\texttt{XXXX ===> <=== YYYY} et
+\secundo en {\tt verbatim} : 
+\myverb|french V4 < french V5 > frenchOLD|% 
+.}
+
+\begin{table*}[h]
+\caption{Dactylographie et typographie compar\'{e}es}
+\label{frenchdactylo}
+\vspace*{1cm}
+\huge
+\begin{tabular}{|r|r|}
+\hline
+dactylographie\ \ \ \ \hfill & \ \ \ typographie\ \ \ \hfill\\
+\hline
+    \verb|use \dots or \ldots| \ & use \dots\ or $\ldots{}$\ \\
+        \verb|utilisez...|     \           & utilisez...\  \\
+        \verb|semi-colon;|     \           &  semi-colon;\ \\
+        \verb|point-virgule ;| \           & point-virgule ;\  \\
+        \verb|My god!|         \           & My god!\ \\
+        \verb|Mon dieu !|      \           & Mon Dieu !\ \\
+        \verb|Why not?|        \           & Why not?\ \\
+        \verb|Pourquoi pas ?|  \           & Pourquoi pas ?\ \\
+        \verb|``I say''|       \           & ``I say''\ \\
+        \verb|<< Je dis >>|    \           & << Je dis >>\ \\
+        \verb|He said: Yes|    \           & He said: Yes\ \\
+        \verb|Il dit : non|    \           & Il dit : non\ \\
+        \verb|$1\,234,567$|    \           & $1\,234,567$\ \\
+        \verb|$f(x,\,y)$|      \           & $f(x,\,y)$\ \\
+\hline
+\end{tabular}
+\normalsize
+\end{table*}
+
+\newpage
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifx\itshape\undefined\else% avoid old frencht crash
+\subsection{Test des guillemets dans un \mdseries\texttt{\backslash edef}}
+
+Les guillemets peuvent \^{e}tre appel\'{e}s dans une d\'{e}finition de macro
+telle que \verb|\edef| mais comme les guillemets ne sont pas expansibles
+enti\`{e}rement il a donc fallu arriver \`{a} r\'{e}aliser une d\'{e}finition acceptable.
+
+Ainsi \verb|\edef\testedef{<< essai >>}|
+\edef\testedef{<< essai >>}
+donnera la curieuse d\'{e}finition suivante : \\
+\hbox{}\hfill\texttt{\meaning\testedef} ; \\
+elle reste compl\`{e}tement expansible (dans certaines conditions)
+ou pas du tout (comme ici appel\'{e}e en tt on obtiendra 
+le r\'{e}sultat suivant : \texttt{\testedef}).
+\fi
+
+\subsection{{\mdseries\tt <{}} et {\mdseries\tt >{}} red\'{e}finis}
+
+Mes utilisateurs sont terribles ! Ils veulent le beurre, l'argent du
+beurre et aussi la fermi\`{e}re... S'ils codent 
+\verb9\def\truc<#1|#2>{/#1 OU #2/}9
+ ils veulent pouvoir obtenir
+/Essai OU Erreur/ en saisissant \verb9\truc<Essai|Erreur>9. Faisons
+l'essai r\'{e}el :
+{\def\truc<#1|#2>{/#1 OU #2/} \truc<Essai|Erreur>}.
+
+Encore plus fort : nous voulons avoir une notation de Backus-Naur 
+c'est-\`{a}-dire des \verb|\rangle| et \verb|\langle|. Voici la 
+d\'{e}finition que nous avons entr\'{e}e avant le \verb|\begin{document}| :
+\begin{verbatim}
+{\catcode`\<=\active\catcode`\>=\active%
+\global\def<{\left\langle}\global\def>{\right\rangle}
+}
+\end{verbatim}
+
+Pour tester l'efficacit\'{e} de ces macros il suffit alors de faire
+par exemple :
+\begin{verbatim}
+<< $<assignement>$ >>
+\end{verbatim}
+\`{a} condition que l'option \verb|\frenchguillemets| soit
+active (en maths).
+
+Essayons cela : 
+% en fait il faut reactiver cela maintenant :
+{%
+ \gdef\myinf{\left\langle}%
+ \gdef\mysup{\right\rangle}%
+<< $\frenchguillemets% on a \nofrenchguillemets avec AmSTeX
+   <assignement>$ >>.
+}%
+% Remettre ici pour frenchle
+\global\let\myinf\inferieura% A no-op def
+\global\let\mysup\superieura% for a temporary action
+
+\subsection{\mdseries\texttt{\textbackslash special}}
+L'inclusion d'une commande \verb|\special| est ici test\'{e}e :\\
+{%%%%%%%%%%%% attention : commentaires impossible dans cette partie.
+ \catcode`\%=12
+ \texttt{\backslash special}\verb|{ps:|{\tt %%%
+                                     }\verb| Texte bidon {`<<manuel:C;!?>>'}}|
+ \special{ps:%%% 
+                 Texte bidon {`<<manuel:C;!?>>'}}
+}
+
+\subsection{{\mdseries\texttt{\textbackslash refmark}} dans un tableau}
+
+O\`{u} l'on reparle encore de \verb|\refmark|...
+
+La note \ref{bas} est r\'{e}f\'{e}renc\'{e}e depuis le tableau ci-dessous, tout comme
+les notes du tableau lui-m\^{e}me.
+
+  \begin{table}[htbp]
+    \begin{center}
+      \begin{tabular}{|c|l|}
+        \hline
+        Lettre & Utilisation\\
+        \hline
+        {\tt h} & petit blabla gentil et anodin \refmark{bas}\\
+        {\tt l} & ici reblabla assez moyen\refmark{bas}$^,$\refmark{refnote}\\
+        {\tt L} & autre grand grand grand blabla 
+                  \footnote{La note du tableau << refmark >>.\label{refnote}}\\
+        \hline
+      \end{tabular}
+      \caption{Le titre du tableau.}
+  \end{center}
+\end{table}
+
+En dehors du tableau on peut faire appel\footnote{La note de page.\label{bas}}
+\`{a} une note qui est, par contre, r\'{e}f\'{e}renc\'{e}e dans le tableau. Tout cela
+est r\'{e}alis\'{e} gr\^{a}ce \`{a} l'ordre \verb|\refmark| introduit par l'extension
+\FP.
+
+\subsection{{\mdseries\texttt{\textbackslash nombre}} en argument}
+
+Voici un test simple permettant de valider \verb|\nombre| lorsqu'il
+est en argument d'une macro-instruction :
+
+\begin{verbatim}
+\noindent
+1\,234 un nombre simple !\\
+$*$\\
+\nombre{1 234} un nombre simple !\\
+\nombre{1 234,5} avec une d\'{e}cimale.\\
+\texttt{\nombre{1 234,56} avec fonte tt.}\\
+\emph{\nombre{1 234,567} en mode emphas\'{e}.}\\
+\nombre{1 234,567 8} avec encore une d\'{e}cimale.
+\end{verbatim}
+
+Il faut noter que l'ordre \verb|\nombre| est toujours compos\'{e} en mode
+math\'{e}matique ce qui force l'utilisation des fontes math\'{e}matiques. 
+Tout changement de fonte doit donc \^{e}tre pr\'{e}cis\'{e} de fa\c{c}on ad hoc.
+Par ailleurs, la composition n'est garantie que si l'option
+\verb|\nofiles| n'a pas \'{e}t\'{e} indiqu\'{e}e en d\'{e}but de document.
+Voici ce que ce test donne :
+
+\noindent
+1\,234 un nombre simple !\\
+$*$\\
+\nombre{1 234} un nombre simple !\\
+\nombre{1 234,5} avec une d\'{e}cimale.\\
+\texttt{\nombre{1 234,56} avec fonte tt.}\\
+\emph{\nombre{1 234,567} en mode emphas\'{e}.}\\
+\nombre{1 234,567 8} avec encore une d\'{e}cimale.
+
+\ifx\documentclass\undefined % Still Plain! so no \DeclareFontFamily
+\else%
+\subsection{{\mdseries\texttt{\textbackslash label}} en mode math}
+
+Il s'agit ici de tester la commande \verb|\label| dans un environnement
+\verb|equation| :
+
+\begin{verbatim}
+V\'{e}rifions le num\'{e}ro de l'\'{e}quation \ref{labelequation} ci-dessous :
+\begin{equation}\label{labelequation}
+V_{Lm}=\frac{L}{t_p}
+\end{equation}
+\end{verbatim}
+
+Voici le r\'{e}sultat du test :
+
+V\'{e}rifions le num\'{e}ro de l'\'{e}quation \ref{labelequation} ci-dessous :
+\begin{equation}\label{labelequation}
+V_{Lm}=\frac{L}{t_p}
+\end{equation}
+\fi
+
+\csname TexteComplementaire\endcsname
+
+\subsection{Bibliographie}
+Voyons maintenant la bibliographie.
+Dans \cite{`<<manuel:Gaulle;!?>>'} on trouvera...
+\nocite{`<<merci:Ronan;!?>>'} 
+Par contre  
+\cite[pp.1--3, X \& consorts]{<<blabla>>} 
+est beaucoup plus fourni en exemples et commentaires... Mais dans 
+\cite[p. 25 \S~13 {{\it et seq.}}]{`<<torture:Gaulle;!?>>'} 
+toutes ces informations
+sont plus d\'{e}taill\'{e}es.
+
+Ce qui suit n'est pas un exemple de belle bibliographie, juste une
+v\'{e}rification de bon fonctionnement.
+
+\bibliographystyle{plain}
+
+\begin{thebibliography}{Knuth 99}
+
+\section*{Bibliographie dans le document}
+
+\bibitem[Knuth 99]{<<blabla>>} Le \TeX book ou la  <<  bible >> 
+         des gourous \TeX
+\bibitem{`<<manuel:Gaulle;!?>>'} B. {\sc Gaulle}, {\em 
+         Le r\'{e}sultat d'une << {\em dure} >> journ\'{e}e de travail !}
+\bibitem{`<<merci:Ronan;!?>>'} R. {\sc Keryell}, {\em 
+         Le gentil normalien qui m'a beaucoup aid\'{e} gr\^{a}ce \`{a} sa th\`{e}se...}
+\bibitem{`<<torture:Gaulle;!?>>'} B. {\sc Gaulle}, {\em 
+         Notice d'utilisation du style french}, 1991-1999.
+\bibitem{`<<tortureFP:Gaulle;!?>>'} B. {\sc Gaulle}, {\em 
+         Notice d'utilisation de l'extension \FP\ pour \LaTeX}, 2000-20xx.
+\end{thebibliography}
+
+\ifx\documentclass\undefined % Still Plain! so skip
+\else%
+\section*{\phantom{\normalsize[Knuth 99]}Bibliographie en dehors du document}
+
+Avec certaines extensions de bibliographie il peut s'av\'{e}rer utile
+de prot\'{e}ger les caract\`{e}res actifs \`{a} l'int\'{e}rieur m\^{e}me de la base
+de donn\'{e}es bibliographique.
+
+\bibliography{testbib}
+\fi%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\listoffigures
+\listoftables
+\glossary{Fa\c{c}on cordon bleu}
+\glossaires
+\section*{Glossaire des mots techniques}
+\printglossary[\jobname.glo]
+
+\noindent -- magnification
+
+\noindent -- caract\`{e}res sp\'{e}ciaux : \NL1
+
+{\huge%\frenchmacros n'est pas utile ici
+\begin{tabular}{|c|c|}
+\hline
+Pour imprimer ceci & Saisir cela\\ \hline
+\at                & \verb|\at|\\ \hline
+\texttt{\vert}     & \verb|\texttt{\vert}|\\ \hline
+\tilde             & \verb|\tilde|\\ \hline
+\texttt{\backslash}& \verb|\texttt{\backslash}|\\ \hline
+\chap              & \verb|\chap|\\ \hline
+\degre             & \verb|\degre| \\ \hline
+\degres            & \verb|\degres| \\ \hline
+\normalsize
+1\ier{} \'{e}tage      & \verb|1\ier{} \'{e}tage| \\ \hline
+\normalsize
+(2\ieme\!)         & \verb|(2\ieme\!)| \\ \hline
+\primo             & \verb|\primo|\\ \hline
+\secundo)          & \verb|\secundo)|\\ 
+\hline
+\end{tabular}
+} \NL1
+
+On notera que le caract\`{e}re \verb|\degre| n'est pas le signe typographique
+usuellement utilis\'{e} pour exprimer 
+des degr\'{e}s mais que \verb|\degres| est
+plus conforme \`{a} la tradition. On remarque bien les diff\'{e}rences entre
+\verb|\primo| et \verb|\secundo)| 
+(la forme parenth\'{e}s\'{e}e n'est pas valable
+en {\em belle} typographie fran\c{c}aise).
+\primo... \secundo... \tertio... \quarto...
+\primo)... \secundo)... \tertio)... \quarto)...
+
+\section*{Glossaire argotique}
+Le pied
+
+\printindex
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\part{Ce qui ne marche pas (bien)...}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{Quelques questions \`{a} \'{e}tudier}
+
+Cette partie ne comporte que des << anomalies >> que l'auteur esp\`{e}re
+r\'{e}soudre d'ici quelque temps, 
+gr\^{a}ce \`{a} votre aide... peut \^{e}tre ? 
+
+En fait il ne reste vraiment
+pas grand chose \`{a} r\`{e}gler mais ce sont probablement des
+vieux probl\`{e}mes sacr\'{e}ment compliqu\'{e}s.
+
+\section{Le << 2 points >>}
+Le << 2 points >> a une f\^{a}cheuse tendance 
+\`{a} rester en bas de page lorsqu'il est
+suivi d'un {\tt verbatim}. Il serait souhaitable d'en trouver la raison.
+
+\section{Les guillemets}
+
+Le probl\`{e}me avec \verb|quotation| page \pageref{quotation}.
+
+%Et la perte d'informations
+%dans le cas de  \verb|\noeveryparguillemets| lorsque l'on d\'{e}marre
+%une citation dans un paragraphe d\'{e}j\`{a} commenc\'{e}.
+%
+%Vraiment tr\`{e}s {\em fragile} ce \verb|\noeveryparguillemets| ! (
+
+Voir le cas des notes
+de bas de page ou en marge qui produis(ai ?)ent des d\'{e}sastres
+avec \verb|\noeveryparguillemets|.
+
+\section{Le cas des extensions mal \'{e}crites ...}
+
+... ne se r\'{e}sout souvent que par la modification de l'extension en question.
+Cela a \'{e}t\'{e} le cas de nombreuses extensions depuis le d\'{e}but de \FP\ 
+et j'ai bien peur que cela continue
+\emph{\'{e}ternellement} (et \`{a} propos : qui me succ\`{e}dera ?). 
+
+Certains cas sont insolubles, par exemple : 
+l'extension \verb|here.sty| 
+red\'{e}finissait << au vol >> 
+l'ordre \LaTeX{} \verb|\table| au lieu
+de modifier l'existant ; cela posait un r\'{e}el probl\`{e}me \`{a} \FP\ 
+qui se base sur la modification d'une commande \verb|\table|
+existante. Heureusement ce style p\'{e}rim\'{e} peut \^{e}tre remplac\'{e}
+avantageusement par \verb|float|.
+
+\chapter{Am\'{e}liorations \`{a} envisager}
+
+\section{Index et bibliographie}
+Deux th\`{e}mes qui n'ont que tr\`{e}s peu \'{e}t\'{e} abord\'{e}s.
+
+\section{Abr\'{e}viations}
+Il est f\^{a}cheux d'avoir \`{a} conna\^{\i}tre quelles sont les mots
+abr\'{e}geables pour pouvoir demander leur abr\'{e}viation ; autant les saisir
+correctement d\`{e}s le d\'{e}but...
+
+Faut-il arr\^{e}ter la composition \LaTeX{} quand une abr\'{e}viation 
+n'est pas trouv\'{e}e ? 
+
+Faut-il offrir la possibilit\'{e} de lister toutes les abr\'{e}viations ?
+
+\annexes
+\hsize=18cm
+
+\chapter{Copyright}
+\Mylisting{copyrigh.tex}
+
+\chapter{Le fichier \mdseries{\tt language.dat}}
+\Mylisting{language.dat}
+
+\chapter{Le fichier \mdseries{\tt frabbrev.tex}}
+\Mylisting{frabbrev.tex}
+
+% retire pour mettre french.cmd 98/06
+%\chapter{Le fichier \mdseries{\tt french.dmy}}
+%My\listing{french.dmy}
+
+\chapter{Le fichier \mdseries{\tt french.cmd}}
+\Mylisting{french.cmd}
+
+\chapter{Le fichier \mdseries{\tt french.chk}}
+\Mylisting{french.chk}
+
+\chapter{Un style english (\mdseries{\tt fenglish})}
+\Mylisting{fenglish_doc}
+
+\chapter{Le code de l'extension \FP}
+
+\Mylisting{french_doc}
+
+\newpage
+\hsize=15cm
+\abbreviations\noenglishdoublequotes
+\tableofcontents
+\noabbreviations\englishdoublequotes% remove options set for toc.
+
+\english %=\relax if english text (see \lastlinein)
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Added: trunk/Master/texmf-dist/doc/generic/e-french/test/mya4.sty
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/mya4.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/mya4.sty	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,502 @@
+% mya4.sty for those who don't have any a4.sty on their engine
+\def\fileversion{1.2}
+\def\filedate{26 Feb 90}
+\def\docdate {26 Feb 90}
+%
+%% \CheckSum{134}
+%% \CharacterTable
+%%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%%   Digits        \0\1\2\3\4\5\6\7\8\9
+%%   Exclamation   \!     Double quote  \"     Hash (number) \#
+%%   Dollar        \$     Percent       \%     Ampersand     \&
+%%   Acute accent  \'     Left paren    \(     Right paren   \)
+%%   Asterisk      \*     Plus          \+     Comma         \,
+%%   Minus         \-     Point         \.     Solidus       \/
+%%   Colon         \:     Semicolon     \;     Less than     \<
+%%   Equals        \=     Greater than  \>     Question mark \?
+%%   Commercial at \@     Left bracket  \[     Backslash     \\
+%%   Right bracket \]     Circumflex    \|     Underscore    \_
+%%   Grave accent  \`     Left brace    \{     Vertical bar  \\xBA
+%%   Right brace   \}     Tilde         \%}
+%%
+%
+%\iffalse
+% Style option `A4' to be used with LaTeX V2.09
+%
+% Please report errors to: J.L. Braams
+%                          JL_Braams at pttrnl.nl (Braams at hlsdnl5.bitnet)
+%                      or: N.A.F.M. Poppelier
+%                          Poppelier at hutruu53.bitnet}
+%
+% \changes{v1.0}{10 Jan 90}{Changed the margins for one-sided printing}
+% \changes{v1.1}{23 Jan 90}{Added \WideMargins macros}
+% \changes{v1.2}{26 Feb 90}{Consolidated setting of \marginparwidth}
+%
+%\fi
+%
+% \title{A style option to adapt the standard \LaTeX\ document
+%        styles to A4 paper\thanks{This file
+%        has version number \fileversion --
+%        last revision \filedate, documentation dated \docdate.}}
+%
+% \author{Nico Poppelier}
+% \address{\TeX nique         \\
+%          Washingtondreef 153\\
+%          3564 KD Utrecht}
+% \netaddress{Poppelier at hutruu53.bitnet}
+% \author{Johannes Braams}
+% \address{PTT Research Neher Laboratories\\
+%          P.O. Box 421\\
+%          2260 AK Leidschendam}
+% \netaddress{JL_Braams at pttrnl.nl}
+%
+% \date{Printed \today}
+%
+% \maketitle
+%
+% \begin{abstract}
+%   This article describes a new style option that can be used with the
+%   document styles that are distributed with the \LaTeX\ distributions.
+%   It modifies the page layout to conform to the paper format most
+%   commonly used in Europe, portrait A4.
+% \end{abstract}
+%
+% \section{Introduction}
+%
+% This file is based on the document style options \verb+A4.sty+ and
+% \verb+A4wide.sty+, which can be found in the Rochester style archive.
+% The original style option \verb+A4.sty+ we started from was written by
+% John Pavel, and is dated May 1987. This option only changes the vertical
+% size of the text somewhat, by increasing the number of lines on a page.
+% The style option \verb+A4wide.sty+ was written by Jean-Francois Lamy,
+% and is dated July 1986. This option only increases the width of the text.
+%
+% \section{Goals and design decisions}
+%
+% As many people before us, we found the page layout as implemented in the
+% standard \LaTeX\ document styles too much geared towards the
+% American-sized paper, which is somewhat wider than A4 paper, but also
+% noticeably less high.
+%
+% Our goal was to get a page layout that was suitable for A4 paper, and
+% produced legible texts. There are a number of layout parameters that
+% influence the legibility of a text. A parameter of major importance is
+% the number of words (or characters) on a line. The maximum number of
+% words per line is ten to twelve for optimal legibility, a rule-of-thumb
+% that can be found in typographic literature (we used%\cite{treebus}).
+% This results in a number of characters per line which lies somewhere
+% between sixty and seventy.
+%
+% Another important parameter is the amount of white space surrounding the
+% text. Here we have to distinguish between texts that are printed
+% one-sided and texts that are printed two-sided (back to back). In the
+% first case the margins on odd and even pages should be equal; in the
+% latter case care should be taken that the texts on both sides of the
+% paper overlap.
+% Also a printed document is likely to be bound some way or another, so
+% there should be enough white space in the `inner' margin\footnote{For
+% two-sided printing, this is the left margin on odd-numbered pages and the
+% right margin on even-numbered ones; for one-sided printing, this is
+% always the left margin.} of the text to allow this.
+%
+% There is yet one more thing to take into account when designing a page
+% layout. \LaTeX\ offers the possibility of using marginal notes and if
+% someone wants to use marginal notes, they should of course fit on
+% the paper.
+%
+% So, we have the following goals:
+% \begin{enumerate}
+% \item Choose the text width such that there will be sixty to seventy
+%       characters on a line;
+% \item See to it that in documents that are printed two-sided, the
+%       texts which end up on two sides of one sheet of paper overlap;
+% \item Leave enough white space in the `inner' margin to allow for
+%       the binding of the document;
+% \item Leave enough white space in the `outer' margin
+%       for marginal notes if they are going to be used.
+% \end{enumerate}
+%
+%
+% \section{The implementation}
+%
+% \subsection{The starting point}
+%
+% Thus we set out to modify some of the design decisions in the standard
+% document styles. Because we knew that we were not the first to tackle
+% the problem, we started by having a look at what was already available.
+% We came up with the two options mentioned earlier, which are publicly
+% available. Undoubtedly there will exist many more such files, some of
+% them maybe modifications of those two files.
+%
+% We had a look at the layout produced by both options and were not
+% satisfied with it. For one thing, both of the original options \verb+A4+
+% and \verb+A4wide+ modify only one aspect of the page layout. The first
+% thing to do was to put these two files together. This resulted in a
+% layout which was still unsatisfactory, since for the 10-point and
+% 11-point options lines in the text contained on the average eighty
+% characters or more.
+%
+% \subsection{What else?}
+%
+% \DescribeMacro\textwidth
+% \DescribeMacro\marginparwidth
+% Because the result so far gave us lines that contained too many
+% characters, we decreased the \verb+\textwidth+ to get lines that
+% contain about sixty to seventy characters for all three size options.
+% Still more work had to be done. As it turned out, using our new
+% \verb+A4.sty+ together with the option \verb+twosided+ had a drawback:
+% when the document was printed two-sided the texts on both side of one
+% piece of paper overlapped only partly, which does not look good. We
+% solved this by modifying the width of the margins for two-sided
+% printing. At the same time we modified the \verb+\marginparwidth+ so
+% that if someone uses a marginal note it would completely fit on the
+% paper instead of falling off the page, which obviously would render
+% the note unreadable.
+%
+% \DescribeMacro\WideMargins
+% The decisions described above allow for marginal notes to be printed
+% along with the normal text, but if someone makes heavy use of marginal
+% notes, the resultant layout will not be very satisfactory, because if
+% the full width of the marginal notes is used, they will take up too
+% much space in the `outer' margin. For this case we provide the macro
+% \verb+\WideMargins+. This macro modifies the page-layout parameters in
+% such a way that the width reserved for marginal notes becomes 1.5
+% inches. To achieve this the width of the main body of the text is
+% decreased. This macro is meant to be used only in the preamble of the
+% document.
+%
+%\StopEventually{
+% \section{Conclusion}
+%
+% We have presented a new approach to adapt the page layout of the
+% document styles that are part of the standard \LaTeX\ distributions to
+% the dimensions of A4 paper. The width of marginal notes has been taken
+% into account and a means to get wider marginal notes at the cost of
+% shorter lines in the main body of the text has been provided.
+%
+% \begin{thebibliography}{9}
+%   \bibitem{treebus} K.F. Treebus.
+%   {\em Tekstwijzer, een gids voor het grafisch verwerken van tekst.}
+%   SDU Uitgeverij ('s-Gravenhage, 1988). A Dutch book on layout
+%   design and typography.
+% \end{thebibliography}
+%
+% \makesignature
+% }
+%
+% \subsection{The code}
+%
+% We begin by identifying the version of this file on the terminal and
+% in the transcript file.
+%    \begin{macrocode}
+\typeout{Style option `A4' \fileversion\space<\filedate> (NP and JLB)}
+% \typeout{English documentation\space\space\space<\docdate> (JLB)}
+%    \end{macrocode}
+%
+% \begin{macro}{\topmargin}
+% First, we redefine the \verb+\textheight+ and \verb+\topmargin+. The
+% \verb+\topmargin+ is the distance from the reference point on the page
+% to the top of the page of text. In most cases extra white space is not
+% necessary since one inch of white space at the top of the page suffices.
+%    \begin{macrocode}
+\topmargin 0pt
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\textheight}
+% The dimension parameter \verb+\textheight+ gives the total height of the
+% text, including footnotes and figures, excluding the running head and
+% foot. This height is given as an integral number times the
+% \verb+\baselineskip+, which results in an integral number of lines on a
+% page.
+%
+% \noindent
+% We have to include definitions of all relevant dimension parameters for
+% each of the cases 10-point, 11-point and 12-point. We do this with a
+% case statement:
+%
+%    \begin{macrocode}
+\ifcase \@ptsize
+    \textheight 53\baselineskip
+%    \end{macrocode}
+% \noindent
+% which modifies the height of the text for texts to be produced
+% with the ten-point typeface:
+%    \begin{macrocode}
+\or
+    \textheight 46\baselineskip
+%    \end{macrocode}
+% \noindent
+% the same for eleven point:
+%    \begin{macrocode}
+\or
+    \textheight 42\baselineskip
+%    \end{macrocode}
+% \noindent
+% and for twelve point. Finally we close the \verb+\ifcase+ statement:
+%    \begin{macrocode}
+\fi
+%    \end{macrocode}
+%
+% \noindent
+% The only thing left to be done is to add the \verb+\topskip+ to
+% the \verb+\textheight+.
+% The value of \verb+\topskip+ appears always to be 10pt.
+%
+%    \begin{macrocode}
+\advance\textheight by \topskip
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\textwidth}
+% \begin{macro}{\oddsidemargin}
+% \begin{macro}{\evensidemargin}
+% That was the `vertical part' of the work. Now we have some work to do
+% to get things right horizontally. Again we have to distinguish between
+% the various character sizes because sixty eleven-point characters take
+% up more space than sixty ten-point characters. But there's more to
+% take into account. If documents are printed two-sided, the texts on
+% both sides of the paper should overlap completely. This can be done be
+% assigning appropriate values to \verb+\oddsidemargin+ and
+% \verb+\evensidemargin+, the parameters that define the left margins on
+% odd and even pages respectively.
+%
+% \noindent
+% First we start a case statement to distinguish between the various
+% typeface sizes.
+%    \begin{macrocode}
+\ifcase \@ptsize
+%    \end{macrocode}
+% Then we specify the width of the text.
+%    \begin{macrocode}
+    \textwidth      5.00in
+%    \end{macrocode}
+% \noindent
+% Also specify the width of marginal notes. They must have a
+% reasonable width to be of any use, and this should be the same for
+% either one-sided or two-sided printing.
+%    \begin{macrocode}
+    \marginparwidth 1.00in
+%    \end{macrocode}
+% \noindent
+% Here we need an if statement to test whether the option \verb+twosided+
+% has been specified.
+%    \begin{macrocode}
+  \if at twoside
+%    \end{macrocode}
+% \noindent
+% If it was, assign appropriate values to the margin parameters
+%    \begin{macrocode}
+    \oddsidemargin  0.55in
+    \evensidemargin 0.75in
+  \else
+%    \end{macrocode}
+% \noindent
+% If the option \verb+twosided+ was not used, both margin parameters
+% must have the same value, for texts on consecutive pages have to
+% be put in the same place on the paper.
+%    \begin{macrocode}
+    \oddsidemargin  0.55in
+    \evensidemargin 0.55in
+%    \end{macrocode}
+% \noindent
+% Now we close the if statement.
+%    \begin{macrocode}
+  \fi
+%    \end{macrocode}
+% \noindent
+% We are ready with the modifications for the ten-point typeface size, so
+% now we do something similar for the eleven-point typeface.
+%    \begin{macrocode}
+\or
+    \textwidth      5.20in
+    \marginparwidth 1.00in
+  \if at twoside
+    \oddsidemargin  0.45in
+    \evensidemargin 0.65in
+  \else
+    \oddsidemargin  0.45in
+    \evensidemargin 0.45in
+  \fi
+%    \end{macrocode}
+% \noindent
+% One more time, now for the twelve-point typeface.
+%    \begin{macrocode}
+\or
+    \textwidth      5.70in
+    \marginparwidth 0.80in
+  \if at twoside
+    \oddsidemargin  0.20in
+    \evensidemargin 0.40in
+  \else
+    \oddsidemargin  0.20in
+    \evensidemargin 0.20in
+  \fi
+%    \end{macrocode}
+% \noindent
+% Finally we close the case statement.
+%    \begin{macrocode}
+\fi
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\WideMargins}
+%    This macro is somewhat tricky: it has to find out
+%    which typeface size is used, whether the document should be printed
+%    two-sided, and whether the \verb+\reversemarginpar+ is in effect.
+%    \verb+\reversemarginpar+ makes the marginal notes appear in the
+%    margin on the opposite side of the normal placement.
+%    \begin{macrocode}
+\def\WideMargins{%
+%    \end{macrocode}
+% \noindent
+%    Because for each typeface size the changes to the parameters that
+%    need to be made are similar, the macro \verb+\WideMargins+
+%    uses an internal macro \verb+\@widemargins+.
+%
+% \begin{macro}{\ExtraWidth}
+%    In order to store the amount of extra width needed for the marginal
+%    notes an extra dimension parameter is defined.
+%
+%    \begin{macrocode}
+  \newdimen\ExtraWidth
+%    \end{macrocode}
+% \end{macro}
+%
+% \noindent
+%    First find out about the point size, then call \verb+\@widemargins+ to
+%    modify the margin widths by the amount given in \verb+\ExtraWidth+.
+%    \begin{macrocode}
+  \ifcase \@ptsize
+%    \end{macrocode}
+%
+% \noindent
+%    For both 10-point and 11-point texts the width for marginal notes is
+%    already 1 inch, so we increase it by half an inch. We subtract half an
+%    inch from the text width and modify the margins appropriately.
+%
+%    \begin{macrocode}
+    \ExtraWidth = 0.5in
+    \@widemargins
+  \or
+    \ExtraWidth = 0.5in
+    \@widemargins
+  \or
+%    \end{macrocode}
+%
+% \noindent
+%    For 12-point texts the marginal notes are only 0.8 inch wide, so
+%    now we have to add 0.7 inch to get them 1.5 inch wide.
+%
+%    \begin{macrocode}
+    \ExtraWidth = 0.7in
+    \@widemargins
+%    \end{macrocode}
+%
+% \noindent
+%    This macro should only be called once, during the preamble of a
+%    document, so we \verb+\let+ it be equal to \verb+\relax+ as soon
+%    as the work is done.
+%    \begin{macrocode}
+  \fi\let\WideMargins\relax\let\@widemargins\relax}
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@preamblecmds}
+%    We add \verb+\WideMargins+ to \verb+\@preamblecmds+, which is a
+%    list of commands to be used only in the preamble of a document.
+%
+%    \begin{macrocode}
+{\def\do{\noexpand\do\noexpand}
+ \xdef\@preamblecmds{\@preamblecmds \do\WideMargins}
+}
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@widemargins}
+%    This macro modifies the margin parameters. To do this it uses
+%    the dimension variable \verb+\ExtraWidth+, which was defined by
+%    \verb+\WideMargins+.
+%
+% \noindent
+%    First the \verb+\ExtraWidth+ is subtracted from the \verb+\textwidth+
+%    and added to the \verb+\marginparwidth+.
+%    \begin{macrocode}
+\def\@widemargins{%
+    \global\advance\textwidth by -\ExtraWidth
+    \global\advance\marginparwidth by \ExtraWidth
+%    \end{macrocode}
+%
+% \noindent
+%    Then we modify the margins, but the value of the switch
+%    \verb+\if at twoside+ has to be taken into account. Because
+%    we have to test another switch (\verb+\if at reversemargin+)
+%    we add another level of macros to modify the margin parameters%
+%
+%    \begin{macrocode}
+    \if at twoside
+      \tw at sidedwidemargins
+    \else
+      \@nesidedwidemargins
+    \fi}
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\tw at sidedwidemargins}
+%    Normally the marginal notes are printed in the `outer' margins, so
+%    we have to increase the \verb+\evensidemargin+ to keep the text
+%    balanced on both sides of the paper, but if \verb+\reversemarginpar+
+%    is in effect we have to increase the \verb+\oddsidemargin+ and
+%    decrease the \verb+\evensidemargin+ accordingly.
+%
+%    \begin{macrocode}
+\def\tw at sidedwidemargins{%
+    \if at reversemargin
+%    \end{macrocode}
+%
+% \noindent
+%    Notice that for documents printed two-sided, the
+%    \verb+\evensidemargin+ is wider than the \verb+\oddsidemargin+;
+%    this difference in width is transferred to the other margin.
+%
+%    \begin{macrocode}
+      \@tempdima=\evensidemargin
+      \advance\@tempdima by -\oddsidemargin
+      \advance\oddsidemargin by \ExtraWidth
+      \advance\oddsidemargin by \@tempdima
+      \advance\evensidemargin by -\@tempdima
+    \else
+%    \end{macrocode}
+%
+% \noindent
+%    If the marginal notes go on the normal side of the paper, only the
+%    \verb+\evensidemargin+ has to be increased.
+%
+%    \begin{macrocode}
+      \advance\evensidemargin by \ExtraWidth
+    \fi}
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@nesidedwidemargins}
+%    For documents that are printed one-sided, both margins have the same
+%    width. The default placement for the marginal notes is in the right
+%    margin, so if \verb+\reversemarginpar+ is {\em not\/} in effect the
+%    margin parameters need not be modified. If it is in effect, both the
+%    \verb+\oddsidemargin+ and the \verb+\evensidemargin+ need to be
+%    increased.
+%
+%    \begin{macrocode}
+\def\@nesidedwidemargins{%
+    \if at reversemargin
+      \advance\oddsidemargin by \ExtraWidth
+      \advance\evensidemargin by \ExtraWidth
+    \fi}
+%    \end{macrocode}
+%    \end{macro}
+%
+% \Finale
+\endinput


Property changes on: trunk/Master/texmf-dist/doc/generic/e-french/test/mya4.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/generic/e-french/test/myfigure.eps
===================================================================
--- trunk/Master/texmf-dist/doc/generic/e-french/test/myfigure.eps	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/e-french/test/myfigure.eps	2017-08-21 20:59:38 UTC (rev 45091)
@@ -0,0 +1,12824 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: (ImageMagick)
+%%Title: (myfigure.eps)
+%%CreationDate: (2017-02-04T14:34:31+01:00)
+%%BoundingBox: -0 -0 360 453
+%%HiResBoundingBox: 0 0 360 453
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 1
+%%Pages: 1
+%%EndComments
+
+%%BeginDefaults
+%%EndDefaults
+
+%%BeginProlog
+%
+% Display a color image.  The image is displayed in color on
+% Postscript viewers or printers that support color, otherwise
+% it is displayed as grayscale.
+%
+/DirectClassPacket
+{
+  %
+  % Get a DirectClass packet.
+  %
+  % Parameters:
+  %   red.
+  %   green.
+  %   blue.
+  %   length: number of pixels minus one of this color (optional).
+  %
+  currentfile color_packet readhexstring pop pop
+  compression 0 eq
+  {
+    /number_pixels 3 def
+  }
+  {
+    currentfile byte readhexstring pop 0 get
+    /number_pixels exch 1 add 3 mul def
+  } ifelse
+  0 3 number_pixels 1 sub
+  {
+    pixels exch color_packet putinterval
+  } for
+  pixels 0 number_pixels getinterval
+} bind def
+
+/DirectClassImage
+{
+  %
+  % Display a DirectClass image.
+  %
+  systemdict /colorimage known
+  {
+    columns rows 8
+    [
+      columns 0 0
+      rows neg 0 rows
+    ]
+    { DirectClassPacket } false 3 colorimage
+  }
+  {
+    %
+    % No colorimage operator;  convert to grayscale.
+    %
+    columns rows 8
+    [
+      columns 0 0
+      rows neg 0 rows
+    ]
+    { GrayDirectClassPacket } image
+  } ifelse
+} bind def
+
+/GrayDirectClassPacket
+{
+  %
+  % Get a DirectClass packet;  convert to grayscale.
+  %
+  % Parameters:
+  %   red
+  %   green
+  %   blue
+  %   length: number of pixels minus one of this color (optional).
+  %
+  currentfile color_packet readhexstring pop pop
+  color_packet 0 get 0.299 mul
+  color_packet 1 get 0.587 mul add
+  color_packet 2 get 0.114 mul add
+  cvi
+  /gray_packet exch def
+  compression 0 eq
+  {
+    /number_pixels 1 def
+  }
+  {
+    currentfile byte readhexstring pop 0 get
+    /number_pixels exch 1 add def
+  } ifelse
+  0 1 number_pixels 1 sub
+  {
+    pixels exch gray_packet put
+  } for
+  pixels 0 number_pixels getinterval
+} bind def
+
+/GrayPseudoClassPacket
+{
+  %
+  % Get a PseudoClass packet;  convert to grayscale.
+  %
+  % Parameters:
+  %   index: index into the colormap.
+  %   length: number of pixels minus one of this color (optional).
+  %
+  currentfile byte readhexstring pop 0 get
+  /offset exch 3 mul def
+  /color_packet colormap offset 3 getinterval def
+  color_packet 0 get 0.299 mul
+  color_packet 1 get 0.587 mul add
+  color_packet 2 get 0.114 mul add
+  cvi
+  /gray_packet exch def
+  compression 0 eq
+  {
+    /number_pixels 1 def
+  }
+  {
+    currentfile byte readhexstring pop 0 get
+    /number_pixels exch 1 add def
+  } ifelse
+  0 1 number_pixels 1 sub
+  {
+    pixels exch gray_packet put
+  } for
+  pixels 0 number_pixels getinterval
+} bind def
+
+/PseudoClassPacket
+{
+  %
+  % Get a PseudoClass packet.
+  %
+  % Parameters:
+  %   index: index into the colormap.
+  %   length: number of pixels minus one of this color (optional).
+  %
+  currentfile byte readhexstring pop 0 get
+  /offset exch 3 mul def
+  /color_packet colormap offset 3 getinterval def
+  compression 0 eq
+  {
+    /number_pixels 3 def
+  }
+  {
+    currentfile byte readhexstring pop 0 get
+    /number_pixels exch 1 add 3 mul def
+  } ifelse
+  0 3 number_pixels 1 sub
+  {
+    pixels exch color_packet putinterval
+  } for
+  pixels 0 number_pixels getinterval
+} bind def
+
+/PseudoClassImage
+{
+  %
+  % Display a PseudoClass image.
+  %
+  % Parameters:
+  %   class: 0-PseudoClass or 1-Grayscale.
+  %
+  currentfile buffer readline pop
+  token pop /class exch def pop
+  class 0 gt
+  {
+    currentfile buffer readline pop
+    token pop /depth exch def pop
+    /grays columns 8 add depth sub depth mul 8 idiv string def
+    columns rows depth
+    [
+      columns 0 0
+      rows neg 0 rows
+    ]
+    { currentfile grays readhexstring pop } image
+  }
+  {
+    %
+    % Parameters:
+    %   colors: number of colors in the colormap.
+    %   colormap: red, green, blue color packets.
+    %
+    currentfile buffer readline pop
+    token pop /colors exch def pop
+    /colors colors 3 mul def
+    /colormap colors string def
+    currentfile colormap readhexstring pop pop
+    systemdict /colorimage known
+    {
+      columns rows 8
+      [
+        columns 0 0
+        rows neg 0 rows
+      ]
+      { PseudoClassPacket } false 3 colorimage
+    }
+    {
+      %
+      % No colorimage operator;  convert to grayscale.
+      %
+      columns rows 8
+      [
+        columns 0 0
+        rows neg 0 rows
+      ]
+      { GrayPseudoClassPacket } image
+    } ifelse
+  } ifelse
+} bind def
+
+/DisplayImage
+{
+  %
+  % Display a DirectClass or PseudoClass image.
+  %
+  % Parameters:
+  %   x & y translation.
+  %   x & y scale.
+  %   label pointsize.
+  %   image label.
+  %   image columns & rows.
+  %   class: 0-DirectClass or 1-PseudoClass.
+  %   compression: 0-none or 1-RunlengthEncoded.
+  %   hex color packets.
+  %
+  gsave
+  /buffer 512 string def
+  /byte 1 string def
+  /color_packet 3 string def
+  /pixels 768 string def
+
+  currentfile buffer readline pop
+  token pop /x exch def
+  token pop /y exch def pop
+  x y translate
+  currentfile buffer readline pop
+  token pop /x exch def
+  token pop /y exch def pop
+  currentfile buffer readline pop
+  token pop /pointsize exch def pop
+  /Times-Roman findfont pointsize scalefont setfont
+  x y scale
+  currentfile buffer readline pop
+  token pop /columns exch def
+  token pop /rows exch def pop
+  currentfile buffer readline pop
+  token pop /class exch def pop
+  currentfile buffer readline pop
+  token pop /compression exch def pop
+  class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
+  grestore
+} bind def
+%%EndProlog
+%%Page:  1 1
+%%PageBoundingBox: 0 0 360 453
+userdict begin
+DisplayImage
+0 0
+360 453
+12
+360 453
+0
+0
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE
+FEFEFEFCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEEEEEEEEEEEEEEEEEE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFD
+FDFDFDFDFDFDEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDF5F5F5F5F5F5
+F5F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDF5F5F5F5F5F5F5F5F5FFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FBFBFBFBFBFBFBFBFBD2D2D2D2D2D2D2D2D2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD2D2D2
+D2D2D2D2D2D2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD2D2D2D2D2D2D2D2D2FFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFBFBFBFBFBFBFBFBFBD5D5D5D5D5D5D5D5D5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFB
+D5D5D5D5D5D5D5D5D5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD5D5D5D5D5D5D5D5D5FFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFCFCFCFCFCFCFCFCFC
+F9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BFBFBFBFBFBFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFCFCFCFCFCFCFCFCFCF9F9F9F9F9F9F9F9F9FBFBFB
+FBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9BFBFBFBFBFBFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9F9F9F9F1F1F1F1F1F1F1F1F1E2E2E2
+E2E2E2E2E2E2D3D3D3D3D3D3D3D3D3CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCD5D5D5
+D5D5D5D5D5D5E0E0E0E0E0E0E0E0E0EAEAEAEAEAEAEAEAEAF2F2F2F2F2F2F2F2F2F4F4F4F4F4F4
+F4F4F4F4F4F4E0E0E0E0E0E0E0E0E0C2C2C2C2C2C2C2C2C2C0C0C0C0C0C0C0C0C0D2D2D2D2D2D2
+D2D2D2D2D2D2E6E6E6E6E6E6E6E6E6F5F5F5F5F5F5F5F5F5F9F9F9F9F9F9F9F9F9FBFBFBFBFBFB
+FBFBFBFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCDDDDDDDDDDDDDDDDDD
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFD
+FDFDFDF9F9F9F9F9F9F9F9F9F9F9F9F1F1F1F1F1F1F1F1F1E2E2E2E2E2E2E2E2E2D3D3D3D3D3D3
+D3D3D3CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCD5D5D5D5D5D5D5D5D5E0E0E0E0E0E0
+E0E0E0EAEAEAEAEAEAEAEAEAF2F2F2F2F2F2F2F2F2F4F4F4F4F4F4F4F4F4F4F4F4E0E0E0E0E0E0
+E0E0E0C2C2C2C2C2C2C2C2C2C0C0C0C0C0C0C0C0C0D2D2D2D2D2D2D2D2D2D2D2D2E6E6E6E6E6E6
+E6E6E6F5F5F5F5F5F5F5F5F5F9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCDDDDDDDDDDDDDDDDDDFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9
+F9F9F9F1F1F1F1F1F1F1F1F1E2E2E2E2E2E2E2E2E2D3D3D3D3D3D3D3D3D3CCCCCCCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCD5D5D5D5D5D5D5D5D5E0E0E0E0E0E0E0E0E0EAEAEAEAEAEAEAEAEA
+F2F2F2F2F2F2F2F2F2F4F4F4F4F4F4F4F4F4F4F4F4E0E0E0E0E0E0E0E0E0C2C2C2C2C2C2C2C2C2
+C0C0C0C0C0C0C0C0C0D2D2D2D2D2D2D2D2D2D2D2D2E6E6E6E6E6E6E6E6E6F5F5F5F5F5F5F5F5F5
+F9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFC
+FCFCFCFCFCFCDDDDDDDDDDDDDDDDDDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFAFAFAFAFAFAFAFAFAFAFAFAF3F3F3F3F3F3F3F3F3
+E4E4E4E4E4E4E4E4E4CECECECECECECECECEB7B7B7B7B7B7B7B7B7B7B7B79F9F9F9F9F9F9F9F9F
+858585858585858585707070707070707070696969696969696969696969696969696969696969
+717171717171717171818181818181818181949494949494949494A5A5A5A5A5A5A5A5A5AEAEAE
+AEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E787878787878787878676767676767676767707070
+707070707070707070888888888888888888ABABABABABABABABABC3C3C3C3C3C3C3C3C3D9D9D9
+D9D9D9D9D9D9F7F7F7F7F7F7F7F7F7F7F7F7FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDBDBDBDBDBDB
+DBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEFAFAFAFAFAFAFAFAFAFAFAFAF3F3F3F3F3F3F3F3F3E4E4E4E4E4E4E4E4E4CECECE
+CECECECECECEB7B7B7B7B7B7B7B7B7B7B7B79F9F9F9F9F9F9F9F9F858585858585858585707070
+707070707070696969696969696969696969696969696969696969717171717171717171818181
+818181818181949494949494949494A5A5A5A5A5A5A5A5A5AEAEAEAEAEAEAEAEAEAEAEAE9E9E9E
+9E9E9E9E9E9E787878787878787878676767676767676767707070707070707070707070888888
+888888888888ABABABABABABABABABC3C3C3C3C3C3C3C3C3D9D9D9D9D9D9D9D9D9F7F7F7F7F7F7
+F7F7F7F7F7F7FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFD
+FDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFAFAFAFAFAFAFAFAFAE9E9E9E9E9E9E9E9E9CBCBCBCBCBCB
+CBCBCBCBCBCBA9A9A9A9A9A9A9A9A98B8B8B8B8B8B8B8B8B727272727272727272626262626262
+6262626262625656565656565656564E4E4E4E4E4E4E4E4E484848484848484848464646464646
+4646464545454545454545454545454949494949494949495050505050505050505A5A5A5A5A5A
+5A5A5A5D5D5D5D5D5D5D5D5D6161616161616161616161615E5E5E5E5E5E5E5E5E545454545454
+5454544E4E4E4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C5A5A5A5A5A5A
+5A5A5A6D6D6D6D6D6D6D6D6D8A8A8A8A8A8A8A8A8AC7C7C7C7C7C7C7C7C7C7C7C7F3F3F3F3F3F3
+F3F3F3FDFDFDFDFDFDFDFDFDFBFBFBFBFBFBFBFBFBF5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6
+F6F6F6FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F8F8F8F8F8F8F8F8F8B1B1B1B1B1B1B1B1B1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFAFAFAFAFAFAFAFAFAE9E9E9E9E9E9E9E9E9CBCBCBCBCBCBCBCBCBCBCBCBA9A9A9A9A9A9
+A9A9A98B8B8B8B8B8B8B8B8B727272727272727272626262626262626262626262565656565656
+5656564E4E4E4E4E4E4E4E4E484848484848484848464646464646464646454545454545454545
+4545454949494949494949495050505050505050505A5A5A5A5A5A5A5A5A5D5D5D5D5D5D5D5D5D
+6161616161616161616161615E5E5E5E5E5E5E5E5E5454545454545454544E4E4E4E4E4E4E4E4E
+4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C5A5A5A5A5A5A5A5A5A6D6D6D6D6D6D6D6D6D
+8A8A8A8A8A8A8A8A8AC7C7C7C7C7C7C7C7C7C7C7C7F3F3F3F3F3F3F3F3F3FDFDFDFDFDFDFDFDFD
+FBFBFBFBFBFBFBFBFBF5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6FDFDFDFDFDFDFDFDFD
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8F8F8F8F8F8B1B1B1
+B1B1B1B1B1B1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFAFAFAFAFAFAFAFAFA
+E9E9E9E9E9E9E9E9E9CBCBCBCBCBCBCBCBCBCBCBCBA9A9A9A9A9A9A9A9A98B8B8B8B8B8B8B8B8B
+7272727272727272726262626262626262626262625656565656565656564E4E4E4E4E4E4E4E4E
+484848484848484848464646464646464646454545454545454545454545494949494949494949
+5050505050505050505A5A5A5A5A5A5A5A5A5D5D5D5D5D5D5D5D5D616161616161616161616161
+5E5E5E5E5E5E5E5E5E5454545454545454544E4E4E4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C4C4C4C
+4C4C4C4C4C4C4C4C4C5A5A5A5A5A5A5A5A5A6D6D6D6D6D6D6D6D6D8A8A8A8A8A8A8A8A8AC7C7C7
+C7C7C7C7C7C7C7C7C7F3F3F3F3F3F3F3F3F3FDFDFDFDFDFDFDFDFDFBFBFBFBFBFBFBFBFBF5F5F5
+F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8F8F8F8F8F8B1B1B1B1B1B1B1B1B1FFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFD
+F8F8F8F8F8F8F8F8F8E5E5E5E5E5E5E5E5E5C5C5C5C5C5C5C5C5C59D9D9D9D9D9D9D9D9D777777
+7777777777777777775D5D5D5D5D5D5D5D5D505050505050505050494949494949494949484848
+4848484848484848484747474747474747474545454545454545454141414141414141413F3F3F
+3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3E3E3E404040404040404040444444444444444444474747
+4747474747474848484848484848484949494949494949494949494B4B4B4B4B4B4B4B4B484848
+4848484848484D4D4D4D4D4D4D4D4D505050505050505050505050474747474747474747454545
+454545454545494949494949494949575757575757575757898989898989898989898989D0D0D0
+D0D0D0D0D0D0F1F1F1F1F1F1F1F1F1FCFCFCFCFCFCFCFCFCF9F9F9F9F9F9F9F9F9F3F3F3F3F3F3
+F3F3F3F3F3F3F7F7F7F7F7F7F7F7F7FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF8F8F8F8F8F8F8F8F8B3B3B3B3B3B3B3B3B3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDF8F8F8F8F8F8F8F8F8E5E5E5
+E5E5E5E5E5E5C5C5C5C5C5C5C5C5C59D9D9D9D9D9D9D9D9D7777777777777777777777775D5D5D
+5D5D5D5D5D5D505050505050505050494949494949494949484848484848484848484848474747
+4747474747474545454545454545454141414141414141413F3F3F3F3F3F3F3F3F3E3E3E3E3E3E
+3E3E3E3E3E3E404040404040404040444444444444444444474747474747474747484848484848
+4848484949494949494949494949494B4B4B4B4B4B4B4B4B4848484848484848484D4D4D4D4D4D
+4D4D4D505050505050505050505050474747474747474747454545454545454545494949494949
+494949575757575757575757898989898989898989898989D0D0D0D0D0D0D0D0D0F1F1F1F1F1F1
+F1F1F1FCFCFCFCFCFCFCFCFCF9F9F9F9F9F9F9F9F9F3F3F3F3F3F3F3F3F3F3F3F3F7F7F7F7F7F7
+F7F7F7FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8F8F8F8F8F8
+B3B3B3B3B3B3B3B3B3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF7F7F7F7F7F7
+F7F7F7DFE0DFDFE0DFDFE0DFDFE0DFBCBCBCBCBCBCBCBCBC9292929292929292926E6E6E6E6E6E
+6E6E6E5757575757575757574B4B4B4B4B4B4B4B4B4B4B4B474747474747474747444444444444
+444444414141414141414141424242424242424242424242424242424242424242424242424242
+4242423F3F3F3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3B3B3B3C3C3C3C3C3C
+3C3C3C3F3F3F3F3F3F3F3F3F404040404040404040424242424242424242464646464646464646
+4646464949494949494949494B4B4B4B4B4B4B4B4B4949494949494949494B4B4B4B4B4B4B4B4B
+4B4B4B4B4B4B4B4B4B4B4B4B454545454545454545464646464646464646484848484848484848
+6161616161616161616161619C9C9C9C9C9C9C9C9CD9D9D9D9D9D9D9D9D9F9F9F9F9F9F9F9F9F9
+FEFEFEFEFEFEFEFEFEFBFBFBFBFBFBFBFBFBFBFBFBF2F2F2F2F2F2F2F2F2F9F9F9F9F9F9F9F9F9
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8F8F8F8F8F8B3B3B3B3B3B3B3B3B3FFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF7F7F7F7F7F7F7F7F7DFE0DFDFE0DFDFE0DF
+DFE0DFBCBCBCBCBCBCBCBCBC9292929292929292926E6E6E6E6E6E6E6E6E575757575757575757
+4B4B4B4B4B4B4B4B4B4B4B4B474747474747474747444444444444444444414141414141414141
+4242424242424242424242424242424242424242424242424242424242423F3F3F3F3F3F3F3F3F
+3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3F3F3F3F3F3F3F3F3F
+404040404040404040424242424242424242464646464646464646464646494949494949494949
+4B4B4B4B4B4B4B4B4B4949494949494949494B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B
+454545454545454545464646464646464646484848484848484848616161616161616161616161
+9C9C9C9C9C9C9C9C9CD9D9D9D9D9D9D9D9D9F9F9F9F9F9F9F9F9F9FEFEFEFEFEFEFEFEFEFBFBFB
+FBFBFBFBFBFBFBFBFBF2F2F2F2F2F2F2F2F2F9F9F9F9F9F9F9F9F9FEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF8F8F8F8F8F8F8F8F8B3B3B3B3B3B3B3B3B3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEF7F7F7F7F7F7F7F7F7DFE0DFDFE0DFDFE0DFDFE0DFBCBCBCBCBCBCBCBCBC
+9292929292929292926E6E6E6E6E6E6E6E6E5757575757575757574B4B4B4B4B4B4B4B4B4B4B4B
+474747474747474747444444444444444444414141414141414141424242424242424242424242
+4242424242424242424242424242424242423F3F3F3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C3B3B3B
+3B3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3F3F3F3F3F3F3F3F3F404040404040404040424242
+4242424242424646464646464646464646464949494949494949494B4B4B4B4B4B4B4B4B494949
+4949494949494B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B454545454545454545464646
+4646464646464848484848484848486161616161616161616161619C9C9C9C9C9C9C9C9CD9D9D9
+D9D9D9D9D9D9F9F9F9F9F9F9F9F9F9FEFEFEFEFEFEFEFEFEFBFBFBFBFBFBFBFBFBFBFBFBF2F2F2
+F2F2F2F2F2F2F9F9F9F9F9F9F9F9F9FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8F8F8
+F8F8F8B3B3B3B3B3B3B3B3B3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDC5C5C5
+C5C5C5C5C5C59393939393939393939393936C6C6C6C6C6C6C6C6C5858585858585858584C4C4C
+4C4C4C4C4C4C464646464646464646454545454545454545454545454545454545454545464646
+464646464646454545454545454545464646464646464646464646454545454545454545444444
+4444444444444444444444444444444141414141414141413E3E3E3E3E3E3E3E3E3E3E3E3F3F3F
+3F3F3F3F3F3F4040404040404040403F3F3F3F3F3F3F3F3F414141414141414141444444444444
+4444444444444848484848484848484D4D4D4D4D4D4D4D4D4F4F4F4F4F4F4F4F4F484848484848
+484848484848454545454545454545444444444444444444454545454545454545464646464646
+464646515151515151515151515151707070707070707070B2B2B2B2B2B2B2B2B2EDEDEDEDEDED
+EDEDEDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEF5F5F5F5F5F5F5F5F5F5F5F5F5F5F5
+F5F5F5FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD1D1D1D1D1D1D1D1D1
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDC5C5C5C5C5C5C5C5C5939393939393
+9393939393936C6C6C6C6C6C6C6C6C5858585858585858584C4C4C4C4C4C4C4C4C464646464646
+464646454545454545454545454545454545454545454545464646464646464646454545454545
+454545464646464646464646464646454545454545454545444444444444444444444444444444
+4444444141414141414141413E3E3E3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F404040404040
+4040403F3F3F3F3F3F3F3F3F414141414141414141444444444444444444444444484848484848
+4848484D4D4D4D4D4D4D4D4D4F4F4F4F4F4F4F4F4F484848484848484848484848454545454545
+454545444444444444444444454545454545454545464646464646464646515151515151515151
+515151707070707070707070B2B2B2B2B2B2B2B2B2EDEDEDEDEDEDEDEDEDFDFDFDFDFDFDFDFDFD
+FEFEFEFEFEFEFEFEFEFEFEFEF5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5FEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD1D1D1D1D1D1D1D1D1FFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFD
+FDFDFDEDEDEDEDEDEDEDEDEDC5C5C5C5C5C5C5C5C59393939393939393939393936C6C6C6C6C6C
+6C6C6C5858585858585858584C4C4C4C4C4C4C4C4C464646464646464646454545454545454545
+454545454545454545454545464646464646464646454545454545454545464646464646464646
+464646454545454545454545444444444444444444444444444444444444414141414141414141
+3E3E3E3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F4040404040404040403F3F3F3F3F3F3F3F3F
+4141414141414141414444444444444444444444444848484848484848484D4D4D4D4D4D4D4D4D
+4F4F4F4F4F4F4F4F4F484848484848484848484848454545454545454545444444444444444444
+454545454545454545464646464646464646515151515151515151515151707070707070707070
+B2B2B2B2B2B2B2B2B2EDEDEDEDEDEDEDEDEDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE
+F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFA
+FAFAFAFAFAFAD1D1D1D1D1D1D1D1D1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEFEFEFEF7F7F7F7F7F7F7F7F7DDDDDDDDDDDDDDDDDDABABABABABABABABAB
+7777777777777777775B5B5B5B5B5B5B5B5B5B5B5B5151515151515151514C4C4C4C4C4C4C4C4C
+474747474747474747454545454545454545444444444444444444444444444444444444444444
+424242424242424242424242424242424242424242424242424242424242424242424242424242
+4242424242424242424141414141414141414040404040404040403F3F3F3F3F3F3F3F3F3F3F3F
+4242424242424242424545454545454545454141414141414141413E3E3E3E3E3E3E3E3E3F3F3F
+3F3F3F3F3F3F3F3F3F4242424242424242424B4B4B4B4B4B4B4B4B515151515151515151515151
+515151515151515151474747474747474747414141414141414141424242424242424242484848
+4848484848485050505050505050505050505A5A5A5A5A5A5A5A5A818181818181818181CECECE
+CECECECECECEF3F3F3F3F3F3F3F3F3FDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9F0F0F0
+F0F0F0F0F0F0FCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7ABABABABABAB
+ABABABFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE
+F7F7F7F7F7F7F7F7F7DDDDDDDDDDDDDDDDDDABABABABABABABABAB7777777777777777775B5B5B
+5B5B5B5B5B5B5B5B5B5151515151515151514C4C4C4C4C4C4C4C4C474747474747474747454545
+454545454545444444444444444444444444444444444444444444424242424242424242424242
+424242424242424242424242424242424242424242424242424242424242424242424242414141
+4141414141414040404040404040403F3F3F3F3F3F3F3F3F3F3F3F424242424242424242454545
+4545454545454141414141414141413E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F3F3F3F424242
+4242424242424B4B4B4B4B4B4B4B4B515151515151515151515151515151515151515151474747
+474747474747414141414141414141424242424242424242484848484848484848505050505050
+5050505050505A5A5A5A5A5A5A5A5A818181818181818181CECECECECECECECECEF3F3F3F3F3F3
+F3F3F3FDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9F0F0F0F0F0F0F0F0F0FCFCFCFCFCFC
+FCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7ABABABABABABABABABFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEFCFCFCFCFCFCFCFCFCEDEDEDEDEDEDEDEDEDEDEDEDC6C6C6C6C6C6C6C6C6909090
+9090909090906363636363636363634E4E4E4E4E4E4E4E4E484848484848484848484848464646
+464646464646444444444444444444414141414141414141414141414141414141424242424242
+4242424242424040404040404040403E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C
+3C3C3C3C3C3C3939393939393939393939393939393939393939393939393939393A3A3A3A3A3A
+3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3E3E3E3E3E3E3E3E3E414141414141414141454545454545
+4545454040404040404040403B3B3B3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3F3F3F3F3F3F
+3F3F3F4848484848484848485151515151515151515151514D4D4D4D4D4D4D4D4D454545454545
+4545454242424242424242424848484848484848484E4E4E4E4E4E4E4E4E4E4E4E515151515151
+5151515F605F5F605F5F605F9D9D9D9D9D9D9D9D9DD9D9D9D9D9D9D9D9D9F4F4F4F4F4F4F4F4F4
+F4F4F4FBFBFBFBFBFBFBFBFBEFEFEFEFEFEFEFEFEFF9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F7F7F7F7F7F7F7F7F7A9A9A9A9A9A9A9A9A9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFCFCFCFCFCFC
+FCFCFCEDEDEDEDEDEDEDEDEDEDEDEDC6C6C6C6C6C6C6C6C6909090909090909090636363636363
+6363634E4E4E4E4E4E4E4E4E484848484848484848484848464646464646464646444444444444
+444444414141414141414141414141414141414141424242424242424242424242404040404040
+4040403E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C3C3C3C393939393939
+3939393939393939393939393939393939393939393A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A
+3A3A3A3E3E3E3E3E3E3E3E3E414141414141414141454545454545454545404040404040404040
+3B3B3B3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3F3F3F3F3F3F3F3F3F484848484848484848
+5151515151515151515151514D4D4D4D4D4D4D4D4D454545454545454545424242424242424242
+4848484848484848484E4E4E4E4E4E4E4E4E4E4E4E5151515151515151515F605F5F605F5F605F
+9D9D9D9D9D9D9D9D9DD9D9D9D9D9D9D9D9D9F4F4F4F4F4F4F4F4F4F4F4F4FBFBFBFBFBFBFBFBFB
+EFEFEFEFEFEFEFEFEFF9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7A9A9A9
+A9A9A9A9A9A9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFCFCFCFCFCFCFCFCFCEDEDEDEDEDEDEDEDED
+EDEDEDC6C6C6C6C6C6C6C6C69090909090909090906363636363636363634E4E4E4E4E4E4E4E4E
+484848484848484848484848464646464646464646444444444444444444414141414141414141
+4141414141414141414242424242424242424242424040404040404040403E3E3E3E3E3E3E3E3E
+3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C3C3C3C393939393939393939393939393939393939
+3939393939393939393A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3E3E3E3E3E3E3E3E3E
+4141414141414141414545454545454545454040404040404040403B3B3B3B3B3B3B3B3B3B3B3B
+3A3A3A3A3A3A3A3A3A3F3F3F3F3F3F3F3F3F484848484848484848515151515151515151515151
+4D4D4D4D4D4D4D4D4D4545454545454545454242424242424242424848484848484848484E4E4E
+4E4E4E4E4E4E4E4E4E5151515151515151515F605F5F605F5F605F9D9D9D9D9D9D9D9D9DD9D9D9
+D9D9D9D9D9D9F4F4F4F4F4F4F4F4F4F4F4F4FBFBFBFBFBFBFBFBFBEFEFEFEFEFEFEFEFEFF9F9F9
+F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7A9A9A9A9A9A9A9A9A9FFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE
+F7F7F7F7F7F7F7F7F7DADADADADADADADADAA9A9A9A9A9A9A9A9A9A9A9A9787878787878787878
+565656565656565656474747474747474747444444444444444444444444444444444444444444
+4242424242424242423F3F3F3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E404040
+4040404040404040403C3C3C3C3C3C3C3C3C393939393939393939373737373737373737343434
+3434343434343434343232323232323232323434343434343434343737373737373737373A3A3A
+3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B404040
+4040404040404545454545454545454242424242424242424242423B3B3B3B3B3B3B3B3B393939
+3939393939393E3E3E3E3E3E3E3E3E4B4B4B4B4B4B4B4B4B4B4B4B4F4F4F4F4F4F4F4F4F484848
+4848484848484444444444444444444141414141414141414B4B4B4B4B4B4B4B4B4B4B4B4E4E4E
+4E4E4E4E4E4E5151515151515151516F6F6F6F6F6F6F6F6FACACACACACACACACACDCDCDCDCDCDC
+DCDCDCDCDCDCF1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1FBFBFBFBFBFBFBFBFBFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9CBCBCBCBCBCBCBCBCBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF7F7F7F7F7F7F7F7F7DADADA
+DADADADADADAA9A9A9A9A9A9A9A9A9A9A9A9787878787878787878565656565656565656474747
+4747474747474444444444444444444444444444444444444444444242424242424242423F3F3F
+3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E4040404040404040404040403C3C3C
+3C3C3C3C3C3C393939393939393939373737373737373737343434343434343434343434323232
+3232323232323434343434343434343737373737373737373A3A3A3A3A3A3A3A3A3A3A3A3A3A3A
+3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B404040404040404040454545454545
+4545454242424242424242424242423B3B3B3B3B3B3B3B3B3939393939393939393E3E3E3E3E3E
+3E3E3E4B4B4B4B4B4B4B4B4B4B4B4B4F4F4F4F4F4F4F4F4F484848484848484848444444444444
+4444444141414141414141414B4B4B4B4B4B4B4B4B4B4B4B4E4E4E4E4E4E4E4E4E515151515151
+5151516F6F6F6F6F6F6F6F6FACACACACACACACACACDCDCDCDCDCDCDCDCDCDCDCDCF1F1F1F1F1F1
+F1F1F1F1F1F1F1F1F1F1F1F1FBFBFBFBFBFBFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+CBCBCBCBCBCBCBCBCBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFD
+FDFDFDFDFDFDF0F0F0F0F0F0F0F0F0CACACACACACACACACA909090909090909090626262626262
+6262626262624B4B4B4B4B4B4B4B4B454545454545454545424242424242424242424242424242
+4242424040404040404040404040403C3C3C3C3C3C3C3C3C393939393939393939353535353535
+353535363636363636363636353535353535353535353535323232323232323232303030303030
+303030313131313131313131323232323232323232323232343434343434343434353535353535
+353535363636363636363636363636363636363636363636363636363636363636393939393939
+3939393939393939393939393939393939393939393F3F3F3F3F3F3F3F3F484848484848484848
+4848484545454545454545453C3C3C3C3C3C3C3C3C3939393939393939393F3F3F3F3F3F3F3F3F
+3F3F3F4949494949494949494C4C4C4C4C4C4C4C4C4747474747474747473F3F3F3F3F3F3F3F3F
+4141414141414141414141414B4B4B4B4B4B4B4B4B484848484848484848525252525252525252
+818181818181818181BCBCBCBCBCBCBCBCBCBCBCBCE2E2E2E2E2E2E2E2E2F1F1F1F1F1F1F1F1F1
+FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1FFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDFDFDFDF0F0F0F0F0F0
+F0F0F0CACACACACACACACACA9090909090909090906262626262626262626262624B4B4B4B4B4B
+4B4B4B454545454545454545424242424242424242424242424242424242404040404040404040
+4040403C3C3C3C3C3C3C3C3C393939393939393939353535353535353535363636363636363636
+353535353535353535353535323232323232323232303030303030303030313131313131313131
+323232323232323232323232343434343434343434353535353535353535363636363636363636
+363636363636363636363636363636363636363636393939393939393939393939393939393939
+3939393939393939393F3F3F3F3F3F3F3F3F484848484848484848484848454545454545454545
+3C3C3C3C3C3C3C3C3C3939393939393939393F3F3F3F3F3F3F3F3F3F3F3F494949494949494949
+4C4C4C4C4C4C4C4C4C4747474747474747473F3F3F3F3F3F3F3F3F414141414141414141414141
+4B4B4B4B4B4B4B4B4B484848484848484848525252525252525252818181818181818181BCBCBC
+BCBCBCBCBCBCBCBCBCE2E2E2E2E2E2E2E2E2F1F1F1F1F1F1F1F1F1FDFDFDFDFDFDFDFDFDFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDFDFDFDF0F0F0F0F0F0F0F0F0CACACACACACACACACA
+9090909090909090906262626262626262626262624B4B4B4B4B4B4B4B4B454545454545454545
+4242424242424242424242424242424242424040404040404040404040403C3C3C3C3C3C3C3C3C
+393939393939393939353535353535353535363636363636363636353535353535353535353535
+323232323232323232303030303030303030313131313131313131323232323232323232323232
+343434343434343434353535353535353535363636363636363636363636363636363636363636
+3636363636363636363939393939393939393939393939393939393939393939393939393F3F3F
+3F3F3F3F3F3F4848484848484848484848484545454545454545453C3C3C3C3C3C3C3C3C393939
+3939393939393F3F3F3F3F3F3F3F3F3F3F3F4949494949494949494C4C4C4C4C4C4C4C4C474747
+4747474747473F3F3F3F3F3F3F3F3F4141414141414141414141414B4B4B4B4B4B4B4B4B484848
+484848484848525252525252525252818181818181818181BCBCBCBCBCBCBCBCBCBCBCBCE2E2E2
+E2E2E2E2E2E2F1F1F1F1F1F1F1F1F1FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9C1C1C1C1C1C1C1C1C1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEAEAEA
+EAEAEAEAEAEAEAEAEAB8B8B8B8B8B8B8B8B87C7C7C7C7C7C7C7C7C565656565656565656454545
+4545454545454545454040404040404040404141414141414141413F3F3F3F3F3F3F3F3F3C3C3C
+3C3C3C3C3C3C393939393939393939393939363636363636363636353535353535353535343434
+343434343434363636363636363636353535353535353535353535343434343434343434343434
+343434343434343434343434343434363636363636363636363636363636363636363636323232
+3232323232322F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131313131343434
+3434343434343A3A3A3A3A3A3A3A3A3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C404040404040
+4040404040404242424242424242423C3C3C3C3C3C3C3C3C393939393939393939363636363636
+3636363636363F3F3F3F3F3F3F3F3F4848484848484848484747474747474747473F3F3F3F3F3F
+3F3F3F3B3B3B3B3B3B3B3B3B3B3B3B444444444444444444464646464646464646474747474747
+474747686868686868686868959595959595959595959595CACACACACACACACACADFE0DFDFE0DF
+DFE0DFF5F5F5F5F5F5F5F5F5FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C8C8C8C8C8C8C8C8C8
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEAEAEAEAEAEAEAEAEAEAEAEAB8B8B8
+B8B8B8B8B8B87C7C7C7C7C7C7C7C7C565656565656565656454545454545454545454545404040
+4040404040404141414141414141413F3F3F3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C393939393939
+393939393939363636363636363636353535353535353535343434343434343434363636363636
+363636353535353535353535353535343434343434343434343434343434343434343434343434
+3434343636363636363636363636363636363636363636363232323232323232322F2F2F2F2F2F
+2F2F2F2F2F2F2F2F2F2F2F2F3131313131313131313131313434343434343434343A3A3A3A3A3A
+3A3A3A3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C404040404040404040404040424242424242
+4242423C3C3C3C3C3C3C3C3C3939393939393939393636363636363636363636363F3F3F3F3F3F
+3F3F3F4848484848484848484747474747474747473F3F3F3F3F3F3F3F3F3B3B3B3B3B3B3B3B3B
+3B3B3B444444444444444444464646464646464646474747474747474747686868686868686868
+959595959595959595959595CACACACACACACACACADFE0DFDFE0DFDFE0DFF5F5F5F5F5F5F5F5F5
+FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C8C8C8C8C8C8C8C8C8FFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFDFDFDFDFDFDFDFDFDEAEAEAEAEAEAEAEAEAEAEAEAB8B8B8B8B8B8B8B8B87C7C7C7C7C7C
+7C7C7C565656565656565656454545454545454545454545404040404040404040414141414141
+4141413F3F3F3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C393939393939393939393939363636363636
+363636353535353535353535343434343434343434363636363636363636353535353535353535
+353535343434343434343434343434343434343434343434343434343434363636363636363636
+3636363636363636363636363232323232323232322F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F
+3131313131313131313131313434343434343434343A3A3A3A3A3A3A3A3A3E3E3E3E3E3E3E3E3E
+3C3C3C3C3C3C3C3C3C4040404040404040404040404242424242424242423C3C3C3C3C3C3C3C3C
+3939393939393939393636363636363636363636363F3F3F3F3F3F3F3F3F484848484848484848
+4747474747474747473F3F3F3F3F3F3F3F3F3B3B3B3B3B3B3B3B3B3B3B3B444444444444444444
+464646464646464646474747474747474747686868686868686868959595959595959595959595
+CACACACACACACACACADFE0DFDFE0DFDFE0DFF5F5F5F5F5F5F5F5F5FEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9C8C8C8C8C8C8C8C8C8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEAEAEAEAEAEAEAEAEA
+B5B5B5B5B5B5B5B5B5B5B5B5777777777777777777505050505050505050444444444444444444
+4242424242424242424242424242424242424242424040404040404040403C3C3C3C3C3C3C3C3C
+3939393939393939393737373737373737373737373737373737373737373A3A3A3A3A3A3A3A3A
+3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C
+3B3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B
+373737373737373737343434343434343434323232323232323232343434343434343434343434
+3636363636363636363B3B3B3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F
+3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F4040404040404040403E3E3E3E3E3E3E3E3E373737
+373737373737373737363636363636363636404040404040404040474747474747474747424242
+4242424242423939393939393939393939393C3C3C3C3C3C3C3C3C414141414141414141424242
+424242424242505050505050505050717171717171717171717171959595959595959595B0B0B0
+B0B0B0B0B0B0CECECECECECECECECEEDEDEDEDEDEDEDEDEDEDEDEDF9F9F9F9F9F9F9F9F9FDFDFD
+FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD1D1D1D1D1D1
+D1D1D1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEAEAEAEAEAEAEAEAEAB5B5B5B5B5B5B5B5B5B5B5B5
+777777777777777777505050505050505050444444444444444444424242424242424242424242
+4242424242424242424040404040404040403C3C3C3C3C3C3C3C3C393939393939393939373737
+3737373737373737373737373737373737373A3A3A3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B3E3E3E
+3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3C3C3C
+3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B373737373737373737343434
+3434343434343232323232323232323434343434343434343434343636363636363636363B3B3B
+3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F
+3F3F3F3F3F3F4040404040404040403E3E3E3E3E3E3E3E3E373737373737373737373737363636
+363636363636404040404040404040474747474747474747424242424242424242393939393939
+3939393939393C3C3C3C3C3C3C3C3C414141414141414141424242424242424242505050505050
+505050717171717171717171717171959595959595959595B0B0B0B0B0B0B0B0B0CECECECECECE
+CECECEEDEDEDEDEDEDEDEDEDEDEDEDF9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD1D1D1D1D1D1D1D1D1FFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF3F3F3
+F3F3F3F3F3F3BDBDBDBDBDBDBDBDBD7D7D7D7D7D7D7D7D7D7D7D7D565656565656565656464646
+4646464646464242424242424242424242424242424242424242424242424242424242423F3F3F
+3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3C3C3C
+3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B
+3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F
+3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3B3B3B3B3B3B
+3B3B3B3E3E3E3E3E3E3E3E3E3E3E3E4040404040404040404141414141414141413E3E3E3E3E3E
+3E3E3E3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3C3C3C414141414141414141444444444444
+4444444242424242424242423A3A3A3A3A3A3A3A3A3A3A3A3434343434343434343A3A3A3A3A3A
+3A3A3A4242424242424242424444444444444444443A3A3A3A3A3A3A3A3A3A3A3A373737373737
+3737373B3B3B3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F414141414141414141505050505050505050
+5050506666666666666666667979797979797979798F8F8F8F8F8F8F8F8FB6B6B6B6B6B6B6B6B6
+B6B6B6D4D4D4D4D4D4D4D4D4E5E5E5E5E5E5E5E5E5F5F5F5F5F5F5F5F5F5FDFDFDFDFDFDFDFDFD
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FBFBFBFBFBFBFBFBFBDBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF3F3F3F3F3F3F3F3F3BDBDBDBDBDBD
+BDBDBD7D7D7D7D7D7D7D7D7D7D7D7D565656565656565656464646464646464646424242424242
+4242424242424242424242424242424242424242424242423F3F3F3F3F3F3F3F3F3E3E3E3E3E3E
+3E3E3E3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E
+3E3E3E3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E
+3E3E3E3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F3F3F3F3C3C3C3C3C3C
+3C3C3C3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E
+3E3E3E4040404040404040404141414141414141413E3E3E3E3E3E3E3E3E3A3A3A3A3A3A3A3A3A
+3C3C3C3C3C3C3C3C3C3C3C3C414141414141414141444444444444444444424242424242424242
+3A3A3A3A3A3A3A3A3A3A3A3A3434343434343434343A3A3A3A3A3A3A3A3A424242424242424242
+4444444444444444443A3A3A3A3A3A3A3A3A3A3A3A3737373737373737373B3B3B3B3B3B3B3B3B
+3F3F3F3F3F3F3F3F3F414141414141414141505050505050505050505050666666666666666666
+7979797979797979798F8F8F8F8F8F8F8F8FB6B6B6B6B6B6B6B6B6B6B6B6D4D4D4D4D4D4D4D4D4
+E5E5E5E5E5E5E5E5E5F5F5F5F5F5F5F5F5F5FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDBDBDB
+DBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFEFEFEFEFEFEFEFEFEF3F3F3F3F3F3F3F3F3BDBDBDBDBDBDBDBDBD7D7D7D7D7D7D7D7D7D
+7D7D7D565656565656565656464646464646464646424242424242424242424242424242424242
+4242424242424242424242423F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B
+3B3B3B3B3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C
+3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C
+3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B
+3A3A3A3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3E3E3E404040404040404040
+4141414141414141413E3E3E3E3E3E3E3E3E3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3C3C3C
+4141414141414141414444444444444444444242424242424242423A3A3A3A3A3A3A3A3A3A3A3A
+3434343434343434343A3A3A3A3A3A3A3A3A4242424242424242424444444444444444443A3A3A
+3A3A3A3A3A3A3A3A3A3737373737373737373B3B3B3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F414141
+4141414141415050505050505050505050506666666666666666667979797979797979798F8F8F
+8F8F8F8F8F8FB6B6B6B6B6B6B6B6B6B6B6B6D4D4D4D4D4D4D4D4D4E5E5E5E5E5E5E5E5E5F5F5F5
+F5F5F5F5F5F5FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDBDBDBDBDBDBDBDBDBFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+D2D2D2D2D2D2D2D2D28A8A8A8A8A8A8A8A8A5D5D5D5D5D5D5D5D5D5D5D5D4C4C4C4C4C4C4C4C4C
+4545454545454545454141414141414141413E3E3E3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C
+3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3939393939393939393A3A3A3A3A3A3A3A3A3A3A3A
+3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B3939393939393939393A3A3A
+3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3F3F3F
+3F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3B3B3B
+3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3E3E3E404040404040404040414141414141414141414141
+4141414141413B3B3B3B3B3B3B3B3B3636363636363636363636363B3B3B3B3B3B3B3B3B424242
+424242424242494949494949494949424242424242424242424242353535353535353535393939
+3939393939393C3C3C3C3C3C3C3C3C4141414141414141414040404040404040404040403A3A3A
+3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C424242424242
+4242424242424F4F4F4F4F4F4F4F4F5D5D5D5D5D5D5D5D5D6C6C6C6C6C6C6C6C6C878787878787
+878787878787A8A8A8A8A8A8A8A8A8C5C5C5C5C5C5C5C5C5DBDBDBDBDBDBDBDBDBF0F0F0F0F0F0
+F0F0F0FDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9CBCBCBCBCBCBCBCBCBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9D2D2D2D2D2D2D2D2D28A8A8A
+8A8A8A8A8A8A5D5D5D5D5D5D5D5D5D5D5D5D4C4C4C4C4C4C4C4C4C454545454545454545414141
+4141414141413E3E3E3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3A3A3A
+3A3A3A3A3A3A3939393939393939393A3A3A3A3A3A3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B3E3E3E
+3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B3939393939393939393A3A3A3A3A3A3A3A3A3A3A3A3C3C3C
+3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F3F3F3F3E3E3E
+3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E
+3E3E3E3E3E3E4040404040404040404141414141414141414141414141414141413B3B3B3B3B3B
+3B3B3B3636363636363636363636363B3B3B3B3B3B3B3B3B424242424242424242494949494949
+4949494242424242424242424242423535353535353535353939393939393939393C3C3C3C3C3C
+3C3C3C4141414141414141414040404040404040404040403A3A3A3A3A3A3A3A3A3A3A3A3A3A3A
+3A3A3A3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C4242424242424242424242424F4F4F4F4F4F
+4F4F4F5D5D5D5D5D5D5D5D5D6C6C6C6C6C6C6C6C6C878787878787878787878787A8A8A8A8A8A8
+A8A8A8C5C5C5C5C5C5C5C5C5DBDBDBDBDBDBDBDBDBF0F0F0F0F0F0F0F0F0FDFDFDFDFDFDFDFDFD
+FDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+CBCBCBCBCBCBCBCBCBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEE7E7E7E7E7E7E7E7E79F9F9F9F9F9F9F9F9F6565656565656565654E4E4E4E4E4E
+4E4E4E4E4E4E454545454545454545404040404040404040393939393939393939343434343434
+343434343434313131313131313131313131313131313131313131313131313131303030303030
+303030303030303030303030303030343434343434343434373737373737373737393939393939
+393939373737373737373737373737373737373737373737373737373737373737353535353535
+3535353636363636363636363737373737373737373737373939393939393939393A3A3A3A3A3A
+3A3A3A3939393939393939393939393939393939393A3A3A3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C
+3C3C3C3F3F3F3F3F3F3F3F3F4141414141414141414242424242424242423E3E3E3E3E3E3E3E3E
+3E3E3E3939393939393939393A3A3A3A3A3A3A3A3A444444444444444444484848484848484848
+4848483C3C3C3C3C3C3C3C3C3636363636363636363A3A3A3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B
+3E3E3E3E3E3E3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A373737373737373737
+3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3E3E3E4242424242424242424C4C4C4C4C4C4C4C4C
+5858585858585858586868686868686868686868687B7B7B7B7B7B7B7B7B9D9D9D9D9D9D9D9D9D
+CBCBCBCBCBCBCBCBCBE4E4E4E4E4E4E4E4E4F5F5F5F5F5F5F5F5F5F5F5F5FDFDFDFDFDFDFDFDFD
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD8D8D8D8D8D8D8D8D8FFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEE7E7E7E7E7E7
+E7E7E79F9F9F9F9F9F9F9F9F6565656565656565654E4E4E4E4E4E4E4E4E4E4E4E454545454545
+454545404040404040404040393939393939393939343434343434343434343434313131313131
+313131313131313131313131313131313131313131303030303030303030303030303030303030
+303030343434343434343434373737373737373737393939393939393939373737373737373737
+373737373737373737373737373737373737373737353535353535353535363636363636363636
+3737373737373737373737373939393939393939393A3A3A3A3A3A3A3A3A393939393939393939
+3939393939393939393A3A3A3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3F3F3F3F3F3F3F3F3F
+4141414141414141414242424242424242423E3E3E3E3E3E3E3E3E3E3E3E393939393939393939
+3A3A3A3A3A3A3A3A3A4444444444444444444848484848484848484848483C3C3C3C3C3C3C3C3C
+3636363636363636363A3A3A3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3E3E3E
+3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3737373737373737373B3B3B3B3B3B3B3B3B3E3E3E
+3E3E3E3E3E3E3E3E3E4242424242424242424C4C4C4C4C4C4C4C4C585858585858585858686868
+6868686868686868687B7B7B7B7B7B7B7B7B9D9D9D9D9D9D9D9D9DCBCBCBCBCBCBCBCBCBE4E4E4
+E4E4E4E4E4E4F5F5F5F5F5F5F5F5F5F5F5F5FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD8D8D8D8D8D8D8D8D8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEE7E7E7E7E7E7E7E7E79F9F9F9F9F9F9F9F9F
+6565656565656565654E4E4E4E4E4E4E4E4E4E4E4E454545454545454545404040404040404040
+393939393939393939343434343434343434343434313131313131313131313131313131313131
+313131313131313131303030303030303030303030303030303030303030343434343434343434
+373737373737373737393939393939393939373737373737373737373737373737373737373737
+373737373737373737353535353535353535363636363636363636373737373737373737373737
+3939393939393939393A3A3A3A3A3A3A3A3A3939393939393939393939393939393939393A3A3A
+3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3F3F3F3F3F3F3F3F3F414141414141414141424242
+4242424242423E3E3E3E3E3E3E3E3E3E3E3E3939393939393939393A3A3A3A3A3A3A3A3A444444
+4444444444444848484848484848484848483C3C3C3C3C3C3C3C3C3636363636363636363A3A3A
+3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B3A3A3A
+3A3A3A3A3A3A3737373737373737373B3B3B3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3E3E3E424242
+4242424242424C4C4C4C4C4C4C4C4C5858585858585858586868686868686868686868687B7B7B
+7B7B7B7B7B7B9D9D9D9D9D9D9D9D9DCBCBCBCBCBCBCBCBCBE4E4E4E4E4E4E4E4E4F5F5F5F5F5F5
+F5F5F5F5F5F5FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFB
+FBFBFBD8D8D8D8D8D8D8D8D8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE
+F9F9F9F9F9F9F9F9F9C4C4C4C4C4C4C4C4C4767676767676767676505050505050505050424242
+4242424242424242423C3C3C3C3C3C3C3C3C373737373737373737313131313131313131303030
+303030303030303030303030303030303030313131313131313131313131313131313131303030
+3030303030302D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F313131
+3131313131313131313131313131313232323232323232323232323030303030303030302C2C2C
+2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D303030303030303030323232
+323232323232353535353535353535343434343434343434343434343434343434343434353535
+3535353535353737373737373737373B3B3B3B3B3B3B3B3B454545454545454545474747474747
+4747474747473E3E3E3E3E3E3E3E3E353535353535353535373737373737373737454545454545
+4545454545454848484848484848483A3A3A3A3A3A3A3A3A363636363636363636353535353535
+3535353737373737373737373737373B3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3A3A3A3A3A3A
+3A3A3A3939393939393939393C3C3C3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E404040404040
+4040404848484848484848484D4D4D4D4D4D4D4D4D4D4D4D5757575757575757576A6A6A6A6A6A
+6A6A6A969696969696969696CBCBCBCBCBCBCBCBCBE7E7E7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7
+F7F7F7FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDF4F4F4F4F4F4F4F4F4
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEF9F9F9F9F9F9F9F9F9C4C4C4
+C4C4C4C4C4C47676767676767676765050505050505050504242424242424242424242423C3C3C
+3C3C3C3C3C3C373737373737373737313131313131313131303030303030303030303030303030
+3030303030303131313131313131313131313131313131313030303030303030302D2D2D2D2D2D
+2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131313131313131
+3131313232323232323232323232323030303030303030302C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D303030303030303030323232323232323232353535353535
+353535343434343434343434343434343434343434343434353535353535353535373737373737
+3737373B3B3B3B3B3B3B3B3B4545454545454545454747474747474747474747473E3E3E3E3E3E
+3E3E3E353535353535353535373737373737373737454545454545454545454545484848484848
+4848483A3A3A3A3A3A3A3A3A363636363636363636353535353535353535373737373737373737
+3737373B3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3A3A3A3A3A3A3A3A3A393939393939393939
+3C3C3C3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E404040404040404040484848484848484848
+4D4D4D4D4D4D4D4D4D4D4D4D5757575757575757576A6A6A6A6A6A6A6A6A969696969696969696
+CBCBCBCBCBCBCBCBCBE7E7E7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F7FEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDF4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFDFDFDFDFDFDFDFDFDFDFDFDE1E1E1E1E1E1E1E1E1919191919191919191575757575757
+575757414141414141414141373737373737373737373737343434343434343434313131313131
+313131323232323232323232353535353535353535353535353535353535353535353535353535
+353535363636363636363636353535353535353535323232323232323232323232303030303030
+3030302F2F2F2F2F2F2F2F2F323232323232323232343434343434343434323232323232323232
+3232323131313131313131313030303030303030302D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F313131313131313131
+3434343434343434343434343636363636363636363939393939393939393C3C3C3C3C3C3C3C3C
+404040404040404040424242424242424242424242404040404040404040363636363636363636
+313131313131313131353535353535353535353535404040404040404040404040404040404040
+373737373737373737313131313131313131313131313131313131313131363636363636363636
+3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3A3A3A3A3A3A3A3A3A393939393939393939393939
+3C3C3C3C3C3C3C3C3C3939393939393939393F3F3F3F3F3F3F3F3F414141414141414141414141
+4545454545454545454D4D4D4D4D4D4D4D4D5F605F5F605F5F605F8A8A8A8A8A8A8A8A8AC0C0C0
+C0C0C0C0C0C0C0C0C0E0E0E0E0E0E0E0E0E0FBFBFBFBFBFBFBFBFBFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFC
+FCFCFCFCFCFCE4E4E4E4E4E4E4E4E4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFD
+FDFDFDE1E1E1E1E1E1E1E1E1919191919191919191575757575757575757414141414141414141
+373737373737373737373737343434343434343434313131313131313131323232323232323232
+353535353535353535353535353535353535353535353535353535353535363636363636363636
+3535353535353535353232323232323232323232323030303030303030302F2F2F2F2F2F2F2F2F
+323232323232323232343434343434343434323232323232323232323232313131313131313131
+3030303030303030302D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F313131313131313131343434343434343434343434
+3636363636363636363939393939393939393C3C3C3C3C3C3C3C3C404040404040404040424242
+424242424242424242404040404040404040363636363636363636313131313131313131353535
+353535353535353535404040404040404040404040404040404040373737373737373737313131
+3131313131313131313131313131313131313636363636363636363A3A3A3A3A3A3A3A3A3C3C3C
+3C3C3C3C3C3C3A3A3A3A3A3A3A3A3A3939393939393939393939393C3C3C3C3C3C3C3C3C393939
+3939393939393F3F3F3F3F3F3F3F3F4141414141414141414141414545454545454545454D4D4D
+4D4D4D4D4D4D5F605F5F605F5F605F8A8A8A8A8A8A8A8A8AC0C0C0C0C0C0C0C0C0C0C0C0E0E0E0
+E0E0E0E0E0E0FBFBFBFBFBFBFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE4E4E4E4E4E4
+E4E4E4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDFDFDFDE1E1E1E1E1E1E1E1E1
+919191919191919191575757575757575757414141414141414141373737373737373737373737
+343434343434343434313131313131313131323232323232323232353535353535353535353535
+353535353535353535353535353535353535363636363636363636353535353535353535323232
+3232323232323232323030303030303030302F2F2F2F2F2F2F2F2F323232323232323232343434
+3434343434343232323232323232323232323131313131313131313030303030303030302D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2F2F2F
+2F2F2F2F2F2F313131313131313131343434343434343434343434363636363636363636393939
+3939393939393C3C3C3C3C3C3C3C3C404040404040404040424242424242424242424242404040
+404040404040363636363636363636313131313131313131353535353535353535353535404040
+404040404040404040404040404040373737373737373737313131313131313131313131313131
+3131313131313636363636363636363A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3A3A3A3A3A3A
+3A3A3A3939393939393939393939393C3C3C3C3C3C3C3C3C3939393939393939393F3F3F3F3F3F
+3F3F3F4141414141414141414141414545454545454545454D4D4D4D4D4D4D4D4D5F605F5F605F
+5F605F8A8A8A8A8A8A8A8A8AC0C0C0C0C0C0C0C0C0C0C0C0E0E0E0E0E0E0E0E0E0FBFBFBFBFBFB
+FBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE4E4E4E4E4E4E4E4E4FFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEF2F2F2F2F2F2F2F2F2F2F2F2B1B1B1B1B1B1B1B1B1666666666666666666454545
+454545454545393939393939393939323232323232323232323232313131313131313131343434
+343434343434353535353535353535323232323232323232323232313131313131313131323232
+323232323232353535353535353535353535353535353535343434343434343434343434353535
+353535353535343434343434343434323232323232323232323232323232323232323232323232
+323232323232353535353535353535373737373737373737323232323232323232303030303030
+3030303030302C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D323232323232323232373737373737
+3737373939393939393939393939393636363636363636363636363636363636363A3A3A3A3A3A
+3A3A3A3E3E3E3E3E3E3E3E3E4141414141414141414141414545454545454545453F3F3F3F3F3F
+3F3F3F3232323232323232322F2F2F2F2F2F2F2F2F2F2F2F3232323232323232323B3B3B3B3B3B
+3B3B3B3B3B3B3B3B3B3B3B3B323232323232323232303030303030303030303030323232323232
+3232323636363636363636363C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B363636363636363636
+3636363939393939393939393737373737373737373939393939393939393C3C3C3C3C3C3C3C3C
+3C3C3C3E3E3E3E3E3E3E3E3E4242424242424242424C4C4C4C4C4C4C4C4C5C5C5C5C5C5C5C5C5C
+838383838383838383838383B7B7B7B7B7B7B7B7B7EFEFEFEFEFEFEFEFEFFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FBFBFBFBFBFBFBFBFBDDDDDDDDDDDDDDDDDDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF2F2F2F2F2F2
+F2F2F2F2F2F2B1B1B1B1B1B1B1B1B1666666666666666666454545454545454545393939393939
+393939323232323232323232323232313131313131313131343434343434343434353535353535
+353535323232323232323232323232313131313131313131323232323232323232353535353535
+353535353535353535353535343434343434343434343434353535353535353535343434343434
+343434323232323232323232323232323232323232323232323232323232323232353535353535
+3535353737373737373737373232323232323232323030303030303030303030302C2C2C2C2C2C
+2C2C2C2D2D2D2D2D2D2D2D2D323232323232323232373737373737373737393939393939393939
+3939393636363636363636363636363636363636363A3A3A3A3A3A3A3A3A3E3E3E3E3E3E3E3E3E
+4141414141414141414141414545454545454545453F3F3F3F3F3F3F3F3F323232323232323232
+2F2F2F2F2F2F2F2F2F2F2F2F3232323232323232323B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B
+323232323232323232303030303030303030303030323232323232323232363636363636363636
+3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B363636363636363636363636393939393939393939
+3737373737373737373939393939393939393C3C3C3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E
+4242424242424242424C4C4C4C4C4C4C4C4C5C5C5C5C5C5C5C5C5C838383838383838383838383
+B7B7B7B7B7B7B7B7B7EFEFEFEFEFEFEFEFEFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDDDDDD
+DDDDDDDDDDDDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF2F2F2F2F2F2F2F2F2F2F2F2B1B1B1B1B1B1
+B1B1B1666666666666666666454545454545454545393939393939393939323232323232323232
+323232313131313131313131343434343434343434353535353535353535323232323232323232
+323232313131313131313131323232323232323232353535353535353535353535353535353535
+343434343434343434343434353535353535353535343434343434343434323232323232323232
+323232323232323232323232323232323232323232353535353535353535373737373737373737
+3232323232323232323030303030303030303030302C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D
+323232323232323232373737373737373737393939393939393939393939363636363636363636
+3636363636363636363A3A3A3A3A3A3A3A3A3E3E3E3E3E3E3E3E3E414141414141414141414141
+4545454545454545453F3F3F3F3F3F3F3F3F3232323232323232322F2F2F2F2F2F2F2F2F2F2F2F
+3232323232323232323B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B323232323232323232303030
+3030303030303030303232323232323232323636363636363636363C3C3C3C3C3C3C3C3C3B3B3B
+3B3B3B3B3B3B363636363636363636363636393939393939393939373737373737373737393939
+3939393939393C3C3C3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E4242424242424242424C4C4C
+4C4C4C4C4C4C5C5C5C5C5C5C5C5C5C838383838383838383838383B7B7B7B7B7B7B7B7B7EFEFEF
+EFEFEFEFEFEFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDDDDDDDDDDDDDDDDDDFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FCFCFCFCFCFCFCFCFCD4D4D4D4D4D4D4D4D4D4D4D4838383838383838383505050505050505050
+3E3E3E3E3E3E3E3E3E363636363636363636323232323232323232323232303030303030303030
+3030303030303030303131313131313131312D2D2D2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B
+2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F303030303030303030303030
+343434343434343434393939393939393939373737373737373737363636363636363636343434
+343434343434343434353535353535353535373737373737373737363636363636363636363636
+3636363636363636363535353535353535353535353535353535353737373737373737373A3A3A
+3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A424242
+4242424242424646464646464646464242424242424242424242424040404040404040403E3E3E
+3E3E3E3E3E3E3737373737373737373232323232323232323232322D2D2D2D2D2D2D2D2D2F2F2F
+2F2F2F2F2F2F343434343434343434353535353535353535323232323232323232323232313131
+3131313131313232323232323232323939393939393939393E3E3E3E3E3E3E3E3E393939393939
+393939393939353535353535353535373737373737373737373737373737373737393939393939
+3939393939393A3A3A3A3A3A3A3A3A3F3F3F3F3F3F3F3F3F4646464646464646464C4C4C4C4C4C
+4C4C4C5A5A5A5A5A5A5A5A5A5A5A5A7E7E7E7E7E7E7E7E7ED2D2D2D2D2D2D2D2D2FCFCFCFCFCFC
+FCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFAFAFAFAFAFAFAFAFADBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCD4D4D4
+D4D4D4D4D4D4D4D4D48383838383838383835050505050505050503E3E3E3E3E3E3E3E3E363636
+363636363636323232323232323232323232303030303030303030303030303030303030313131
+3131313131312D2D2D2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2D2D2D
+2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F303030303030303030303030343434343434343434393939
+393939393939373737373737373737363636363636363636343434343434343434343434353535
+353535353535373737373737373737363636363636363636363636363636363636363636353535
+3535353535353535353535353535353737373737373737373A3A3A3A3A3A3A3A3A3B3B3B3B3B3B
+3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A424242424242424242464646464646
+4646464242424242424242424242424040404040404040403E3E3E3E3E3E3E3E3E373737373737
+3737373232323232323232323232322D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F343434343434
+343434353535353535353535323232323232323232323232313131313131313131323232323232
+3232323939393939393939393E3E3E3E3E3E3E3E3E393939393939393939393939353535353535
+3535353737373737373737373737373737373737373939393939393939393939393A3A3A3A3A3A
+3A3A3A3F3F3F3F3F3F3F3F3F4646464646464646464C4C4C4C4C4C4C4C4C5A5A5A5A5A5A5A5A5A
+5A5A5A7E7E7E7E7E7E7E7E7ED2D2D2D2D2D2D2D2D2FCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFA
+DBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEECECECECECECECECECA4A4A4A4A4A4A4A4A4A4A4A45E5E5E
+5E5E5E5E5E5E4545454545454545453C3C3C3C3C3C3C3C3C363636363636363636343434343434
+343434343434343434343434343434343434343434343434343434343434343434313131313131
+3131313131312D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F
+2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C303030303030303030343434343434
+343434343434343434343434323232323232323232323232353535353535353535393939393939
+393939373737373737373737373737373737373737373737373737373737373737373737373737
+373737393939393939393939393939393939393939363636363636363636363636363636363636
+3636363A3A3A3A3A3A3A3A3A444444444444444444494949494949494949464646464646464646
+4646463C3C3C3C3C3C3C3C3C363636363636363636323232323232323232323232323232323232
+3232322F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C303030303030303030
+353535353535353535353535323232323232323232303030303030303030343434343434343434
+393939393939393939393939393939393939393939343434343434343434363636363636363636
+3737373737373737373636363636363636363636363737373737373737373E3E3E3E3E3E3E3E3E
+4242424242424242424646464646464646464E4E4E4E4E4E4E4E4E4E4E4E5E5E5E5E5E5E5E5E5E
+A1A1A1A1A1A1A1A1A1EEEEEEEEEEEEEEEEEEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFADBDBDBDBDBDBDBDBDBFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE
+FEFEFEECECECECECECECECECA4A4A4A4A4A4A4A4A4A4A4A45E5E5E5E5E5E5E5E5E454545454545
+4545453C3C3C3C3C3C3C3C3C363636363636363636343434343434343434343434343434343434
+3434343434343434343434343434343434343434343131313131313131313131312D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D
+2D2D2D2C2C2C2C2C2C2C2C2C303030303030303030343434343434343434343434343434343434
+323232323232323232323232353535353535353535393939393939393939373737373737373737
+373737373737373737373737373737373737373737373737373737373737393939393939393939
+3939393939393939393636363636363636363636363636363636363636363A3A3A3A3A3A3A3A3A
+4444444444444444444949494949494949494646464646464646464646463C3C3C3C3C3C3C3C3C
+3636363636363636363232323232323232323232323232323232323232322F2F2F2F2F2F2F2F2F
+2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C303030303030303030353535353535353535353535
+323232323232323232303030303030303030343434343434343434393939393939393939393939
+393939393939393939343434343434343434363636363636363636373737373737373737363636
+3636363636363636363737373737373737373E3E3E3E3E3E3E3E3E424242424242424242464646
+4646464646464E4E4E4E4E4E4E4E4E4E4E4E5E5E5E5E5E5E5E5E5EA1A1A1A1A1A1A1A1A1EEEEEE
+EEEEEEEEEEEEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFAFAFAFAFAFAFAFAFADBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEECECECECECECECECEC
+A4A4A4A4A4A4A4A4A4A4A4A45E5E5E5E5E5E5E5E5E4545454545454545453C3C3C3C3C3C3C3C3C
+363636363636363636343434343434343434343434343434343434343434343434343434343434
+3434343434343434343131313131313131313131312D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C
+303030303030303030343434343434343434343434343434343434323232323232323232323232
+353535353535353535393939393939393939373737373737373737373737373737373737373737
+373737373737373737373737373737373737393939393939393939393939393939393939363636
+3636363636363636363636363636363636363A3A3A3A3A3A3A3A3A444444444444444444494949
+4949494949494646464646464646464646463C3C3C3C3C3C3C3C3C363636363636363636323232
+3232323232323232323232323232323232322F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B2C2C2C
+2C2C2C2C2C2C303030303030303030353535353535353535353535323232323232323232303030
+303030303030343434343434343434393939393939393939393939393939393939393939343434
+343434343434363636363636363636373737373737373737363636363636363636363636373737
+3737373737373E3E3E3E3E3E3E3E3E4242424242424242424646464646464646464E4E4E4E4E4E
+4E4E4E4E4E4E5E5E5E5E5E5E5E5E5EA1A1A1A1A1A1A1A1A1EEEEEEEEEEEEEEEEEEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFA
+FAFAFADBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6737373737373737373737373
+4848484848484848484040404040404040403B3B3B3B3B3B3B3B3B353535353535353535363636
+3636363636363636363939393939393939393A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A373737
+373737373737373737323232323232323232303030303030303030303030303030303030323232
+3232323232322F2F2F2F2F2F2F2F2F2F2F2F282828282828282828272727272727272727292929
+2929292929292C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D313131313131313131353535
+353535353535353535353535353535353535353535353535353535353535353535353535363636
+3636363636363535353535353535353030303030303030302D2D2D2D2D2D2D2D2D2D2D2D2F2F2F
+2F2F2F2F2F2F363636363636363636404040404040404040464646464646464646444444444444
+4444444444443E3E3E3E3E3E3E3E3E3737373737373737373232323232323232322F2F2F2F2F2F
+2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+2C2C2C303030303030303030303030303030303030303030303030303030303030323232323232
+323232353535353535353535393939393939393939393939393939393939393939373737373737
+3737373636363636363636363535353535353535353535353535353535353535353A3A3A3A3A3A
+3A3A3A4040404040404040404545454545454545454B4B4B4B4B4B4B4B4B4B4B4B545454545454
+545454737373737373737373C7C7C7C7C7C7C7C7C7FAFAFAFAFAFAFAFAFAFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6737373737373737373737373484848484848484848404040
+4040404040403B3B3B3B3B3B3B3B3B353535353535353535363636363636363636363636393939
+3939393939393A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A373737373737373737373737323232
+3232323232323030303030303030303030303030303030303232323232323232322F2F2F2F2F2F
+2F2F2F2F2F2F2828282828282828282727272727272727272929292929292929292C2C2C2C2C2C
+2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D313131313131313131353535353535353535353535353535
+353535353535353535353535353535353535353535353535363636363636363636353535353535
+3535353030303030303030302D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F363636363636
+3636364040404040404040404646464646464646464444444444444444444444443E3E3E3E3E3E
+3E3E3E3737373737373737373232323232323232322F2F2F2F2F2F2F2F2F2F2F2F2C2C2C2C2C2C
+2C2C2C2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C303030303030303030
+303030303030303030303030303030303030303030323232323232323232353535353535353535
+393939393939393939393939393939393939393939373737373737373737363636363636363636
+3535353535353535353535353535353535353535353A3A3A3A3A3A3A3A3A404040404040404040
+4545454545454545454B4B4B4B4B4B4B4B4B4B4B4B545454545454545454737373737373737373
+C7C7C7C7C7C7C7C7C7FAFAFAFAFAFAFAFAFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7FFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEE5E5E5E5E5E5E5E5E5969696969696
+9696965656565656565656565656564444444444444444444040404040404040403B3B3B3B3B3B
+3B3B3B3939393939393939393A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A
+3A3A3A3A3A3A3A3A3A3A3A3A363636363636363636363636343434343434343434313131313131
+3131313030303030303030303232323232323232323131313131313131313131312D2D2D2D2D2D
+2D2D2D292929292929292929282828282828282828272727272727272727282828282828282828
+2828282C2C2C2C2C2C2C2C2C303030303030303030323232323232323232323232323232323232
+3232323030303030303030303131313131313131313030303030303030302C2C2C2C2C2C2C2C2C
+2B2B2B2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D323232323232323232393939393939393939
+3E3E3E3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B3B3B3B373737373737373737363636363636363636
+3434343434343434343030303030303030303030302B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B
+2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F
+2F2F2F2F2F2F2F2F2F313131313131313131313131313131313131353535353535353535353535
+3737373737373737373B3B3B3B3B3B3B3B3B363636363636363636313131313131313131313131
+3232323232323232323636363636363636363C3C3C3C3C3C3C3C3C4545454545454545454D4D4D
+4D4D4D4D4D4D4D4D4D5252525252525252525D5D5D5D5D5D5D5D5D939393939393939393E7E7E7
+E7E7E7E7E7E7FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9BFBFBFBFBFBFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFEFEFEFEFEFEFEFEFEE5E5E5E5E5E5E5E5E5969696969696969696565656565656565656
+5656564444444444444444444040404040404040403B3B3B3B3B3B3B3B3B393939393939393939
+3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A
+363636363636363636363636343434343434343434313131313131313131303030303030303030
+3232323232323232323131313131313131313131312D2D2D2D2D2D2D2D2D292929292929292929
+2828282828282828282727272727272727272828282828282828282828282C2C2C2C2C2C2C2C2C
+303030303030303030323232323232323232323232323232323232323232303030303030303030
+3131313131313131313030303030303030302C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B
+2D2D2D2D2D2D2D2D2D3232323232323232323939393939393939393E3E3E3E3E3E3E3E3E3B3B3B
+3B3B3B3B3B3B3B3B3B373737373737373737363636363636363636343434343434343434303030
+3030303030303030302B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2B2B2B
+2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F313131
+3131313131313131313131313131313535353535353535353535353737373737373737373B3B3B
+3B3B3B3B3B3B363636363636363636313131313131313131313131323232323232323232363636
+3636363636363C3C3C3C3C3C3C3C3C4545454545454545454D4D4D4D4D4D4D4D4D4D4D4D525252
+5252525252525D5D5D5D5D5D5D5D5D939393939393939393E7E7E7E7E7E7E7E7E7FEFEFEFEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BFBFBFBFBFBF
+BFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE
+E5E5E5E5E5E5E5E5E5969696969696969696565656565656565656565656444444444444444444
+4040404040404040403B3B3B3B3B3B3B3B3B3939393939393939393A3A3A3A3A3A3A3A3A3A3A3A
+3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A363636363636363636363636
+343434343434343434313131313131313131303030303030303030323232323232323232313131
+3131313131313131312D2D2D2D2D2D2D2D2D292929292929292929282828282828282828272727
+2727272727272828282828282828282828282C2C2C2C2C2C2C2C2C303030303030303030323232
+323232323232323232323232323232323232303030303030303030313131313131313131303030
+3030303030302C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D323232
+3232323232323939393939393939393E3E3E3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B3B3B3B373737
+3737373737373636363636363636363434343434343434343030303030303030303030302B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D
+2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131313131313131
+3131313535353535353535353535353737373737373737373B3B3B3B3B3B3B3B3B363636363636
+3636363131313131313131313131313232323232323232323636363636363636363C3C3C3C3C3C
+3C3C3C4545454545454545454D4D4D4D4D4D4D4D4D4D4D4D5252525252525252525D5D5D5D5D5D
+5D5D5D939393939393939393E7E7E7E7E7E7E7E7E7FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BFBFBFBFBFBFBFBFBFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAC4C4C4C4C4C4C4C4C46F6F6F
+6F6F6F6F6F6F4949494949494949494949494444444444444444444040404040404040403C3C3C
+3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C393939393939393939353535
+3535353535353434343434343434343131313131313131313131313030303030303030302D2D2D
+2D2D2D2D2D2D303030303030303030323232323232323232323232323232323232323232313131
+3131313131313131313131313131312C2C2C2C2C2C2C2C2C282828282828282828292929292929
+2929292929292D2D2D2D2D2D2D2D2D313131313131313131363636363636363636363636363636
+3636363636363232323232323232323131313131313131312F2F2F2F2F2F2F2F2F2F2F2F2F2F2F
+2F2F2F3232323232323232323232323A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E
+3E3E3E3C3C3C3C3C3C3C3C3C393939393939393939393939353535353535353535313131313131
+3131313030303030303030303030303030303030303030302F2F2F2F2F2F2F2F2F2C2C2C2C2C2C
+2C2C2C2828282828282828282929292929292929292C2C2C2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D
+2D2D2D2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F313131313131313131
+3131313535353535353535353A3A3A3A3A3A3A3A3A373737373737373737323232323232323232
+323232313131313131313131343434343434343434373737373737373737404040404040404040
+4949494949494949494949495151515151515151515959595959595959596E6E6E6E6E6E6E6E6E
+BDBDBDBDBDBDBDBDBDF8F8F8F8F8F8F8F8F8F8F8F8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9C9C9C9C9C9C9C9C9C9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFAFAFAFAFAFAFAFAFAC4C4C4C4C4C4C4C4C46F6F6F6F6F6F6F6F6F494949494949
+4949494949494444444444444444444040404040404040403C3C3C3C3C3C3C3C3C3C3C3C3C3C3C
+3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C393939393939393939353535353535353535343434343434
+3434343131313131313131313131313030303030303030302D2D2D2D2D2D2D2D2D303030303030
+303030323232323232323232323232323232323232323232313131313131313131313131313131
+3131312C2C2C2C2C2C2C2C2C2828282828282828282929292929292929292929292D2D2D2D2D2D
+2D2D2D313131313131313131363636363636363636363636363636363636363636323232323232
+3232323131313131313131312F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F323232323232323232
+3232323A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C
+393939393939393939393939353535353535353535313131313131313131303030303030303030
+3030303030303030303030302F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C282828282828282828
+2929292929292929292C2C2C2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F
+2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F313131313131313131313131353535353535353535
+3A3A3A3A3A3A3A3A3A373737373737373737323232323232323232323232313131313131313131
+343434343434343434373737373737373737404040404040404040494949494949494949494949
+5151515151515151515959595959595959596E6E6E6E6E6E6E6E6EBDBDBDBDBDBDBDBDBDF8F8F8
+F8F8F8F8F8F8F8F8F8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C9C9C9
+C9C9C9C9C9C9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEEDEDEDEDEDED
+EDEDED9D9D9D9D9D9D9D9D9D575757575757575757474747474747474747474747454545454545
+4545453F3F3F3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C393939393939393939373737373737373737
+3737373535353535353535353232323232323232323131313131313131312D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F303030303030303030323232323232323232
+323232323232323232323232343434343434343434343434343434343434303030303030303030
+2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F303030303030303030313131313131313131
+353535353535353535393939393939393939393939353535353535353535313131313131313131
+2F2F2F2F2F2F2F2F2F3030303030303030303535353535353535353535353E3E3E3E3E3E3E3E3E
+4141414141414141414040404040404040403C3C3C3C3C3C3C3C3C373737373737373737373737
+3535353535353535353434343434343434343030303030303030302D2D2D2D2D2D2D2D2D2D2D2D
+2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B282828282828282828272727272727272727292929
+2929292929292929292B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D303030303030303030303030353535353535353535393939393939393939393939
+393939393939343434343434343434343434323232323232323232353535353535353535373737
+3737373737373B3B3B3B3B3B3B3B3B4242424242424242424242424D4D4D4D4D4D4D4D4D555555
+555555555555616161616161616161939393939393939393E5E5E5E5E5E5E5E5E5E5E5E5FEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8F8F8F8F8F8B9B9B9B9B9B9B9B9B9FFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEEDEDEDEDEDEDEDEDED9D9D9D9D9D9D9D9D9D
+5757575757575757574747474747474747474747474545454545454545453F3F3F3F3F3F3F3F3F
+3C3C3C3C3C3C3C3C3C393939393939393939373737373737373737373737353535353535353535
+3232323232323232323131313131313131312D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2F2F2F2F2F2F2F2F2F303030303030303030323232323232323232323232323232323232323232
+3434343434343434343434343434343434343030303030303030302D2D2D2D2D2D2D2D2D2F2F2F
+2F2F2F2F2F2F2F2F2F303030303030303030313131313131313131353535353535353535393939
+3939393939393939393535353535353535353131313131313131312F2F2F2F2F2F2F2F2F303030
+3030303030303535353535353535353535353E3E3E3E3E3E3E3E3E414141414141414141404040
+4040404040403C3C3C3C3C3C3C3C3C373737373737373737373737353535353535353535343434
+3434343434343030303030303030302D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2B2B2B
+2B2B2B2B2B2B2828282828282828282727272727272727272929292929292929292929292B2B2B
+2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D303030303030
+303030303030353535353535353535393939393939393939393939393939393939343434343434
+3434343434343232323232323232323535353535353535353737373737373737373B3B3B3B3B3B
+3B3B3B4242424242424242424242424D4D4D4D4D4D4D4D4D555555555555555555616161616161
+616161939393939393939393E5E5E5E5E5E5E5E5E5E5E5E5FEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF8F8F8F8F8F8F8F8F8B9B9B9B9B9B9B9B9B9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEEDEDEDEDEDEDEDEDED9D9D9D9D9D9D9D9D9D575757575757575757474747
+4747474747474747474545454545454545453F3F3F3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C393939
+393939393939373737373737373737373737353535353535353535323232323232323232313131
+3131313131312D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F303030
+303030303030323232323232323232323232323232323232323232343434343434343434343434
+3434343434343030303030303030302D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F303030
+303030303030313131313131313131353535353535353535393939393939393939393939353535
+3535353535353131313131313131312F2F2F2F2F2F2F2F2F303030303030303030353535353535
+3535353535353E3E3E3E3E3E3E3E3E4141414141414141414040404040404040403C3C3C3C3C3C
+3C3C3C373737373737373737373737353535353535353535343434343434343434303030303030
+3030302D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B282828282828
+2828282727272727272727272929292929292929292929292B2B2B2B2B2B2B2B2B2F2F2F2F2F2F
+2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D303030303030303030303030353535353535
+353535393939393939393939393939393939393939343434343434343434343434323232323232
+3232323535353535353535353737373737373737373B3B3B3B3B3B3B3B3B424242424242424242
+4242424D4D4D4D4D4D4D4D4D555555555555555555616161616161616161939393939393939393
+E5E5E5E5E5E5E5E5E5E5E5E5FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8F8F8F8F8F8
+B9B9B9B9B9B9B9B9B9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFACACACA
+CACACACACACA7575757575757575754C4C4C4C4C4C4C4C4C464646464646464646464646404040
+4040404040403939393939393939393535353535353535353030303030303030302D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F3030303030303030302F2F2F2F2F2F
+2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131343434343434343434353535353535
+353535323232323232323232323232323232323232323232313131313131313131303030303030
+3030303030303030303030303030303030303030303030302D2D2D2D2D2D2D2D2D2B2B2B2B2B2B
+2B2B2B2D2D2D2D2D2D2D2D2D323232323232323232323232323232323232323232303030303030
+3030302F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2F2F2F353535353535
+3535353A3A3A3A3A3A3A3A3A373737373737373737343434343434343434303030303030303030
+3030302F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B292929292929292929272727272727272727252525252525252525
+2727272727272727272727272B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F
+2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D323232323232323232373737373737373737
+3A3A3A3A3A3A3A3A3A373737373737373737373737323232323232323232323232323232323232
+3535353535353535353939393939393939393E3E3E3E3E3E3E3E3E3E3E3E474747474747474747
+4C4C4C4C4C4C4C4C4C585858585858585858737373737373737373C3C3C3C3C3C3C3C3C3C3C3C3
+F9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3FFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFACACACACACACACACACA757575757575
+7575754C4C4C4C4C4C4C4C4C464646464646464646464646404040404040404040393939393939
+3939393535353535353535353030303030303030302D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2F2F2F2F2F2F2F2F2F3030303030303030302F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F
+2F2F2F313131313131313131343434343434343434353535353535353535323232323232323232
+323232323232323232323232313131313131313131303030303030303030303030303030303030
+3030303030303030303030302D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D
+3232323232323232323232323232323232323232323030303030303030302F2F2F2F2F2F2F2F2F
+2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2F2F2F3535353535353535353A3A3A3A3A3A3A3A3A
+3737373737373737373434343434343434343030303030303030303030302F2F2F2F2F2F2F2F2F
+2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B
+292929292929292929272727272727272727252525252525252525272727272727272727272727
+2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2D2D2D
+2D2D2D2D2D2D2D2D2D3232323232323232323737373737373737373A3A3A3A3A3A3A3A3A373737
+373737373737373737323232323232323232323232323232323232353535353535353535393939
+3939393939393E3E3E3E3E3E3E3E3E3E3E3E4747474747474747474C4C4C4C4C4C4C4C4C585858
+585858585858737373737373737373C3C3C3C3C3C3C3C3C3C3C3C3F9F9F9F9F9F9F9F9F9FFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFAFAFAFAFAFAFAFAFACACACACACACACACACA7575757575757575754C4C4C4C4C4C4C4C4C
+464646464646464646464646404040404040404040393939393939393939353535353535353535
+3030303030303030302D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F
+3030303030303030302F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131
+343434343434343434353535353535353535323232323232323232323232323232323232323232
+313131313131313131303030303030303030303030303030303030303030303030303030303030
+2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D323232323232323232323232
+3232323232323232323030303030303030302F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2F2F2F
+2F2F2F2F2F2F2F2F2F3535353535353535353A3A3A3A3A3A3A3A3A373737373737373737343434
+3434343434343030303030303030303030302F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2D2D2D
+2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B292929292929292929272727
+2727272727272525252525252525252727272727272727272727272B2B2B2B2B2B2B2B2B2D2D2D
+2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D323232
+3232323232323737373737373737373A3A3A3A3A3A3A3A3A373737373737373737373737323232
+3232323232323232323232323232323535353535353535353939393939393939393E3E3E3E3E3E
+3E3E3E3E3E3E4747474747474747474C4C4C4C4C4C4C4C4C585858585858585858737373737373
+737373C3C3C3C3C3C3C3C3C3C3C3C3F9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9C3C3C3C3C3C3C3C3C3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEEDEDEDEDEDEDEDEDED
+A3A3A3A3A3A3A3A3A35C5C5C5C5C5C5C5C5C474747474747474747414141414141414141414141
+3939393939393939393131313131313131312F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2B2B2B
+2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F323232323232323232303030
+303030303030303030303030303030303030313131313131313131393939393939393939393939
+393939393939343434343434343434343434323232323232323232313131313131313131303030
+3030303030303131313131313131313232323232323232323232322F2F2F2F2F2F2F2F2F2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2F2F2F
+2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F303030
+3030303030303232323232323232323636363636363636363A3A3A3A3A3A3A3A3A3C3C3C3C3C3C
+3C3C3C3C3C3C3737373737373737373232323232323232322D2D2D2D2D2D2D2D2D292929292929
+292929292929292929292929292929282828282828282828272727272727272727252525252525
+2525252828282828282828282828282B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F303030303030
+3030303030303030303030302F2F2F2F2F2F2F2F2F2F2F2F303030303030303030323232323232
+323232363636363636363636373737373737373737373737343434343434343434313131313131
+3131313434343434343434343939393939393939393C3C3C3C3C3C3C3C3C3C3C3C414141414141
+414141474747474747474747505050505050505050616161616161616161989898989898989898
+989898E9E9E9E9E9E9E9E9E9FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD2D2D2D2D2D2D2D2D2
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEEDEDEDEDEDEDEDEDEDA3A3A3A3A3A3A3A3A35C5C5C
+5C5C5C5C5C5C474747474747474747414141414141414141414141393939393939393939313131
+3131313131312F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C
+2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F323232323232323232303030303030303030303030303030
+303030303030313131313131313131393939393939393939393939393939393939343434343434
+343434343434323232323232323232313131313131313131303030303030303030313131313131
+3131313232323232323232323232322F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F
+2F2F2F2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F303030303030303030323232323232
+3232323636363636363636363A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3C3C3C373737373737
+3737373232323232323232322D2D2D2D2D2D2D2D2D292929292929292929292929292929292929
+292929282828282828282828272727272727272727252525252525252525282828282828282828
+2828282B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F303030303030303030303030303030303030
+2F2F2F2F2F2F2F2F2F2F2F2F303030303030303030323232323232323232363636363636363636
+373737373737373737373737343434343434343434313131313131313131343434343434343434
+3939393939393939393C3C3C3C3C3C3C3C3C3C3C3C414141414141414141474747474747474747
+505050505050505050616161616161616161989898989898989898989898E9E9E9E9E9E9E9E9E9
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD2D2D2D2D2D2D2D2D2FFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFD
+FDFDFDFDFDFDDCDCDCDCDCDCDCDCDC8282828282828282824E4E4E4E4E4E4E4E4E404040404040
+4040403737373737373737373737373030303030303030302D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C
+2C2C2C2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C
+2C2C2C303030303030303030323232323232323232323232323232323232323232323232323232
+323232323232323232323232313131313131313131323232323232323232313131313131313131
+3131312F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C282828282828282828
+2828282C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B
+2929292929292929292929292B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D313131313131313131
+3A3A3A3A3A3A3A3A3A4141414141414141414141414242424242424242423C3C3C3C3C3C3C3C3C
+3636363636363636363131313131313131313131312D2D2D2D2D2D2D2D2D292929292929292929
+2727272727272727272828282828282828282B2B2B2B2B2B2B2B2B2B2B2B303030303030303030
+353535353535353535373737373737373737363636363636363636363636363636363636363636
+343434343434343434313131313131313131323232323232323232343434343434343434343434
+3535353535353535353131313131313131313232323232323232323636363636363636363E3E3E
+3E3E3E3E3E3E3E3E3E414141414141414141424242424242424242494949494949494949565656
+565656565656767676767676767676767676CACACACACACACACACAFAFAFAFAFAFAFAFAFAFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFC
+FCFCFCFCFCFCE4E4E4E4E4E4E4E4E4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDFDFDFDDCDCDCDCDCDC
+DCDCDC8282828282828282824E4E4E4E4E4E4E4E4E404040404040404040373737373737373737
+3737373030303030303030302D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C303030303030303030
+323232323232323232323232323232323232323232323232323232323232323232323232323232
+3131313131313131313232323232323232323131313131313131313131312F2F2F2F2F2F2F2F2F
+2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2828282828282828282828282C2C2C2C2C2C2C2C2C
+2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B292929292929292929292929
+2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D3131313131313131313A3A3A3A3A3A3A3A3A414141
+4141414141414141414242424242424242423C3C3C3C3C3C3C3C3C363636363636363636313131
+3131313131313131312D2D2D2D2D2D2D2D2D292929292929292929272727272727272727282828
+2828282828282B2B2B2B2B2B2B2B2B2B2B2B303030303030303030353535353535353535373737
+373737373737363636363636363636363636363636363636363636343434343434343434313131
+313131313131323232323232323232343434343434343434343434353535353535353535313131
+3131313131313232323232323232323636363636363636363E3E3E3E3E3E3E3E3E3E3E3E414141
+414141414141424242424242424242494949494949494949565656565656565656767676767676
+767676767676CACACACACACACACACAFAFAFAFAFAFAFAFAFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE4E4E4E4E4E4
+E4E4E4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDFDFDFDDCDCDCDCDCDCDCDCDC828282828282828282
+4E4E4E4E4E4E4E4E4E404040404040404040373737373737373737373737303030303030303030
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C303030303030303030323232323232323232323232
+323232323232323232323232323232323232323232323232323232313131313131313131323232
+3232323232323131313131313131313131312F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2C2C2C
+2C2C2C2C2C2C2828282828282828282828282C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2C2C2C
+2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2929292929292929292929292B2B2B2B2B2B2B2B2B2D2D2D
+2D2D2D2D2D2D3131313131313131313A3A3A3A3A3A3A3A3A414141414141414141414141424242
+4242424242423C3C3C3C3C3C3C3C3C3636363636363636363131313131313131313131312D2D2D
+2D2D2D2D2D2D2929292929292929292727272727272727272828282828282828282B2B2B2B2B2B
+2B2B2B2B2B2B303030303030303030353535353535353535373737373737373737363636363636
+363636363636363636363636363636343434343434343434313131313131313131323232323232
+323232343434343434343434343434353535353535353535313131313131313131323232323232
+3232323636363636363636363E3E3E3E3E3E3E3E3E3E3E3E414141414141414141424242424242
+424242494949494949494949565656565656565656767676767676767676767676CACACACACACA
+CACACAFAFAFAFAFAFAFAFAFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE4E4E4E4E4E4E4E4E4FFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF9F9F9
+F9F9F9F9F9F9F9F9F9BFBFBFBFBFBFBFBFBF686868686868686868424242424242424242373737
+3737373737373030303030303030303030302D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C
+2C2C2C2C2C2C2929292929292929292828282828282828282828282929292929292929292B2B2B
+2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D292929
+2929292929292727272727272727272B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F2F2F2F303030
+3030303030303131313131313131313131313131313131313232323232323232322F2F2F2F2F2F
+2F2F2F2F2F2F292929292929292929272727272727272727272727272727272727282828282828
+2828282828283131313131313131313535353535353535353434343434343434342D2D2D2D2D2D
+2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D323232323232
+3232323434343434343434343737373737373737373737373C3C3C3C3C3C3C3C3C3B3B3B3B3B3B
+3B3B3B3737373737373737373434343434343434343434342F2F2F2F2F2F2F2F2F2C2C2C2C2C2C
+2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B303030303030303030303030373737373737
+373737404040404040404040464646464646464646464646464646464646444444444444444444
+4444443F3F3F3F3F3F3F3F3F3535353535353535353030303030303030302D2D2D2D2D2D2D2D2D
+2D2D2D303030303030303030323232323232323232323232323232323232323232323232323232
+373737373737373737373737404040404040404040444444444444444444464646464646464646
+4F4F4F4F4F4F4F4F4F626262626262626262626262A0A0A0A0A0A0A0A0A0EDEDEDEDEDEDEDEDED
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FBFBFBFBFBFBFBFBFBD9D9D9D9D9D9D9D9D9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF9F9F9F9F9F9F9F9F9F9F9F9BFBFBF
+BFBFBFBFBFBF686868686868686868424242424242424242373737373737373737303030303030
+3030303030302D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C292929292929
+2929292828282828282828282828282929292929292929292B2B2B2B2B2B2B2B2B2D2D2D2D2D2D
+2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D292929292929292929272727272727
+2727272B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F2F2F2F303030303030303030313131313131
+3131313131313131313131313232323232323232322F2F2F2F2F2F2F2F2F2F2F2F292929292929
+292929272727272727272727272727272727272727282828282828282828282828313131313131
+3131313535353535353535353434343434343434342D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D323232323232323232343434343434343434
+3737373737373737373737373C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B373737373737373737
+3434343434343434343434342F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B303030303030303030303030373737373737373737404040404040404040
+4646464646464646464646464646464646464444444444444444444444443F3F3F3F3F3F3F3F3F
+3535353535353535353030303030303030302D2D2D2D2D2D2D2D2D2D2D2D303030303030303030
+323232323232323232323232323232323232323232323232323232373737373737373737373737
+4040404040404040404444444444444444444646464646464646464F4F4F4F4F4F4F4F4F626262
+626262626262626262A0A0A0A0A0A0A0A0A0EDEDEDEDEDEDEDEDEDFEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD9D9D9
+D9D9D9D9D9D9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFEFEFEFEFEFEFEFEFEE8E9E8E8E9E8E8E9E8E8E9E8979797979797979797505050505050
+5050503B3B3B3B3B3B3B3B3B3434343434343434342F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C
+2C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F323232323232323232323232323232323232
+3232322F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+2F2F2F2F2F2F2F2F2F3030303030303030303030302D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B
+2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2F2F2F3535353535353535353A3A3A3A3A3A3A3A3A
+3F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E393939393939393939393939393939393939393939
+3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3939393939393939393A3A3A3A3A3A3A3A3A3A3A3A
+3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A363636363636363636343434343434343434343434
+3131313131313131313131313131313131313030303030303030303232323232323232323C3C3C
+3C3C3C3C3C3C3C3C3C4B4B4B4B4B4B4B4B4B565656565656565656616161616161616161636363
+6363636363635D5D5D5D5D5D5D5D5D5D5D5D565656565656565656454545454545454545363636
+3636363636362F2F2F2F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F353535
+3535353535353434343434343434343636363636363636363636363B3B3B3B3B3B3B3B3B414141
+4141414141414646464646464646464B4B4B4B4B4B4B4B4B545454545454545454545454777777
+777777777777CECECECECECECECECEFAFAFAFAFAFAFAFAFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C9C9C9C9C9C9C9C9C9FFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE
+E8E9E8E8E9E8E8E9E8E8E9E89797979797979797975050505050505050503B3B3B3B3B3B3B3B3B
+3434343434343434342F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+2F2F2F2F2F2F2F2F2F3232323232323232323232323232323232323232322F2F2F2F2F2F2F2F2F
+2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F303030
+3030303030303030302D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F
+2F2F2F2F2F2F2F2F2F3535353535353535353A3A3A3A3A3A3A3A3A3F3F3F3F3F3F3F3F3F3E3E3E
+3E3E3E3E3E3E3939393939393939393939393939393939393939393A3A3A3A3A3A3A3A3A3A3A3A
+3A3A3A3A3A3A3939393939393939393A3A3A3A3A3A3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B3A3A3A
+3A3A3A3A3A3A363636363636363636343434343434343434343434313131313131313131313131
+3131313131313030303030303030303232323232323232323C3C3C3C3C3C3C3C3C3C3C3C4B4B4B
+4B4B4B4B4B4B5656565656565656566161616161616161616363636363636363635D5D5D5D5D5D
+5D5D5D5D5D5D5656565656565656564545454545454545453636363636363636362F2F2F2F2F2F
+2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F353535353535353535343434343434
+3434343636363636363636363636363B3B3B3B3B3B3B3B3B414141414141414141464646464646
+4646464B4B4B4B4B4B4B4B4B545454545454545454545454777777777777777777CECECECECECE
+CECECEFAFAFAFAFAFAFAFAFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9C9C9C9C9C9C9C9C9C9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEE8E9E8E8E9E8E8E9E8E8E9E8
+9797979797979797975050505050505050503B3B3B3B3B3B3B3B3B3434343434343434342F2F2F
+2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F323232
+3232323232323232323232323232323232322F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B2C2C2C
+2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2C2C2C
+2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F3030303030303030303030302D2D2D
+2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2F2F2F353535
+3535353535353A3A3A3A3A3A3A3A3A3F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E393939393939
+3939393939393939393939393939393A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A393939393939
+3939393A3A3A3A3A3A3A3A3A3A3A3A3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A363636363636
+363636343434343434343434343434313131313131313131313131313131313131303030303030
+3030303232323232323232323C3C3C3C3C3C3C3C3C3C3C3C4B4B4B4B4B4B4B4B4B565656565656
+5656566161616161616161616363636363636363635D5D5D5D5D5D5D5D5D5D5D5D565656565656
+5656564545454545454545453636363636363636362F2F2F2F2F2F2F2F2F2F2F2F2C2C2C2C2C2C
+2C2C2C2F2F2F2F2F2F2F2F2F353535353535353535343434343434343434363636363636363636
+3636363B3B3B3B3B3B3B3B3B4141414141414141414646464646464646464B4B4B4B4B4B4B4B4B
+545454545454545454545454777777777777777777CECECECECECECECECEFAFAFAFAFAFAFAFAFA
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+C9C9C9C9C9C9C9C9C9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF8F8F8F8F8F8F8F8F8C3C3C3C3C3C3C3C3C3C3C3C36C6C6C6C6C6C6C6C6C3F3F3F
+3F3F3F3F3F3F3535353535353535353131313131313131312F2F2F2F2F2F2F2F2F2F2F2F303030
+3030303030303030303030303030303131313131313131313030303030303030302C2C2C2C2C2C
+2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F3232323232323232323232323232323232322D2D2D2D2D2D
+2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D
+2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+2C2C2C2F2F2F2F2F2F2F2F2F323232323232323232323232353535353535353535343434343434
+343434343434343434343434303030303030303030303030323232323232323232363636363636
+3636363E3E3E3E3E3E3E3E3E444444444444444444404040404040404040404040404040404040
+4040404141414141414141413F3F3F3F3F3F3F3F3F3B3B3B3B3B3B3B3B3B393939393939393939
+393939363636363636363636343434343434343434313131313131313131303030303030303030
+303030313131313131313131313131313131313131363636363636363636404040404040404040
+5151515151515151515151516A6A6A6A6A6A6A6A6A777777777777777777818181818181818181
+8787878787878787877C7C7C7C7C7C7C7C7C7C7C7C6E6E6E6E6E6E6E6E6E5A5A5A5A5A5A5A5A5A
+4141414141414141413232323232323232323232322C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D
+3434343434343434343535353535353535353636363636363636363636363A3A3A3A3A3A3A3A3A
+3F3F3F3F3F3F3F3F3F4646464646464646464C4C4C4C4C4C4C4C4C505050505050505050505050
+5D5D5D5D5D5D5D5D5D9D9D9D9D9D9D9D9D9DEDEDEDEDEDEDEDEDEDFEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8F8F8
+F8F8F8C3C3C3C3C3C3C3C3C3C3C3C36C6C6C6C6C6C6C6C6C3F3F3F3F3F3F3F3F3F353535353535
+3535353131313131313131312F2F2F2F2F2F2F2F2F2F2F2F303030303030303030303030303030
+3030303131313131313131313030303030303030302C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F
+2F2F2F3232323232323232323232323232323232322D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C
+2C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F
+323232323232323232323232353535353535353535343434343434343434343434343434343434
+3030303030303030303030303232323232323232323636363636363636363E3E3E3E3E3E3E3E3E
+444444444444444444404040404040404040404040404040404040404040414141414141414141
+3F3F3F3F3F3F3F3F3F3B3B3B3B3B3B3B3B3B393939393939393939393939363636363636363636
+343434343434343434313131313131313131303030303030303030303030313131313131313131
+313131313131313131363636363636363636404040404040404040515151515151515151515151
+6A6A6A6A6A6A6A6A6A7777777777777777778181818181818181818787878787878787877C7C7C
+7C7C7C7C7C7C7C7C7C6E6E6E6E6E6E6E6E6E5A5A5A5A5A5A5A5A5A414141414141414141323232
+3232323232323232322C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D343434343434343434353535
+3535353535353636363636363636363636363A3A3A3A3A3A3A3A3A3F3F3F3F3F3F3F3F3F464646
+4646464646464C4C4C4C4C4C4C4C4C5050505050505050505050505D5D5D5D5D5D5D5D5D9D9D9D
+9D9D9D9D9D9DEDEDEDEDEDEDEDEDEDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEE7E7E7E7E7E7E7E7E7969696969696969696
+9696964D4D4D4D4D4D4D4D4D353535353535353535303030303030303030313131313131313131
+313131313131313131313131313131313131313131313131313131313131313131313131313131
+3030303030303030302F2F2F2F2F2F2F2F2F2F2F2F313131313131313131323232323232323232
+3030303030303030302B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C
+2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C
+2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D313131313131313131313131
+353535353535353535363636363636363636343434343434343434303030303030303030303030
+2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F343434343434343434373737373737373737373737
+3737373737373737373A3A3A3A3A3A3A3A3A3E3E3E3E3E3E3E3E3E3A3A3A3A3A3A3A3A3A353535
+353535353535323232323232323232323232323232323232323232313131313131313131303030
+3030303030302F2F2F2F2F2F2F2F2F2F2F2F303030303030303030363636363636363636454545
+4545454545455959595959595959597575757575757575757575759191919191919191919D9D9D
+9D9D9D9D9D9DA2A2A2A2A2A2A2A2A2A6A6A6A6A6A6A6A6A69C9C9C9C9C9C9C9C9C9C9C9C888888
+8888888888887171717171717171715252525252525252523939393939393939393939392F2F2F
+2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C313131313131313131363636363636363636363636363636
+3636363636363939393939393939393C3C3C3C3C3C3C3C3C424242424242424242474747474747
+4747474F4F4F4F4F4F4F4F4F4F4F4F565656565656565656747474747474747474CFCFCFCFCFCF
+CFCFCFFDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFD
+FDFDFDEDEDEDEDEDEDEDEDEDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEE7E7E7E7E7E7E7E7E79696969696969696969696964D4D4D4D4D4D4D4D4D
+353535353535353535303030303030303030313131313131313131313131313131313131313131
+3131313131313131313131313131313131313131313131313131313030303030303030302F2F2F
+2F2F2F2F2F2F2F2F2F3131313131313131313232323232323232323030303030303030302B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2C2C2C
+2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D313131313131313131313131353535353535353535363636
+3636363636363434343434343434343030303030303030303030302F2F2F2F2F2F2F2F2F2F2F2F
+2F2F2F2F2F2F3434343434343434343737373737373737373737373737373737373737373A3A3A
+3A3A3A3A3A3A3E3E3E3E3E3E3E3E3E3A3A3A3A3A3A3A3A3A353535353535353535323232323232
+3232323232323232323232323232323131313131313131313030303030303030302F2F2F2F2F2F
+2F2F2F2F2F2F303030303030303030363636363636363636454545454545454545595959595959
+5959597575757575757575757575759191919191919191919D9D9D9D9D9D9D9D9DA2A2A2A2A2A2
+A2A2A2A6A6A6A6A6A6A6A6A69C9C9C9C9C9C9C9C9C9C9C9C888888888888888888717171717171
+7171715252525252525252523939393939393939393939392F2F2F2F2F2F2F2F2F2C2C2C2C2C2C
+2C2C2C313131313131313131363636363636363636363636363636363636363636393939393939
+3939393C3C3C3C3C3C3C3C3C4242424242424242424747474747474747474F4F4F4F4F4F4F4F4F
+4F4F4F565656565656565656747474747474747474CFCFCFCFCFCFCFCFCFFDFDFDFDFDFDFDFDFD
+FDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDED
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEE7E7E7
+E7E7E7E7E7E79696969696969696969696964D4D4D4D4D4D4D4D4D353535353535353535303030
+303030303030313131313131313131313131313131313131313131313131313131313131313131
+3131313131313131313131313131313030303030303030302F2F2F2F2F2F2F2F2F2F2F2F313131
+3131313131313232323232323232323030303030303030302B2B2B2B2B2B2B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D
+2D2D2D313131313131313131313131353535353535353535363636363636363636343434343434
+3434343030303030303030303030302F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F343434343434
+3434343737373737373737373737373737373737373737373A3A3A3A3A3A3A3A3A3E3E3E3E3E3E
+3E3E3E3A3A3A3A3A3A3A3A3A353535353535353535323232323232323232323232323232323232
+3232323131313131313131313030303030303030302F2F2F2F2F2F2F2F2F2F2F2F303030303030
+303030363636363636363636454545454545454545595959595959595959757575757575757575
+7575759191919191919191919D9D9D9D9D9D9D9D9DA2A2A2A2A2A2A2A2A2A6A6A6A6A6A6A6A6A6
+9C9C9C9C9C9C9C9C9C9C9C9C888888888888888888717171717171717171525252525252525252
+3939393939393939393939392F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C313131313131313131
+3636363636363636363636363636363636363636363939393939393939393C3C3C3C3C3C3C3C3C
+4242424242424242424747474747474747474F4F4F4F4F4F4F4F4F4F4F4F565656565656565656
+747474747474747474CFCFCFCFCFCFCFCFCFFDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBCBCBCBCBCBCBCBCBCB717171717171
+7171717171713E3E3E3E3E3E3E3E3E313131313131313131303030303030303030303030303030
+3030303131313131313131313131313131313131313131313030303030303030302D2D2D2D2D2D
+2D2D2D2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131313131313131
+3131313030303030303030302F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C
+2C2C2C2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B292929292929
+2929292B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F313131313131313131
+3131313030303030303030302D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B292929292929292929
+2929292929292929292929292929292929292929292C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+303030303030303030303030323232323232323232323232323232323232343434343434343434
+343434343434343434353535353535353535353535343434343434343434323232323232323232
+313131313131313131343434343434343434343434373737373737373737474747474747474747
+5E5E5E5E5E5E5E5E5E797979797979797979959595959595959595959595B4B4B4B4B4B4B4B4B4
+BABABABABABABABABAB9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B0B0B0B0B0B0B0B0B0B0B0B0
+A1A1A1A1A1A1A1A1A1878787878787878787676767676767676767464646464646464646464646
+3131313131313131312C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F363636363636363636393939
+3939393939393939393939393939393939393B3B3B3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F424242
+4242424242424848484848484848484848484E4E4E4E4E4E4E4E4E5E5E5E5E5E5E5E5E5EA9A9A9
+A9A9A9A9A9A9F4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFB
+FBFBFBFBFBFBDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFBFBFBFBFBFBFBFBFBCBCBCBCBCBCBCBCBCB7171717171717171717171713E3E3E3E3E3E
+3E3E3E313131313131313131303030303030303030303030303030303030313131313131313131
+3131313131313131313131313030303030303030302D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C
+2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131313131313131313131303030303030303030
+2F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D
+2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B2929292929292929292B2B2B2B2B2B2B2B2B
+2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F313131313131313131313131303030303030303030
+2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B292929292929292929292929292929292929292929
+2929292929292929292C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C303030303030303030303030
+323232323232323232323232323232323232343434343434343434343434343434343434353535
+353535353535353535343434343434343434323232323232323232313131313131313131343434
+3434343434343434343737373737373737374747474747474747475E5E5E5E5E5E5E5E5E797979
+797979797979959595959595959595959595B4B4B4B4B4B4B4B4B4BABABABABABABABABAB9B9B9
+B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B0B0B0B0B0B0B0B0B0B0B0B0A1A1A1A1A1A1A1A1A1878787
+8787878787876767676767676767674646464646464646464646463131313131313131312C2C2C
+2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F363636363636363636393939393939393939393939393939
+3939393939393B3B3B3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F424242424242424242484848484848
+4848484848484E4E4E4E4E4E4E4E4E5E5E5E5E5E5E5E5E5EA9A9A9A9A9A9A9A9A9F4F4F4F4F4F4
+F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDFDFDFDFDFDF
+DFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFB
+CBCBCBCBCBCBCBCBCB7171717171717171717171713E3E3E3E3E3E3E3E3E313131313131313131
+303030303030303030303030303030303030313131313131313131313131313131313131313131
+3030303030303030302D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2F2F2F
+3131313131313131313131313131313131313030303030303030302F2F2F2F2F2F2F2F2F2F2F2F
+2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2B2B2B
+2B2B2B2B2B2B2B2B2B2929292929292929292B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F
+2F2F2F2F2F2F3131313131313131313131313030303030303030302D2D2D2D2D2D2D2D2D2B2B2B
+2B2B2B2B2B2B2929292929292929292929292929292929292929292929292929292929292C2C2C
+2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C303030303030303030303030323232323232323232323232
+323232323232343434343434343434343434343434343434353535353535353535353535343434
+343434343434323232323232323232313131313131313131343434343434343434343434373737
+3737373737374747474747474747475E5E5E5E5E5E5E5E5E797979797979797979959595959595
+959595959595B4B4B4B4B4B4B4B4B4BABABABABABABABABAB9B9B9B9B9B9B9B9B9B8B8B8B8B8B8
+B8B8B8B0B0B0B0B0B0B0B0B0B0B0B0A1A1A1A1A1A1A1A1A1878787878787878787676767676767
+6767674646464646464646464646463131313131313131312C2C2C2C2C2C2C2C2C2F2F2F2F2F2F
+2F2F2F3636363636363636363939393939393939393939393939393939393939393B3B3B3B3B3B
+3B3B3B3F3F3F3F3F3F3F3F3F4242424242424242424848484848484848484848484E4E4E4E4E4E
+4E4E4E5E5E5E5E5E5E5E5E5EA9A9A9A9A9A9A9A9A9F4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF4F4F4F4F4F4F4F4F4A8A8A8A8A8A8A8A8A8555555
+5555555555555555553636363636363636363131313131313131313030303030303030302D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D292929
+2929292929292828282828282828282B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2D2D2D
+2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F3232323232323232323232322F2F2F2F2F2F2F2F2F2B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C292929
+292929292929282828282828282828292929292929292929303030303030303030323232323232
+3232323232323131313131313131312C2C2C2C2C2C2C2C2C272727272727272727272727272727
+2727272727272828282828282828282929292929292929292C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+2C2C2C2F2F2F2F2F2F2F2F2F2F2F2F323232323232323232343434343434343434343434343434
+3434343737373737373737373C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3A3A3A3A3A3A
+3A3A3A3939393939393939393B3B3B3B3B3B3B3B3B3B3B3B464646464646464646616161616161
+6161618080808080808080809B9B9B9B9B9B9B9B9BB0B0B0B0B0B0B0B0B0B0B0B0CACACACACACA
+CACACACFCFCFCFCFCFCFCFCFCBCBCBCBCBCBCBCBCBC3C3C3C3C3C3C3C3C3BABABABABABABABABA
+BABABAB0B1B0B0B1B0B0B1B09E9E9E9E9E9E9E9E9E7F7F7F7F7F7F7F7F7F595959595959595959
+5959593A3A3A3A3A3A3A3A3A2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C323232323232323232
+3737373737373737373737373C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F
+424242424242424242464646464646464646464646484848484848484848525252525252525252
+848484848484848484DCDCDCDCDCDCDCDCDCDCDCDCFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FAFAFAFAFAFAFAFAFAD3D3D3D3D3D3D3D3D3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEF4F4F4F4F4F4F4F4F4A8A8A8A8A8A8A8A8A8555555555555555555555555363636
+3636363636363131313131313131313030303030303030302D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D292929292929292929282828282828
+2828282B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F
+2F2F2F3232323232323232323232322F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B
+2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C292929292929292929282828282828
+282828292929292929292929303030303030303030323232323232323232323232313131313131
+3131312C2C2C2C2C2C2C2C2C272727272727272727272727272727272727272727282828282828
+2828282929292929292929292C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F
+2F2F2F323232323232323232343434343434343434343434343434343434373737373737373737
+3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3A3A3A3A3A3A3A3A3A393939393939393939
+3B3B3B3B3B3B3B3B3B3B3B3B464646464646464646616161616161616161808080808080808080
+9B9B9B9B9B9B9B9B9BB0B0B0B0B0B0B0B0B0B0B0B0CACACACACACACACACACFCFCFCFCFCFCFCFCF
+CBCBCBCBCBCBCBCBCBC3C3C3C3C3C3C3C3C3BABABABABABABABABABABABAB0B1B0B0B1B0B0B1B0
+9E9E9E9E9E9E9E9E9E7F7F7F7F7F7F7F7F7F5959595959595959595959593A3A3A3A3A3A3A3A3A
+2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C323232323232323232373737373737373737373737
+3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F424242424242424242464646
+464646464646464646484848484848484848525252525252525252848484848484848484DCDCDC
+DCDCDCDCDCDCDCDCDCFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD3D3D3
+D3D3D3D3D3D3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEE6E6E6E6E6E6
+E6E6E6888888888888888888424242424242424242424242353535353535353535323232323232
+3232322F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B
+2B2B2B292929292929292929282828282828282828252525252525252525252525252525252525
+2525252727272727272727272828282828282828282D2D2D2D2D2D2D2D2D313131313131313131
+3131313030303030303030302B2B2B2B2B2B2B2B2B2828282828282828282C2C2C2C2C2C2C2C2C
+2D2D2D2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B252525252525252525222222222222222222
+2828282828282828282D2D2D2D2D2D2D2D2D2D2D2D3030303030303030302F2F2F2F2F2F2F2F2F
+2B2B2B2B2B2B2B2B2B2929292929292929292929292C2C2C2C2C2C2C2C2C303030303030303030
+303030303030303030313131313131313131353535353535353535353535393939393939393939
+3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F3F3F3F
+3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F484848484848484848484848
+5D5D5D5D5D5D5D5D5D7E7E7E7E7E7E7E7E7E9F9F9F9F9F9F9F9F9FBABABABABABABABABACBCBCB
+CBCBCBCBCBCBCBCBCBD5D5D5D5D5D5D5D5D5D7D7D7D7D7D7D7D7D7D3D3D3D3D3D3D3D3D3CBCBCB
+CBCBCBCBCBCBC1C1C1C1C1C1C1C1C1C1C1C1B8B8B8B8B8B8B8B8B8ABABABABABABABABAB949494
+9494949494947474747474747474747474744E4E4E4E4E4E4E4E4E3232323232323232322C2C2C
+2C2C2C2C2C2C3030303030303030303434343434343434343434343B3B3B3B3B3B3B3B3B3F3F3F
+3F3F3F3F3F3F404040404040404040464646464646464646474747474747474747474747474747
+4747474747474F4F4F4F4F4F4F4F4F727272727272727272B8B8B8B8B8B8B8B8B8B8B8B8F0F0F0
+F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDEAEAEAEAEAEAEAEAEAFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEE6E6E6E6E6E6E6E6E6888888888888888888
+4242424242424242424242423535353535353535353232323232323232322F2F2F2F2F2F2F2F2F
+2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B292929292929292929
+282828282828282828252525252525252525252525252525252525252525272727272727272727
+2828282828282828282D2D2D2D2D2D2D2D2D313131313131313131313131303030303030303030
+2B2B2B2B2B2B2B2B2B2828282828282828282C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D
+2B2B2B2B2B2B2B2B2B2525252525252525252222222222222222222828282828282828282D2D2D
+2D2D2D2D2D2D2D2D2D3030303030303030302F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B292929
+2929292929292929292C2C2C2C2C2C2C2C2C303030303030303030303030303030303030313131
+3131313131313535353535353535353535353939393939393939393E3E3E3E3E3E3E3E3E3F3F3F
+3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3E3E3E
+3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F4848484848484848484848485D5D5D5D5D5D5D5D5D7E7E7E
+7E7E7E7E7E7E9F9F9F9F9F9F9F9F9FBABABABABABABABABACBCBCBCBCBCBCBCBCBCBCBCBD5D5D5
+D5D5D5D5D5D5D7D7D7D7D7D7D7D7D7D3D3D3D3D3D3D3D3D3CBCBCBCBCBCBCBCBCBC1C1C1C1C1C1
+C1C1C1C1C1C1B8B8B8B8B8B8B8B8B8ABABABABABABABABAB949494949494949494747474747474
+7474747474744E4E4E4E4E4E4E4E4E3232323232323232322C2C2C2C2C2C2C2C2C303030303030
+3030303434343434343434343434343B3B3B3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F404040404040
+4040404646464646464646464747474747474747474747474747474747474747474F4F4F4F4F4F
+4F4F4F727272727272727272B8B8B8B8B8B8B8B8B8B8B8B8F0F0F0F0F0F0F0F0F0FEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFDFDFDFDFDFDFDFDFDEAEAEAEAEAEAEAEAEAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEE6E6E6E6E6E6E6E6E6888888888888888888424242424242424242424242
+3535353535353535353232323232323232322F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B292929292929292929282828282828282828252525
+2525252525252525252525252525252525252727272727272727272828282828282828282D2D2D
+2D2D2D2D2D2D3131313131313131313131313030303030303030302B2B2B2B2B2B2B2B2B282828
+2828282828282C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B252525
+2525252525252222222222222222222828282828282828282D2D2D2D2D2D2D2D2D2D2D2D303030
+3030303030302F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B2929292929292929292929292C2C2C
+2C2C2C2C2C2C303030303030303030303030303030303030313131313131313131353535353535
+3535353535353939393939393939393E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F3E3E3E3E3E3E
+3E3E3E3F3F3F3F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F
+3F3F3F4848484848484848484848485D5D5D5D5D5D5D5D5D7E7E7E7E7E7E7E7E7E9F9F9F9F9F9F
+9F9F9FBABABABABABABABABACBCBCBCBCBCBCBCBCBCBCBCBD5D5D5D5D5D5D5D5D5D7D7D7D7D7D7
+D7D7D7D3D3D3D3D3D3D3D3D3CBCBCBCBCBCBCBCBCBC1C1C1C1C1C1C1C1C1C1C1C1B8B8B8B8B8B8
+B8B8B8ABABABABABABABABAB9494949494949494947474747474747474747474744E4E4E4E4E4E
+4E4E4E3232323232323232322C2C2C2C2C2C2C2C2C303030303030303030343434343434343434
+3434343B3B3B3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F404040404040404040464646464646464646
+4747474747474747474747474747474747474747474F4F4F4F4F4F4F4F4F727272727272727272
+B8B8B8B8B8B8B8B8B8B8B8B8F0F0F0F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFD
+EAEAEAEAEAEAEAEAEAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCCECECE
+CECECECECECE6C6C6C6C6C6C6C6C6C3C3C3C3C3C3C3C3C3C3C3C3C353535353535353535303030
+303030303030292929292929292929282828282828282828282828282828282828282828272727
+272727272727282828282828282828272727272727272727252525252525252525252525252525
+2525252525252727272727272727272828282828282828282C2C2C2C2C2C2C2C2C2F2F2F2F2F2F
+2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B292929292929292929292929292929
+292929292929292929292929292929272727272727272727242424242424242424212121212121
+2121212222222222222222222525252525252525252525252828282828282828282B2B2B2B2B2B
+2B2B2B2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F
+2F2F2F303030303030303030313131313131313131353535353535353535353535373737373737
+3737373F3F3F3F3F3F3F3F3F454545454545454545464646464646464646424242424242424242
+4242424242424242424242424444444444444444444C4C4C4C4C4C4C4C4C616161616161616161
+6161617C7C7C7C7C7C7C7C7C9F9F9F9F9F9F9F9F9FC1C1C1C1C1C1C1C1C1D3D3D3D3D3D3D3D3D3
+DADADADADADADADADADADADAD8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D5D5D5D5D5D5D5D5D5
+D0D0D0D0D0D0D0D0D0C6C6C6C6C6C6C6C6C6C6C6C6BABABABABABABABABAAFAFAFAFAFAFAFAFAF
+A2A2A2A2A2A2A2A2A29191919191919191919191916C6C6C6C6C6C6C6C6C404040404040404040
+303030303030303030303030303030303030313131313131313131313131353535353535353535
+3B3B3B3B3B3B3B3B3B4141414141414141414747474747474747474B4B4B4B4B4B4B4B4B4B4B4B
+4848484848484848484F4F4F4F4F4F4F4F4F737373737373737373AFAFAFAFAFAFAFAFAFAFAFAF
+E6E6E6E6E6E6E6E6E6FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDEDEDEDEDEDEDEDEDEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCCECECECECECECECECE6C6C6C6C6C6C
+6C6C6C3C3C3C3C3C3C3C3C3C3C3C3C353535353535353535303030303030303030292929292929
+292929282828282828282828282828282828282828282828272727272727272727282828282828
+282828272727272727272727252525252525252525252525252525252525252525272727272727
+2727272828282828282828282C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F
+2F2F2F2B2B2B2B2B2B2B2B2B292929292929292929292929292929292929292929292929292929
+292929272727272727272727242424242424242424212121212121212121222222222222222222
+2525252525252525252525252828282828282828282B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C
+2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F303030303030303030
+3131313131313131313535353535353535353535353737373737373737373F3F3F3F3F3F3F3F3F
+454545454545454545464646464646464646424242424242424242424242424242424242424242
+4444444444444444444C4C4C4C4C4C4C4C4C6161616161616161616161617C7C7C7C7C7C7C7C7C
+9F9F9F9F9F9F9F9F9FC1C1C1C1C1C1C1C1C1D3D3D3D3D3D3D3D3D3DADADADADADADADADADADADA
+D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D5D5D5D5D5D5D5D5D5D0D0D0D0D0D0D0D0D0C6C6C6
+C6C6C6C6C6C6C6C6C6BABABABABABABABABAAFAFAFAFAFAFAFAFAFA2A2A2A2A2A2A2A2A2919191
+9191919191919191916C6C6C6C6C6C6C6C6C404040404040404040303030303030303030303030
+3030303030303131313131313131313131313535353535353535353B3B3B3B3B3B3B3B3B414141
+4141414141414747474747474747474B4B4B4B4B4B4B4B4B4B4B4B4848484848484848484F4F4F
+4F4F4F4F4F4F737373737373737373AFAFAFAFAFAFAFAFAFAFAFAFE6E6E6E6E6E6E6E6E6FDFDFD
+FDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDEDEDEDEDEDEDEDEDEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF2F2F2F2F2F2F2F2F2ADADADADADADADADAD575757575757575757393939393939393939
+3939393434343434343434342D2D2D2D2D2D2D2D2D282828282828282828272727272727272727
+242424242424242424242424252525252525252525252525252525252525252525252525252525
+272727272727272727282828282828282828282828282828282828282828282828282828282828
+2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C
+2B2B2B2B2B2B2B2B2B282828282828282828252525252525252525252525242424242424242424
+242424242424242424242424242424242424242424242424242424272727272727272727272727
+252525252525252525252525252525252525282828282828282828272727272727272727272727
+2525252525252525252828282828282828282929292929292929292C2C2C2C2C2C2C2C2C2D2D2D
+2D2D2D2D2D2D2D2D2D3030303030303030303434343434343434343C3C3C3C3C3C3C3C3C454545
+454545454545494949494949494949494949525252525252525252626262626262626262777777
+777777777777919191919191919191919191ADADADADADADADADADCBCBCBCBCBCBCBCBCBDFDFDF
+DFDFDFDFDFDFE2E2E2E2E2E2E2E2E2DFE0DFDFE0DFDFE0DFDFE0DFDBDBDBDBDBDBDBDBDBD9D9D9
+D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D4D4D4D4D4D4D4D4D4CBCBCBCBCBCBCBCBCBCBCBCBBEBEBE
+BEBEBEBEBEBEB3B3B3B3B3B3B3B3B3ACACACACACACACACACA4A4A4A4A4A4A4A4A4A4A4A48B8B8B
+8B8B8B8B8B8B595959595959595959363636363636363636303030303030303030313131313131
+3131313131313030303030303030303636363636363636363F3F3F3F3F3F3F3F3F454545454545
+4545454848484848484848484848484545454545454545454D4D4D4D4D4D4D4D4D6E6E6E6E6E6E
+6E6E6EA7A7A7A7A7A7A7A7A7A7A7A7E3E3E3E3E3E3E3E3E3F9F9F9F9F9F9F9F9F9FEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9C5C5C5C5C5C5C5C5C5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F2F2F2F2F2F2F2F2
+ADADADADADADADADAD575757575757575757393939393939393939393939343434343434343434
+2D2D2D2D2D2D2D2D2D282828282828282828272727272727272727242424242424242424242424
+252525252525252525252525252525252525252525252525252525272727272727272727282828
+2828282828282828282828282828282828282828282828282828282C2C2C2C2C2C2C2C2C2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B282828
+282828282828252525252525252525252525242424242424242424242424242424242424242424
+242424242424242424242424242424272727272727272727272727252525252525252525252525
+252525252525282828282828282828272727272727272727272727252525252525252525282828
+2828282828282929292929292929292C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D303030
+3030303030303434343434343434343C3C3C3C3C3C3C3C3C454545454545454545494949494949
+494949494949525252525252525252626262626262626262777777777777777777919191919191
+919191919191ADADADADADADADADADCBCBCBCBCBCBCBCBCBDFDFDFDFDFDFDFDFDFE2E2E2E2E2E2
+E2E2E2DFE0DFDFE0DFDFE0DFDFE0DFDBDBDBDBDBDBDBDBDBD9D9D9D9D9D9D9D9D9D7D7D7D7D7D7
+D7D7D7D4D4D4D4D4D4D4D4D4CBCBCBCBCBCBCBCBCBCBCBCBBEBEBEBEBEBEBEBEBEB3B3B3B3B3B3
+B3B3B3ACACACACACACACACACA4A4A4A4A4A4A4A4A4A4A4A48B8B8B8B8B8B8B8B8B595959595959
+595959363636363636363636303030303030303030313131313131313131313131303030303030
+3030303636363636363636363F3F3F3F3F3F3F3F3F454545454545454545484848484848484848
+4848484545454545454545454D4D4D4D4D4D4D4D4D6E6E6E6E6E6E6E6E6EA7A7A7A7A7A7A7A7A7
+A7A7A7E3E3E3E3E3E3E3E3E3F9F9F9F9F9F9F9F9F9FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F2F2F2F2F2F2F2F2ADADADADADADADADAD575757
+5757575757573939393939393939393939393434343434343434342D2D2D2D2D2D2D2D2D282828
+282828282828272727272727272727242424242424242424242424252525252525252525252525
+252525252525252525252525252525272727272727272727282828282828282828282828282828
+2828282828282828282828282828282C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B282828282828282828252525252525
+252525252525242424242424242424242424242424242424242424242424242424242424242424
+242424272727272727272727272727252525252525252525252525252525252525282828282828
+282828272727272727272727272727252525252525252525282828282828282828292929292929
+2929292C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D303030303030303030343434343434
+3434343C3C3C3C3C3C3C3C3C454545454545454545494949494949494949494949525252525252
+525252626262626262626262777777777777777777919191919191919191919191ADADADADADAD
+ADADADCBCBCBCBCBCBCBCBCBDFDFDFDFDFDFDFDFDFE2E2E2E2E2E2E2E2E2DFE0DFDFE0DFDFE0DF
+DFE0DFDBDBDBDBDBDBDBDBDBD9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D4D4D4D4D4D4D4D4D4
+CBCBCBCBCBCBCBCBCBCBCBCBBEBEBEBEBEBEBEBEBEB3B3B3B3B3B3B3B3B3ACACACACACACACACAC
+A4A4A4A4A4A4A4A4A4A4A4A48B8B8B8B8B8B8B8B8B595959595959595959363636363636363636
+303030303030303030313131313131313131313131303030303030303030363636363636363636
+3F3F3F3F3F3F3F3F3F454545454545454545484848484848484848484848454545454545454545
+4D4D4D4D4D4D4D4D4D6E6E6E6E6E6E6E6E6EA7A7A7A7A7A7A7A7A7A7A7A7E3E3E3E3E3E3E3E3E3
+F9F9F9F9F9F9F9F9F9FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5FFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFD
+FDFDFDFDFDFDE0E0E0E0E0E0E0E0E08A8A8A8A8A8A8A8A8A484848484848484848363636363636
+3636363636363030303030303030302B2B2B2B2B2B2B2B2B282828282828282828252525252525
+252525242424242424242424242424242424242424242424242424242424242424252525252525
+252525282828282828282828282828282828282828282828272727272727272727292929292929
+2929292D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B292929292929
+292929272727272727272727252525252525252525242424242424242424242424242424242424
+242424252525252525252525252525252525252525282828282828282828292929292929292929
+2929292828282828282828282929292929292929292C2C2C2C2C2C2C2C2C292929292929292929
+2929292727272727272727272828282828282828282929292929292929292B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F313131313131313131393939393939393939
+4545454545454545455B5B5B5B5B5B5B5B5B5B5B5B787878787878787878919191919191919191
+A7A7A7A7A7A7A7A7A7BCBCBCBCBCBCBCBCBCBCBCBCD3D3D3D3D3D3D3D3D3DFE0DFDFE0DFDFE0DF
+E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E0E0E0E0E0E0E0E0E0E0E0E0DEDEDEDEDEDEDEDEDE
+DADADADADADADADADAD8D8D8D8D8D8D8D8D8D6D6D6D6D6D6D6D6D6CDCDCDCDCDCDCDCDCDCDCDCD
+C1C1C1C1C1C1C1C1C1B8B8B8B8B8B8B8B8B8B2B2B2B2B2B2B2B2B2AEAEAEAEAEAEAEAEAEAEAEAE
+9F9F9F9F9F9F9F9F9F767676767676767676424242424242424242313131313131313131323232
+3232323232323232322F2F2F2F2F2F2F2F2F303030303030303030393939393939393939404040
+4040404040404141414141414141414141414040404040404040404747474747474747475F605F
+5F605F5F605F959595959595959595959595DBDBDBDBDBDBDBDBDBF4F4F4F4F4F4F4F4F4FDFDFD
+FDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFB
+FBFBFBFBFBFBDADADADADADADADADAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDFDFDFDE0E0E0E0E0E0
+E0E0E08A8A8A8A8A8A8A8A8A484848484848484848363636363636363636363636303030303030
+3030302B2B2B2B2B2B2B2B2B282828282828282828252525252525252525242424242424242424
+242424242424242424242424242424242424242424252525252525252525282828282828282828
+2828282828282828282828282727272727272727272929292929292929292D2D2D2D2D2D2D2D2D
+2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B292929292929292929272727272727272727
+252525252525252525242424242424242424242424242424242424242424252525252525252525
+252525252525252525282828282828282828292929292929292929292929282828282828282828
+2929292929292929292C2C2C2C2C2C2C2C2C292929292929292929292929272727272727272727
+2828282828282828282929292929292929292B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B
+2F2F2F2F2F2F2F2F2F3131313131313131313939393939393939394545454545454545455B5B5B
+5B5B5B5B5B5B5B5B5B787878787878787878919191919191919191A7A7A7A7A7A7A7A7A7BCBCBC
+BCBCBCBCBCBCBCBCBCD3D3D3D3D3D3D3D3D3DFE0DFDFE0DFDFE0DFE5E5E5E5E5E5E5E5E5E4E4E4
+E4E4E4E4E4E4E0E0E0E0E0E0E0E0E0E0E0E0DEDEDEDEDEDEDEDEDEDADADADADADADADADAD8D8D8
+D8D8D8D8D8D8D6D6D6D6D6D6D6D6D6CDCDCDCDCDCDCDCDCDCDCDCDC1C1C1C1C1C1C1C1C1B8B8B8
+B8B8B8B8B8B8B2B2B2B2B2B2B2B2B2AEAEAEAEAEAEAEAEAEAEAEAE9F9F9F9F9F9F9F9F9F767676
+7676767676764242424242424242423131313131313131313232323232323232323232322F2F2F
+2F2F2F2F2F2F303030303030303030393939393939393939404040404040404040414141414141
+4141414141414040404040404040404747474747474747475F605F5F605F5F605F959595959595
+959595959595DBDBDBDBDBDBDBDBDBF4F4F4F4F4F4F4F4F4FDFDFDFDFDFDFDFDFDFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDADADADADADA
+DADADAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDFDFDFDE0E0E0E0E0E0E0E0E08A8A8A8A8A8A8A8A8A
+4848484848484848483636363636363636363636363030303030303030302B2B2B2B2B2B2B2B2B
+282828282828282828252525252525252525242424242424242424242424242424242424242424
+242424242424242424252525252525252525282828282828282828282828282828282828282828
+2727272727272727272929292929292929292D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C
+2B2B2B2B2B2B2B2B2B292929292929292929272727272727272727252525252525252525242424
+242424242424242424242424242424242424252525252525252525252525252525252525282828
+2828282828282929292929292929292929292828282828282828282929292929292929292C2C2C
+2C2C2C2C2C2C292929292929292929292929272727272727272727282828282828282828292929
+2929292929292B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F313131
+3131313131313939393939393939394545454545454545455B5B5B5B5B5B5B5B5B5B5B5B787878
+787878787878919191919191919191A7A7A7A7A7A7A7A7A7BCBCBCBCBCBCBCBCBCBCBCBCD3D3D3
+D3D3D3D3D3D3DFE0DFDFE0DFDFE0DFE5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E0E0E0E0E0E0
+E0E0E0E0E0E0DEDEDEDEDEDEDEDEDEDADADADADADADADADAD8D8D8D8D8D8D8D8D8D6D6D6D6D6D6
+D6D6D6CDCDCDCDCDCDCDCDCDCDCDCDC1C1C1C1C1C1C1C1C1B8B8B8B8B8B8B8B8B8B2B2B2B2B2B2
+B2B2B2AEAEAEAEAEAEAEAEAEAEAEAE9F9F9F9F9F9F9F9F9F767676767676767676424242424242
+4242423131313131313131313232323232323232323232322F2F2F2F2F2F2F2F2F303030303030
+303030393939393939393939404040404040404040414141414141414141414141404040404040
+4040404747474747474747475F605F5F605F5F605F959595959595959595959595DBDBDBDBDBDB
+DBDBDBF4F4F4F4F4F4F4F4F4FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDADADADADADADADADAFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFA
+FAFAFAFAFAFAFAFAFAC5C5C5C5C5C5C5C5C56F6F6F6F6F6F6F6F6F404040404040404040323232
+3232323232323232322F2F2F2F2F2F2F2F2F282828282828282828272727272727272727252525
+252525252525272727272727272727272727272727272727272727252525252525252525252525
+252525252525252525252525252525252525252525252525252525242424242424242424252525
+252525252525282828282828282828292929292929292929292929282828282828282828272727
+272727272727252525252525252525252525252525252525272727272727272727272727282828
+2828282828282828282828282828282929292929292929292B2B2B2B2B2B2B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B3030303030303030303434343434343434342D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D303030303030
+3030303232323232323232323232323737373737373737373E3E3E3E3E3E3E3E3E464646464646
+4646465757575757575757577B7B7B7B7B7B7B7B7B7B7B7B9C9C9C9C9C9C9C9C9CB2B2B2B2B2B2
+B2B2B2C5C5C5C5C5C5C5C5C5D8D8D8D8D8D8D8D8D8D8D8D8E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6
+E6E6E6E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DF
+DFE0DFDBDBDBDBDBDBDBDBDBD9D9D9D9D9D9D9D9D9D6D6D6D6D6D6D6D6D6CDCDCDCDCDCDCDCDCD
+CDCDCDC6C6C6C6C6C6C6C6C6BFBFBFBFBFBFBFBFBFB6B6B6B6B6B6B6B6B6B1B1B1B1B1B1B1B1B1
+B1B1B1ACACACACACACACACAC9191919191919191915B5B5B5B5B5B5B5B5B373737373737373737
+353535353535353535353535313131313131313131303030303030303030353535353535353535
+3B3B3B3B3B3B3B3B3B3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E454545454545454545
+5E5E5E5E5E5E5E5E5E8B8B8B8B8B8B8B8B8B8B8B8BCACACACACACACACACAF2F2F2F2F2F2F2F2F2
+FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9CCCCCCCCCCCCCCCCCCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAFAFAFAC5C5C5
+C5C5C5C5C5C56F6F6F6F6F6F6F6F6F4040404040404040403232323232323232323232322F2F2F
+2F2F2F2F2F2F282828282828282828272727272727272727252525252525252525272727272727
+272727272727272727272727272727252525252525252525252525252525252525252525252525
+252525252525252525252525252525242424242424242424252525252525252525282828282828
+282828292929292929292929292929282828282828282828272727272727272727252525252525
+252525252525252525252525272727272727272727272727282828282828282828282828282828
+2828282929292929292929292B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B
+2B2B2B3030303030303030303434343434343434342D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D303030303030303030323232323232323232
+3232323737373737373737373E3E3E3E3E3E3E3E3E464646464646464646575757575757575757
+7B7B7B7B7B7B7B7B7B7B7B7B9C9C9C9C9C9C9C9C9CB2B2B2B2B2B2B2B2B2C5C5C5C5C5C5C5C5C5
+D8D8D8D8D8D8D8D8D8D8D8D8E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E3E3E3E3E3E3E3E3E3
+E2E2E2E2E2E2E2E2E2DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDBDBDBDBDBDBDBDBDB
+D9D9D9D9D9D9D9D9D9D6D6D6D6D6D6D6D6D6CDCDCDCDCDCDCDCDCDCDCDCDC6C6C6C6C6C6C6C6C6
+BFBFBFBFBFBFBFBFBFB6B6B6B6B6B6B6B6B6B1B1B1B1B1B1B1B1B1B1B1B1ACACACACACACACACAC
+9191919191919191915B5B5B5B5B5B5B5B5B373737373737373737353535353535353535353535
+3131313131313131313030303030303030303535353535353535353B3B3B3B3B3B3B3B3B3E3E3E
+3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E4545454545454545455E5E5E5E5E5E5E5E5E8B8B8B
+8B8B8B8B8B8B8B8B8BCACACACACACACACACAF2F2F2F2F2F2F2F2F2FDFDFDFDFDFDFDFDFDFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CCCCCC
+CCCCCCCCCCCCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFEFEFEFEFEFEFEFEFEF3F3F3F3F3F3F3F3F3F3F3F3ACACACACACACACACAC5C5C5C5C5C5C
+5C5C5C3A3A3A3A3A3A3A3A3A3131313131313131313131312C2C2C2C2C2C2C2C2C282828282828
+282828272727272727272727272727272727272727272727272727272727272727272727272727
+272727282828282828282828252525252525252525222222222222222222212121212121212121
+2121212222222222222222222727272727272727272B2B2B2B2B2B2B2B2B292929292929292929
+2929292828282828282828282828282828282828282B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F313131313131313131
+3030303030303030302C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F313131313131313131
+3232323232323232323636363636363636363A3A3A3A3A3A3A3A3A3A3A3A444444444444444444
+4D4D4D4D4D4D4D4D4D575757575757575757707070707070707070979797979797979797979797
+B8B8B8B8B8B8B8B8B8CBCBCBCBCBCBCBCBCBDCDCDCDCDCDCDCDCDCE9E9E9E9E9E9E9E9E9E9E9E9
+EEEEEEEEEEEEEEEEEEEBEBEBEBEBEBEBEBEBE4E4E4E4E4E4E4E4E4E1E1E1E1E1E1E1E1E1E1E1E1
+E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DDDDDDDDDDDDDDDDDDD9D9D9D9D9D9D9D9D9D6D6D5
+D6D6D5D6D6D5D0D0D0D0D0D0D0D0D0D0D0D0CBCBCBCBCBCBCBCBCBC5C5C5C5C5C5C5C5C5BBBBBB
+BBBBBBBBBBBBB4B4B4B4B4B4B4B4B4B4B4B4B2B2B2B2B2B2B2B2B2A3A3A3A3A3A3A3A3A3767676
+767676767676444444444444444444363636363636363636363636363636363636363636353535
+3535353535353636363636363636363B3B3B3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F3F3F3F3E3E3E
+3E3E3E3E3E3E464646464646464646707070707070707070A6A6A6A6A6A6A6A6A6A6A6A6D9D9D9
+D9D9D9D9D9D9F8F8F8F8F8F8F8F8F8FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFACFCFCFCFCFCFCFCFCFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE
+F3F3F3F3F3F3F3F3F3F3F3F3ACACACACACACACACAC5C5C5C5C5C5C5C5C5C3A3A3A3A3A3A3A3A3A
+3131313131313131313131312C2C2C2C2C2C2C2C2C282828282828282828272727272727272727
+272727272727272727272727272727272727272727272727272727272727282828282828282828
+252525252525252525222222222222222222212121212121212121212121222222222222222222
+2727272727272727272B2B2B2B2B2B2B2B2B292929292929292929292929282828282828282828
+2828282828282828282B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F3131313131313131313030303030303030302C2C2C
+2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F313131313131313131323232323232323232363636
+3636363636363A3A3A3A3A3A3A3A3A3A3A3A4444444444444444444D4D4D4D4D4D4D4D4D575757
+575757575757707070707070707070979797979797979797979797B8B8B8B8B8B8B8B8B8CBCBCB
+CBCBCBCBCBCBDCDCDCDCDCDCDCDCDCE9E9E9E9E9E9E9E9E9E9E9E9EEEEEEEEEEEEEEEEEEEBEBEB
+EBEBEBEBEBEBE4E4E4E4E4E4E4E4E4E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1
+E1E1E1E1E1E1DDDDDDDDDDDDDDDDDDD9D9D9D9D9D9D9D9D9D6D6D5D6D6D5D6D6D5D0D0D0D0D0D0
+D0D0D0D0D0D0CBCBCBCBCBCBCBCBCBC5C5C5C5C5C5C5C5C5BBBBBBBBBBBBBBBBBBB4B4B4B4B4B4
+B4B4B4B4B4B4B2B2B2B2B2B2B2B2B2A3A3A3A3A3A3A3A3A3767676767676767676444444444444
+444444363636363636363636363636363636363636363636353535353535353535363636363636
+3636363B3B3B3B3B3B3B3B3B3F3F3F3F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E464646464646
+464646707070707070707070A6A6A6A6A6A6A6A6A6A6A6A6D9D9D9D9D9D9D9D9D9F8F8F8F8F8F8
+F8F8F8FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFAFAFAFAFAFAFAFAFACFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF3F3F3F3F3F3F3F3F3F3F3F3
+ACACACACACACACACAC5C5C5C5C5C5C5C5C5C3A3A3A3A3A3A3A3A3A313131313131313131313131
+2C2C2C2C2C2C2C2C2C282828282828282828272727272727272727272727272727272727272727
+272727272727272727272727272727272727282828282828282828252525252525252525222222
+2222222222222121212121212121212121212222222222222222222727272727272727272B2B2B
+2B2B2B2B2B2B2929292929292929292929292828282828282828282828282828282828282B2B2B
+2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F
+2F2F2F2F2F2F3131313131313131313030303030303030302C2C2C2C2C2C2C2C2C2C2C2C2F2F2F
+2F2F2F2F2F2F3131313131313131313232323232323232323636363636363636363A3A3A3A3A3A
+3A3A3A3A3A3A4444444444444444444D4D4D4D4D4D4D4D4D575757575757575757707070707070
+707070979797979797979797979797B8B8B8B8B8B8B8B8B8CBCBCBCBCBCBCBCBCBDCDCDCDCDCDC
+DCDCDCE9E9E9E9E9E9E9E9E9E9E9E9EEEEEEEEEEEEEEEEEEEBEBEBEBEBEBEBEBEBE4E4E4E4E4E4
+E4E4E4E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DDDDDDDDDDDD
+DDDDDDD9D9D9D9D9D9D9D9D9D6D6D5D6D6D5D6D6D5D0D0D0D0D0D0D0D0D0D0D0D0CBCBCBCBCBCB
+CBCBCBC5C5C5C5C5C5C5C5C5BBBBBBBBBBBBBBBBBBB4B4B4B4B4B4B4B4B4B4B4B4B2B2B2B2B2B2
+B2B2B2A3A3A3A3A3A3A3A3A3767676767676767676444444444444444444363636363636363636
+3636363636363636363636363535353535353535353636363636363636363B3B3B3B3B3B3B3B3B
+3F3F3F3F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E464646464646464646707070707070707070
+A6A6A6A6A6A6A6A6A6A6A6A6D9D9D9D9D9D9D9D9D9F8F8F8F8F8F8F8F8F8FEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFA
+CFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFDFDFDFDFDFDFDFDFDE1E1E1E1E1E1E1E1E1E1E1E18E8E8E8E8E8E8E8E8E4F4F4F
+4F4F4F4F4F4F3737373737373737373030303030303030303030302B2B2B2B2B2B2B2B2B282828
+282828282828282828282828282828252525252525252525252525252525252525252525272727
+272727272727282828282828282828252525252525252525222222222222222222212121212121
+212121212121222222222222222222252525252525252525282828282828282828272727272727
+2727272727272727272727272727272929292929292929292D2D2D2D2D2D2D2D2D313131313131
+3131313232323232323232323232323232323232323232323030303030303030302D2D2D2D2D2D
+2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C
+2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F343434343434
+3434343737373737373737373939393939393939393F3F3F3F3F3F3F3F3F3F3F3F4B4B4B4B4B4B
+4B4B4B5757575757575757576A6A6A6A6A6A6A6A6A8B8B8B8B8B8B8B8B8BB1B1B1B1B1B1B1B1B1
+B1B1B1CECECECECECECECECEDEDEDEDEDEDEDEDEDEE8E8E8E8E8E8E8E8E8EDEDEDEDEDEDEDEDED
+EDEDEDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE9E9E9E9E9E9E9E9E9E3E3E3E3E3E3E3E3E3
+E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DEDEDEDEDEDEDEDEDEDADADADADADADADADA
+D6D6D6D6D6D6D6D6D6D5D5D5D5D5D5D5D5D5D5D5D5D0D0D0D0D0D0D0D0D0C8C8C8C8C8C8C8C8C8
+BEBEBEBEBEBEBEBEBEB8B8B8B8B8B8B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4ABABABABABABABABAB
+8A8A8A8A8A8A8A8A8A515151515151515151373737373737373737373737373737373737373737
+3939393939393939393A3A3A3A3A3A3A3A3A3F3F3F3F3F3F3F3F3F444444444444444444444444
+4040404040404040404C4C4C4C4C4C4C4C4C8E8E8E8E8E8E8E8E8ED4D4D4D4D4D4D4D4D4D4D4D4
+F7F7F7F7F7F7F7F7F7FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFACFCFCFCFCFCFCFCFCFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFD
+FDFDFDE1E1E1E1E1E1E1E1E1E1E1E18E8E8E8E8E8E8E8E8E4F4F4F4F4F4F4F4F4F373737373737
+3737373030303030303030303030302B2B2B2B2B2B2B2B2B282828282828282828282828282828
+282828252525252525252525252525252525252525252525272727272727272727282828282828
+282828252525252525252525222222222222222222212121212121212121212121222222222222
+222222252525252525252525282828282828282828272727272727272727272727272727272727
+2727272929292929292929292D2D2D2D2D2D2D2D2D313131313131313131323232323232323232
+3232323232323232323232323030303030303030302D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C
+2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+2C2C2C2C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F343434343434343434373737373737373737
+3939393939393939393F3F3F3F3F3F3F3F3F3F3F3F4B4B4B4B4B4B4B4B4B575757575757575757
+6A6A6A6A6A6A6A6A6A8B8B8B8B8B8B8B8B8BB1B1B1B1B1B1B1B1B1B1B1B1CECECECECECECECECE
+DEDEDEDEDEDEDEDEDEE8E8E8E8E8E8E8E8E8EDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEE
+EEEEEEEEEEEEEEEEEEE9E9E9E9E9E9E9E9E9E3E3E3E3E3E3E3E3E3E1E1E1E1E1E1E1E1E1E1E1E1
+E1E1E1E1E1E1E1E1E1DEDEDEDEDEDEDEDEDEDADADADADADADADADAD6D6D6D6D6D6D6D6D6D5D5D5
+D5D5D5D5D5D5D5D5D5D0D0D0D0D0D0D0D0D0C8C8C8C8C8C8C8C8C8BEBEBEBEBEBEBEBEBEB8B8B8
+B8B8B8B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4ABABABABABABABABAB8A8A8A8A8A8A8A8A8A515151
+5151515151513737373737373737373737373737373737373737373939393939393939393A3A3A
+3A3A3A3A3A3A3F3F3F3F3F3F3F3F3F4444444444444444444444444040404040404040404C4C4C
+4C4C4C4C4C4C8E8E8E8E8E8E8E8E8ED4D4D4D4D4D4D4D4D4D4D4D4F7F7F7F7F7F7F7F7F7FEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFAFAFAFAFAFAFAFAFACFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBCBCBCBCBCBCBCBCBCB
+CBCBCB747474747474747474464646464646464646363636363636363636303030303030303030
+3030302B2B2B2B2B2B2B2B2B282828282828282828272727272727272727242424242424242424
+242424242424242424242424272727272727272727282828282828282828272727272727272727
+242424242424242424222222222222222222222222222222222222222222242424242424242424
+2525252525252525252525252525252525252525252828282828282828282B2B2B2B2B2B2B2B2B
+2D2D2D2D2D2D2D2D2D303030303030303030313131313131313131313131303030303030303030
+3030303030303030302C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B2929292929292929292828282828282828282C2C2C2C2C2C2C2C2C2C2C2C
+3030303030303030303434343434343434343737373737373737373C3C3C3C3C3C3C3C3C464646
+4646464646464646465757575757575757576D6D6D6D6D6D6D6D6D8A8A8A8A8A8A8A8A8AADADAD
+ADADADADADADCBCBCBCBCBCBCBCBCBCBCBCBDDDDDDDDDDDDDDDDDDE5E5E5E5E5E5E5E5E5E8E8E8
+E8E8E8E8E8E8EAEAEAEAEAEAEAEAEAEAEAEAECECECECECECECECECEDEDEDEDEDEDEDEDEDECECEC
+ECECECECECECE5E5E5E5E5E5E5E5E5E3E3E3E3E3E3E3E3E3E3E3E3E1E1E1E1E1E1E1E1E1DFDFDF
+DFDFDFDFDFDFDBDBDBDBDBDBDBDBDBD8D8D8D8D8D8D8D8D8D6D6D6D6D6D6D6D6D6D6D6D6D2D2D2
+D2D2D2D2D2D2CBCBCBCBCBCBCBCBCBBFBFBFBFBFBFBFBFBFB9B9B9B9B9B9B9B9B9B9B9B9B8B8B8
+B8B8B8B8B8B8B0B0B0B0B0B0B0B0B09696969696969696966262626262626262623C3C3C3C3C3C
+3C3C3C3C3C3C3737373737373737373737373737373737373C3C3C3C3C3C3C3C3C414141414141
+414141474747474747474747474747444444444444444444545454545454545454ABABABABABAB
+ABABABF4F4F4F4F4F4F4F4F4F4F4F4FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFB
+FBFBFBDBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBCBCBCBCBCBCBCBCBCBCBCBCB747474747474747474
+4646464646464646463636363636363636363030303030303030303030302B2B2B2B2B2B2B2B2B
+282828282828282828272727272727272727242424242424242424242424242424242424242424
+272727272727272727282828282828282828272727272727272727242424242424242424222222
+222222222222222222222222222222222222242424242424242424252525252525252525252525
+2525252525252525252828282828282828282B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D303030
+3030303030303131313131313131313131313030303030303030303030303030303030302C2C2C
+2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B292929
+2929292929292828282828282828282C2C2C2C2C2C2C2C2C2C2C2C303030303030303030343434
+3434343434343737373737373737373C3C3C3C3C3C3C3C3C464646464646464646464646575757
+5757575757576D6D6D6D6D6D6D6D6D8A8A8A8A8A8A8A8A8AADADADADADADADADADCBCBCBCBCBCB
+CBCBCBCBCBCBDDDDDDDDDDDDDDDDDDE5E5E5E5E5E5E5E5E5E8E8E8E8E8E8E8E8E8EAEAEAEAEAEA
+EAEAEAEAEAEAECECECECECECECECECEDEDEDEDEDEDEDEDEDECECECECECECECECECE5E5E5E5E5E5
+E5E5E5E3E3E3E3E3E3E3E3E3E3E3E3E1E1E1E1E1E1E1E1E1DFDFDFDFDFDFDFDFDFDBDBDBDBDBDB
+DBDBDBD8D8D8D8D8D8D8D8D8D6D6D6D6D6D6D6D6D6D6D6D6D2D2D2D2D2D2D2D2D2CBCBCBCBCBCB
+CBCBCBBFBFBFBFBFBFBFBFBFB9B9B9B9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B0B0B0B0B0B0
+B0B0B09696969696969696966262626262626262623C3C3C3C3C3C3C3C3C3C3C3C373737373737
+3737373737373737373737373C3C3C3C3C3C3C3C3C414141414141414141474747474747474747
+474747444444444444444444545454545454545454ABABABABABABABABABF4F4F4F4F4F4F4F4F4
+F4F4F4FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDBDBDBDBDBDBDBDBDB
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFB
+FBFBFBFBFBFBCBCBCBCBCBCBCBCBCBCBCBCB747474747474747474464646464646464646363636
+3636363636363030303030303030303030302B2B2B2B2B2B2B2B2B282828282828282828272727
+272727272727242424242424242424242424242424242424242424272727272727272727282828
+282828282828272727272727272727242424242424242424222222222222222222222222222222
+222222222222242424242424242424252525252525252525252525252525252525252525282828
+2828282828282B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D303030303030303030313131313131
+3131313131313030303030303030303030303030303030302C2C2C2C2C2C2C2C2C2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B292929292929292929282828282828
+2828282C2C2C2C2C2C2C2C2C2C2C2C303030303030303030343434343434343434373737373737
+3737373C3C3C3C3C3C3C3C3C4646464646464646464646465757575757575757576D6D6D6D6D6D
+6D6D6D8A8A8A8A8A8A8A8A8AADADADADADADADADADCBCBCBCBCBCBCBCBCBCBCBCBDDDDDDDDDDDD
+DDDDDDE5E5E5E5E5E5E5E5E5E8E8E8E8E8E8E8E8E8EAEAEAEAEAEAEAEAEAEAEAEAECECECECECEC
+ECECECEDEDEDEDEDEDEDEDEDECECECECECECECECECE5E5E5E5E5E5E5E5E5E3E3E3E3E3E3E3E3E3
+E3E3E3E1E1E1E1E1E1E1E1E1DFDFDFDFDFDFDFDFDFDBDBDBDBDBDBDBDBDBD8D8D8D8D8D8D8D8D8
+D6D6D6D6D6D6D6D6D6D6D6D6D2D2D2D2D2D2D2D2D2CBCBCBCBCBCBCBCBCBBFBFBFBFBFBFBFBFBF
+B9B9B9B9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B0B0B0B0B0B0B0B0B0969696969696969696
+6262626262626262623C3C3C3C3C3C3C3C3C3C3C3C373737373737373737373737373737373737
+3C3C3C3C3C3C3C3C3C414141414141414141474747474747474747474747444444444444444444
+545454545454545454ABABABABABABABABABF4F4F4F4F4F4F4F4F4F4F4F4FEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F6F6F6F6F6F6F6F6B8B8B8B8B8B8
+B8B8B8B8B8B86464646464646464644141414141414141413434343434343434342F2F2F2F2F2F
+2F2F2F2F2F2F292929292929292929282828282828282828252525252525252525242424242424
+242424242424242424242424242424272727272727272727282828282828282828272727272727
+272727242424242424242424222222222222222222222222222222222222222222242424242424
+242424252525252525252525272727272727272727272727282828282828282828292929292929
+2929292B2B2B2B2B2B2B2B2B292929292929292929282828282828282828282828282828282828
+2828282C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B292929292929292929
+2929292929292929292929292929292929292929292B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F
+2F2F2F3131313131313131313636363636363636363F3F3F3F3F3F3F3F3F4D4D4D4D4D4D4D4D4D
+626262626262626262626262777777777777777777909090909090909090ADADADADADADADADAD
+C7C7C7C7C7C7C7C7C7D9D9D9D9D9D9D9D9D9D9D9D9E0E0E0E0E0E0E0E0E0E3E3E3E3E3E3E3E3E3
+E4E4E4E4E4E4E4E4E4E8E8E8E8E8E8E8E8E8E8E8E8EBEBEBEBEBEBEBEBEBEDEDEDEDEDEDEDEDED
+EBEBEBEBEBEBEBEBEBE8E9E8E8E9E8E8E9E8E5E5E5E5E5E5E5E5E5E5E5E5DFE0DFDFE0DFDFE0DF
+DDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDADADADADADADADADAD8D8D8D8D8D8D8D8D8D8D8D8
+D2D2D2D2D2D2D2D2D2C9C9C9C9C9C9C9C9C9BFBFBFBFBFBFBFBFBFBBBBBBBBBBBBBBBBBBBBBBBB
+BABABABABABABABABAB1B1B1B1B1B1B1B1B19E9E9E9E9E9E9E9E9E717171717171717171424242
+4242424242424242423939393939393939393A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C414141
+414141414141484848484848484848484848474747474747474747575757575757575757B7B7B7
+B7B7B7B7B7B7F9F9F9F9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFA
+FAFAFAFAFAFAD0D0D0D0D0D0D0D0D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF6F6F6F6F6F6F6F6F6B8B8B8B8B8B8B8B8B8B8B8B8646464646464
+6464644141414141414141413434343434343434342F2F2F2F2F2F2F2F2F2F2F2F292929292929
+292929282828282828282828252525252525252525242424242424242424242424242424242424
+242424272727272727272727282828282828282828272727272727272727242424242424242424
+222222222222222222222222222222222222222222242424242424242424252525252525252525
+2727272727272727272727272828282828282828282929292929292929292B2B2B2B2B2B2B2B2B
+2929292929292929292828282828282828282828282828282828282828282C2C2C2C2C2C2C2C2C
+2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B292929292929292929292929292929292929292929
+2929292929292929292B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131
+3636363636363636363F3F3F3F3F3F3F3F3F4D4D4D4D4D4D4D4D4D626262626262626262626262
+777777777777777777909090909090909090ADADADADADADADADADC7C7C7C7C7C7C7C7C7D9D9D9
+D9D9D9D9D9D9D9D9D9E0E0E0E0E0E0E0E0E0E3E3E3E3E3E3E3E3E3E4E4E4E4E4E4E4E4E4E8E8E8
+E8E8E8E8E8E8E8E8E8EBEBEBEBEBEBEBEBEBEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBE8E9E8
+E8E9E8E8E9E8E5E5E5E5E5E5E5E5E5E5E5E5DFE0DFDFE0DFDFE0DFDDDDDDDDDDDDDDDDDDDCDCDC
+DCDCDCDCDCDCDADADADADADADADADAD8D8D8D8D8D8D8D8D8D8D8D8D2D2D2D2D2D2D2D2D2C9C9C9
+C9C9C9C9C9C9BFBFBFBFBFBFBFBFBFBBBBBBBBBBBBBBBBBBBBBBBBBABABABABABABABABAB1B1B1
+B1B1B1B1B1B19E9E9E9E9E9E9E9E9E717171717171717171424242424242424242424242393939
+3939393939393A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C414141414141414141484848484848
+484848484848474747474747474747575757575757575757B7B7B7B7B7B7B7B7B7F9F9F9F9F9F9
+F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD0D0D0D0D0D0
+D0D0D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+EFEFEFEFEFEFEFEFEFA5A5A5A5A5A5A5A5A5A5A5A55B5B5B5B5B5B5B5B5B3E3E3E3E3E3E3E3E3E
+3131313131313131312C2C2C2C2C2C2C2C2C2C2C2C282828282828282828272727272727272727
+252525252525252525242424242424242424252525252525252525252525252525252525252525
+272727272727272727252525252525252525242424242424242424222222222222222222222222
+222222222222222222252525252525252525272727272727272727272727272727272727272727
+252525252525252525272727272727272727292929292929292929292929292929292929282828
+282828282828282828282828282828282828292929292929292929282828282828282828292929
+2929292929292B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D303030
+303030303030323232323232323232323232373737373737373737444444444444444444585858
+5858585858587070707070707070708888888888888888888888889D9D9D9D9D9D9D9D9DB0B0B0
+B0B0B0B0B0B0C1C1C1C1C1C1C1C1C1D1D1D1D1D1D1D1D1D1DADADADADADADADADADADADADCDCDC
+DCDCDCDCDCDCDFE0DFDFE0DFDFE0DFE3E3E3E3E3E3E3E3E3E6E6E6E6E6E6E6E6E6E6E6E6E9E9E9
+E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAE7E7E7E7E7E7
+E7E7E7E7E7E7E0E0E0E0E0E0E0E0E0DEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDCDCDCDCDCDC
+DCDCDCD8D8D8D8D8D8D8D8D8D8D8D8D1D1D1D1D1D1D1D1D1C7C7C7C7C7C7C7C7C7C0C0C0C0C0C0
+C0C0C0BDBDBDBDBDBDBDBDBDBDBDBDBBBBBBBBBBBBBBBBBBB4B4B4B4B4B4B4B4B4A2A2A2A2A2A2
+A2A2A27A7A7A7A7A7A7A7A7A4848484848484848484848483B3B3B3B3B3B3B3B3B3A3A3A3A3A3A
+3A3A3A3636363636363636363C3C3C3C3C3C3C3C3C444444444444444444444444474747474747
+474747555555555555555555AAAAAAAAAAAAAAAAAAF5F5F5F5F5F5F5F5F5F5F5F5FFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFA5A5A5
+A5A5A5A5A5A5A5A5A55B5B5B5B5B5B5B5B5B3E3E3E3E3E3E3E3E3E3131313131313131312C2C2C
+2C2C2C2C2C2C2C2C2C282828282828282828272727272727272727252525252525252525242424
+242424242424252525252525252525252525252525252525252525272727272727272727252525
+252525252525242424242424242424222222222222222222222222222222222222222222252525
+252525252525272727272727272727272727272727272727272727252525252525252525272727
+272727272727292929292929292929292929292929292929282828282828282828282828282828
+2828282828282929292929292929292828282828282828282929292929292929292B2B2B2B2B2B
+2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D303030303030303030323232323232
+323232323232373737373737373737444444444444444444585858585858585858707070707070
+7070708888888888888888888888889D9D9D9D9D9D9D9D9DB0B0B0B0B0B0B0B0B0C1C1C1C1C1C1
+C1C1C1D1D1D1D1D1D1D1D1D1DADADADADADADADADADADADADCDCDCDCDCDCDCDCDCDFE0DFDFE0DF
+DFE0DFE3E3E3E3E3E3E3E3E3E6E6E6E6E6E6E6E6E6E6E6E6E9E9E9E9E9E9E9E9E9EAEAEAEAEAEA
+EAEAEAEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAE7E7E7E7E7E7E7E7E7E7E7E7E0E0E0E0E0E0
+E0E0E0DEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDCDCDCDCDCDCDCDCDCD8D8D8D8D8D8D8D8D8
+D8D8D8D1D1D1D1D1D1D1D1D1C7C7C7C7C7C7C7C7C7C0C0C0C0C0C0C0C0C0BDBDBDBDBDBDBDBDBD
+BDBDBDBBBBBBBBBBBBBBBBBBB4B4B4B4B4B4B4B4B4A2A2A2A2A2A2A2A2A27A7A7A7A7A7A7A7A7A
+4848484848484848484848483B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A363636363636363636
+3C3C3C3C3C3C3C3C3C444444444444444444444444474747474747474747555555555555555555
+AAAAAAAAAAAAAAAAAAF5F5F5F5F5F5F5F5F5F5F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FBFBFBFBFBFBFBFBFBDBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFA5A5A5A5A5A5A5A5A5A5A5A55B5B5B
+5B5B5B5B5B5B3E3E3E3E3E3E3E3E3E3131313131313131312C2C2C2C2C2C2C2C2C2C2C2C282828
+282828282828272727272727272727252525252525252525242424242424242424252525252525
+252525252525252525252525252525272727272727272727252525252525252525242424242424
+242424222222222222222222222222222222222222222222252525252525252525272727272727
+272727272727272727272727272727252525252525252525272727272727272727292929292929
+292929292929292929292929282828282828282828282828282828282828282828292929292929
+2929292828282828282828282929292929292929292B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C
+2C2C2C2D2D2D2D2D2D2D2D2D303030303030303030323232323232323232323232373737373737
+373737444444444444444444585858585858585858707070707070707070888888888888888888
+8888889D9D9D9D9D9D9D9D9DB0B0B0B0B0B0B0B0B0C1C1C1C1C1C1C1C1C1D1D1D1D1D1D1D1D1D1
+DADADADADADADADADADADADADCDCDCDCDCDCDCDCDCDFE0DFDFE0DFDFE0DFE3E3E3E3E3E3E3E3E3
+E6E6E6E6E6E6E6E6E6E6E6E6E9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEB
+EAEAEAEAEAEAEAEAEAE7E7E7E7E7E7E7E7E7E7E7E7E0E0E0E0E0E0E0E0E0DEDEDEDEDEDEDEDEDE
+DEDEDEDEDEDEDEDEDEDCDCDCDCDCDCDCDCDCD8D8D8D8D8D8D8D8D8D8D8D8D1D1D1D1D1D1D1D1D1
+C7C7C7C7C7C7C7C7C7C0C0C0C0C0C0C0C0C0BDBDBDBDBDBDBDBDBDBDBDBDBBBBBBBBBBBBBBBBBB
+B4B4B4B4B4B4B4B4B4A2A2A2A2A2A2A2A2A27A7A7A7A7A7A7A7A7A484848484848484848484848
+3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3636363636363636363C3C3C3C3C3C3C3C3C444444
+444444444444444444474747474747474747555555555555555555AAAAAAAAAAAAAAAAAAF5F5F5
+F5F5F5F5F5F5F5F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDBDBDB
+DBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE
+FEFEFEE7E7E7E7E7E7E7E7E79191919191919191919191915252525252525252523C3C3C3C3C3C
+3C3C3C3030303030303030302B2B2B2B2B2B2B2B2B2B2B2B282828282828282828252525252525
+252525242424242424242424252525252525252525282828282828282828282828282828282828
+282828292929292929292929282828282828282828272727272727272727242424242424242424
+242424252525252525252525252525252525252525252525252525252525242424242424242424
+2424242424242424242424242525252525252525252828282828282828282B2B2B2B2B2B2B2B2B
+2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C282828282828282828
+2B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131
+353535353535353535393939393939393939393939464646464646464646616161616161616161
+7D7D7D7D7D7D7D7D7D929292929292929292A6A6A6A6A6A6A6A6A6A6A6A6B2B2B2B2B2B2B2B2B2
+BEBEBEBEBEBEBEBEBECACACACACACACACACAD4D4D4D4D4D4D4D4D4DADADADADADADADADADADADA
+DEDEDEDEDEDEDEDEDEE6E6E6E6E6E6E6E6E6EAEAEAEAEAEAEAEAEAEDEDEDEDEDEDEDEDEDEDEDED
+EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0EAEAEA
+EAEAEAEAEAEAEAEAEAE4E4E4E4E4E4E4E4E4E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFDFDFDF
+DFDFDFDFDFDFDBDBDBDBDBDBDBDBDBDBDBDBD1D1D1D1D1D1D1D1D1C7C7C7C7C7C7C7C7C7C1C1C1
+C1C1C1C1C1C1BDBDBDBDBDBDBDBDBDBDBDBDB9B9B9B9B9B9B9B9B9B6B6B6B6B6B6B6B6B6A6A6A6
+A6A6A6A6A6A68282828282828282824E4E4E4E4E4E4E4E4E4E4E4E3C3C3C3C3C3C3C3C3C3A3A3A
+3A3A3A3A3A3A3131313131313131313636363636363636363E3E3E3E3E3E3E3E3E3E3E3E424242
+4242424242424E4E4E4E4E4E4E4E4E939393939393939393EDEDEDEDEDEDEDEDEDEDEDEDFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE3E3E3E3E3E3E3E3E3FFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEE7E7E7E7E7E7E7E7E7
+9191919191919191919191915252525252525252523C3C3C3C3C3C3C3C3C303030303030303030
+2B2B2B2B2B2B2B2B2B2B2B2B282828282828282828252525252525252525242424242424242424
+252525252525252525282828282828282828282828282828282828282828292929292929292929
+282828282828282828272727272727272727242424242424242424242424252525252525252525
+252525252525252525252525252525252525242424242424242424242424242424242424242424
+2525252525252525252828282828282828282B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B
+2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2828282828282828282B2B2B2B2B2B2B2B2B2F2F2F
+2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131353535353535353535393939
+3939393939393939394646464646464646466161616161616161617D7D7D7D7D7D7D7D7D929292
+929292929292A6A6A6A6A6A6A6A6A6A6A6A6B2B2B2B2B2B2B2B2B2BEBEBEBEBEBEBEBEBECACACA
+CACACACACACAD4D4D4D4D4D4D4D4D4DADADADADADADADADADADADADEDEDEDEDEDEDEDEDEE6E6E6
+E6E6E6E6E6E6EAEAEAEAEAEAEAEAEAEDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEEEEEE
+EEEEEEEEEEEEF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0EAEAEAEAEAEAEAEAEAEAEAEAE4E4E4
+E4E4E4E4E4E4E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDBDBDBDBDBDB
+DBDBDBDBDBDBD1D1D1D1D1D1D1D1D1C7C7C7C7C7C7C7C7C7C1C1C1C1C1C1C1C1C1BDBDBDBDBDBD
+BDBDBDBDBDBDB9B9B9B9B9B9B9B9B9B6B6B6B6B6B6B6B6B6A6A6A6A6A6A6A6A6A6828282828282
+8282824E4E4E4E4E4E4E4E4E4E4E4E3C3C3C3C3C3C3C3C3C3A3A3A3A3A3A3A3A3A313131313131
+3131313636363636363636363E3E3E3E3E3E3E3E3E3E3E3E4242424242424242424E4E4E4E4E4E
+4E4E4E939393939393939393EDEDEDEDEDEDEDEDEDEDEDEDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFCFCFCFCFCFCFCFCFCE3E3E3E3E3E3E3E3E3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEE7E7E7E7E7E7E7E7E7919191919191919191919191
+5252525252525252523C3C3C3C3C3C3C3C3C3030303030303030302B2B2B2B2B2B2B2B2B2B2B2B
+282828282828282828252525252525252525242424242424242424252525252525252525282828
+282828282828282828282828282828282828292929292929292929282828282828282828272727
+272727272727242424242424242424242424252525252525252525252525252525252525252525
+252525252525242424242424242424242424242424242424242424252525252525252525282828
+2828282828282B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C
+2C2C2C2C2C2C2828282828282828282B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F
+2F2F2F2F2F2F313131313131313131353535353535353535393939393939393939393939464646
+4646464646466161616161616161617D7D7D7D7D7D7D7D7D929292929292929292A6A6A6A6A6A6
+A6A6A6A6A6A6B2B2B2B2B2B2B2B2B2BEBEBEBEBEBEBEBEBECACACACACACACACACAD4D4D4D4D4D4
+D4D4D4DADADADADADADADADADADADADEDEDEDEDEDEDEDEDEE6E6E6E6E6E6E6E6E6EAEAEAEAEAEA
+EAEAEAEDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEF0F0F0F0F0F0
+F0F0F0F0F0F0F0F0F0F0F0F0EAEAEAEAEAEAEAEAEAEAEAEAE4E4E4E4E4E4E4E4E4E1E1E1E1E1E1
+E1E1E1DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDBDBDBDBDBDBDBDBDBDBDBDBD1D1D1D1D1D1
+D1D1D1C7C7C7C7C7C7C7C7C7C1C1C1C1C1C1C1C1C1BDBDBDBDBDBDBDBDBDBDBDBDB9B9B9B9B9B9
+B9B9B9B6B6B6B6B6B6B6B6B6A6A6A6A6A6A6A6A6A68282828282828282824E4E4E4E4E4E4E4E4E
+4E4E4E3C3C3C3C3C3C3C3C3C3A3A3A3A3A3A3A3A3A313131313131313131363636363636363636
+3E3E3E3E3E3E3E3E3E3E3E3E4242424242424242424E4E4E4E4E4E4E4E4E939393939393939393
+EDEDEDEDEDEDEDEDEDEDEDEDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFC
+E3E3E3E3E3E3E3E3E3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFD
+FDFDFDFDFDFDD8D8D8D8D8D8D8D8D87C7C7C7C7C7C7C7C7C7C7C7C4B4B4B4B4B4B4B4B4B393939
+3939393939392F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B2B2B2B282828282828282828242424
+2424242424242424242424242424242B2B2B2B2B2B2B2B2B323232323232323232323232353535
+3535353535353434343434343434343232323232323232322D2D2D2D2D2D2D2D2D2B2B2B2B2B2B
+2B2B2B2B2B2B282828282828282828252525252525252525252525252525252525242424242424
+2424242424242222222222222222222424242424242424242727272727272727272B2B2B2B2B2B
+2B2B2B2F2F2F2F2F2F2F2F2F2F2F2F3030303030303030302C2C2C2C2C2C2C2C2C292929292929
+2929292C2C2C2C2C2C2C2C2C313131313131313131313131353535353535353535373737373737
+3737373E3E3E3E3E3E3E3E3E494949494949494949494949666666666666666666858585858585
+8585859D9D9D9D9D9D9D9D9DAAAAAAAAAAAAAAAAAAB6B6B6B6B6B6B6B6B6B6B6B6BCBCBCBCBCBC
+BCBCBCC2C2C2C2C2C2C2C2C2CCCCCCCCCCCCCCCCCCD5D5D5D5D5D5D5D5D5DBDBDBDBDBDBDBDBDB
+DBDBDBE4E4E4E4E4E4E4E4E4EDEDEDEDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F6F6F6F6F6F6F6F6F6
+F6F6F6F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F6F6F6F6F6F6F6F6F6
+F0F0F0F0F0F0F0F0F0F0F0F0EAEAEAEAEAEAEAEAEAE6E6E6E6E6E6E6E6E6E2E2E2E2E2E2E2E2E2
+DFDFDFDFDFDFDFDFDFDBDBDBDBDBDBDBDBDBDBDBDBD4D4D4D4D4D4D4D4D4C9C9C9C9C9C9C9C9C9
+C3C3C3C3C3C3C3C3C3BEBEBEBEBEBEBEBEBEBEBEBEB8B8B8B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3
+A7A7A7A7A7A7A7A7A7878787878787878787555555555555555555555555404040404040404040
+3C3C3C3C3C3C3C3C3C303030303030303030313131313131313131373737373737373737373737
+3E3E3E3E3E3E3E3E3E474747474747474747838383838383838383E6E6E6E6E6E6E6E6E6E6E6E6
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6FFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDD8D8D8D8D8D8
+D8D8D87C7C7C7C7C7C7C7C7C7C7C7C4B4B4B4B4B4B4B4B4B3939393939393939392F2F2F2F2F2F
+2F2F2F2B2B2B2B2B2B2B2B2B2B2B2B282828282828282828242424242424242424242424242424
+2424242B2B2B2B2B2B2B2B2B323232323232323232323232353535353535353535343434343434
+3434343232323232323232322D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B282828282828
+282828252525252525252525252525252525252525242424242424242424242424222222222222
+2222222424242424242424242727272727272727272B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F
+2F2F2F3030303030303030302C2C2C2C2C2C2C2C2C2929292929292929292C2C2C2C2C2C2C2C2C
+3131313131313131313131313535353535353535353737373737373737373E3E3E3E3E3E3E3E3E
+4949494949494949494949496666666666666666668585858585858585859D9D9D9D9D9D9D9D9D
+AAAAAAAAAAAAAAAAAAB6B6B6B6B6B6B6B6B6B6B6B6BCBCBCBCBCBCBCBCBCC2C2C2C2C2C2C2C2C2
+CCCCCCCCCCCCCCCCCCD5D5D5D5D5D5D5D5D5DBDBDBDBDBDBDBDBDBDBDBDBE4E4E4E4E4E4E4E4E4
+EDEDEDEDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F6F6F6F6F6F6F6F6F6F6F6F6F7F7F7F7F7F7F7F7F7
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F6F6F6F6F6F6F6F6F6F0F0F0F0F0F0F0F0F0F0F0F0
+EAEAEAEAEAEAEAEAEAE6E6E6E6E6E6E6E6E6E2E2E2E2E2E2E2E2E2DFDFDFDFDFDFDFDFDFDBDBDB
+DBDBDBDBDBDBDBDBDBD4D4D4D4D4D4D4D4D4C9C9C9C9C9C9C9C9C9C3C3C3C3C3C3C3C3C3BEBEBE
+BEBEBEBEBEBEBEBEBEB8B8B8B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3A7A7A7A7A7A7A7A7A7878787
+8787878787875555555555555555555555554040404040404040403C3C3C3C3C3C3C3C3C303030
+3030303030303131313131313131313737373737373737373737373E3E3E3E3E3E3E3E3E474747
+474747474747838383838383838383E6E6E6E6E6E6E6E6E6E6E6E6FEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BFBFBFBFBFBFBFBFBF696969696969696969
+6969694545454545454545453737373737373737373131313131313131312D2D2D2D2D2D2D2D2D
+2D2D2D282828282828282828242424242424242424272727272727272727373737373737373737
+4C4C4C4C4C4C4C4C4C4C4C4C505050505050505050474747474747474747404040404040404040
+3E3E3E3E3E3E3E3E3E3A3A3A3A3A3A3A3A3A3A3A3A323232323232323232292929292929292929
+272727272727272727242424242424242424242424242424242424242424272727272727272727
+2828282828282828282B2B2B2B2B2B2B2B2B313131313131313131313131313131313131313131
+2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B303030303030303030363636363636363636363636
+3E3E3E3E3E3E3E3E3E474747474747474747505050505050505050676767676767676767676767
+898989898989898989A2A2A2A2A2A2A2A2A2B0B0B0B0B0B0B0B0B0B8B8B8B8B8B8B8B8B8BCBCBC
+BCBCBCBCBCBCBCBCBCC0C0C0C0C0C0C0C0C0C5C5C5C5C5C5C5C5C5CCCCCCCCCCCCCCCCCCD5D5D5
+D5D5D5D5D5D5DEDEDEDEDEDEDEDEDEDEDEDEE8E9E8E8E9E8E8E9E8F1F1F1F1F1F1F1F1F1F5F5F5
+F5F5F5F5F5F5FAFAFAFAFAFAFAFAFAFAFAFAFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFAFAFAFAFAFAFAFAFAF4F4F4F4F4F4F4F4F4F4F4F4EDEDEDEDEDEDEDEDEDE8E8E8
+E8E8E8E8E8E8E4E4E4E4E4E4E4E4E4DFDFDFDFDFDFDFDFDFDBDBDBDBDBDBDBDBDBDBDBDBD6D6D5
+D6D6D5D6D6D5CFCFCFCFCFCFCFCFCFC6C6C6C6C6C6C6C6C6BFBFBFBFBFBFBFBFBFBFBFBFB8B8B8
+B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3A6A6A6A6A6A6A6A6A68A8A8A8A8A8A8A8A8A5A5A5A5A5A5A
+5A5A5A5A5A5A4242424242424242423F3F3F3F3F3F3F3F3F313131313131313131303030303030
+3030303232323232323232323232323A3A3A3A3A3A3A3A3A424242424242424242767676767676
+767676DFE0DFDFE0DFDFE0DFDFE0DFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFA
+FAFAFAD3D3D3D3D3D3D3D3D3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9BFBFBFBFBFBFBFBFBF696969696969696969696969454545454545454545
+3737373737373737373131313131313131312D2D2D2D2D2D2D2D2D2D2D2D282828282828282828
+2424242424242424242727272727272727273737373737373737374C4C4C4C4C4C4C4C4C4C4C4C
+5050505050505050504747474747474747474040404040404040403E3E3E3E3E3E3E3E3E3A3A3A
+3A3A3A3A3A3A3A3A3A323232323232323232292929292929292929272727272727272727242424
+2424242424242424242424242424242424242727272727272727272828282828282828282B2B2B
+2B2B2B2B2B2B3131313131313131313131313131313131313131312C2C2C2C2C2C2C2C2C2B2B2B
+2B2B2B2B2B2B3030303030303030303636363636363636363636363E3E3E3E3E3E3E3E3E474747
+474747474747505050505050505050676767676767676767676767898989898989898989A2A2A2
+A2A2A2A2A2A2B0B0B0B0B0B0B0B0B0B8B8B8B8B8B8B8B8B8BCBCBCBCBCBCBCBCBCBCBCBCC0C0C0
+C0C0C0C0C0C0C5C5C5C5C5C5C5C5C5CCCCCCCCCCCCCCCCCCD5D5D5D5D5D5D5D5D5DEDEDEDEDEDE
+DEDEDEDEDEDEE8E9E8E8E9E8E8E9E8F1F1F1F1F1F1F1F1F1F5F5F5F5F5F5F5F5F5FAFAFAFAFAFA
+FAFAFAFAFAFAFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFAFAFAFAFAFA
+FAFAFAF4F4F4F4F4F4F4F4F4F4F4F4EDEDEDEDEDEDEDEDEDE8E8E8E8E8E8E8E8E8E4E4E4E4E4E4
+E4E4E4DFDFDFDFDFDFDFDFDFDBDBDBDBDBDBDBDBDBDBDBDBD6D6D5D6D6D5D6D6D5CFCFCFCFCFCF
+CFCFCFC6C6C6C6C6C6C6C6C6BFBFBFBFBFBFBFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B3B3B3B3B3B3
+B3B3B3A6A6A6A6A6A6A6A6A68A8A8A8A8A8A8A8A8A5A5A5A5A5A5A5A5A5A5A5A5A424242424242
+4242423F3F3F3F3F3F3F3F3F313131313131313131303030303030303030323232323232323232
+3232323A3A3A3A3A3A3A3A3A424242424242424242767676767676767676DFE0DFDFE0DFDFE0DF
+DFE0DFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD3D3D3D3D3D3D3D3D3
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BFBFBF
+BFBFBFBFBFBF696969696969696969696969454545454545454545373737373737373737313131
+3131313131312D2D2D2D2D2D2D2D2D2D2D2D282828282828282828242424242424242424272727
+2727272727273737373737373737374C4C4C4C4C4C4C4C4C4C4C4C505050505050505050474747
+4747474747474040404040404040403E3E3E3E3E3E3E3E3E3A3A3A3A3A3A3A3A3A3A3A3A323232
+323232323232292929292929292929272727272727272727242424242424242424242424242424
+2424242424242727272727272727272828282828282828282B2B2B2B2B2B2B2B2B313131313131
+3131313131313131313131313131312C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B303030303030
+3030303636363636363636363636363E3E3E3E3E3E3E3E3E474747474747474747505050505050
+505050676767676767676767676767898989898989898989A2A2A2A2A2A2A2A2A2B0B0B0B0B0B0
+B0B0B0B8B8B8B8B8B8B8B8B8BCBCBCBCBCBCBCBCBCBCBCBCC0C0C0C0C0C0C0C0C0C5C5C5C5C5C5
+C5C5C5CCCCCCCCCCCCCCCCCCD5D5D5D5D5D5D5D5D5DEDEDEDEDEDEDEDEDEDEDEDEE8E9E8E8E9E8
+E8E9E8F1F1F1F1F1F1F1F1F1F5F5F5F5F5F5F5F5F5FAFAFAFAFAFAFAFAFAFAFAFAFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFAFAFAFAFAFAFAFAFAF4F4F4F4F4F4F4F4F4
+F4F4F4EDEDEDEDEDEDEDEDEDE8E8E8E8E8E8E8E8E8E4E4E4E4E4E4E4E4E4DFDFDFDFDFDFDFDFDF
+DBDBDBDBDBDBDBDBDBDBDBDBD6D6D5D6D6D5D6D6D5CFCFCFCFCFCFCFCFCFC6C6C6C6C6C6C6C6C6
+BFBFBFBFBFBFBFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3A6A6A6A6A6A6A6A6A6
+8A8A8A8A8A8A8A8A8A5A5A5A5A5A5A5A5A5A5A5A5A4242424242424242423F3F3F3F3F3F3F3F3F
+3131313131313131313030303030303030303232323232323232323232323A3A3A3A3A3A3A3A3A
+424242424242424242767676767676767676DFE0DFDFE0DFDFE0DFDFE0DFFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD3D3D3D3D3D3D3D3D3FFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F5F5F5F5F5F5F5F5A9A9A9A9A9A9A9A9A9565656565656
+5656565656563E3E3E3E3E3E3E3E3E3636363636363636363131313131313131312F2F2F2F2F2F
+2F2F2F2F2F2F2929292929292929292424242424242424242B2B2B2B2B2B2B2B2B454545454545
+4545455D5D5D5D5D5D5D5D5D5D5D5D6666666666666666665F605F5F605F5F605F585858585858
+5858585959595959595959595858585858585858585858584B4B4B4B4B4B4B4B4B393939393939
+3939393131313131313131312B2B2B2B2B2B2B2B2B2B2B2B2828282828282828282C2C2C2C2C2C
+2C2C2C2929292929292929292929292929292929292D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F3636363636363636363F3F3F3F3F3F3F3F3F
+3F3F3F4D4D4D4D4D4D4D4D4D5B5B5B5B5B5B5B5B5B666666666666666666878787878787878787
+878787A6A6A6A6A6A6A6A6A6B7B7B7B7B7B7B7B7B7BCBCBCBCBCBCBCBCBCBEBEBEBEBEBEBEBEBE
+C0C0C0C0C0C0C0C0C0C0C0C0C5C5C5C5C5C5C5C5C5CBCBCBCBCBCBCBCBCBD2D2D2D2D2D2D2D2D2
+DDDDDDDDDDDDDDDDDDE8E8E8E8E8E8E8E8E8E8E8E8F1F1F1F1F1F1F1F1F1F9F9F9F9F9F9F9F9F9
+FBFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCF6F6F6F6F6F6F6F6F6F6F6F6EDEDEDEDEDEDEDEDED
+E8E8E8E8E8E8E8E8E8E4E4E4E4E4E4E4E4E4DDDDDDDDDDDDDDDDDDD9D9D9D9D9D9D9D9D9D9D9D9
+D6D6D5D6D6D5D6D6D5D1D1D1D1D1D1D1D1D1CBCBCBCBCBCBCBCBCBC3C3C3C3C3C3C3C3C3C3C3C3
+BBBBBBBBBBBBBBBBBBB2B2B2B2B2B2B2B2B2A4A4A4A4A4A4A4A4A48C8C8C8C8C8C8C8C8C5C5C5C
+5C5C5C5C5C5C5C5C5C4242424242424242423E3E3E3E3E3E3E3E3E3030303030303030302C2C2C
+2C2C2C2C2C2C303030303030303030303030393939393939393939404040404040404040707070
+707070707070DBDBDBDBDBDBDBDBDBDBDBDBFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFB
+FBFBFBFBFBFBDBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF5F5F5F5F5F5F5F5F5A9A9A9A9A9A9A9A9A95656565656565656565656563E3E3E3E3E3E
+3E3E3E3636363636363636363131313131313131312F2F2F2F2F2F2F2F2F2F2F2F292929292929
+2929292424242424242424242B2B2B2B2B2B2B2B2B4545454545454545455D5D5D5D5D5D5D5D5D
+5D5D5D6666666666666666665F605F5F605F5F605F585858585858585858595959595959595959
+5858585858585858585858584B4B4B4B4B4B4B4B4B393939393939393939313131313131313131
+2B2B2B2B2B2B2B2B2B2B2B2B2828282828282828282C2C2C2C2C2C2C2C2C292929292929292929
+2929292929292929292D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B
+2F2F2F2F2F2F2F2F2F3636363636363636363F3F3F3F3F3F3F3F3F3F3F3F4D4D4D4D4D4D4D4D4D
+5B5B5B5B5B5B5B5B5B666666666666666666878787878787878787878787A6A6A6A6A6A6A6A6A6
+B7B7B7B7B7B7B7B7B7BCBCBCBCBCBCBCBCBCBEBEBEBEBEBEBEBEBEC0C0C0C0C0C0C0C0C0C0C0C0
+C5C5C5C5C5C5C5C5C5CBCBCBCBCBCBCBCBCBD2D2D2D2D2D2D2D2D2DDDDDDDDDDDDDDDDDDE8E8E8
+E8E8E8E8E8E8E8E8E8F1F1F1F1F1F1F1F1F1F9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFDFDFD
+FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFCFCFC
+FCFCFCFCFCFCF6F6F6F6F6F6F6F6F6F6F6F6EDEDEDEDEDEDEDEDEDE8E8E8E8E8E8E8E8E8E4E4E4
+E4E4E4E4E4E4DDDDDDDDDDDDDDDDDDD9D9D9D9D9D9D9D9D9D9D9D9D6D6D5D6D6D5D6D6D5D1D1D1
+D1D1D1D1D1D1CBCBCBCBCBCBCBCBCBC3C3C3C3C3C3C3C3C3C3C3C3BBBBBBBBBBBBBBBBBBB2B2B2
+B2B2B2B2B2B2A4A4A4A4A4A4A4A4A48C8C8C8C8C8C8C8C8C5C5C5C5C5C5C5C5C5C5C5C5C424242
+4242424242423E3E3E3E3E3E3E3E3E3030303030303030302C2C2C2C2C2C2C2C2C303030303030
+303030303030393939393939393939404040404040404040707070707070707070DBDBDBDBDBDB
+DBDBDBDBDBDBFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBDBDBDBDBDBDB
+DBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEEBEBEBEBEBEBEBEBEB
+939393939393939393484848484848484848484848393939393939393939323232323232323232
+3131313131313131313131313131313131313131312B2B2B2B2B2B2B2B2B252525252525252525
+2F2F2F2F2F2F2F2F2F4B4B4B4B4B4B4B4B4B666666666666666666666666717171717171717171
+7171717171717171716D6D6D6D6D6D6D6D6D6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F
+6767676767676767675858585858585858584E4E4E4E4E4E4E4E4E444444444444444444444444
+3737373737373737372F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D3030303030303030303636363636363636363F3F3F
+3F3F3F3F3F3F4E4E4E4E4E4E4E4E4E4E4E4E6262626262626262626C6C6C6C6C6C6C6C6C828282
+828282828282A6A6A6A6A6A6A6A6A6A6A6A6BABABABABABABABABAC5C5C5C5C5C5C5C5C5C6C6C6
+C6C6C6C6C6C6C5C5C5C5C5C5C5C5C5C9C9C9C9C9C9C9C9C9C9C9C9CDCDCDCDCDCDCDCDCDD5D5D5
+D5D5D5D5D5D5E1E1E1E1E1E1E1E1E1EAEAEAEAEAEAEAEAEAF1F1F1F1F1F1F1F1F1F1F1F1F5F5F5
+F5F5F5F5F5F5FCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFCFCFCFCFCFCFCFCFCF7F7F7F7F7F7
+F7F7F7F7F7F7EEEEEEEEEEEEEEEEEEE7E7E7E7E7E7E7E7E7E3E3E3E3E3E3E3E3E3DCDCDCDCDCDC
+DCDCDCD9D9D9D9D9D9D9D9D9D9D9D9D6D6D6D6D6D6D6D6D6D2D2D2D2D2D2D2D2D2CCCCCCCCCCCC
+CCCCCCC5C5C5C5C5C5C5C5C5C5C5C5BDBDBDBDBDBDBDBDBDB1B1B1B1B1B1B1B1B1A4A4A4A4A4A4
+A4A4A48F8F8F8F8F8F8F8F8F5F605F5F605F5F605F5F605F4242424242424242423B3B3B3B3B3B
+3B3B3B2F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B303030303030303030303030373737373737
+3737373F3F3F3F3F3F3F3F3F6D6D6D6D6D6D6D6D6DDADADADADADADADADADADADAFDFDFDFDFDFD
+FDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD5D5D5D5D5D5D5D5D5FFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEEBEBEBEBEBEBEBEBEB939393939393939393484848
+484848484848484848393939393939393939323232323232323232313131313131313131313131
+3131313131313131312B2B2B2B2B2B2B2B2B2525252525252525252F2F2F2F2F2F2F2F2F4B4B4B
+4B4B4B4B4B4B6666666666666666666666667171717171717171717171717171717171716D6D6D
+6D6D6D6D6D6D6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F676767676767676767585858
+5858585858584E4E4E4E4E4E4E4E4E4444444444444444444444443737373737373737372F2F2F
+2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D
+2D2D2D2D2D2D3030303030303030303636363636363636363F3F3F3F3F3F3F3F3F4E4E4E4E4E4E
+4E4E4E4E4E4E6262626262626262626C6C6C6C6C6C6C6C6C828282828282828282A6A6A6A6A6A6
+A6A6A6A6A6A6BABABABABABABABABAC5C5C5C5C5C5C5C5C5C6C6C6C6C6C6C6C6C6C5C5C5C5C5C5
+C5C5C5C9C9C9C9C9C9C9C9C9C9C9C9CDCDCDCDCDCDCDCDCDD5D5D5D5D5D5D5D5D5E1E1E1E1E1E1
+E1E1E1EAEAEAEAEAEAEAEAEAF1F1F1F1F1F1F1F1F1F1F1F1F5F5F5F5F5F5F5F5F5FCFCFCFCFCFC
+FCFCFCFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFEFEFEFEFEFEFEFEFEFCFCFCFCFCFCFCFCFCF7F7F7F7F7F7F7F7F7F7F7F7EEEEEEEEEEEE
+EEEEEEE7E7E7E7E7E7E7E7E7E3E3E3E3E3E3E3E3E3DCDCDCDCDCDCDCDCDCD9D9D9D9D9D9D9D9D9
+D9D9D9D6D6D6D6D6D6D6D6D6D2D2D2D2D2D2D2D2D2CCCCCCCCCCCCCCCCCCC5C5C5C5C5C5C5C5C5
+C5C5C5BDBDBDBDBDBDBDBDBDB1B1B1B1B1B1B1B1B1A4A4A4A4A4A4A4A4A48F8F8F8F8F8F8F8F8F
+5F605F5F605F5F605F5F605F4242424242424242423B3B3B3B3B3B3B3B3B2F2F2F2F2F2F2F2F2F
+2B2B2B2B2B2B2B2B2B3030303030303030303030303737373737373737373F3F3F3F3F3F3F3F3F
+6D6D6D6D6D6D6D6D6DDADADADADADADADADADADADAFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FAFAFAFAFAFAFAFAFAD5D5D5D5D5D5D5D5D5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEEBEBEBEBEBEBEBEBEB939393939393939393484848484848484848484848393939
+3939393939393232323232323232323131313131313131313131313131313131313131312B2B2B
+2B2B2B2B2B2B2525252525252525252F2F2F2F2F2F2F2F2F4B4B4B4B4B4B4B4B4B666666666666
+6666666666667171717171717171717171717171717171716D6D6D6D6D6D6D6D6D6F6F6F6F6F6F
+6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6767676767676767675858585858585858584E4E4E4E4E4E
+4E4E4E4444444444444444444444443737373737373737372F2F2F2F2F2F2F2F2F2F2F2F2F2F2F
+2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D303030303030
+3030303636363636363636363F3F3F3F3F3F3F3F3F4E4E4E4E4E4E4E4E4E4E4E4E626262626262
+6262626C6C6C6C6C6C6C6C6C828282828282828282A6A6A6A6A6A6A6A6A6A6A6A6BABABABABABA
+BABABAC5C5C5C5C5C5C5C5C5C6C6C6C6C6C6C6C6C6C5C5C5C5C5C5C5C5C5C9C9C9C9C9C9C9C9C9
+C9C9C9CDCDCDCDCDCDCDCDCDD5D5D5D5D5D5D5D5D5E1E1E1E1E1E1E1E1E1EAEAEAEAEAEAEAEAEA
+F1F1F1F1F1F1F1F1F1F1F1F1F5F5F5F5F5F5F5F5F5FCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE
+FCFCFCFCFCFCFCFCFCF7F7F7F7F7F7F7F7F7F7F7F7EEEEEEEEEEEEEEEEEEE7E7E7E7E7E7E7E7E7
+E3E3E3E3E3E3E3E3E3DCDCDCDCDCDCDCDCDCD9D9D9D9D9D9D9D9D9D9D9D9D6D6D6D6D6D6D6D6D6
+D2D2D2D2D2D2D2D2D2CCCCCCCCCCCCCCCCCCC5C5C5C5C5C5C5C5C5C5C5C5BDBDBDBDBDBDBDBDBD
+B1B1B1B1B1B1B1B1B1A4A4A4A4A4A4A4A4A48F8F8F8F8F8F8F8F8F5F605F5F605F5F605F5F605F
+4242424242424242423B3B3B3B3B3B3B3B3B2F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B303030
+3030303030303030303737373737373737373F3F3F3F3F3F3F3F3F6D6D6D6D6D6D6D6D6DDADADA
+DADADADADADADADADAFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD5D5D5
+D5D5D5D5D5D5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDDBDBDBDBDBDB
+DBDBDB7D7D7D7D7D7D7D7D7D3E3E3E3E3E3E3E3E3E3E3E3E323232323232323232303030303030
+3030303030303030303030303232323232323232323232322B2B2B2B2B2B2B2B2B252525252525
+2525253131313131313131314E4E4E4E4E4E4E4E4E686868686868686868686868737373737373
+737373767676767676767676777777777777777777797979797979797979797979797979797979
+7979797676767676767676767272727272727272726B6B6B6B6B6B6B6B6B626262626262626262
+6262625151515151515151514444444444444444443F3F3F3F3F3F3F3F3F3B3B3B3B3B3B3B3B3B
+3A3A3A3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3F3F3F3F3F3F3F3F3F444444444444444444
+4E4E4E4E4E4E4E4E4E5E5E5E5E5E5E5E5E5E5E5E5E6F6F6F6F6F6F6F6F6F878787878787878787
+A9A9A9A9A9A9A9A9A9BDBDBDBDBDBDBDBDBDBDBDBDC6C6C6C6C6C6C6C6C6CDCDCDCDCDCDCDCDCD
+D1D1D1D1D1D1D1D1D1D6D6D5D6D6D5D6D6D5DBDBDBDBDBDBDBDBDBDBDBDBDEDEDEDEDEDEDEDEDE
+E3E3E3E3E3E3E3E3E3EDEDEDEDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F3F3F3F3F3F3F3F3F3F3F3F3
+F8F8F8F8F8F8F8F8F8FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFCFCFCFCFCFCFCFCFCF7F7F7
+F7F7F7F7F7F7F7F7F7F0F0F0F0F0F0F0F0F0EAEAEAEAEAEAEAEAEAE5E5E5E5E5E5E5E5E5DFDFDF
+DFDFDFDFDFDFDBDBDBDBDBDBDBDBDBDBDBDBD9D9D9D9D9D9D9D9D9D5D5D5D5D5D5D5D5D5CECECE
+CECECECECECEC7C7C7C7C7C7C7C7C7C7C7C7BFBFBFBFBFBFBFBFBFB3B3B3B3B3B3B3B3B3A7A7A7
+A7A7A7A7A7A79090909090909090905F605F5F605F5F605F5F605F4242424242424242423A3A3A
+3A3A3A3A3A3A303030303030303030292929292929292929303030303030303030303030363636
+3636363636363E3E3E3E3E3E3E3E3E717171717171717171DEDEDEDEDEDEDEDEDEDEDEDEFEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BFBFBFBFBFBFBFBFBFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDDBDBDBDBDBDBDBDBDB7D7D7D7D7D7D7D7D7D
+3E3E3E3E3E3E3E3E3E3E3E3E323232323232323232303030303030303030303030303030303030
+3232323232323232323232322B2B2B2B2B2B2B2B2B252525252525252525313131313131313131
+4E4E4E4E4E4E4E4E4E686868686868686868686868737373737373737373767676767676767676
+777777777777777777797979797979797979797979797979797979797979767676767676767676
+7272727272727272726B6B6B6B6B6B6B6B6B626262626262626262626262515151515151515151
+4444444444444444443F3F3F3F3F3F3F3F3F3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3A3A3A
+3C3C3C3C3C3C3C3C3C3F3F3F3F3F3F3F3F3F4444444444444444444E4E4E4E4E4E4E4E4E5E5E5E
+5E5E5E5E5E5E5E5E5E6F6F6F6F6F6F6F6F6F878787878787878787A9A9A9A9A9A9A9A9A9BDBDBD
+BDBDBDBDBDBDBDBDBDC6C6C6C6C6C6C6C6C6CDCDCDCDCDCDCDCDCDD1D1D1D1D1D1D1D1D1D6D6D5
+D6D6D5D6D6D5DBDBDBDBDBDBDBDBDBDBDBDBDEDEDEDEDEDEDEDEDEE3E3E3E3E3E3E3E3E3EDEDED
+EDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F3F3F3F3F3F3F3F3F3F3F3F3F8F8F8F8F8F8F8F8F8FDFDFD
+FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFCFCFCFCFCFCFCFCFCF7F7F7F7F7F7F7F7F7F7F7F7F0F0F0
+F0F0F0F0F0F0EAEAEAEAEAEAEAEAEAE5E5E5E5E5E5E5E5E5DFDFDFDFDFDFDFDFDFDBDBDBDBDBDB
+DBDBDBDBDBDBD9D9D9D9D9D9D9D9D9D5D5D5D5D5D5D5D5D5CECECECECECECECECEC7C7C7C7C7C7
+C7C7C7C7C7C7BFBFBFBFBFBFBFBFBFB3B3B3B3B3B3B3B3B3A7A7A7A7A7A7A7A7A7909090909090
+9090905F605F5F605F5F605F5F605F4242424242424242423A3A3A3A3A3A3A3A3A303030303030
+3030302929292929292929293030303030303030303030303636363636363636363E3E3E3E3E3E
+3E3E3E717171717171717171DEDEDEDEDEDEDEDEDEDEDEDEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9BFBFBFBFBFBFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FDFDFDFDFDFDFDFDFDD6D6D5D6D6D5D6D6D57373737373737373733A3A3A3A3A3A3A3A3A3A3A3A
+2F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D323232323232323232323232
+2C2C2C2C2C2C2C2C2C2727272727272727273030303030303030304C4C4C4C4C4C4C4C4C666666
+6666666666666666667272727272727272727676767676767676767979797979797979797C7C7C
+7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D7F7F7F7F7F7F7F7F7F7C7C7C
+7C7C7C7C7C7C7979797979797979797979796E6E6E6E6E6E6E6E6E646464646464646464616161
+6161616161615F605F5F605F5F605F5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5E5E5E
+5E5E5E5E5E5E5F605F5F605F5F605F6767676767676767677575757575757575757575758D8D8D
+8D8D8D8D8D8DADADADADADADADADADC3C3C3C3C3C3C3C3C3CCCCCCCCCCCCCCCCCCCCCCCCD4D4D4
+D4D4D4D4D4D4DCDCDCDCDCDCDCDCDCE4E4E4E4E4E4E4E4E4E8E9E8E8E9E8E8E9E8ECECECECECEC
+ECECECECECECEBEBEBEBEBEBEBEBEBECECECECECECECECECF0F0F0F0F0F0F0F0F0F2F2F2F2F2F2
+F2F2F2F6F6F6F6F6F6F6F6F6F6F6F6FCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9F9F9F9F2F2F2F2F2F2F2F2F2EEEEEEEEEEEE
+EEEEEEE8E9E8E8E9E8E8E9E8E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DFDFDFDFDFDFDF
+DFDFDFDBDBDBDBDBDBDBDBDBD4D4D4D4D4D4D4D4D4CACACACACACACACACACACACAC1C1C1C1C1C1
+C1C1C1B6B6B6B6B6B6B6B6B6AAAAAAAAAAAAAAAAAA949494949494949494626262626262626262
+6262624444444444444444443C3C3C3C3C3C3C3C3C303030303030303030292929292929292929
+3030303030303030303030303535353535353535353B3B3B3B3B3B3B3B3B6F6F6F6F6F6F6F6F6F
+DBDBDBDBDBDBDBDBDBDBDBDBFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+C4C4C4C4C4C4C4C4C4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDD6D6D5
+D6D6D5D6D6D57373737373737373733A3A3A3A3A3A3A3A3A3A3A3A2F2F2F2F2F2F2F2F2F2C2C2C
+2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D3232323232323232323232322C2C2C2C2C2C2C2C2C272727
+2727272727273030303030303030304C4C4C4C4C4C4C4C4C666666666666666666666666727272
+7272727272727676767676767676767979797979797979797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
+7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C797979797979
+7979797979796E6E6E6E6E6E6E6E6E6464646464646464646161616161616161615F605F5F605F
+5F605F5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5E5E5E5E5E5E5E5E5E5F605F5F605F
+5F605F6767676767676767677575757575757575757575758D8D8D8D8D8D8D8D8DADADADADADAD
+ADADADC3C3C3C3C3C3C3C3C3CCCCCCCCCCCCCCCCCCCCCCCCD4D4D4D4D4D4D4D4D4DCDCDCDCDCDC
+DCDCDCE4E4E4E4E4E4E4E4E4E8E9E8E8E9E8E8E9E8ECECECECECECECECECECECECEBEBEBEBEBEB
+EBEBEBECECECECECECECECECF0F0F0F0F0F0F0F0F0F2F2F2F2F2F2F2F2F2F6F6F6F6F6F6F6F6F6
+F6F6F6FCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFD
+F9F9F9F9F9F9F9F9F9F9F9F9F2F2F2F2F2F2F2F2F2EEEEEEEEEEEEEEEEEEE8E9E8E8E9E8E8E9E8
+E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDBDBDBDBDBDBDBDBDB
+D4D4D4D4D4D4D4D4D4CACACACACACACACACACACACAC1C1C1C1C1C1C1C1C1B6B6B6B6B6B6B6B6B6
+AAAAAAAAAAAAAAAAAA949494949494949494626262626262626262626262444444444444444444
+3C3C3C3C3C3C3C3C3C303030303030303030292929292929292929303030303030303030303030
+3535353535353535353B3B3B3B3B3B3B3B3B6F6F6F6F6F6F6F6F6FDBDBDBDBDBDBDBDBDBDBDBDB
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C4C4C4C4C4C4C4C4C4FFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDD6D6D5D6D6D5D6D6D5737373737373
+7373733A3A3A3A3A3A3A3A3A3A3A3A2F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D
+2D2D2D3232323232323232323232322C2C2C2C2C2C2C2C2C272727272727272727303030303030
+3030304C4C4C4C4C4C4C4C4C666666666666666666666666727272727272727272767676767676
+7676767979797979797979797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D
+7D7D7D7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7979797979797979797979796E6E6E6E6E6E
+6E6E6E6464646464646464646161616161616161615F605F5F605F5F605F5C5C5C5C5C5C5C5C5C
+5C5C5C5C5C5C5C5C5C5C5C5C5E5E5E5E5E5E5E5E5E5F605F5F605F5F605F676767676767676767
+7575757575757575757575758D8D8D8D8D8D8D8D8DADADADADADADADADADC3C3C3C3C3C3C3C3C3
+CCCCCCCCCCCCCCCCCCCCCCCCD4D4D4D4D4D4D4D4D4DCDCDCDCDCDCDCDCDCE4E4E4E4E4E4E4E4E4
+E8E9E8E8E9E8E8E9E8ECECECECECECECECECECECECEBEBEBEBEBEBEBEBEBECECECECECECECECEC
+F0F0F0F0F0F0F0F0F0F2F2F2F2F2F2F2F2F2F6F6F6F6F6F6F6F6F6F6F6F6FCFCFCFCFCFCFCFCFC
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9F9F9F9
+F2F2F2F2F2F2F2F2F2EEEEEEEEEEEEEEEEEEE8E9E8E8E9E8E8E9E8E0E0E0E0E0E0E0E0E0DFE0DF
+DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDBDBDBDBDBDBDBDBDBD4D4D4D4D4D4D4D4D4CACACA
+CACACACACACACACACAC1C1C1C1C1C1C1C1C1B6B6B6B6B6B6B6B6B6AAAAAAAAAAAAAAAAAA949494
+9494949494946262626262626262626262624444444444444444443C3C3C3C3C3C3C3C3C303030
+3030303030302929292929292929293030303030303030303030303535353535353535353B3B3B
+3B3B3B3B3B3B6F6F6F6F6F6F6F6F6FDBDBDBDBDBDBDBDBDBDBDBDBFEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C4C4C4C4C4C4C4C4C4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFCFCFCFCFCFCFCFCFCD0D0D0D0D0D0D0D0D06C6C6C6C6C6C6C6C6C363636363636363636
+3636362C2C2C2C2C2C2C2C2C2929292929292929292B2B2B2B2B2B2B2B2B303030303030303030
+3030302D2D2D2D2D2D2D2D2D2828282828282828283030303030303030304B4B4B4B4B4B4B4B4B
+6464646464646464646464647272727272727272727676767676767676767A7A7A7A7A7A7A7A7A
+7D7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E7E7E7E808080808080808080828282828282828282
+8383838383838383838585858585858585858585858282828282828282827E7E7E7E7E7E7E7E7E
+7F7F7F7F7F7F7F7F7F818181818181818181818181818181818181818181838383838383838383
+868686868686868686888888888888888888919191919191919191A3A3A3A3A3A3A3A3A3A3A3A3
+B8B8B8B8B8B8B8B8B8CBCBCBCBCBCBCBCBCBD6D6D5D6D6D5D6D6D5DDDDDDDDDDDDDDDDDDDDDDDD
+E6E6E6E6E6E6E6E6E6EDEDEDEDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F2F2F2F2F2F2F2F2F2F3F3F3
+F3F3F3F3F3F3F3F3F3F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F2F2F2F2F2F2F2F2F2F4F4F4
+F4F4F4F4F4F4F8F8F8F8F8F8F8F8F8F8F8F8FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9F9F9F9F4F4F4F4F4F4F4F4F4EFEFEF
+EFEFEFEFEFEFE8E8E8E8E8E8E8E8E8E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1
+E1E1E1E1E1E1DDDDDDDDDDDDDDDDDDD8D8D8D8D8D8D8D8D8D0D0D0D0D0D0D0D0D0D0D0D0C4C4C4
+C4C4C4C4C4C4B8B8B8B8B8B8B8B8B8AAAAAAAAAAAAAAAAAA9494949494949494945F605F5F605F
+5F605F5F605F3F3F3F3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C3030303030303030302B2B2B2B2B2B
+2B2B2B2F2F2F2F2F2F2F2F2F2F2F2F3434343434343434343939393939393939396C6C6C6C6C6C
+6C6C6CD8D8D8D8D8D8D8D8D8D8D8D8FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFB
+FBFBFBD9D9D9D9D9D9D9D9D9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFC
+D0D0D0D0D0D0D0D0D06C6C6C6C6C6C6C6C6C3636363636363636363636362C2C2C2C2C2C2C2C2C
+2929292929292929292B2B2B2B2B2B2B2B2B3030303030303030303030302D2D2D2D2D2D2D2D2D
+2828282828282828283030303030303030304B4B4B4B4B4B4B4B4B646464646464646464646464
+7272727272727272727676767676767676767A7A7A7A7A7A7A7A7A7D7D7D7D7D7D7D7D7D7E7E7E
+7E7E7E7E7E7E7E7E7E808080808080808080828282828282828282838383838383838383858585
+8585858585858585858282828282828282827E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F818181
+818181818181818181818181818181818181838383838383838383868686868686868686888888
+888888888888919191919191919191A3A3A3A3A3A3A3A3A3A3A3A3B8B8B8B8B8B8B8B8B8CBCBCB
+CBCBCBCBCBCBD6D6D5D6D6D5D6D6D5DDDDDDDDDDDDDDDDDDDDDDDDE6E6E6E6E6E6E6E6E6EDEDED
+EDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F2F2F2F2F2F2F2F2F2F3F3F3F3F3F3F3F3F3F3F3F3F1F1F1
+F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F2F2F2F2F2F2F2F2F2F4F4F4F4F4F4F4F4F4F8F8F8F8F8F8
+F8F8F8F8F8F8FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDF9F9F9F9F9F9F9F9F9F9F9F9F4F4F4F4F4F4F4F4F4EFEFEFEFEFEFEFEFEFE8E8E8E8E8E8
+E8E8E8E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DDDDDDDDDDDD
+DDDDDDD8D8D8D8D8D8D8D8D8D0D0D0D0D0D0D0D0D0D0D0D0C4C4C4C4C4C4C4C4C4B8B8B8B8B8B8
+B8B8B8AAAAAAAAAAAAAAAAAA9494949494949494945F605F5F605F5F605F5F605F3F3F3F3F3F3F
+3F3F3F3C3C3C3C3C3C3C3C3C3030303030303030302B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F
+2F2F2F3434343434343434343939393939393939396C6C6C6C6C6C6C6C6CD8D8D8D8D8D8D8D8D8
+D8D8D8FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD9D9D9D9D9D9D9D9D9
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCD0D0D0D0D0D0D0D0D06C6C6C
+6C6C6C6C6C6C3636363636363636363636362C2C2C2C2C2C2C2C2C2929292929292929292B2B2B
+2B2B2B2B2B2B3030303030303030303030302D2D2D2D2D2D2D2D2D282828282828282828303030
+3030303030304B4B4B4B4B4B4B4B4B646464646464646464646464727272727272727272767676
+7676767676767A7A7A7A7A7A7A7A7A7D7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E7E7E7E808080
+808080808080828282828282828282838383838383838383858585858585858585858585828282
+8282828282827E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F818181818181818181818181818181
+818181818181838383838383838383868686868686868686888888888888888888919191919191
+919191A3A3A3A3A3A3A3A3A3A3A3A3B8B8B8B8B8B8B8B8B8CBCBCBCBCBCBCBCBCBD6D6D5D6D6D5
+D6D6D5DDDDDDDDDDDDDDDDDDDDDDDDE6E6E6E6E6E6E6E6E6EDEDEDEDEDEDEDEDEDF1F1F1F1F1F1
+F1F1F1F2F2F2F2F2F2F2F2F2F3F3F3F3F3F3F3F3F3F3F3F3F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1
+F1F1F1F2F2F2F2F2F2F2F2F2F4F4F4F4F4F4F4F4F4F8F8F8F8F8F8F8F8F8F8F8F8FDFDFDFDFDFD
+FDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE
+FEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9
+F9F9F9F4F4F4F4F4F4F4F4F4EFEFEFEFEFEFEFEFEFE8E8E8E8E8E8E8E8E8E2E2E2E2E2E2E2E2E2
+E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DDDDDDDDDDDDDDDDDDD8D8D8D8D8D8D8D8D8
+D0D0D0D0D0D0D0D0D0D0D0D0C4C4C4C4C4C4C4C4C4B8B8B8B8B8B8B8B8B8AAAAAAAAAAAAAAAAAA
+9494949494949494945F605F5F605F5F605F5F605F3F3F3F3F3F3F3F3F3F3C3C3C3C3C3C3C3C3C
+3030303030303030302B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F2F2F2F343434343434343434
+3939393939393939396C6C6C6C6C6C6C6C6CD8D8D8D8D8D8D8D8D8D8D8D8FDFDFDFDFDFDFDFDFD
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD9D9D9D9D9D9D9D9D9FFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFBFBFBFBFBFBFBFBFBC5C5C5C5C5C5C5C5C55F605F5F605F5F605F323232323232
+3232323232322B2B2B2B2B2B2B2B2B2828282828282828282929292929292929292F2F2F2F2F2F
+2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2929292929292929292F2F2F2F2F2F2F2F2F484848484848
+4848486363636363636363636363637272727272727272727777777777777777777C7C7C7C7C7C
+7C7C7C7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F7F7F7F818181818181818181838383838383
+8383838686868686868686868888888888888888888888888A8A8A8A8A8A8A8A8A8B8B8B8B8B8B
+8B8B8B8D8D8D8D8D8D8D8D8D9191919191919191919797979797979797979797979E9E9E9E9E9E
+9E9E9EA3A3A3A3A3A3A3A3A3A9A9A9A9A9A9A9A9A9BABABABABABABABABACCCCCCCCCCCCCCCCCC
+CCCCCCD6D6D6D6D6D6D6D6D6DFDFDFDFDFDFDFDFDFE4E4E4E4E4E4E4E4E4EBEBEBEBEBEBEBEBEB
+EBEBEBF1F1F1F1F1F1F1F1F1F4F4F4F4F4F4F4F4F4F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5
+F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F4F4F4F4F4F4F4F4F4F6F6F6F6F6F6F6F6F6
+F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDF6F6F6F6F6F6F6F6F6
+F7F7F7F7F7F7F7F7F7FBFBFBFBFBFBFBFBFBF9F9F9F9F9F9F9F9F9F9F9F9F5F5F5F5F5F5F5F5F5
+F0F0F0F0F0F0F0F0F0E8E8E8E8E8E8E8E8E8E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DF
+E0E0E0E0E0E0E0E0E0DDDDDDDDDDDDDDDDDDD9D9D9D9D9D9D9D9D9D2D2D2D2D2D2D2D2D2D2D2D2
+C7C7C7C7C7C7C7C7C7B9B9B9B9B9B9B9B9B9ABABABABABABABABAB9595959595959595955E5E5E
+5E5E5E5E5E5E5E5E5E3B3B3B3B3B3B3B3B3B3737373737373737373030303030303030302D2D2D
+2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F323232323232323232363636363636363636686868
+686868686868D6D6D5D6D6D5D6D6D5D6D6D5FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFB
+FBFBFBC5C5C5C5C5C5C5C5C55F605F5F605F5F605F3232323232323232323232322B2B2B2B2B2B
+2B2B2B2828282828282828282929292929292929292F2F2F2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D
+2D2D2D2929292929292929292F2F2F2F2F2F2F2F2F484848484848484848636363636363636363
+6363637272727272727272727777777777777777777C7C7C7C7C7C7C7C7C7E7E7E7E7E7E7E7E7E
+7F7F7F7F7F7F7F7F7F7F7F7F818181818181818181838383838383838383868686868686868686
+8888888888888888888888888A8A8A8A8A8A8A8A8A8B8B8B8B8B8B8B8B8B8D8D8D8D8D8D8D8D8D
+9191919191919191919797979797979797979797979E9E9E9E9E9E9E9E9EA3A3A3A3A3A3A3A3A3
+A9A9A9A9A9A9A9A9A9BABABABABABABABABACCCCCCCCCCCCCCCCCCCCCCCCD6D6D6D6D6D6D6D6D6
+DFDFDFDFDFDFDFDFDFE4E4E4E4E4E4E4E4E4EBEBEBEBEBEBEBEBEBEBEBEBF1F1F1F1F1F1F1F1F1
+F4F4F4F4F4F4F4F4F4F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5
+F5F5F5F5F5F5F5F5F5F4F4F4F4F4F4F4F4F4F6F6F6F6F6F6F6F6F6F7F7F7F7F7F7F7F7F7F9F9F9
+F9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFDFDFDFDFDFDFDFDFDF6F6F6F6F6F6F6F6F6F7F7F7F7F7F7F7F7F7FBFBFB
+FBFBFBFBFBFBF9F9F9F9F9F9F9F9F9F9F9F9F5F5F5F5F5F5F5F5F5F0F0F0F0F0F0F0F0F0E8E8E8
+E8E8E8E8E8E8E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DFE0E0E0E0E0E0E0E0E0DDDDDD
+DDDDDDDDDDDDD9D9D9D9D9D9D9D9D9D2D2D2D2D2D2D2D2D2D2D2D2C7C7C7C7C7C7C7C7C7B9B9B9
+B9B9B9B9B9B9ABABABABABABABABAB9595959595959595955E5E5E5E5E5E5E5E5E5E5E5E3B3B3B
+3B3B3B3B3B3B3737373737373737373030303030303030302D2D2D2D2D2D2D2D2D2F2F2F2F2F2F
+2F2F2F2F2F2F323232323232323232363636363636363636686868686868686868D6D6D5D6D6D5
+D6D6D5D6D6D5FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7
+C7C7C7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAC0C0C0C0C0C0C0C0C0
+5A5A5A5A5A5A5A5A5A3131313131313131313131312C2C2C2C2C2C2C2C2C282828282828282828
+2828282828282828282D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B
+2D2D2D2D2D2D2D2D2D4141414141414141415C5C5C5C5C5C5C5C5C5C5C5C707070707070707070
+7979797979797979797D7D7D7D7D7D7D7D7D7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
+8282828282828282828585858585858585858888888888888888888B8B8B8B8B8B8B8B8B8B8B8B
+8D8D8D8D8D8D8D8D8D8F8F8F8F8F8F8F8F8F9393939393939393939B9B9B9B9B9B9B9B9BA3A3A3
+A3A3A3A3A3A3A3A3A3AAAAAAAAAAAAAAAAAAB1B1B1B1B1B1B1B1B1BCBCBCBCBCBCBCBCBCCCCCCC
+CCCCCCCCCCCCDBDBDBDBDBDBDBDBDBDBDBDBE3E3E3E3E3E3E3E3E3E9E9E9E9E9E9E9E9E9EDEDED
+EDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F1F1F1F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F7F7F7
+F7F7F7F7F7F7F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F7F7F7F7F7F7F7F7F7F8F8F8
+F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FCFCFCFCFCFCFCFCFCFCFCFCFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFD
+FDFDFDFDFDFDF9F9F9F9F9F9F9F9F9F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9F5F5F5F5F5F5
+F5F5F5F5F5F5F0F0F0F0F0F0F0F0F0EDEDEDEDEDEDEDEDEDE5E5E5E5E5E5E5E5E5DBDBDBDBDBDB
+DBDBDBD7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4
+D4D4D4D0D0D0D0D0D0D0D0D0D0D0D0CACACACACACACACACABDBDBDBDBDBDBDBDBDAFAFAFAFAFAF
+AFAFAF9A9A9A9A9A9A9A9A9A6565656565656565656565653C3C3C3C3C3C3C3C3C373737373737
+3737373131313131313131312D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F313131313131
+3131313434343434343434345A5A5A5A5A5A5A5A5AC6C6C6C6C6C6C6C6C6C6C6C6FCFCFCFCFCFC
+FCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6FFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAC0C0C0C0C0C0C0C0C05A5A5A5A5A5A5A5A5A313131
+3131313131313131312C2C2C2C2C2C2C2C2C2828282828282828282828282828282828282D2D2D
+2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D414141
+4141414141415C5C5C5C5C5C5C5C5C5C5C5C7070707070707070707979797979797979797D7D7D
+7D7D7D7D7D7D7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F828282828282828282858585
+8585858585858888888888888888888B8B8B8B8B8B8B8B8B8B8B8B8D8D8D8D8D8D8D8D8D8F8F8F
+8F8F8F8F8F8F9393939393939393939B9B9B9B9B9B9B9B9BA3A3A3A3A3A3A3A3A3A3A3A3AAAAAA
+AAAAAAAAAAAAB1B1B1B1B1B1B1B1B1BCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCDBDBDBDBDBDB
+DBDBDBDBDBDBE3E3E3E3E3E3E3E3E3E9E9E9E9E9E9E9E9E9EDEDEDEDEDEDEDEDEDF1F1F1F1F1F1
+F1F1F1F1F1F1F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F7F7F7F7F7F7F7F7F7F6F6F6F6F6F6
+F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F7F7F7F7F7F7F7F7F7F8F8F8F8F8F8F8F8F8F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9FCFCFCFCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9
+F9F9F9F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9F5F5F5F5F5F5F5F5F5F5F5F5F0F0F0F0F0F0
+F0F0F0EDEDEDEDEDEDEDEDEDE5E5E5E5E5E5E5E5E5DBDBDBDBDBDBDBDBDBD7D7D7D7D7D7D7D7D7
+D7D7D7D6D6D6D6D6D6D6D6D6D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D0D0D0D0D0D0D0D0D0
+D0D0D0CACACACACACACACACABDBDBDBDBDBDBDBDBDAFAFAFAFAFAFAFAFAF9A9A9A9A9A9A9A9A9A
+6565656565656565656565653C3C3C3C3C3C3C3C3C373737373737373737313131313131313131
+2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2F2F2F313131313131313131343434343434343434
+5A5A5A5A5A5A5A5A5AC6C6C6C6C6C6C6C6C6C6C6C6FCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFA
+FAFAFAFAFAFAC0C0C0C0C0C0C0C0C05A5A5A5A5A5A5A5A5A3131313131313131313131312C2C2C
+2C2C2C2C2C2C2828282828282828282828282828282828282D2D2D2D2D2D2D2D2D2D2D2D2F2F2F
+2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D4141414141414141415C5C5C5C5C5C
+5C5C5C5C5C5C7070707070707070707979797979797979797D7D7D7D7D7D7D7D7D7F7F7F7F7F7F
+7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F828282828282828282858585858585858585888888888888
+8888888B8B8B8B8B8B8B8B8B8B8B8B8D8D8D8D8D8D8D8D8D8F8F8F8F8F8F8F8F8F939393939393
+9393939B9B9B9B9B9B9B9B9BA3A3A3A3A3A3A3A3A3A3A3A3AAAAAAAAAAAAAAAAAAB1B1B1B1B1B1
+B1B1B1BCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCDBDBDBDBDBDBDBDBDBDBDBDBE3E3E3E3E3E3
+E3E3E3E9E9E9E9E9E9E9E9E9EDEDEDEDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F1F1F1F5F5F5F5F5F5
+F5F5F5F6F6F6F6F6F6F6F6F6F7F7F7F7F7F7F7F7F7F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5
+F5F5F5F7F7F7F7F7F7F7F7F7F8F8F8F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+FCFCFCFCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9F7F7F7F7F7F7F7F7F7
+F9F9F9F9F9F9F9F9F9F5F5F5F5F5F5F5F5F5F5F5F5F0F0F0F0F0F0F0F0F0EDEDEDEDEDEDEDEDED
+E5E5E5E5E5E5E5E5E5DBDBDBDBDBDBDBDBDBD7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6
+D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D0D0D0D0D0D0D0D0D0D0D0D0CACACACACACACACACA
+BDBDBDBDBDBDBDBDBDAFAFAFAFAFAFAFAFAF9A9A9A9A9A9A9A9A9A656565656565656565656565
+3C3C3C3C3C3C3C3C3C3737373737373737373131313131313131312D2D2D2D2D2D2D2D2D2F2F2F
+2F2F2F2F2F2F2F2F2F3131313131313131313434343434343434345A5A5A5A5A5A5A5A5AC6C6C6
+C6C6C6C6C6C6C6C6C6FCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6
+C6C6C6C6C6C6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8F8F8F8F8F8B9B9B9B9B9B9
+B9B9B95555555555555555553131313131313131313131312C2C2C2C2C2C2C2C2C282828282828
+2828282727272727272727272C2C2C2C2C2C2C2C2C2C2C2C3131313131313131312C2C2C2C2C2C
+2C2C2C2B2B2B2B2B2B2B2B2B3A3A3A3A3A3A3A3A3A5858585858585858585858586D6D6D6D6D6D
+6D6D6D7878787878787878787D7D7D7D7D7D7D7D7D7F7F7F7F7F7F7F7F7F808080808080808080
+8080808282828282828282828585858585858585858989898989898989898D8D8D8D8D8D8D8D8D
+8D8D8D9191919191919191919494949494949494949B9B9B9B9B9B9B9B9BA2A2A2A2A2A2A2A2A2
+AAAAAAAAAAAAAAAAAAAAAAAAB1B1B1B1B1B1B1B1B1BABABABABABABABABAC4C4C4C4C4C4C4C4C4
+D1D1D1D1D1D1D1D1D1DDDDDDDDDDDDDDDDDDDDDDDDE7E7E7E7E7E7E7E7E7EDEDEDEDEDEDEDEDED
+F1F1F1F1F1F1F1F1F1F3F3F3F3F3F3F3F3F3F3F3F3F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5
+F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6F7F7F7F7F7F7F7F7F7
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FAFAFAFAFAFAFAFAFAF6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F3F3F3F3F3F3F3F3F3EAEAEA
+EAEAEAEAEAEAEAEAEAE1E1E1E1E1E1E1E1E1DCDCDCDCDCDCDCDCDCD0D0D0D0D0D0D0D0D0C5C5C5
+C5C5C5C5C5C5BDBDBDBDBDBDBDBDBDBDBDBDB8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8C0C0C0
+C0C0C0C0C0C0C9C9C9C9C9C9C9C9C9C9C9C9C7C7C7C7C7C7C7C7C7BEBEBEBEBEBEBEBEBEB1B1B1
+B1B1B1B1B1B19E9E9E9E9E9E9E9E9E6B6B6B6B6B6B6B6B6B6B6B6B3C3C3C3C3C3C3C3C3C363636
+3636363636363131313131313131312D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F
+2F2F2F2F2F2F3232323232323232324F4F4F4F4F4F4F4F4FB8B8B8B8B8B8B8B8B8B8B8B8FAFAFA
+FAFAFAFAFAFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BBBBBBBBBBBBBBBBBBFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8F8F8F8F8F8B9B9B9B9B9B9B9B9B9555555555555555555
+3131313131313131313131312C2C2C2C2C2C2C2C2C282828282828282828272727272727272727
+2C2C2C2C2C2C2C2C2C2C2C2C3131313131313131312C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B
+3A3A3A3A3A3A3A3A3A5858585858585858585858586D6D6D6D6D6D6D6D6D787878787878787878
+7D7D7D7D7D7D7D7D7D7F7F7F7F7F7F7F7F7F808080808080808080808080828282828282828282
+8585858585858585858989898989898989898D8D8D8D8D8D8D8D8D8D8D8D919191919191919191
+9494949494949494949B9B9B9B9B9B9B9B9BA2A2A2A2A2A2A2A2A2AAAAAAAAAAAAAAAAAAAAAAAA
+B1B1B1B1B1B1B1B1B1BABABABABABABABABAC4C4C4C4C4C4C4C4C4D1D1D1D1D1D1D1D1D1DDDDDD
+DDDDDDDDDDDDDDDDDDE7E7E7E7E7E7E7E7E7EDEDEDEDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F3F3F3
+F3F3F3F3F3F3F3F3F3F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5
+F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFAFAFAFAFAFAFAFAFAF6F6F6
+F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F3F3F3F3F3F3F3F3F3EAEAEAEAEAEAEAEAEAEAEAEAE1E1E1
+E1E1E1E1E1E1DCDCDCDCDCDCDCDCDCD0D0D0D0D0D0D0D0D0C5C5C5C5C5C5C5C5C5BDBDBDBDBDBD
+BDBDBDBDBDBDB8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8C0C0C0C0C0C0C0C0C0C9C9C9C9C9C9
+C9C9C9C9C9C9C7C7C7C7C7C7C7C7C7BEBEBEBEBEBEBEBEBEB1B1B1B1B1B1B1B1B19E9E9E9E9E9E
+9E9E9E6B6B6B6B6B6B6B6B6B6B6B6B3C3C3C3C3C3C3C3C3C363636363636363636313131313131
+3131312D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F323232323232
+3232324F4F4F4F4F4F4F4F4FB8B8B8B8B8B8B8B8B8B8B8B8FAFAFAFAFAFAFAFAFAFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9BBBBBBBBBBBBBBBBBBFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+F3F3F3F3F3F3F3F3F3ABABABABABABABABAB4E4E4E4E4E4E4E4E4E2F2F2F2F2F2F2F2F2F2F2F2F
+2828282828282828282727272727272727272727272727272727272C2C2C2C2C2C2C2C2C2C2C2C
+313131313131313131292929292929292929252525252525252525353535353535353535545454
+5454545454545454546A6A6A6A6A6A6A6A6A7676767676767676767C7C7C7C7C7C7C7C7C7F7F7F
+7F7F7F7F7F7F8282828282828282828282828282828282828282828686868686868686868B8B8B
+8B8B8B8B8B8B9090909090909090909090909696969696969696969B9B9B9B9B9B9B9B9BA1A1A1
+A1A1A1A1A1A1A7A7A7A7A7A7A7A7A7AEAEAEAEAEAEAEAEAEAEAEAEB4B4B4B4B4B4B4B4B4BCBCBC
+BCBCBCBCBCBCC5C5C5C5C5C5C5C5C5D0D0D0D0D0D0D0D0D0DADADADADADADADADADADADAE3E3E3
+E3E3E3E3E3E3E6E6E6E6E6E6E6E6E6ECECECECECECECECECEDEDEDEDEDEDEDEDEDEDEDEDF1F1F1
+F1F1F1F1F1F1F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F1F1F1F1F1F1F1F1F1F3F3F3F3F3F3
+F3F3F3F3F3F3F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6
+F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F8F8F8F8F8F8
+F8F8F8F5F5F5F5F5F5F5F5F5F5F5F5EEEEEEEEEEEEEEEEEEE9E9E9E9E9E9E9E9E9E5E5E5E5E5E5
+E5E5E5DBDBDBDBDBDBDBDBDBCBCBCBCBCBCBCBCBCBCBCBCBBDBDBDBDBDBDBDBDBDB0B1B0B0B1B0
+B0B1B0A1A1A1A1A1A1A1A1A19595959595959595958F8F8F8F8F8F8F8F8F8F8F8F888888888888
+888888898989898989898989949494949494949494A8A8A8A8A8A8A8A8A8A8A8A8B7B7B7B7B7B7
+B7B7B7B8B8B8B8B8B8B8B8B8B0B1B0B0B1B0B0B1B09E9E9E9E9E9E9E9E9E6D6D6D6D6D6D6D6D6D
+6D6D6D3B3B3B3B3B3B3B3B3B3434343434343434343030303030303030302B2B2B2B2B2B2B2B2B
+2929292929292929292929292C2C2C2C2C2C2C2C2C3030303030303030304C4C4C4C4C4C4C4C4C
+B2B2B2B2B2B2B2B2B2B2B2B2F9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+C5C5C5C5C5C5C5C5C5FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEF3F3F3F3F3F3F3F3F3ABABAB
+ABABABABABAB4E4E4E4E4E4E4E4E4E2F2F2F2F2F2F2F2F2F2F2F2F282828282828282828272727
+2727272727272727272727272727272C2C2C2C2C2C2C2C2C2C2C2C313131313131313131292929
+2929292929292525252525252525253535353535353535355454545454545454545454546A6A6A
+6A6A6A6A6A6A7676767676767676767C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F828282828282
+8282828282828282828282828282828686868686868686868B8B8B8B8B8B8B8B8B909090909090
+9090909090909696969696969696969B9B9B9B9B9B9B9B9BA1A1A1A1A1A1A1A1A1A7A7A7A7A7A7
+A7A7A7AEAEAEAEAEAEAEAEAEAEAEAEB4B4B4B4B4B4B4B4B4BCBCBCBCBCBCBCBCBCC5C5C5C5C5C5
+C5C5C5D0D0D0D0D0D0D0D0D0DADADADADADADADADADADADAE3E3E3E3E3E3E3E3E3E6E6E6E6E6E6
+E6E6E6ECECECECECECECECECEDEDEDEDEDEDEDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F2F2F2F2F2F2
+F2F2F2F2F2F2F2F2F2F2F2F2F1F1F1F1F1F1F1F1F1F3F3F3F3F3F3F3F3F3F3F3F3F4F4F4F4F4F4
+F4F4F4F4F4F4F4F4F4F4F4F4F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5
+F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F8F8F8F8F8F8F8F8F8F5F5F5F5F5F5F5F5F5
+F5F5F5EEEEEEEEEEEEEEEEEEE9E9E9E9E9E9E9E9E9E5E5E5E5E5E5E5E5E5DBDBDBDBDBDBDBDBDB
+CBCBCBCBCBCBCBCBCBCBCBCBBDBDBDBDBDBDBDBDBDB0B1B0B0B1B0B0B1B0A1A1A1A1A1A1A1A1A1
+9595959595959595958F8F8F8F8F8F8F8F8F8F8F8F888888888888888888898989898989898989
+949494949494949494A8A8A8A8A8A8A8A8A8A8A8A8B7B7B7B7B7B7B7B7B7B8B8B8B8B8B8B8B8B8
+B0B1B0B0B1B0B0B1B09E9E9E9E9E9E9E9E9E6D6D6D6D6D6D6D6D6D6D6D6D3B3B3B3B3B3B3B3B3B
+3434343434343434343030303030303030302B2B2B2B2B2B2B2B2B292929292929292929292929
+2C2C2C2C2C2C2C2C2C3030303030303030304C4C4C4C4C4C4C4C4CB2B2B2B2B2B2B2B2B2B2B2B2
+F9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5FEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEF3F3F3F3F3F3F3F3F3ABABABABABABABABAB4E4E4E4E4E4E
+4E4E4E2F2F2F2F2F2F2F2F2F2F2F2F282828282828282828272727272727272727272727272727
+2727272C2C2C2C2C2C2C2C2C2C2C2C313131313131313131292929292929292929252525252525
+2525253535353535353535355454545454545454545454546A6A6A6A6A6A6A6A6A767676767676
+7676767C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F828282828282828282828282828282828282
+8282828686868686868686868B8B8B8B8B8B8B8B8B909090909090909090909090969696969696
+9696969B9B9B9B9B9B9B9B9BA1A1A1A1A1A1A1A1A1A7A7A7A7A7A7A7A7A7AEAEAEAEAEAEAEAEAE
+AEAEAEB4B4B4B4B4B4B4B4B4BCBCBCBCBCBCBCBCBCC5C5C5C5C5C5C5C5C5D0D0D0D0D0D0D0D0D0
+DADADADADADADADADADADADAE3E3E3E3E3E3E3E3E3E6E6E6E6E6E6E6E6E6ECECECECECECECECEC
+EDEDEDEDEDEDEDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2
+F1F1F1F1F1F1F1F1F1F3F3F3F3F3F3F3F3F3F3F3F3F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4
+F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5
+F5F5F5F5F5F5F5F5F5F8F8F8F8F8F8F8F8F8F5F5F5F5F5F5F5F5F5F5F5F5EEEEEEEEEEEEEEEEEE
+E9E9E9E9E9E9E9E9E9E5E5E5E5E5E5E5E5E5DBDBDBDBDBDBDBDBDBCBCBCBCBCBCBCBCBCBCBCBCB
+BDBDBDBDBDBDBDBDBDB0B1B0B0B1B0B0B1B0A1A1A1A1A1A1A1A1A19595959595959595958F8F8F
+8F8F8F8F8F8F8F8F8F888888888888888888898989898989898989949494949494949494A8A8A8
+A8A8A8A8A8A8A8A8A8B7B7B7B7B7B7B7B7B7B8B8B8B8B8B8B8B8B8B0B1B0B0B1B0B0B1B09E9E9E
+9E9E9E9E9E9E6D6D6D6D6D6D6D6D6D6D6D6D3B3B3B3B3B3B3B3B3B343434343434343434303030
+3030303030302B2B2B2B2B2B2B2B2B2929292929292929292929292C2C2C2C2C2C2C2C2C303030
+3030303030304C4C4C4C4C4C4C4C4CB2B2B2B2B2B2B2B2B2B2B2B2F9F9F9F9F9F9F9F9F9FFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5FDFDFDFDFDFDFDFDFDFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDF0F0F0F0F0F0F0F0F0A8A8A8A8A8A8A8A8A84E4E4E4E4E4E4E4E4E2F2F2F2F2F2F2F2F2F
+2F2F2F2828282828282828282828282828282828282929292929292929292F2F2F2F2F2F2F2F2F
+2F2F2F3232323232323232322B2B2B2B2B2B2B2B2B252525252525252525303030303030303030
+4D4D4D4D4D4D4D4D4D4D4D4D6767676767676767677676767676767676767D7D7D7D7D7D7D7D7D
+8080808080808080808282828282828282828282828484848484848484848A8A8A8A8A8A8A8A8A
+8F8F8F8F8F8F8F8F8F9595959595959595959595959C9C9C9C9C9C9C9C9CA0A0A0A0A0A0A0A0A0
+A5A5A5A5A5A5A5A5A5AAAAAAAAAAAAAAAAAAB0B1B0B0B1B0B0B1B0B0B1B0B5B5B5B5B5B5B5B5B5
+BBBBBBBBBBBBBBBBBBC2C2C2C2C2C2C2C2C2C9C9C9C9C9C9C9C9C9D0D0D0D0D0D0D0D0D0D0D0D0
+D8D8D8D8D8D8D8D8D8DCDCDCDCDCDCDCDCDCE1E1E1E1E1E1E1E1E1E4E4E4E4E4E4E4E4E4E4E4E4
+E7E7E7E7E7E7E7E7E7EBEBEBEBEBEBEBEBEBEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEFEFEF
+EFEFEFEFEFEFEFEFEFEEEEEEEEEEEEEEEEEEECECECECECECECECECEDEDEDEDEDEDEDEDEDF0F0F0
+F0F0F0F0F0F0F2F2F2F2F2F2F2F2F2F2F2F2F1F1F1F1F1F1F1F1F1EFEFEFEFEFEFEFEFEFEAEAEA
+EAEAEAEAEAEAE4E4E4E4E4E4E4E4E4E4E4E4DFDFDFDFDFDFDFDFDFD6D6D6D6D6D6D6D6D6C4C4C4
+C4C4C4C4C4C4ACACACACACACACACAC9191919191919191919191917F7F7F7F7F7F7F7F7F767676
+7676767676766D6D6D6D6D6D6D6D6D6666666666666666666464646464646464646464645E5E5E
+5E5E5E5E5E5E6161616161616161616666666666666666667575757575757575757575758B8B8B
+8B8B8B8B8B8B9F9F9F9F9F9F9F9F9FA8A8A8A8A8A8A8A8A89F9F9F9F9F9F9F9F9F747474747474
+7474747474743E3E3E3E3E3E3E3E3E3434343434343434342F2F2F2F2F2F2F2F2F2B2B2B2B2B2B
+2B2B2B2929292929292929292929292C2C2C2C2C2C2C2C2C303030303030303030494949494949
+494949AFAFAFAFAFAFAFAFAFAFAFAFF9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9C6C6C6C6C6C6C6C6C6FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF0F0F0F0F0F0F0F0F0
+A8A8A8A8A8A8A8A8A84E4E4E4E4E4E4E4E4E2F2F2F2F2F2F2F2F2F2F2F2F282828282828282828
+2828282828282828282929292929292929292F2F2F2F2F2F2F2F2F2F2F2F323232323232323232
+2B2B2B2B2B2B2B2B2B2525252525252525253030303030303030304D4D4D4D4D4D4D4D4D4D4D4D
+6767676767676767677676767676767676767D7D7D7D7D7D7D7D7D808080808080808080828282
+8282828282828282828484848484848484848A8A8A8A8A8A8A8A8A8F8F8F8F8F8F8F8F8F959595
+9595959595959595959C9C9C9C9C9C9C9C9CA0A0A0A0A0A0A0A0A0A5A5A5A5A5A5A5A5A5AAAAAA
+AAAAAAAAAAAAB0B1B0B0B1B0B0B1B0B0B1B0B5B5B5B5B5B5B5B5B5BBBBBBBBBBBBBBBBBBC2C2C2
+C2C2C2C2C2C2C9C9C9C9C9C9C9C9C9D0D0D0D0D0D0D0D0D0D0D0D0D8D8D8D8D8D8D8D8D8DCDCDC
+DCDCDCDCDCDCE1E1E1E1E1E1E1E1E1E4E4E4E4E4E4E4E4E4E4E4E4E7E7E7E7E7E7E7E7E7EBEBEB
+EBEBEBEBEBEBEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEFEFEFEFEFEFEFEFEFEFEFEFEEEEEE
+EEEEEEEEEEEEECECECECECECECECECEDEDEDEDEDEDEDEDEDF0F0F0F0F0F0F0F0F0F2F2F2F2F2F2
+F2F2F2F2F2F2F1F1F1F1F1F1F1F1F1EFEFEFEFEFEFEFEFEFEAEAEAEAEAEAEAEAEAE4E4E4E4E4E4
+E4E4E4E4E4E4DFDFDFDFDFDFDFDFDFD6D6D6D6D6D6D6D6D6C4C4C4C4C4C4C4C4C4ACACACACACAC
+ACACAC9191919191919191919191917F7F7F7F7F7F7F7F7F7676767676767676766D6D6D6D6D6D
+6D6D6D6666666666666666666464646464646464646464645E5E5E5E5E5E5E5E5E616161616161
+6161616666666666666666667575757575757575757575758B8B8B8B8B8B8B8B8B9F9F9F9F9F9F
+9F9F9FA8A8A8A8A8A8A8A8A89F9F9F9F9F9F9F9F9F7474747474747474747474743E3E3E3E3E3E
+3E3E3E3434343434343434342F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B292929292929292929
+2929292C2C2C2C2C2C2C2C2C303030303030303030494949494949494949AFAFAFAFAFAFAFAFAF
+AFAFAFF9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6
+FCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFD
+FCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFC
+FCFCFCFCFCFCFCFCFCFBFBFBFBFBFBFBFBFBFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFA
+FAFAFAFAFAFAFAFAFAFBFBFBFBFBFBFBFBFBEFEFEFEFEFEFEFEFEFA9A9A9A9A9A9A9A9A9505050
+5050505050502F2F2F2F2F2F2F2F2F2F2F2F2828282828282828282828282828282828282B2B2B
+2B2B2B2B2B2B3131313131313131313131313535353535353535352B2B2B2B2B2B2B2B2B242424
+2424242424242C2C2C2C2C2C2C2C2C474747474747474747474747646464646464646464737373
+7373737373737C7C7C7C7C7C7C7C7C818181818181818181838383838383838383838383858585
+8585858585858C8C8C8C8C8C8C8C8C9393939393939393939B9B9B9B9B9B9B9B9B9B9B9B9F9F9F
+9F9F9F9F9F9FA3A3A3A3A3A3A3A3A3A7A7A7A7A7A7A7A7A7ADADADADADADADADADB1B1B1B1B1B1
+B1B1B1B1B1B1B5B5B5B5B5B5B5B5B5B8B8B8B8B8B8B8B8B8BDBDBDBDBDBDBDBDBDC3C3C3C3C3C3
+C3C3C3C8C8C8C8C8C8C8C8C8C8C8C8CECECECECECECECECED0D0D0D0D0D0D0D0D0D5D5D5D5D5D5
+D5D5D5DADADADADADADADADADADADADDDDDDDDDDDDDDDDDDE2E2E2E2E2E2E2E2E2E7E7E7E7E7E7
+E7E7E7E7E7E7E7E7E7E7E7E7E9E9E9E9E9E9E9E9E9E9E9E9E7E7E7E7E7E7E7E7E7E4E4E4E4E4E4
+E4E4E4E3E3E3E3E3E3E3E3E3E7E7E7E7E7E7E7E7E7EAEAEAEAEAEAEAEAEAEAEAEAE8E8E8E8E8E8
+E8E8E8E2E2E2E2E2E2E2E2E2DBDBDBDBDBDBDBDBDBD0D0D0D0D0D0D0D0D0D0D0D0C7C7C7C7C7C7
+C7C7C7B2B2B2B2B2B2B2B2B29191919191919191917575757575757575755B5B5B5B5B5B5B5B5B
+5B5B5B5050505050505050504E4E4E4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C
+4C4C4C4C4C4C4C4C4C4C4C4C4B4B4B4B4B4B4B4B4B4C4C4C4C4C4C4C4C4C505050505050505050
+595959595959595959595959646464646464646464737373737373737373888888888888888888
+9595959595959595957A7A7A7A7A7A7A7A7A7A7A7A414141414141414141323232323232323232
+2D2D2D2D2D2D2D2D2D2828282828282828282828282828282828282828282B2B2B2B2B2B2B2B2B
+2F2F2F2F2F2F2F2F2F464646464646464646A8A8A8A8A8A8A8A8A8A8A8A8F8F8F8F8F8F8F8F8F8
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3FCFCFCFCFCFCFCFCFCFDFDFD
+FDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFDFDFD
+FDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFBFBFB
+FBFBFBFBFBFBFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFBFBFB
+FBFBFBFBFBFBEFEFEFEFEFEFEFEFEFA9A9A9A9A9A9A9A9A95050505050505050502F2F2F2F2F2F
+2F2F2F2F2F2F2828282828282828282828282828282828282B2B2B2B2B2B2B2B2B313131313131
+3131313131313535353535353535352B2B2B2B2B2B2B2B2B2424242424242424242C2C2C2C2C2C
+2C2C2C4747474747474747474747476464646464646464647373737373737373737C7C7C7C7C7C
+7C7C7C8181818181818181818383838383838383838383838585858585858585858C8C8C8C8C8C
+8C8C8C9393939393939393939B9B9B9B9B9B9B9B9B9B9B9B9F9F9F9F9F9F9F9F9FA3A3A3A3A3A3
+A3A3A3A7A7A7A7A7A7A7A7A7ADADADADADADADADADB1B1B1B1B1B1B1B1B1B1B1B1B5B5B5B5B5B5
+B5B5B5B8B8B8B8B8B8B8B8B8BDBDBDBDBDBDBDBDBDC3C3C3C3C3C3C3C3C3C8C8C8C8C8C8C8C8C8
+C8C8C8CECECECECECECECECED0D0D0D0D0D0D0D0D0D5D5D5D5D5D5D5D5D5DADADADADADADADADA
+DADADADDDDDDDDDDDDDDDDDDE2E2E2E2E2E2E2E2E2E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7
+E9E9E9E9E9E9E9E9E9E9E9E9E7E7E7E7E7E7E7E7E7E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3
+E7E7E7E7E7E7E7E7E7EAEAEAEAEAEAEAEAEAEAEAEAE8E8E8E8E8E8E8E8E8E2E2E2E2E2E2E2E2E2
+DBDBDBDBDBDBDBDBDBD0D0D0D0D0D0D0D0D0D0D0D0C7C7C7C7C7C7C7C7C7B2B2B2B2B2B2B2B2B2
+9191919191919191917575757575757575755B5B5B5B5B5B5B5B5B5B5B5B505050505050505050
+4E4E4E4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C
+4B4B4B4B4B4B4B4B4B4C4C4C4C4C4C4C4C4C505050505050505050595959595959595959595959
+6464646464646464647373737373737373738888888888888888889595959595959595957A7A7A
+7A7A7A7A7A7A7A7A7A4141414141414141413232323232323232322D2D2D2D2D2D2D2D2D282828
+2828282828282828282828282828282828282B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F464646
+464646464646A8A8A8A8A8A8A8A8A8A8A8A8F8F8F8F8F8F8F8F8F8FFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3FCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFCFCFCFCFCFC
+FCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFCFCFCFCFCFC
+FCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFBFBFBFBFBFBFBFBFBFAFAFAFAFAFA
+FAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFBFBFBFBFBFBFBFBFBEFEFEFEFEFEF
+EFEFEFA9A9A9A9A9A9A9A9A95050505050505050502F2F2F2F2F2F2F2F2F2F2F2F282828282828
+2828282828282828282828282B2B2B2B2B2B2B2B2B313131313131313131313131353535353535
+3535352B2B2B2B2B2B2B2B2B2424242424242424242C2C2C2C2C2C2C2C2C474747474747474747
+4747476464646464646464647373737373737373737C7C7C7C7C7C7C7C7C818181818181818181
+8383838383838383838383838585858585858585858C8C8C8C8C8C8C8C8C939393939393939393
+9B9B9B9B9B9B9B9B9B9B9B9B9F9F9F9F9F9F9F9F9FA3A3A3A3A3A3A3A3A3A7A7A7A7A7A7A7A7A7
+ADADADADADADADADADB1B1B1B1B1B1B1B1B1B1B1B1B5B5B5B5B5B5B5B5B5B8B8B8B8B8B8B8B8B8
+BDBDBDBDBDBDBDBDBDC3C3C3C3C3C3C3C3C3C8C8C8C8C8C8C8C8C8C8C8C8CECECECECECECECECE
+D0D0D0D0D0D0D0D0D0D5D5D5D5D5D5D5D5D5DADADADADADADADADADADADADDDDDDDDDDDDDDDDDD
+E2E2E2E2E2E2E2E2E2E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E9E9E9E9E9E9E9E9E9E9E9E9
+E7E7E7E7E7E7E7E7E7E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E7E7E7E7E7E7E7E7E7EAEAEA
+EAEAEAEAEAEAEAEAEAE8E8E8E8E8E8E8E8E8E2E2E2E2E2E2E2E2E2DBDBDBDBDBDBDBDBDBD0D0D0
+D0D0D0D0D0D0D0D0D0C7C7C7C7C7C7C7C7C7B2B2B2B2B2B2B2B2B2919191919191919191757575
+7575757575755B5B5B5B5B5B5B5B5B5B5B5B5050505050505050504E4E4E4E4E4E4E4E4E4C4C4C
+4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4B4B4B4B4B4B4B4B4B4C4C4C
+4C4C4C4C4C4C505050505050505050595959595959595959595959646464646464646464737373
+7373737373738888888888888888889595959595959595957A7A7A7A7A7A7A7A7A7A7A7A414141
+4141414141413232323232323232322D2D2D2D2D2D2D2D2D282828282828282828282828282828
+2828282828282B2B2B2B2B2B2B2B2B2F2F2F2F2F2F2F2F2F464646464646464646A8A8A8A8A8A8
+A8A8A8A8A8A8F8F8F8F8F8F8F8F8F8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3
+C3C3C3F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8
+F8F8F8F8F8F8F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8
+F8F8F8F8F8F8F8F8F8F8F8F8F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5
+F6F6F6F6F6F6F6F6F6F6F6F6F7F7F7F7F7F7F7F7F7EAEAEAEAEAEAEAEAEAA6A6A6A6A6A6A6A6A6
+515151515151515151303030303030303030303030292929292929292929292929292929292929
+2D2D2D2D2D2D2D2D2D3131313131313131313131313232323232323232322B2B2B2B2B2B2B2B2B
+2525252525252525252929292929292929294141414141414141414141415F605F5F605F5F605F
+7070707070707070707979797979797979797F7F7F7F7F7F7F7F7F838383838383838383838383
+8686868686868686868C8C8C8C8C8C8C8C8C9696969696969696969E9E9E9E9E9E9E9E9E9E9E9E
+A1A1A1A1A1A1A1A1A1A4A4A4A4A4A4A4A4A4A8A8A8A8A8A8A8A8A8ACACACACACACACACACAFAFAF
+AFAFAFAFAFAFAFAFAFB0B1B0B0B1B0B0B1B0B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8BCBCBC
+BCBCBCBCBCBCBEBEBEBEBEBEBEBEBEBEBEBEC0C0C0C0C0C0C0C0C0C1C1C1C1C1C1C1C1C1C5C5C5
+C5C5C5C5C5C5CDCDCDCDCDCDCDCDCDCDCDCDD3D3D3D3D3D3D3D3D3D6D6D6D6D6D6D6D6D6DDDDDD
+DDDDDDDDDDDDDFE0DFDFE0DFDFE0DFE3E3E3E3E3E3E3E3E3E3E3E3E0E0E0E0E0E0E0E0E0DBDBDB
+DBDBDBDBDBDBD9D9D9D9D9D9D9D9D9DCDCDCDCDCDCDCDCDCDFE0DFDFE0DFDFE0DFDFE0DFDBDBDB
+DBDBDBDBDBDBD1D1D1D1D1D1D1D1D1C9C9C9C9C9C9C9C9C9BCBCBCBCBCBCBCBCBCBCBCBCA8A8A8
+A8A8A8A8A8A8888888888888888888676767676767676767525252525252525252454545454545
+4545454545453F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F454545454545
+4545454B4B4B4B4B4B4B4B4B4B4B4B4D4D4D4D4D4D4D4D4D4E4E4E4E4E4E4E4E4E525252525252
+5252525656565656565656565656565A5A5A5A5A5A5A5A5A6161616161616161616D6D6D6D6D6D
+6D6D6D8383838383838383837D7D7D7D7D7D7D7D7D7D7D7D464646464646464646313131313131
+3131312D2D2D2D2D2D2D2D2D2828282828282828282828282828282828282828282B2B2B2B2B2B
+2B2B2B2D2D2D2D2D2D2D2D2D4141414141414141419E9E9E9E9E9E9E9E9E9E9E9EF5F5F5F5F5F5
+F5F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7B4B4B4B4B4B4B4B4B4F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8
+F9F9F9F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8
+F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6
+F7F7F7F7F7F7F7F7F7EAEAEAEAEAEAEAEAEAA6A6A6A6A6A6A6A6A6515151515151515151303030
+3030303030303030302929292929292929292929292929292929292D2D2D2D2D2D2D2D2D313131
+3131313131313131313232323232323232322B2B2B2B2B2B2B2B2B252525252525252525292929
+2929292929294141414141414141414141415F605F5F605F5F605F707070707070707070797979
+7979797979797F7F7F7F7F7F7F7F7F8383838383838383838383838686868686868686868C8C8C
+8C8C8C8C8C8C9696969696969696969E9E9E9E9E9E9E9E9E9E9E9EA1A1A1A1A1A1A1A1A1A4A4A4
+A4A4A4A4A4A4A8A8A8A8A8A8A8A8A8ACACACACACACACACACAFAFAFAFAFAFAFAFAFAFAFAFB0B1B0
+B0B1B0B0B1B0B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8BCBCBCBCBCBCBCBCBCBEBEBEBEBEBE
+BEBEBEBEBEBEC0C0C0C0C0C0C0C0C0C1C1C1C1C1C1C1C1C1C5C5C5C5C5C5C5C5C5CDCDCDCDCDCD
+CDCDCDCDCDCDD3D3D3D3D3D3D3D3D3D6D6D6D6D6D6D6D6D6DDDDDDDDDDDDDDDDDDDFE0DFDFE0DF
+DFE0DFE3E3E3E3E3E3E3E3E3E3E3E3E0E0E0E0E0E0E0E0E0DBDBDBDBDBDBDBDBDBD9D9D9D9D9D9
+D9D9D9DCDCDCDCDCDCDCDCDCDFE0DFDFE0DFDFE0DFDFE0DFDBDBDBDBDBDBDBDBDBD1D1D1D1D1D1
+D1D1D1C9C9C9C9C9C9C9C9C9BCBCBCBCBCBCBCBCBCBCBCBCA8A8A8A8A8A8A8A8A8888888888888
+8888886767676767676767675252525252525252524545454545454545454545453F3F3F3F3F3F
+3F3F3F3E3E3E3E3E3E3E3E3E3F3F3F3F3F3F3F3F3F4545454545454545454B4B4B4B4B4B4B4B4B
+4B4B4B4D4D4D4D4D4D4D4D4D4E4E4E4E4E4E4E4E4E525252525252525252565656565656565656
+5656565A5A5A5A5A5A5A5A5A6161616161616161616D6D6D6D6D6D6D6D6D838383838383838383
+7D7D7D7D7D7D7D7D7D7D7D7D4646464646464646463131313131313131312D2D2D2D2D2D2D2D2D
+2828282828282828282828282828282828282828282B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D
+4141414141414141419E9E9E9E9E9E9E9E9E9E9E9EF5F5F5F5F5F5F5F5F5FFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F7F7F7F7F7F7F7F7F7B4B4B4B4B4B4B4B4B4F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9F8F8F8
+F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F6F6F6F6F6F6F6F6F6F5F5F5
+F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6F7F7F7F7F7F7F7F7F7EAEAEA
+EAEAEAEAEAEAA6A6A6A6A6A6A6A6A6515151515151515151303030303030303030303030292929
+2929292929292929292929292929292D2D2D2D2D2D2D2D2D313131313131313131313131323232
+3232323232322B2B2B2B2B2B2B2B2B252525252525252525292929292929292929414141414141
+4141414141415F605F5F605F5F605F7070707070707070707979797979797979797F7F7F7F7F7F
+7F7F7F8383838383838383838383838686868686868686868C8C8C8C8C8C8C8C8C969696969696
+9696969E9E9E9E9E9E9E9E9E9E9E9EA1A1A1A1A1A1A1A1A1A4A4A4A4A4A4A4A4A4A8A8A8A8A8A8
+A8A8A8ACACACACACACACACACAFAFAFAFAFAFAFAFAFAFAFAFB0B1B0B0B1B0B0B1B0B4B4B4B4B4B4
+B4B4B4B8B8B8B8B8B8B8B8B8BCBCBCBCBCBCBCBCBCBEBEBEBEBEBEBEBEBEBEBEBEC0C0C0C0C0C0
+C0C0C0C1C1C1C1C1C1C1C1C1C5C5C5C5C5C5C5C5C5CDCDCDCDCDCDCDCDCDCDCDCDD3D3D3D3D3D3
+D3D3D3D6D6D6D6D6D6D6D6D6DDDDDDDDDDDDDDDDDDDFE0DFDFE0DFDFE0DFE3E3E3E3E3E3E3E3E3
+E3E3E3E0E0E0E0E0E0E0E0E0DBDBDBDBDBDBDBDBDBD9D9D9D9D9D9D9D9D9DCDCDCDCDCDCDCDCDC
+DFE0DFDFE0DFDFE0DFDFE0DFDBDBDBDBDBDBDBDBDBD1D1D1D1D1D1D1D1D1C9C9C9C9C9C9C9C9C9
+BCBCBCBCBCBCBCBCBCBCBCBCA8A8A8A8A8A8A8A8A8888888888888888888676767676767676767
+5252525252525252524545454545454545454545453F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E
+3F3F3F3F3F3F3F3F3F4545454545454545454B4B4B4B4B4B4B4B4B4B4B4B4D4D4D4D4D4D4D4D4D
+4E4E4E4E4E4E4E4E4E5252525252525252525656565656565656565656565A5A5A5A5A5A5A5A5A
+6161616161616161616D6D6D6D6D6D6D6D6D8383838383838383837D7D7D7D7D7D7D7D7D7D7D7D
+4646464646464646463131313131313131312D2D2D2D2D2D2D2D2D282828282828282828282828
+2828282828282828282B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D4141414141414141419E9E9E
+9E9E9E9E9E9E9E9E9EF5F5F5F5F5F5F5F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7B4B4B4
+B4B4B4B4B4B4F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F7F7F7F7F7F7F7F7F7F7F7F7F6F6F6
+F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5
+F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4
+F4F4F4F4F4F4F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F2F2F2F2F2F2F2F2F2F3F3F3F3F3F3
+F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F1F1F1F1F1F1F1F1F1E2E2E2E2E2E2E2E2E2A1A1A1A1A1A1
+A1A1A1525252525252525252323232323232323232323232292929292929292929292929292929
+2929292C2C2C2C2C2C2C2C2C2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2B2B2B2B2B2B
+2B2B2B252525252525252525272727272727272727373737373737373737373737585858585858
+5858586D6D6D6D6D6D6D6D6D7777777777777777777E7E7E7E7E7E7E7E7E828282828282828282
+8282828787878787878787878D8D8D8D8D8D8D8D8D9595959595959595959D9D9D9D9D9D9D9D9D
+9D9D9DA1A1A1A1A1A1A1A1A1A2A2A2A2A2A2A2A2A2A3A3A3A3A3A3A3A3A3A5A5A5A5A5A5A5A5A5
+A7A7A7A7A7A7A7A7A7A7A7A7AAAAAAAAAAAAAAAAAAADADADADADADADADADADADADADADADADADAD
+ADADADADADADADADADAFAFAFAFAFAFAFAFAFAFAFAFB0B0B0B0B0B0B0B0B0B3B3B3B3B3B3B3B3B3
+B8B8B8B8B8B8B8B8B8BDBDBDBDBDBDBDBDBDBDBDBDC4C4C4C4C4C4C4C4C4CBCBCBCBCBCBCBCBCB
+D2D2D2D2D2D2D2D2D2D6D6D6D6D6D6D6D6D6D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8
+D3D3D3D3D3D3D3D3D3D0D0D0D0D0D0D0D0D0D3D3D3D3D3D3D3D3D3D5D5D5D5D5D5D5D5D5D5D5D5
+CFCFCFCFCFCFCFCFCFC5C5C5C5C5C5C5C5C5B9B9B9B9B9B9B9B9B9A3A3A3A3A3A3A3A3A3A3A3A3
+8686868686868686866969696969696969695454545454545454544646464646464646463C3C3C
+3C3C3C3C3C3C3C3C3C3939393939393939393C3C3C3C3C3C3C3C3C4B4B4B4B4B4B4B4B4B5C5C5C
+5C5C5C5C5C5C6767676767676767676767676D6D6D6D6D6D6D6D6D6F6F6F6F6F6F6F6F6F6E6E6E
+6E6E6E6E6E6E6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6A6A6A6A6A6A6A6A6A686868
+6868686868687676767676767676767E7E7E7E7E7E7E7E7E7E7E7E4F4F4F4F4F4F4F4F4F313131
+3131313131312C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2929292929292929292929292B2B2B
+2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C3A3A3A3A3A3A3A3A3A8D8D8D8D8D8D8D8D8D8D8D8DEFEFEF
+EFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1F5F5F5F5F5F5
+F5F5F5F5F5F5F5F5F5F5F5F5F7F7F7F7F7F7F7F7F7F7F7F7F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5
+F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5
+F5F5F5F5F5F5F5F5F5F5F5F5F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F3F3F3F3F3F3
+F3F3F3F3F3F3F3F3F3F3F3F3F2F2F2F2F2F2F2F2F2F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3
+F3F3F3F1F1F1F1F1F1F1F1F1E2E2E2E2E2E2E2E2E2A1A1A1A1A1A1A1A1A1525252525252525252
+3232323232323232323232322929292929292929292929292929292929292C2C2C2C2C2C2C2C2C
+2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B252525252525252525
+2727272727272727273737373737373737373737375858585858585858586D6D6D6D6D6D6D6D6D
+7777777777777777777E7E7E7E7E7E7E7E7E828282828282828282828282878787878787878787
+8D8D8D8D8D8D8D8D8D9595959595959595959D9D9D9D9D9D9D9D9D9D9D9DA1A1A1A1A1A1A1A1A1
+A2A2A2A2A2A2A2A2A2A3A3A3A3A3A3A3A3A3A5A5A5A5A5A5A5A5A5A7A7A7A7A7A7A7A7A7A7A7A7
+AAAAAAAAAAAAAAAAAAADADADADADADADADADADADADADADADADADADADADADADADADADADADAFAFAF
+AFAFAFAFAFAFAFAFAFB0B0B0B0B0B0B0B0B0B3B3B3B3B3B3B3B3B3B8B8B8B8B8B8B8B8B8BDBDBD
+BDBDBDBDBDBDBDBDBDC4C4C4C4C4C4C4C4C4CBCBCBCBCBCBCBCBCBD2D2D2D2D2D2D2D2D2D6D6D6
+D6D6D6D6D6D6D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D3D3D3D3D3D3D3D3D3D0D0D0
+D0D0D0D0D0D0D3D3D3D3D3D3D3D3D3D5D5D5D5D5D5D5D5D5D5D5D5CFCFCFCFCFCFCFCFCFC5C5C5
+C5C5C5C5C5C5B9B9B9B9B9B9B9B9B9A3A3A3A3A3A3A3A3A3A3A3A3868686868686868686696969
+6969696969695454545454545454544646464646464646463C3C3C3C3C3C3C3C3C3C3C3C393939
+3939393939393C3C3C3C3C3C3C3C3C4B4B4B4B4B4B4B4B4B5C5C5C5C5C5C5C5C5C676767676767
+6767676767676D6D6D6D6D6D6D6D6D6F6F6F6F6F6F6F6F6F6E6E6E6E6E6E6E6E6E6B6B6B6B6B6B
+6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6A6A6A6A6A6A6A6A6A686868686868686868767676767676
+7676767E7E7E7E7E7E7E7E7E7E7E7E4F4F4F4F4F4F4F4F4F3131313131313131312C2C2C2C2C2C
+2C2C2C2B2B2B2B2B2B2B2B2B2929292929292929292929292B2B2B2B2B2B2B2B2B2C2C2C2C2C2C
+2C2C2C3A3A3A3A3A3A3A3A3A8D8D8D8D8D8D8D8D8D8D8D8DEFEFEFEFEFEFEFEFEFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1F3F3F3F3F3F3F3F3F3F4F4F4F4F4F4F4F4F4
+F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F3F3F3F3F3F3F3F3F3F2F2F2F2F2F2F2F2F2
+F2F2F2F2F2F2F2F2F2F1F1F1F1F1F1F1F1F1F1F1F1F2F2F2F2F2F2F2F2F2F1F1F1F1F1F1F1F1F1
+F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1
+F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0EFEFEFEFEFEFEFEFEFEFEFEFEDEDEDEDEDEDEDEDED
+D9D9D9D9D9D9D9D9D99C9C9C9C9C9C9C9C9C555555555555555555353535353535353535353535
+2C2C2C2C2C2C2C2C2C2929292929292929292B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C
+2C2C2C2C2C2C2C2C2C292929292929292929252525252525252525272727272727272727313131
+3131313131313131315050505050505050506A6A6A6A6A6A6A6A6A7676767676767676767D7D7D
+7D7D7D7D7D7D8181818181818181818181818888888888888888888F8F8F8F8F8F8F8F8F949494
+9494949494949A9A9A9A9A9A9A9A9A9A9A9A9B9B9B9B9B9B9B9B9B969696969696969696949494
+9494949494949292929292929292928F8F8F8F8F8F8F8F8F8F8F8F909090909090909090919191
+9191919191918E8E8E8E8E8E8E8E8E8C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D8D8D8D939393
+9393939393939E9E9E9E9E9E9E9E9EA5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8A8A8A8B2B2B2
+B2B2B2B2B2B2BEBEBEBEBEBEBEBEBEC5C5C5C5C5C5C5C5C5C9C9C9C9C9C9C9C9C9CDCDCDCDCDCD
+CDCDCDCDCDCDD0D0D0D0D0D0D0D0D0CBCBCBCBCBCBCBCBCBCACACACACACACACACACBCBCBCBCBCB
+CBCBCBCCCCCCCCCCCCCCCCCCCCCCCCC7C7C7C7C7C7C7C7C7BDBDBDBDBDBDBDBDBDAAAAAAAAAAAA
+AAAAAA8A8A8A8A8A8A8A8A8A8A8A8A6B6B6B6B6B6B6B6B6B555555555555555555474747474747
+4747474141414141414141413E3E3E3E3E3E3E3E3E3E3E3E444444444444444444565656565656
+5656566E6E6E6E6E6E6E6E6E7E7E7E7E7E7E7E7E7E8888888888888888888888888E8E8E8E8E8E
+8E8E8E8D8D8D8D8D8D8D8D8D8A8A8A8A8A8A8A8A8A878787878787878787878787828282828282
+8282827979797979797979797474747474747474747B7B7B7B7B7B7B7B7B838383838383838383
+8383835C5C5C5C5C5C5C5C5C3535353535353535352D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F
+3030303030303030303030302D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F373737373737373737
+7B7B7B7B7B7B7B7B7B7B7B7BE4E4E4E4E4E4E4E4E4FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFA
+D0D0D0D0D0D0D0D0D0F3F3F3F3F3F3F3F3F3F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4
+F4F4F4F4F4F4F4F4F4F3F3F3F3F3F3F3F3F3F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F1F1F1
+F1F1F1F1F1F1F1F1F1F2F2F2F2F2F2F2F2F2F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1
+F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F0F0F0F0F0F0F0F0F0F0F0F0
+F0F0F0F0F0F0EFEFEFEFEFEFEFEFEFEFEFEFEDEDEDEDEDEDEDEDEDD9D9D9D9D9D9D9D9D99C9C9C
+9C9C9C9C9C9C5555555555555555553535353535353535353535352C2C2C2C2C2C2C2C2C292929
+2929292929292B2B2B2B2B2B2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C292929
+292929292929252525252525252525272727272727272727313131313131313131313131505050
+5050505050506A6A6A6A6A6A6A6A6A7676767676767676767D7D7D7D7D7D7D7D7D818181818181
+8181818181818888888888888888888F8F8F8F8F8F8F8F8F9494949494949494949A9A9A9A9A9A
+9A9A9A9A9A9A9B9B9B9B9B9B9B9B9B969696969696969696949494949494949494929292929292
+9292928F8F8F8F8F8F8F8F8F8F8F8F9090909090909090909191919191919191918E8E8E8E8E8E
+8E8E8E8C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D8D8D8D9393939393939393939E9E9E9E9E9E
+9E9E9EA5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8A8A8A8B2B2B2B2B2B2B2B2B2BEBEBEBEBEBE
+BEBEBEC5C5C5C5C5C5C5C5C5C9C9C9C9C9C9C9C9C9CDCDCDCDCDCDCDCDCDCDCDCDD0D0D0D0D0D0
+D0D0D0CBCBCBCBCBCBCBCBCBCACACACACACACACACACBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCC
+CCCCCCC7C7C7C7C7C7C7C7C7BDBDBDBDBDBDBDBDBDAAAAAAAAAAAAAAAAAA8A8A8A8A8A8A8A8A8A
+8A8A8A6B6B6B6B6B6B6B6B6B555555555555555555474747474747474747414141414141414141
+3E3E3E3E3E3E3E3E3E3E3E3E4444444444444444445656565656565656566E6E6E6E6E6E6E6E6E
+7E7E7E7E7E7E7E7E7E8888888888888888888888888E8E8E8E8E8E8E8E8E8D8D8D8D8D8D8D8D8D
+8A8A8A8A8A8A8A8A8A878787878787878787878787828282828282828282797979797979797979
+7474747474747474747B7B7B7B7B7B7B7B7B8383838383838383838383835C5C5C5C5C5C5C5C5C
+3535353535353535352D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F303030303030303030303030
+2D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F3737373737373737377B7B7B7B7B7B7B7B7B7B7B7B
+E4E4E4E4E4E4E4E4E4FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD0D0D0D0D0D0D0D0D0F3F3F3
+F3F3F3F3F3F3F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F3F3F3
+F3F3F3F3F3F3F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F1F1F1F1F1F1F1F1F1F1F1F1F2F2F2
+F2F2F2F2F2F2F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1
+F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0EFEFEFEFEFEF
+EFEFEFEFEFEFEDEDEDEDEDEDEDEDEDD9D9D9D9D9D9D9D9D99C9C9C9C9C9C9C9C9C555555555555
+5555553535353535353535353535352C2C2C2C2C2C2C2C2C2929292929292929292B2B2B2B2B2B
+2B2B2B2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C292929292929292929252525252525
+2525252727272727272727273131313131313131313131315050505050505050506A6A6A6A6A6A
+6A6A6A7676767676767676767D7D7D7D7D7D7D7D7D818181818181818181818181888888888888
+8888888F8F8F8F8F8F8F8F8F9494949494949494949A9A9A9A9A9A9A9A9A9A9A9A9B9B9B9B9B9B
+9B9B9B9696969696969696969494949494949494949292929292929292928F8F8F8F8F8F8F8F8F
+8F8F8F9090909090909090909191919191919191918E8E8E8E8E8E8E8E8E8C8C8C8C8C8C8C8C8C
+8D8D8D8D8D8D8D8D8D8D8D8D9393939393939393939E9E9E9E9E9E9E9E9EA5A5A5A5A5A5A5A5A5
+A8A8A8A8A8A8A8A8A8A8A8A8B2B2B2B2B2B2B2B2B2BEBEBEBEBEBEBEBEBEC5C5C5C5C5C5C5C5C5
+C9C9C9C9C9C9C9C9C9CDCDCDCDCDCDCDCDCDCDCDCDD0D0D0D0D0D0D0D0D0CBCBCBCBCBCBCBCBCB
+CACACACACACACACACACBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCC7C7C7C7C7C7C7C7C7
+BDBDBDBDBDBDBDBDBDAAAAAAAAAAAAAAAAAA8A8A8A8A8A8A8A8A8A8A8A8A6B6B6B6B6B6B6B6B6B
+5555555555555555554747474747474747474141414141414141413E3E3E3E3E3E3E3E3E3E3E3E
+4444444444444444445656565656565656566E6E6E6E6E6E6E6E6E7E7E7E7E7E7E7E7E7E888888
+8888888888888888888E8E8E8E8E8E8E8E8E8D8D8D8D8D8D8D8D8D8A8A8A8A8A8A8A8A8A878787
+8787878787878787878282828282828282827979797979797979797474747474747474747B7B7B
+7B7B7B7B7B7B8383838383838383838383835C5C5C5C5C5C5C5C5C3535353535353535352D2D2D
+2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F3030303030303030303030302D2D2D2D2D2D2D2D2D2F2F2F
+2F2F2F2F2F2F3737373737373737377B7B7B7B7B7B7B7B7B7B7B7BE4E4E4E4E4E4E4E4E4FEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD0D0D0D0D0D0D0D0D0F0F0F0F0F0F0F0F0F0F1F1F1F1F1F1
+F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F0F0F0F0F0F0
+F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
+F0F0F0EFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
+EEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEAEAEAEAEAEA
+EAEAEAD6D6D5D6D6D5D6D6D59D9D9D9D9D9D9D9D9D575757575757575757353535353535353535
+3535352C2C2C2C2C2C2C2C2C292929292929292929292929292929292929292929292929292929
+292929282828282828282828272727272727272727252525252525252525242424242424242424
+2B2B2B2B2B2B2B2B2B2B2B2B464646464646464646656565656565656565747474747474747474
+7C7C7C7C7C7C7C7C7C8080808080808080808080808686868686868686868F8F8F8F8F8F8F8F8F
+9393939393939393939191919191919191919191918989898989898989897C7C7C7C7C7C7C7C7C
+7373737373737373736F6F6F6F6F6F6F6F6F6A6A6A6A6A6A6A6A6A6A6A6A696969696969696969
+6868686868686868686262626262626262625F605F5F605F5F605F646464646464646464646464
+6C6C6C6C6C6C6C6C6C7B7B7B7B7B7B7B7B7B8484848484848484848B8B8B8B8B8B8B8B8B8B8B8B
+9A9A9A9A9A9A9A9A9AABABABABABABABABABB7B7B7B7B7B7B7B7B7BBBBBBBBBBBBBBBBBBC3C3C3
+C3C3C3C3C3C3C3C3C3C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C9C9C9
+C9C9C9C9C9C9C8C8C8C8C8C8C8C8C8C8C8C8C0C0C0C0C0C0C0C0C0B2B2B2B2B2B2B2B2B29D9D9D
+9D9D9D9D9D9D7C7C7C7C7C7C7C7C7C7C7C7C5F605F5F605F5F605F505050505050505050484848
+4848484848484545454545454545454B4B4B4B4B4B4B4B4B4B4B4B5959595959595959596B6B6B
+6B6B6B6B6B6B7C7C7C7C7C7C7C7C7C8686868686868686868D8D8D8D8D8D8D8D8D8D8D8D949494
+9494949494949494949494949494949191919191919191918F8F8F8F8F8F8F8F8F8F8F8F8C8C8C
+8C8C8C8C8C8C8686868686868686868383838383838383838B8B8B8B8B8B8B8B8B929292929292
+9292929292927070707070707070703A3A3A3A3A3A3A3A3A303030303030303030323232323232
+323232353535353535353535353535313131313131313131313131313131313131393939393939
+3939396B6B6B6B6B6B6B6B6B6B6B6BD7D7D7D7D7D7D7D7D7FDFDFDFDFDFDFDFDFDFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9CACACACACACACACACAF0F0F0F0F0F0F0F0F0F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1
+F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
+F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0EFEFEFEFEFEFEFEFEF
+EFEFEFEFEFEFEFEFEFEFEFEFEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEAEAEAEAEAEAEAEAEAD6D6D5D6D6D5D6D6D5
+9D9D9D9D9D9D9D9D9D5757575757575757573535353535353535353535352C2C2C2C2C2C2C2C2C
+292929292929292929292929292929292929292929292929292929292929282828282828282828
+2727272727272727272525252525252525252424242424242424242B2B2B2B2B2B2B2B2B2B2B2B
+4646464646464646466565656565656565657474747474747474747C7C7C7C7C7C7C7C7C808080
+8080808080808080808686868686868686868F8F8F8F8F8F8F8F8F939393939393939393919191
+9191919191919191918989898989898989897C7C7C7C7C7C7C7C7C7373737373737373736F6F6F
+6F6F6F6F6F6F6A6A6A6A6A6A6A6A6A6A6A6A696969696969696969686868686868686868626262
+6262626262625F605F5F605F5F605F6464646464646464646464646C6C6C6C6C6C6C6C6C7B7B7B
+7B7B7B7B7B7B8484848484848484848B8B8B8B8B8B8B8B8B8B8B8B9A9A9A9A9A9A9A9A9AABABAB
+ABABABABABABB7B7B7B7B7B7B7B7B7BBBBBBBBBBBBBBBBBBC3C3C3C3C3C3C3C3C3C3C3C3C8C8C8
+C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C9C9C9C9C9C9C9C9C9C8C8C8C8C8C8
+C8C8C8C8C8C8C0C0C0C0C0C0C0C0C0B2B2B2B2B2B2B2B2B29D9D9D9D9D9D9D9D9D7C7C7C7C7C7C
+7C7C7C7C7C7C5F605F5F605F5F605F505050505050505050484848484848484848454545454545
+4545454B4B4B4B4B4B4B4B4B4B4B4B5959595959595959596B6B6B6B6B6B6B6B6B7C7C7C7C7C7C
+7C7C7C8686868686868686868D8D8D8D8D8D8D8D8D8D8D8D949494949494949494949494949494
+9494949191919191919191918F8F8F8F8F8F8F8F8F8F8F8F8C8C8C8C8C8C8C8C8C868686868686
+8686868383838383838383838B8B8B8B8B8B8B8B8B929292929292929292929292707070707070
+7070703A3A3A3A3A3A3A3A3A303030303030303030323232323232323232353535353535353535
+3535353131313131313131313131313131313131313939393939393939396B6B6B6B6B6B6B6B6B
+6B6B6BD7D7D7D7D7D7D7D7D7FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACACACACA
+EEEEEEEEEEEEEEEEEEEFEFEFEFEFEFEFEFEFEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
+EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EBEBEBEBEBEBEBEBEBECECECECECECECECECEBEBEBEBEBEBEBEBEBE9E9E9E9E9E9E9E9E9EAEAEA
+EAEAEAEAEAEAEAEAEAE8E8E8E8E8E8E8E8E8D6D6D6D6D6D6D6D6D69E9E9E9E9E9E9E9E9E575757
+5757575757573434343434343434343434342C2C2C2C2C2C2C2C2C292929292929292929272727
+272727272727272727272727272727272727272727272727272727252525252525252525222222
+2222222222222121212121212121212525252525252525252525253E3E3E3E3E3E3E3E3E5F605F
+5F605F5F605F7272727272727272727B7B7B7B7B7B7B7B7B808080808080808080808080858585
+8585858585858B8B8B8B8B8B8B8B8B8787878787878787877A7A7A7A7A7A7A7A7A7A7A7A6E6E6E
+6E6E6E6E6E6E5F605F5F605F5F605F5252525252525252524E4E4E4E4E4E4E4E4E4C4C4C4C4C4C
+4C4C4C4C4C4C494949494949494949464646464646464646414141414141414141424242424242
+4242424848484848484848484848484C4C4C4C4C4C4C4C4C5555555555555555555D5D5D5D5D5D
+5D5D5D6868686868686868686868687B7B7B7B7B7B7B7B7B929292929292929292A4A4A4A4A4A4
+A4A4A4ADADADADADADADADADB8B8B8B8B8B8B8B8B8B8B8B8C2C2C2C2C2C2C2C2C2CACACACACACA
+CACACACFCFCFCFCFCFCFCFCFCECECECECECECECECECACACACACACACACACACACACABFBFBFBFBFBF
+BFBFBFACACACACACACACACAC939393939393939393787878787878787878787878626262626262
+6262625959595959595959595454545454545454544E4E4E4E4E4E4E4E4E525252525252525252
+5252525B5B5B5B5B5B5B5B5B686868686868686868757575757575757575787878787878787878
+777777777777777777777777828282828282828282878787878787878787898989898989898989
+8B8B8B8B8B8B8B8B8B8B8B8B8D8D8D8D8D8D8D8D8D8C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D
+9797979797979797979E9E9E9E9E9E9E9E9E9E9E9E7F7F7F7F7F7F7F7F7F404040404040404040
+2F2F2F2F2F2F2F2F2F343434343434343434373737373737373737373737363636363636363636
+3636363636363636363C3C3C3C3C3C3C3C3C656565656565656565656565CECECECECECECECECE
+FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BDBDBDBDBDBDBDBDBDEEEEEEEEEEEEEEEEEEEFEFEF
+EFEFEFEFEFEFEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
+EEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBECECEC
+ECECECECECECEBEBEBEBEBEBEBEBEBE9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEAEAEAE8E8E8
+E8E8E8E8E8E8D6D6D6D6D6D6D6D6D69E9E9E9E9E9E9E9E9E575757575757575757343434343434
+3434343434342C2C2C2C2C2C2C2C2C292929292929292929272727272727272727272727272727
+272727272727272727272727272727252525252525252525222222222222222222212121212121
+2121212525252525252525252525253E3E3E3E3E3E3E3E3E5F605F5F605F5F605F727272727272
+7272727B7B7B7B7B7B7B7B7B8080808080808080808080808585858585858585858B8B8B8B8B8B
+8B8B8B8787878787878787877A7A7A7A7A7A7A7A7A7A7A7A6E6E6E6E6E6E6E6E6E5F605F5F605F
+5F605F5252525252525252524E4E4E4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C4C4C4C494949494949
+494949464646464646464646414141414141414141424242424242424242484848484848484848
+4848484C4C4C4C4C4C4C4C4C5555555555555555555D5D5D5D5D5D5D5D5D686868686868686868
+6868687B7B7B7B7B7B7B7B7B929292929292929292A4A4A4A4A4A4A4A4A4ADADADADADADADADAD
+B8B8B8B8B8B8B8B8B8B8B8B8C2C2C2C2C2C2C2C2C2CACACACACACACACACACFCFCFCFCFCFCFCFCF
+CECECECECECECECECECACACACACACACACACACACACABFBFBFBFBFBFBFBFBFACACACACACACACACAC
+939393939393939393787878787878787878787878626262626262626262595959595959595959
+5454545454545454544E4E4E4E4E4E4E4E4E5252525252525252525252525B5B5B5B5B5B5B5B5B
+686868686868686868757575757575757575787878787878787878777777777777777777777777
+8282828282828282828787878787878787878989898989898989898B8B8B8B8B8B8B8B8B8B8B8B
+8D8D8D8D8D8D8D8D8D8C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D9797979797979797979E9E9E
+9E9E9E9E9E9E9E9E9E7F7F7F7F7F7F7F7F7F4040404040404040402F2F2F2F2F2F2F2F2F343434
+3434343434343737373737373737373737373636363636363636363636363636363636363C3C3C
+3C3C3C3C3C3C656565656565656565656565CECECECECECECECECEFDFDFDFDFDFDFDFDFDFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9BDBDBDBDBDBDBDBDBDEEEEEEEEEEEEEEEEEEEFEFEFEFEFEFEFEFEFEEEEEEEEEEEE
+EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBECECECECECECECECECEBEBEBEBEBEB
+EBEBEBE9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEAEAEAE8E8E8E8E8E8E8E8E8D6D6D6D6D6D6
+D6D6D69E9E9E9E9E9E9E9E9E5757575757575757573434343434343434343434342C2C2C2C2C2C
+2C2C2C292929292929292929272727272727272727272727272727272727272727272727272727
+272727252525252525252525222222222222222222212121212121212121252525252525252525
+2525253E3E3E3E3E3E3E3E3E5F605F5F605F5F605F7272727272727272727B7B7B7B7B7B7B7B7B
+8080808080808080808080808585858585858585858B8B8B8B8B8B8B8B8B878787878787878787
+7A7A7A7A7A7A7A7A7A7A7A7A6E6E6E6E6E6E6E6E6E5F605F5F605F5F605F525252525252525252
+4E4E4E4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C4C4C4C494949494949494949464646464646464646
+4141414141414141414242424242424242424848484848484848484848484C4C4C4C4C4C4C4C4C
+5555555555555555555D5D5D5D5D5D5D5D5D6868686868686868686868687B7B7B7B7B7B7B7B7B
+929292929292929292A4A4A4A4A4A4A4A4A4ADADADADADADADADADB8B8B8B8B8B8B8B8B8B8B8B8
+C2C2C2C2C2C2C2C2C2CACACACACACACACACACFCFCFCFCFCFCFCFCFCECECECECECECECECECACACA
+CACACACACACACACACABFBFBFBFBFBFBFBFBFACACACACACACACACAC939393939393939393787878
+7878787878787878786262626262626262625959595959595959595454545454545454544E4E4E
+4E4E4E4E4E4E5252525252525252525252525B5B5B5B5B5B5B5B5B686868686868686868757575
+757575757575787878787878787878777777777777777777777777828282828282828282878787
+8787878787878989898989898989898B8B8B8B8B8B8B8B8B8B8B8B8D8D8D8D8D8D8D8D8D8C8C8C
+8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D9797979797979797979E9E9E9E9E9E9E9E9E9E9E9E7F7F7F
+7F7F7F7F7F7F4040404040404040402F2F2F2F2F2F2F2F2F343434343434343434373737373737
+3737373737373636363636363636363636363636363636363C3C3C3C3C3C3C3C3C656565656565
+656565656565CECECECECECECECECEFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BDBDBDBDBDBD
+BDBDBDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBECECECECECECECECEC
+ECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBECECECECECECECECEC
+ECECECEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E5E5E5E5E5E5E5E5E5D6D6D5D6D6D5D6D6D59F9F9F9F9F9F9F9F9F
+5656565656565656563434343434343434343434342D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B
+282828282828282828252525252525252525252525252525252525252525242424242424242424
+242424242424242424222222222222222222242424242424242424242424373737373737373737
+5C5C5C5C5C5C5C5C5C7272727272727272727C7C7C7C7C7C7C7C7C818181818181818181818181
+8383838383838383837E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E5D5D5D5D5D5D5D5D5D5D5D5D
+5151515151515151514747474747474747474040404040404040403B3B3B3B3B3B3B3B3B393939
+393939393939393939373737373737373737343434343434343434323232323232323232353535
+3535353535353A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C444444
+4444444444444E4E4E4E4E4E4E4E4E4E4E4E6262626262626262627A7A7A7A7A7A7A7A7A909090
+909090909090A0A0A0A0A0A0A0A0A0B1B1B1B1B1B1B1B1B1B1B1B1C0C0C0C0C0C0C0C0C0CCCCCC
+CCCCCCCCCCCCD7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7CFCFCFCFCFCFCFCFCFCFCFCFBFBFBF
+BFBFBFBFBFBFABABABABABABABABAB9292929292929292927D7D7D7D7D7D7D7D7D7D7D7D6B6B6B
+6B6B6B6B6B6B5D5D5D5D5D5D5D5D5D555555555555555555545454545454545454585858585858
+5858585858585C5C5C5C5C5C5C5C5C5F605F5F605F5F605F656565656565656565646464646464
+6464646565656565656565656565656E6E6E6E6E6E6E6E6E717171717171717171717171717171
+7171717C7C7C7C7C7C7C7C7C7C7C7C8888888888888888888C8C8C8C8C8C8C8C8C909090909090
+9090909B9B9B9B9B9B9B9B9BA3A3A3A3A3A3A3A3A3A3A3A38D8D8D8D8D8D8D8D8D4B4B4B4B4B4B
+4B4B4B2F2F2F2F2F2F2F2F2F3232323232323232323939393939393939393939393B3B3B3B3B3B
+3B3B3B3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C636363636363636363636363CBCBCBCBCBCB
+CBCBCBFCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7EEEEEEEEEEEEEEEEEE
+EEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEE
+EDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBECECECECECECECECECECECECEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBECECECECECECECECECECECECEAEAEAEAEAEAEAEAEA
+E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E5E5E5E5E5E5E5E5E5D6D6D5D6D6D5D6D6D59F9F9F9F9F9F9F9F9F565656565656565656343434
+3434343434343434342D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B282828282828282828252525
+252525252525252525252525252525252525242424242424242424242424242424242424222222
+2222222222222424242424242424242424243737373737373737375C5C5C5C5C5C5C5C5C727272
+7272727272727C7C7C7C7C7C7C7C7C8181818181818181818181818383838383838383837E7E7E
+7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E5D5D5D5D5D5D5D5D5D5D5D5D515151515151515151474747
+4747474747474040404040404040403B3B3B3B3B3B3B3B3B393939393939393939393939373737
+3737373737373434343434343434343232323232323232323535353535353535353A3A3A3A3A3A
+3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C4444444444444444444E4E4E4E4E4E
+4E4E4E4E4E4E6262626262626262627A7A7A7A7A7A7A7A7A909090909090909090A0A0A0A0A0A0
+A0A0A0B1B1B1B1B1B1B1B1B1B1B1B1C0C0C0C0C0C0C0C0C0CCCCCCCCCCCCCCCCCCD7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7CFCFCFCFCFCFCFCFCFCFCFCFBFBFBFBFBFBFBFBFBFABABABABABAB
+ABABAB9292929292929292927D7D7D7D7D7D7D7D7D7D7D7D6B6B6B6B6B6B6B6B6B5D5D5D5D5D5D
+5D5D5D5555555555555555555454545454545454545858585858585858585858585C5C5C5C5C5C
+5C5C5C5F605F5F605F5F605F656565656565656565646464646464646464656565656565656565
+6565656E6E6E6E6E6E6E6E6E7171717171717171717171717171717171717C7C7C7C7C7C7C7C7C
+7C7C7C8888888888888888888C8C8C8C8C8C8C8C8C9090909090909090909B9B9B9B9B9B9B9B9B
+A3A3A3A3A3A3A3A3A3A3A3A38D8D8D8D8D8D8D8D8D4B4B4B4B4B4B4B4B4B2F2F2F2F2F2F2F2F2F
+3232323232323232323939393939393939393939393B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A
+3C3C3C3C3C3C3C3C3C636363636363636363636363CBCBCBCBCBCBCBCBCBFCFCFCFCFCFCFCFCFC
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEBEBEB
+EBEBEBEBEBEBECECECECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBECECECECECECECECECECECECEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8
+E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E5E5E5E5E5E5E5E5E5D6D6D5
+D6D6D5D6D6D59F9F9F9F9F9F9F9F9F5656565656565656563434343434343434343434342D2D2D
+2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B282828282828282828252525252525252525252525252525
+252525252525242424242424242424242424242424242424222222222222222222242424242424
+2424242424243737373737373737375C5C5C5C5C5C5C5C5C7272727272727272727C7C7C7C7C7C
+7C7C7C8181818181818181818181818383838383838383837E7E7E7E7E7E7E7E7E6E6E6E6E6E6E
+6E6E6E5D5D5D5D5D5D5D5D5D5D5D5D515151515151515151474747474747474747404040404040
+4040403B3B3B3B3B3B3B3B3B393939393939393939393939373737373737373737343434343434
+3434343232323232323232323535353535353535353A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A
+3A3A3A3C3C3C3C3C3C3C3C3C4444444444444444444E4E4E4E4E4E4E4E4E4E4E4E626262626262
+6262627A7A7A7A7A7A7A7A7A909090909090909090A0A0A0A0A0A0A0A0A0B1B1B1B1B1B1B1B1B1
+B1B1B1C0C0C0C0C0C0C0C0C0CCCCCCCCCCCCCCCCCCD7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+CFCFCFCFCFCFCFCFCFCFCFCFBFBFBFBFBFBFBFBFBFABABABABABABABABAB929292929292929292
+7D7D7D7D7D7D7D7D7D7D7D7D6B6B6B6B6B6B6B6B6B5D5D5D5D5D5D5D5D5D555555555555555555
+5454545454545454545858585858585858585858585C5C5C5C5C5C5C5C5C5F605F5F605F5F605F
+6565656565656565656464646464646464646565656565656565656565656E6E6E6E6E6E6E6E6E
+7171717171717171717171717171717171717C7C7C7C7C7C7C7C7C7C7C7C888888888888888888
+8C8C8C8C8C8C8C8C8C9090909090909090909B9B9B9B9B9B9B9B9BA3A3A3A3A3A3A3A3A3A3A3A3
+8D8D8D8D8D8D8D8D8D4B4B4B4B4B4B4B4B4B2F2F2F2F2F2F2F2F2F323232323232323232393939
+3939393939393939393B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C636363
+636363636363636363CBCBCBCBCBCBCBCBCBFCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7
+C7C7C7C7C7C7EDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDECECEC
+ECECECECECECEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEBEBEBEBEBEB
+EBEBEBEBEBEBE9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9
+E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6
+E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E2E2E2E2E2E2E2E2E2CFCFCFCFCFCFCFCFCF999999999999
+9999995454545454545454543636363636363636363636363030303030303030302C2C2C2C2C2C
+2C2C2C292929292929292929272727272727272727272727252525252525252525242424242424
+242424222222222222222222212121212121212121212121212121212121212121313131313131
+3131315959595959595959597272727272727272727B7B7B7B7B7B7B7B7B7F7F7F7F7F7F7F7F7F
+7F7F7F7C7C7C7C7C7C7C7C7C6A6A6A6A6A6A6A6A6A525252525252525252464646464646464646
+4646464040404040404040403A3A3A3A3A3A3A3A3A363636363636363636343434343434343434
+3434343434343434343434343232323232323232322F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D
+313131313131313131353535353535353535353535363636363636363636393939393939393939
+3B3B3B3B3B3B3B3B3B444444444444444444444444555555555555555555696969696969696969
+7F7F7F7F7F7F7F7F7F929292929292929292A9A9A9A9A9A9A9A9A9A9A9A9C0C0C0C0C0C0C0C0C0
+D3D3D3D3D3D3D3D3D3DDDDDDDDDDDDDDDDDDDEDEDEDEDEDEDEDEDED6D6D5D6D6D5D6D6D5D6D6D5
+C2C2C2C2C2C2C2C2C2ACACACACACACACACAC979797979797979797818181818181818181818181
+6B6B6B6B6B6B6B6B6B5C5C5C5C5C5C5C5C5C5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A555555
+5555555555555555554E4E4E4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C5959595959595959594D4D4D
+4D4D4D4D4D4D5858585858585858585858585D5D5D5D5D5D5D5D5D646464646464646464626262
+6262626262626767676767676767676767677B7B7B7B7B7B7B7B7B888888888888888888919191
+9191919191919D9D9D9D9D9D9D9D9DA6A6A6A6A6A6A6A6A6A6A6A6969696969696969696585858
+585858585858323232323232323232343434343434343434363636363636363636363636393939
+3939393939393939393939393939393A3A3A3A3A3A3A3A3A656565656565656565656565CDCDCD
+CDCDCDCDCDCDFCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD7D7D7D7D7D7D7D7D7EDEDEDEDEDED
+EDEDEDEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDECECECECECECECECECEDEDEDEDEDED
+EDEDEDEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBEBEBEBE9E9E9E9E9E9
+E9E9E9EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8
+E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6
+E6E6E6E2E2E2E2E2E2E2E2E2CFCFCFCFCFCFCFCFCF999999999999999999545454545454545454
+3636363636363636363636363030303030303030302C2C2C2C2C2C2C2C2C292929292929292929
+272727272727272727272727252525252525252525242424242424242424222222222222222222
+212121212121212121212121212121212121212121313131313131313131595959595959595959
+7272727272727272727B7B7B7B7B7B7B7B7B7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C
+6A6A6A6A6A6A6A6A6A525252525252525252464646464646464646464646404040404040404040
+3A3A3A3A3A3A3A3A3A363636363636363636343434343434343434343434343434343434343434
+3232323232323232322F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D313131313131313131353535
+3535353535353535353636363636363636363939393939393939393B3B3B3B3B3B3B3B3B444444
+4444444444444444445555555555555555556969696969696969697F7F7F7F7F7F7F7F7F929292
+929292929292A9A9A9A9A9A9A9A9A9A9A9A9C0C0C0C0C0C0C0C0C0D3D3D3D3D3D3D3D3D3DDDDDD
+DDDDDDDDDDDDDEDEDEDEDEDEDEDEDED6D6D5D6D6D5D6D6D5D6D6D5C2C2C2C2C2C2C2C2C2ACACAC
+ACACACACACAC9797979797979797978181818181818181818181816B6B6B6B6B6B6B6B6B5C5C5C
+5C5C5C5C5C5C5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5555555555555555555555554E4E4E
+4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C5959595959595959594D4D4D4D4D4D4D4D4D585858585858
+5858585858585D5D5D5D5D5D5D5D5D646464646464646464626262626262626262676767676767
+6767676767677B7B7B7B7B7B7B7B7B8888888888888888889191919191919191919D9D9D9D9D9D
+9D9D9DA6A6A6A6A6A6A6A6A6A6A6A6969696969696969696585858585858585858323232323232
+323232343434343434343434363636363636363636363636393939393939393939393939393939
+3939393A3A3A3A3A3A3A3A3A656565656565656565656565CDCDCDCDCDCDCDCDCDFCFCFCFCFCFC
+FCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFBFBFBFBFBFBFBFBFBD7D7D7D7D7D7D7D7D7EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+EBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAE8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9
+E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7
+E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E1E1E1E1E1E1E1E1E1
+CDCDCDCDCDCDCDCDCD959595959595959595505050505050505050343434343434343434343434
+2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B282828282828282828282828
+252525252525252525222222222222222222222222222222222222222222222222222222222222
+2222222222222222222D2D2D2D2D2D2D2D2D5555555555555555557272727272727272727B7B7B
+7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A7A7A7A6E6E6E6E6E6E6E6E6E565656565656565656424242
+4242424242423B3B3B3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3C3C3C
+3C3C3C3C3C3C3F3F3F3F3F3F3F3F3F4242424242424242424242424141414141414141413E3E3E
+3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3C3C3C
+3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E464646464646464646464646545454
+5454545454545F605F5F605F5F605F717171717171717171868686868686868686A1A1A1A1A1A1
+A1A1A1A1A1A1BFBFBFBFBFBFBFBFBFD8D8D8D8D8D8D8D8D8E6E6E6E6E6E6E6E6E6E9E9E9E9E9E9
+E9E9E9DFDFDFDFDFDFDFDFDFDFDFDFC5C5C5C5C5C5C5C5C5ADADADADADADADADAD989898989898
+9898988181818181818181818181816B6B6B6B6B6B6B6B6B636363636363636363626262626262
+6262625B5B5B5B5B5B5B5B5B5454545454545454545454545252525252525252524D4D4D4D4D4D
+4D4D4D7A7A7A7A7A7A7A7A7A585858585858585858686868686868686868686868636363636363
+6363635555555555555555555858585858585858586161616161616161616161616E6E6E6E6E6E
+6E6E6E8282828282828282829191919191919191919E9E9E9E9E9E9E9E9EA7A7A7A7A7A7A7A7A7
+A7A7A79F9F9F9F9F9F9F9F9F676767676767676767373737373737373737363636363636363636
+363636363636363636363636373737373737373737363636363636363636393939393939393939
+6F6F6F6F6F6F6F6F6F6F6F6FD6D6D6D6D6D6D6D6D6FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+CACACACACACACACACAEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBEAEAEA
+EAEAEAEAEAEAEAEAEAE8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9
+E9E9E9E9E9E9E9E9E9E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6
+E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E1E1E1E1E1E1E1E1E1CDCDCDCDCDCDCDCDCD959595
+9595959595955050505050505050503434343434343434343434342F2F2F2F2F2F2F2F2F2F2F2F
+2F2F2F2F2F2F2B2B2B2B2B2B2B2B2B282828282828282828282828252525252525252525222222
+2222222222222222222222222222222222222222222222222222222222222222222222222D2D2D
+2D2D2D2D2D2D5555555555555555557272727272727272727B7B7B7B7B7B7B7B7B7A7A7A7A7A7A
+7A7A7A7A7A7A6E6E6E6E6E6E6E6E6E5656565656565656564242424242424242423B3B3B3B3B3B
+3B3B3B3B3B3B3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3F3F3F3F3F3F
+3F3F3F4242424242424242424242424141414141414141413E3E3E3E3E3E3E3E3E3B3B3B3B3B3B
+3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C
+3C3C3C3E3E3E3E3E3E3E3E3E4646464646464646464646465454545454545454545F605F5F605F
+5F605F717171717171717171868686868686868686A1A1A1A1A1A1A1A1A1A1A1A1BFBFBFBFBFBF
+BFBFBFD8D8D8D8D8D8D8D8D8E6E6E6E6E6E6E6E6E6E9E9E9E9E9E9E9E9E9DFDFDFDFDFDFDFDFDF
+DFDFDFC5C5C5C5C5C5C5C5C5ADADADADADADADADAD989898989898989898818181818181818181
+8181816B6B6B6B6B6B6B6B6B6363636363636363636262626262626262625B5B5B5B5B5B5B5B5B
+5454545454545454545454545252525252525252524D4D4D4D4D4D4D4D4D7A7A7A7A7A7A7A7A7A
+585858585858585858686868686868686868686868636363636363636363555555555555555555
+5858585858585858586161616161616161616161616E6E6E6E6E6E6E6E6E828282828282828282
+9191919191919191919E9E9E9E9E9E9E9E9EA7A7A7A7A7A7A7A7A7A7A7A79F9F9F9F9F9F9F9F9F
+676767676767676767373737373737373737363636363636363636363636363636363636363636
+3737373737373737373636363636363636363939393939393939396F6F6F6F6F6F6F6F6F6F6F6F
+D6D6D6D6D6D6D6D6D6FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACACACACAEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAE8E9E8
+E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E8E8
+E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6
+E6E6E6E6E6E6E1E1E1E1E1E1E1E1E1CDCDCDCDCDCDCDCDCD959595959595959595505050505050
+5050503434343434343434343434342F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2B2B2B2B2B2B
+2B2B2B282828282828282828282828252525252525252525222222222222222222222222222222
+2222222222222222222222222222222222222222222222222D2D2D2D2D2D2D2D2D555555555555
+5555557272727272727272727B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A7A7A7A6E6E6E6E6E6E
+6E6E6E5656565656565656564242424242424242423B3B3B3B3B3B3B3B3B3B3B3B3A3A3A3A3A3A
+3A3A3A3A3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3F3F3F3F3F3F3F3F3F424242424242424242
+4242424141414141414141413E3E3E3E3E3E3E3E3E3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B
+3B3B3B3B3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3E3E3E3E3E3E3E3E3E
+4646464646464646464646465454545454545454545F605F5F605F5F605F717171717171717171
+868686868686868686A1A1A1A1A1A1A1A1A1A1A1A1BFBFBFBFBFBFBFBFBFD8D8D8D8D8D8D8D8D8
+E6E6E6E6E6E6E6E6E6E9E9E9E9E9E9E9E9E9DFDFDFDFDFDFDFDFDFDFDFDFC5C5C5C5C5C5C5C5C5
+ADADADADADADADADAD9898989898989898988181818181818181818181816B6B6B6B6B6B6B6B6B
+6363636363636363636262626262626262625B5B5B5B5B5B5B5B5B545454545454545454545454
+5252525252525252524D4D4D4D4D4D4D4D4D7A7A7A7A7A7A7A7A7A585858585858585858686868
+686868686868686868636363636363636363555555555555555555585858585858585858616161
+6161616161616161616E6E6E6E6E6E6E6E6E8282828282828282829191919191919191919E9E9E
+9E9E9E9E9E9EA7A7A7A7A7A7A7A7A7A7A7A79F9F9F9F9F9F9F9F9F676767676767676767373737
+373737373737363636363636363636363636363636363636363636373737373737373737363636
+3636363636363939393939393939396F6F6F6F6F6F6F6F6F6F6F6FD6D6D6D6D6D6D6D6D6FDFDFD
+FDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACACACACAECECECECECECECECECECECECECECEC
+ECECECEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9EAEAEAEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7
+E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E0E0E0E0E0E0
+E0E0E0CBCBCBCBCBCBCBCBCB9090909090909090904F4F4F4F4F4F4F4F4F343434343434343434
+3434342D2D2D2D2D2D2D2D2D2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D292929292929292929
+292929252525252525252525222222222222222222222222222222222222222222222222222222
+2020202020202020202020202B2B2B2B2B2B2B2B2B525252525252525252727272727272727272
+7979797979797979796F6F6F6F6F6F6F6F6F6F6F6F5B5B5B5B5B5B5B5B5B494949494949494949
+4242424242424242424141414141414141414141414747474747474747474F4F4F4F4F4F4F4F4F
+5656565656565656565C5C5C5C5C5C5C5C5C5E5E5E5E5E5E5E5E5E5E5E5E5A5A5A5A5A5A5A5A5A
+5252525252525252524C4C4C4C4C4C4C4C4C4444444444444444443F3F3F3F3F3F3F3F3F3F3F3F
+3E3E3E3E3E3E3E3E3E3C3C3C3C3C3C3C3C3C3F3F3F3F3F3F3F3F3F474747474747474747474747
+5252525252525252525B5B5B5B5B5B5B5B5B6969696969696969697D7D7D7D7D7D7D7D7D9B9B9B
+9B9B9B9B9B9B9B9B9BBFBFBFBFBFBFBFBFBFDEDEDEDEDEDEDEDEDEEDEDEDEDEDEDEDEDEDF5F5F5
+F5F5F5F5F5F5E5E5E5E5E5E5E5E5E5E5E5E5C7C7C7C7C7C7C7C7C7ADADADADADADADADAD999999
+9999999999998383838383838383838383837373737373737373736D6D6D6D6D6D6D6D6D6B6B6B
+6B6B6B6B6B6B707070707070707070636363636363636363636363595959595959595959474747
+4747474747475F605F5F605F5F605F6161616161616161617F7F7F7F7F7F7F7F7F7F7F7F7C7C7C
+7C7C7C7C7C7C6767676767676767675E5E5E5E5E5E5E5E5E686868686868686868686868727272
+7272727272728080808080808080809292929292929292929F9F9F9F9F9F9F9F9FA8A8A8A8A8A8
+A8A8A8A8A8A8A4A4A4A4A4A4A4A4A47777777777777777773F3F3F3F3F3F3F3F3F363636363636
+3636363636363636363636363636363636363636363636363939393939393939393E3E3E3E3E3E
+3E3E3E848484848484848484848484E4E4E4E4E4E4E4E4E4FDFDFDFDFDFDFDFDFDFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFB
+FBFBFBD4D4D4D4D4D4D4D4D4ECECECECECECECECECECECECECECECECECECEAEAEAEAEAEAEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7
+E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E0E0E0E0E0E0E0E0E0CBCBCBCBCBCBCBCBCB
+9090909090909090904F4F4F4F4F4F4F4F4F3434343434343434343434342D2D2D2D2D2D2D2D2D
+2F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D292929292929292929292929252525252525252525
+222222222222222222222222222222222222222222222222222222202020202020202020202020
+2B2B2B2B2B2B2B2B2B5252525252525252527272727272727272727979797979797979796F6F6F
+6F6F6F6F6F6F6F6F6F5B5B5B5B5B5B5B5B5B494949494949494949424242424242424242414141
+4141414141414141414747474747474747474F4F4F4F4F4F4F4F4F5656565656565656565C5C5C
+5C5C5C5C5C5C5E5E5E5E5E5E5E5E5E5E5E5E5A5A5A5A5A5A5A5A5A5252525252525252524C4C4C
+4C4C4C4C4C4C4444444444444444443F3F3F3F3F3F3F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3C3C3C
+3C3C3C3C3C3C3F3F3F3F3F3F3F3F3F4747474747474747474747475252525252525252525B5B5B
+5B5B5B5B5B5B6969696969696969697D7D7D7D7D7D7D7D7D9B9B9B9B9B9B9B9B9B9B9B9BBFBFBF
+BFBFBFBFBFBFDEDEDEDEDEDEDEDEDEEDEDEDEDEDEDEDEDEDF5F5F5F5F5F5F5F5F5E5E5E5E5E5E5
+E5E5E5E5E5E5C7C7C7C7C7C7C7C7C7ADADADADADADADADAD999999999999999999838383838383
+8383838383837373737373737373736D6D6D6D6D6D6D6D6D6B6B6B6B6B6B6B6B6B707070707070
+7070706363636363636363636363635959595959595959594747474747474747475F605F5F605F
+5F605F6161616161616161617F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C676767676767
+6767675E5E5E5E5E5E5E5E5E686868686868686868686868727272727272727272808080808080
+8080809292929292929292929F9F9F9F9F9F9F9F9FA8A8A8A8A8A8A8A8A8A8A8A8A4A4A4A4A4A4
+A4A4A47777777777777777773F3F3F3F3F3F3F3F3F363636363636363636363636363636363636
+3636363636363636363636363939393939393939393E3E3E3E3E3E3E3E3E848484848484848484
+848484E4E4E4E4E4E4E4E4E4FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD4D4D4D4D4D4D4D4D4
+ECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9
+E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E9E9E9
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6
+E6E6E6E6E6E6E6E6E6E2E2E2E2E2E2E2E2E2CBCBCBCBCBCBCBCBCB919191919191919191515151
+5151515151513434343434343434343434342C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2D2D2D
+2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B242424242424242424202020202020202020212121
+2121212121212121212121212121212121212121212121212121212929292929292929294E4E4E
+4E4E4E4E4E4E717171717171717171747474747474747474636363636363636363636363505050
+5050505050504848484848484848484747474747474747474E4E4E4E4E4E4E4E4E4E4E4E5B5B5B
+5B5B5B5B5B5B6565656565656565656B6B6B6B6B6B6B6B6B6E6E6E6E6E6E6E6E6E6A6A6A6A6A6A
+6A6A6A6A6A6A6262626262626262625858585858585858584F4F4F4F4F4F4F4F4F4B4B4B4B4B4B
+4B4B4B4848484848484848484848484C4C4C4C4C4C4C4C4C484848484848484848444444444444
+4444444646464646464646464646464E4E4E4E4E4E4E4E4E5A5A5A5A5A5A5A5A5A676767676767
+676767787878787878787878929292929292929292929292B8B8B8B8B8B8B8B8B8DBDBDBDBDBDB
+DBDBDBEDEDEDEDEDEDEDEDEDF6F6F6F6F6F6F6F6F6E5E5E5E5E5E5E5E5E5E5E5E5C8C8C8C8C8C8
+C8C8C8B0B1B0B0B1B0B0B1B09D9D9D9D9D9D9D9D9D8E8E8E8E8E8E8E8E8E8E8E8E848484848484
+8484847C7C7C7C7C7C7C7C7C808080808080808080919191919191919191797979797979797979
+7979796262626262626262625656565656565656565D5D5D5D5D5D5D5D5D707070707070707070
+949494949494949494949494949494949494949494828282828282828282797979797979797979
+7A7A7A7A7A7A7A7A7A7A7A7A808080808080808080888888888888888888959595959595959595
+A4A4A4A4A4A4A4A4A4ACACACACACACACACACACACACA8A8A8A8A8A8A8A8A8868686868686868686
+484848484848484848393939393939393939393939393939393939393939373737373737373737
+3B3B3B3B3B3B3B3B3B4848484848484848489B9B9B9B9B9B9B9B9B9B9B9BF0F0F0F0F0F0F0F0F0
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE1E1E1E1E1E1E1E1E1ECECECECECECECECECEBEBEB
+EBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E9E9E9
+E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7
+E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E2E2E2
+E2E2E2E2E2E2CBCBCBCBCBCBCBCBCB919191919191919191515151515151515151343434343434
+3434343434342C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B
+2B2B2B2B2B2B242424242424242424202020202020202020212121212121212121212121212121
+2121212121212121212121212121212929292929292929294E4E4E4E4E4E4E4E4E717171717171
+717171747474747474747474636363636363636363636363505050505050505050484848484848
+4848484747474747474747474E4E4E4E4E4E4E4E4E4E4E4E5B5B5B5B5B5B5B5B5B656565656565
+6565656B6B6B6B6B6B6B6B6B6E6E6E6E6E6E6E6E6E6A6A6A6A6A6A6A6A6A6A6A6A626262626262
+6262625858585858585858584F4F4F4F4F4F4F4F4F4B4B4B4B4B4B4B4B4B484848484848484848
+4848484C4C4C4C4C4C4C4C4C484848484848484848444444444444444444464646464646464646
+4646464E4E4E4E4E4E4E4E4E5A5A5A5A5A5A5A5A5A676767676767676767787878787878787878
+929292929292929292929292B8B8B8B8B8B8B8B8B8DBDBDBDBDBDBDBDBDBEDEDEDEDEDEDEDEDED
+F6F6F6F6F6F6F6F6F6E5E5E5E5E5E5E5E5E5E5E5E5C8C8C8C8C8C8C8C8C8B0B1B0B0B1B0B0B1B0
+9D9D9D9D9D9D9D9D9D8E8E8E8E8E8E8E8E8E8E8E8E8484848484848484847C7C7C7C7C7C7C7C7C
+808080808080808080919191919191919191797979797979797979797979626262626262626262
+5656565656565656565D5D5D5D5D5D5D5D5D707070707070707070949494949494949494949494
+9494949494949494948282828282828282827979797979797979797A7A7A7A7A7A7A7A7A7A7A7A
+808080808080808080888888888888888888959595959595959595A4A4A4A4A4A4A4A4A4ACACAC
+ACACACACACACACACACA8A8A8A8A8A8A8A8A8868686868686868686484848484848484848393939
+3939393939393939393939393939393939393737373737373737373B3B3B3B3B3B3B3B3B484848
+4848484848489B9B9B9B9B9B9B9B9B9B9B9BF0F0F0F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFC
+FCFCFCFCFCFCE1E1E1E1E1E1E1E1E1ECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEA
+EAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8
+E8E9E8E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7
+E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E2E2E2E2E2E2E2E2E2CBCBCBCBCBCB
+CBCBCB9191919191919191915151515151515151513434343434343434343434342C2C2C2C2C2C
+2C2C2C2B2B2B2B2B2B2B2B2B2D2D2D2D2D2D2D2D2D2B2B2B2B2B2B2B2B2B2B2B2B242424242424
+242424202020202020202020212121212121212121212121212121212121212121212121212121
+2121212929292929292929294E4E4E4E4E4E4E4E4E717171717171717171747474747474747474
+636363636363636363636363505050505050505050484848484848484848474747474747474747
+4E4E4E4E4E4E4E4E4E4E4E4E5B5B5B5B5B5B5B5B5B6565656565656565656B6B6B6B6B6B6B6B6B
+6E6E6E6E6E6E6E6E6E6A6A6A6A6A6A6A6A6A6A6A6A626262626262626262585858585858585858
+4F4F4F4F4F4F4F4F4F4B4B4B4B4B4B4B4B4B4848484848484848484848484C4C4C4C4C4C4C4C4C
+4848484848484848484444444444444444444646464646464646464646464E4E4E4E4E4E4E4E4E
+5A5A5A5A5A5A5A5A5A676767676767676767787878787878787878929292929292929292929292
+B8B8B8B8B8B8B8B8B8DBDBDBDBDBDBDBDBDBEDEDEDEDEDEDEDEDEDF6F6F6F6F6F6F6F6F6E5E5E5
+E5E5E5E5E5E5E5E5E5C8C8C8C8C8C8C8C8C8B0B1B0B0B1B0B0B1B09D9D9D9D9D9D9D9D9D8E8E8E
+8E8E8E8E8E8E8E8E8E8484848484848484847C7C7C7C7C7C7C7C7C808080808080808080919191
+9191919191917979797979797979797979796262626262626262625656565656565656565D5D5D
+5D5D5D5D5D5D707070707070707070949494949494949494949494949494949494949494828282
+8282828282827979797979797979797A7A7A7A7A7A7A7A7A7A7A7A808080808080808080888888
+888888888888959595959595959595A4A4A4A4A4A4A4A4A4ACACACACACACACACACACACACA8A8A8
+A8A8A8A8A8A8868686868686868686484848484848484848393939393939393939393939393939
+3939393939393737373737373737373B3B3B3B3B3B3B3B3B4848484848484848489B9B9B9B9B9B
+9B9B9B9B9B9BF0F0F0F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE1E1E1E1E1E1
+E1E1E1EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+EAEAEAE8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6
+E5E5E5E5E5E5E5E5E5E5E5E5E1E1E1E1E1E1E1E1E1CCCCCCCCCCCCCCCCCC959595959595959595
+5555555555555555553535353535353535353535352C2C2C2C2C2C2C2C2C292929292929292929
+292929292929292929292929292929292929292929252525252525252525212121212121212121
+212121212121212121212121212121212121212121212121212121212121292929292929292929
+4E4E4E4E4E4E4E4E4E7070707070707070706E6E6E6E6E6E6E6E6E5A5A5A5A5A5A5A5A5A5A5A5A
+4F4F4F4F4F4F4F4F4F5151515151515151515757575757575757575E5E5E5E5E5E5E5E5E5E5E5E
+6868686868686868686D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6767676767676767675A5A5A
+5A5A5A5A5A5A5A5A5A5050505050505050504C4C4C4C4C4C4C4C4C444444444444444444494949
+4949494949494E4E4E4E4E4E4E4E4E4E4E4E585858585858585858595959595959595959565656
+5656565656564F4F4F4F4F4F4F4F4F4F4F4F5050505050505050505A5A5A5A5A5A5A5A5A676767
+6767676767677777777777777777778B8B8B8B8B8B8B8B8B8B8B8BACACACACACACACACACD3D3D3
+D3D3D3D3D3D3E8E9E8E8E9E8E8E9E8F0F0F0F0F0F0F0F0F0E1E1E1E1E1E1E1E1E1E1E1E1C6C6C6
+C6C6C6C6C6C6B4B4B4B4B4B4B4B4B4A4A4A4A4A4A4A4A4A4A0A0A0A0A0A0A0A0A0A0A0A09A9A9A
+9A9A9A9A9A9A929292929292929292959595959595959595A1A1A1A1A1A1A1A1A1909090909090
+9090909090907676767676767676767070707070707070707979797979797979798C8C8C8C8C8C
+8C8C8C9E9E9E9E9E9E9E9E9E9E9E9E9F9F9F9F9F9F9F9F9F959595959595959595959595959595
+9595959999999999999999999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AA0A0A0A0A0A0
+A0A0A0AEAEAEAEAEAEAEAEAEB2B2B2B2B2B2B2B2B2B2B2B2ADADADADADADADADAD909090909090
+909090515151515151515151464646464646464646464646464646464646464646404040404040
+4040403F3F3F3F3F3F3F3F3F5B5B5B5B5B5B5B5B5BB9B9B9B9B9B9B9B9B9B9B9B9F9F9F9F9F9F9
+F9F9F9FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7EBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE8E9E8E8E9E8E8E9E8
+E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8
+E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8
+E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5
+E1E1E1E1E1E1E1E1E1CCCCCCCCCCCCCCCCCC959595959595959595555555555555555555353535
+3535353535353535352C2C2C2C2C2C2C2C2C292929292929292929292929292929292929292929
+292929292929292929252525252525252525212121212121212121212121212121212121212121
+2121212121212121212121212121212121212929292929292929294E4E4E4E4E4E4E4E4E707070
+7070707070706E6E6E6E6E6E6E6E6E5A5A5A5A5A5A5A5A5A5A5A5A4F4F4F4F4F4F4F4F4F515151
+5151515151515757575757575757575E5E5E5E5E5E5E5E5E5E5E5E6868686868686868686D6D6D
+6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6767676767676767675A5A5A5A5A5A5A5A5A5A5A5A505050
+5050505050504C4C4C4C4C4C4C4C4C4444444444444444444949494949494949494E4E4E4E4E4E
+4E4E4E4E4E4E5858585858585858585959595959595959595656565656565656564F4F4F4F4F4F
+4F4F4F4F4F4F5050505050505050505A5A5A5A5A5A5A5A5A676767676767676767777777777777
+7777778B8B8B8B8B8B8B8B8B8B8B8BACACACACACACACACACD3D3D3D3D3D3D3D3D3E8E9E8E8E9E8
+E8E9E8F0F0F0F0F0F0F0F0F0E1E1E1E1E1E1E1E1E1E1E1E1C6C6C6C6C6C6C6C6C6B4B4B4B4B4B4
+B4B4B4A4A4A4A4A4A4A4A4A4A0A0A0A0A0A0A0A0A0A0A0A09A9A9A9A9A9A9A9A9A929292929292
+929292959595959595959595A1A1A1A1A1A1A1A1A1909090909090909090909090767676767676
+7676767070707070707070707979797979797979798C8C8C8C8C8C8C8C8C9E9E9E9E9E9E9E9E9E
+9E9E9E9F9F9F9F9F9F9F9F9F959595959595959595959595959595959595999999999999999999
+9999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AA0A0A0A0A0A0A0A0A0AEAEAEAEAEAEAEAEAE
+B2B2B2B2B2B2B2B2B2B2B2B2ADADADADADADADADAD909090909090909090515151515151515151
+4646464646464646464646464646464646464646464040404040404040403F3F3F3F3F3F3F3F3F
+5B5B5B5B5B5B5B5B5BB9B9B9B9B9B9B9B9B9B9B9B9F9F9F9F9F9F9F9F9F9FEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9EAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E9E9E9
+E9E9E9E9E9E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E7E7E7
+E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7
+E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E4E4E4E0E0E0E0E0E0E0E0E0CDCDCD
+CDCDCDCDCDCD9D9D9D9D9D9D9D9D9D5D5D5D5D5D5D5D5D5D3737373737373737373737372B2B2B
+2B2B2B2B2B2B282828282828282828282828282828282828252525252525252525252525222222
+222222222222202020202020202020212121212121212121202020202020202020212121212121
+2121212121212929292929292929294F4F4F4F4F4F4F4F4F7070707070707070706D6D6D6D6D6D
+6D6D6D5F605F5F605F5F605F5F605F5B5B5B5B5B5B5B5B5B5D5D5D5D5D5D5D5D5D636363636363
+6363636868686868686868686868686B6B6B6B6B6B6B6B6B6767676767676767675D5D5D5D5D5D
+5D5D5D5555555555555555554848484848484848484848483B3B3B3B3B3B3B3B3B393939393939
+3939393535353535353535355656565656565656565F605F5F605F5F605F5F605F6C6C6C6C6C6C
+6C6C6C6A6A6A6A6A6A6A6A6A5E5E5E5E5E5E5E5E5E6161616161616161616161615D5D5D5D5D5D
+5D5D5D616161616161616161696969696969696969777777777777777777878787878787878787
+878787A6A6A6A6A6A6A6A6A6CDCDCDCDCDCDCDCDCDE5E5E5E5E5E5E5E5E5ECECECECECECECECEC
+DEDEDEDEDEDEDEDEDEDEDEDEC5C5C5C5C5C5C5C5C5B6B6B6B6B6B6B6B6B6AAAAAAAAAAAAAAAAAA
+AEAEAEAEAEAEAEAEAEAEAEAEA8A8A8A8A8A8A8A8A8A1A1A1A1A1A1A1A1A19F9F9F9F9F9F9F9F9F
+9E9E9E9E9E9E9E9E9E9797979797979797979797978D8D8D8D8D8D8D8D8D8B8B8B8B8B8B8B8B8B
+939393939393939393A2A2A2A2A2A2A2A2A2A9A9A9A9A9A9A9A9A9A9A9A9ABABABABABABABABAB
+AAAAAAAAAAAAAAAAAAACACACACACACACACACB0B1B0B0B1B0B0B1B0B0B1B0B2B2B2B2B2B2B2B2B2
+B1B1B1B1B1B1B1B1B1B2B2B2B2B2B2B2B2B2B9B9B9B9B9B9B9B9B9BABABABABABABABABABABABA
+B2B2B2B2B2B2B2B2B29696969696969696965B5B5B5B5B5B5B5B5B5757575757575757575E5E5E
+5E5E5E5E5E5E5E5E5E5454545454545454544E4E4E4E4E4E4E4E4E818181818181818181DEDEDE
+DEDEDEDEDEDEDEDEDEFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6
+C6C6C6C6C6C6EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+EAEAEAEAEAEAE8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5
+E5E5E5E4E4E4E4E4E4E4E4E4E4E4E4E0E0E0E0E0E0E0E0E0CDCDCDCDCDCDCDCDCD9D9D9D9D9D9D
+9D9D9D5D5D5D5D5D5D5D5D5D3737373737373737373737372B2B2B2B2B2B2B2B2B282828282828
+282828282828282828282828252525252525252525252525222222222222222222202020202020
+202020212121212121212121202020202020202020212121212121212121212121292929292929
+2929294F4F4F4F4F4F4F4F4F7070707070707070706D6D6D6D6D6D6D6D6D5F605F5F605F5F605F
+5F605F5B5B5B5B5B5B5B5B5B5D5D5D5D5D5D5D5D5D636363636363636363686868686868686868
+6868686B6B6B6B6B6B6B6B6B6767676767676767675D5D5D5D5D5D5D5D5D555555555555555555
+4848484848484848484848483B3B3B3B3B3B3B3B3B393939393939393939353535353535353535
+5656565656565656565F605F5F605F5F605F5F605F6C6C6C6C6C6C6C6C6C6A6A6A6A6A6A6A6A6A
+5E5E5E5E5E5E5E5E5E6161616161616161616161615D5D5D5D5D5D5D5D5D616161616161616161
+696969696969696969777777777777777777878787878787878787878787A6A6A6A6A6A6A6A6A6
+CDCDCDCDCDCDCDCDCDE5E5E5E5E5E5E5E5E5ECECECECECECECECECDEDEDEDEDEDEDEDEDEDEDEDE
+C5C5C5C5C5C5C5C5C5B6B6B6B6B6B6B6B6B6AAAAAAAAAAAAAAAAAAAEAEAEAEAEAEAEAEAEAEAEAE
+A8A8A8A8A8A8A8A8A8A1A1A1A1A1A1A1A1A19F9F9F9F9F9F9F9F9F9E9E9E9E9E9E9E9E9E979797
+9797979797979797978D8D8D8D8D8D8D8D8D8B8B8B8B8B8B8B8B8B939393939393939393A2A2A2
+A2A2A2A2A2A2A9A9A9A9A9A9A9A9A9A9A9A9ABABABABABABABABABAAAAAAAAAAAAAAAAAAACACAC
+ACACACACACACB0B1B0B0B1B0B0B1B0B0B1B0B2B2B2B2B2B2B2B2B2B1B1B1B1B1B1B1B1B1B2B2B2
+B2B2B2B2B2B2B9B9B9B9B9B9B9B9B9BABABABABABABABABABABABAB2B2B2B2B2B2B2B2B2969696
+9696969696965B5B5B5B5B5B5B5B5B5757575757575757575E5E5E5E5E5E5E5E5E5E5E5E545454
+5454545454544E4E4E4E4E4E4E4E4E818181818181818181DEDEDEDEDEDEDEDEDEDEDEDEFDFDFD
+FDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6EAEAEAEAEAEA
+EAEAEAE9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4
+E4E4E4E0E0E0E0E0E0E0E0E0CDCDCDCDCDCDCDCDCD9D9D9D9D9D9D9D9D9D5D5D5D5D5D5D5D5D5D
+3737373737373737373737372B2B2B2B2B2B2B2B2B282828282828282828282828282828282828
+252525252525252525252525222222222222222222202020202020202020212121212121212121
+2020202020202020202121212121212121212121212929292929292929294F4F4F4F4F4F4F4F4F
+7070707070707070706D6D6D6D6D6D6D6D6D5F605F5F605F5F605F5F605F5B5B5B5B5B5B5B5B5B
+5D5D5D5D5D5D5D5D5D6363636363636363636868686868686868686868686B6B6B6B6B6B6B6B6B
+6767676767676767675D5D5D5D5D5D5D5D5D555555555555555555484848484848484848484848
+3B3B3B3B3B3B3B3B3B3939393939393939393535353535353535355656565656565656565F605F
+5F605F5F605F5F605F6C6C6C6C6C6C6C6C6C6A6A6A6A6A6A6A6A6A5E5E5E5E5E5E5E5E5E616161
+6161616161616161615D5D5D5D5D5D5D5D5D616161616161616161696969696969696969777777
+777777777777878787878787878787878787A6A6A6A6A6A6A6A6A6CDCDCDCDCDCDCDCDCDE5E5E5
+E5E5E5E5E5E5ECECECECECECECECECDEDEDEDEDEDEDEDEDEDEDEDEC5C5C5C5C5C5C5C5C5B6B6B6
+B6B6B6B6B6B6AAAAAAAAAAAAAAAAAAAEAEAEAEAEAEAEAEAEAEAEAEA8A8A8A8A8A8A8A8A8A1A1A1
+A1A1A1A1A1A19F9F9F9F9F9F9F9F9F9E9E9E9E9E9E9E9E9E9797979797979797979797978D8D8D
+8D8D8D8D8D8D8B8B8B8B8B8B8B8B8B939393939393939393A2A2A2A2A2A2A2A2A2A9A9A9A9A9A9
+A9A9A9A9A9A9ABABABABABABABABABAAAAAAAAAAAAAAAAAAACACACACACACACACACB0B1B0B0B1B0
+B0B1B0B0B1B0B2B2B2B2B2B2B2B2B2B1B1B1B1B1B1B1B1B1B2B2B2B2B2B2B2B2B2B9B9B9B9B9B9
+B9B9B9BABABABABABABABABABABABAB2B2B2B2B2B2B2B2B29696969696969696965B5B5B5B5B5B
+5B5B5B5757575757575757575E5E5E5E5E5E5E5E5E5E5E5E5454545454545454544E4E4E4E4E4E
+4E4E4E818181818181818181DEDEDEDEDEDEDEDEDEDEDEDEFDFDFDFDFDFDFDFDFDFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6EBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7
+E6E6E6E6E6E6E6E6E6E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6
+E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3
+D6D6D5D6D6D5D6D6D5B2B2B2B2B2B2B2B2B27272727272727272723E3E3E3E3E3E3E3E3E3E3E3E
+2B2B2B2B2B2B2B2B2B282828282828282828282828282828282828242424242424242424242424
+222222222222222222202020202020202020202020202020202020212121212121212121222222
+2222222222222222222929292929292929294F4F4F4F4F4F4F4F4F717171717171717171717171
+7171717171716B6B6B6B6B6B6B6B6B6B6B6B696969696969696969676767676767676767676767
+676767676767676767676767676767676767636363636363636363565656565656565656494949
+4949494949494646464646464646464040404040404040404040403B3B3B3B3B3B3B3B3B3B3B3B
+3B3B3B3B3B3B3434343434343434344E4E4E4E4E4E4E4E4E686868686868686868686868949494
+9494949494949D9D9D9D9D9D9D9D9D7474747474747474746666666666666666666666666C6C6C
+6C6C6C6C6C6C6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E757575757575757575848484848484
+848484848484A1A1A1A1A1A1A1A1A1C5C5C5C5C5C5C5C5C5DFE0DFDFE0DFDFE0DFE7E7E7E7E7E7
+E7E7E7DCDCDCDCDCDCDCDCDCDCDCDCC8C8C8C8C8C8C8C8C8B8B8B8B8B8B8B8B8B8ADADADADADAD
+ADADADB0B1B0B0B1B0B0B1B0B0B1B0B2B2B2B2B2B2B2B2B2AFAFAFAFAFAFAFAFAFA7A7A7A7A7A7
+A7A7A79F9F9F9F9F9F9F9F9F9898989898989898989898989595959595959595959A9A9A9A9A9A
+9A9A9AA2A2A2A2A2A2A2A2A2B0B0B0B0B0B0B0B0B0B8B8B8B8B8B8B8B8B8B8B8B8BABABABABABA
+BABABAB8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8BCBCBCBCBCBCBCBCBCBCBCBCBFBFBFBFBFBF
+BFBFBFBFBFBFBFBFBFBFBFBFC0C0C0C0C0C0C0C0C0C4C4C4C4C4C4C4C4C4C0C0C0C0C0C0C0C0C0
+C0C0C0B8B8B8B8B8B8B8B8B8A0A0A0A0A0A0A0A0A06D6D6D6D6D6D6D6D6D646464646464646464
+7171717171717171717171716A6A6A6A6A6A6A6A6A6C6C6C6C6C6C6C6C6CB0B1B0B0B1B0B0B1B0
+F3F3F3F3F3F3F3F3F3F3F3F3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+BBBBBBBBBBBBBBBBBBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E7E7E7
+E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3D6D6D5D6D6D5D6D6D5B2B2B2
+B2B2B2B2B2B27272727272727272723E3E3E3E3E3E3E3E3E3E3E3E2B2B2B2B2B2B2B2B2B282828
+282828282828282828282828282828242424242424242424242424222222222222222222202020
+202020202020202020202020202020212121212121212121222222222222222222222222292929
+2929292929294F4F4F4F4F4F4F4F4F7171717171717171717171717171717171716B6B6B6B6B6B
+6B6B6B6B6B6B696969696969696969676767676767676767676767676767676767676767676767
+676767676767636363636363636363565656565656565656494949494949494949464646464646
+4646464040404040404040404040403B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B343434343434
+3434344E4E4E4E4E4E4E4E4E6868686868686868686868689494949494949494949D9D9D9D9D9D
+9D9D9D7474747474747474746666666666666666666666666C6C6C6C6C6C6C6C6C6E6E6E6E6E6E
+6E6E6E6E6E6E6E6E6E6E6E6E757575757575757575848484848484848484848484A1A1A1A1A1A1
+A1A1A1C5C5C5C5C5C5C5C5C5DFE0DFDFE0DFDFE0DFE7E7E7E7E7E7E7E7E7DCDCDCDCDCDCDCDCDC
+DCDCDCC8C8C8C8C8C8C8C8C8B8B8B8B8B8B8B8B8B8ADADADADADADADADADB0B1B0B0B1B0B0B1B0
+B0B1B0B2B2B2B2B2B2B2B2B2AFAFAFAFAFAFAFAFAFA7A7A7A7A7A7A7A7A79F9F9F9F9F9F9F9F9F
+9898989898989898989898989595959595959595959A9A9A9A9A9A9A9A9AA2A2A2A2A2A2A2A2A2
+B0B0B0B0B0B0B0B0B0B8B8B8B8B8B8B8B8B8B8B8B8BABABABABABABABABAB8B8B8B8B8B8B8B8B8
+B8B8B8B8B8B8B8B8B8BCBCBCBCBCBCBCBCBCBCBCBCBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
+C0C0C0C0C0C0C0C0C0C4C4C4C4C4C4C4C4C4C0C0C0C0C0C0C0C0C0C0C0C0B8B8B8B8B8B8B8B8B8
+A0A0A0A0A0A0A0A0A06D6D6D6D6D6D6D6D6D646464646464646464717171717171717171717171
+6A6A6A6A6A6A6A6A6A6C6C6C6C6C6C6C6C6CB0B1B0B0B1B0B0B1B0F3F3F3F3F3F3F3F3F3F3F3F3
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BBBBBBBBBBBBBBBBBBEBEBEB
+EBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8
+E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6
+E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3D6D6D5D6D6D5D6D6D5B2B2B2B2B2B2B2B2B2727272727272
+7272723E3E3E3E3E3E3E3E3E3E3E3E2B2B2B2B2B2B2B2B2B282828282828282828282828282828
+282828242424242424242424242424222222222222222222202020202020202020202020202020
+2020202121212121212121212222222222222222222222222929292929292929294F4F4F4F4F4F
+4F4F4F7171717171717171717171717171717171716B6B6B6B6B6B6B6B6B6B6B6B696969696969
+696969676767676767676767676767676767676767676767676767676767676767636363636363
+636363565656565656565656494949494949494949464646464646464646404040404040404040
+4040403B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3434343434343434344E4E4E4E4E4E4E4E4E
+6868686868686868686868689494949494949494949D9D9D9D9D9D9D9D9D747474747474747474
+6666666666666666666666666C6C6C6C6C6C6C6C6C6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E
+757575757575757575848484848484848484848484A1A1A1A1A1A1A1A1A1C5C5C5C5C5C5C5C5C5
+DFE0DFDFE0DFDFE0DFE7E7E7E7E7E7E7E7E7DCDCDCDCDCDCDCDCDCDCDCDCC8C8C8C8C8C8C8C8C8
+B8B8B8B8B8B8B8B8B8ADADADADADADADADADB0B1B0B0B1B0B0B1B0B0B1B0B2B2B2B2B2B2B2B2B2
+AFAFAFAFAFAFAFAFAFA7A7A7A7A7A7A7A7A79F9F9F9F9F9F9F9F9F989898989898989898989898
+9595959595959595959A9A9A9A9A9A9A9A9AA2A2A2A2A2A2A2A2A2B0B0B0B0B0B0B0B0B0B8B8B8
+B8B8B8B8B8B8B8B8B8BABABABABABABABABAB8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8BCBCBC
+BCBCBCBCBCBCBCBCBCBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFC0C0C0C0C0C0C0C0C0C4C4C4
+C4C4C4C4C4C4C0C0C0C0C0C0C0C0C0C0C0C0B8B8B8B8B8B8B8B8B8A0A0A0A0A0A0A0A0A06D6D6D
+6D6D6D6D6D6D6464646464646464647171717171717171717171716A6A6A6A6A6A6A6A6A6C6C6C
+6C6C6C6C6C6CB0B1B0B0B1B0B0B1B0F3F3F3F3F3F3F3F3F3F3F3F3FFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BBBBBBBBBBBBBBBBBBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8
+E8E8E8E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E6E6E6E6E6E6
+E6E6E6E7E7E7E7E7E7E7E7E7E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4DEDEDEDEDEDEDEDEDEC9C9C9C9C9C9C9C9C98D8D8D8D8D8D8D8D8D494949494949494949
+4949492C2C2C2C2C2C2C2C2C272727272727272727252525252525252525242424242424242424
+2424242424242424242424242020202020202020201E1E1E1E1E1E1E1E1E212121212121212121
+222222222222222222222222292929292929292929505050505050505050747474747474747474
+7878787878787878787373737373737373737373736F6F6F6F6F6F6F6F6F6A6A6A6A6A6A6A6A6A
+666666666666666666626262626262626262626262575757575757575757464646464646464646
+3F3F3F3F3F3F3F3F3F4242424242424242424C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C
+4C4C4C4C4C4C4C4C4C464646464646464646515151515151515151707070707070707070707070
+A6A6A6A6A6A6A6A6A6B5B5B5B5B5B5B5B5B59292929292929292927B7B7B7B7B7B7B7B7B7B7B7B
+7A7A7A7A7A7A7A7A7A7C7C7C7C7C7C7C7C7C757575757575757575757575757575757575818181
+8181818181818181819C9C9C9C9C9C9C9C9CBCBCBCBCBCBCBCBCBCD6D6D5D6D6D5D6D6D5DFE0DF
+DFE0DFDFE0DFD7D7D7D7D7D7D7D7D7D7D7D7C6C6C6C6C6C6C6C6C6B8B8B8B8B8B8B8B8B8ACACAC
+ACACACACACACABABABABABABABABABABABABB0B0B0B0B0B0B0B0B0ADADADADADADADADADA3A3A3
+A3A3A3A3A3A39E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9D9D9D9D9D9D9D9D9DA3A3A3
+A3A3A3A3A3A3AFAFAFAFAFAFAFAFAFBABABABABABABABABABFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
+BFBFBFBFBFBFBABABABABABABABABAB8B8B8B8B8B8B8B8B8BFBFBFBFBFBFBFBFBFBFBFBFC7C7C7
+C7C7C7C7C7C7CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCACACACACACACACACAC3C3C3C3C3C3
+C3C3C3C3C3C3BBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAA888888888888888888797979797979
+797979797979797979797979797979797979797979797979929292929292929292DDDDDDDDDDDD
+DDDDDDFCFCFCFCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9C5C5C5C5C5C5C5C5C5EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6
+E6E6E6E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E6E6E6E6E6E6E6E6E6E7E7E7E7E7E7E7E7E7
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4DEDEDEDEDEDEDEDEDE
+C9C9C9C9C9C9C9C9C98D8D8D8D8D8D8D8D8D4949494949494949494949492C2C2C2C2C2C2C2C2C
+272727272727272727252525252525252525242424242424242424242424242424242424242424
+2020202020202020201E1E1E1E1E1E1E1E1E212121212121212121222222222222222222222222
+292929292929292929505050505050505050747474747474747474787878787878787878737373
+7373737373737373736F6F6F6F6F6F6F6F6F6A6A6A6A6A6A6A6A6A666666666666666666626262
+6262626262626262625757575757575757574646464646464646463F3F3F3F3F3F3F3F3F424242
+4242424242424C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C464646
+464646464646515151515151515151707070707070707070707070A6A6A6A6A6A6A6A6A6B5B5B5
+B5B5B5B5B5B59292929292929292927B7B7B7B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A7C7C7C
+7C7C7C7C7C7C7575757575757575757575757575757575758181818181818181818181819C9C9C
+9C9C9C9C9C9CBCBCBCBCBCBCBCBCBCD6D6D5D6D6D5D6D6D5DFE0DFDFE0DFDFE0DFD7D7D7D7D7D7
+D7D7D7D7D7D7C6C6C6C6C6C6C6C6C6B8B8B8B8B8B8B8B8B8ACACACACACACACACACABABABABABAB
+ABABABABABABB0B0B0B0B0B0B0B0B0ADADADADADADADADADA3A3A3A3A3A3A3A3A39E9E9E9E9E9E
+9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9D9D9D9D9D9D9D9D9DA3A3A3A3A3A3A3A3A3AFAFAFAFAFAF
+AFAFAFBABABABABABABABABABFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBABABABABABA
+BABABAB8B8B8B8B8B8B8B8B8BFBFBFBFBFBFBFBFBFBFBFBFC7C7C7C7C7C7C7C7C7CBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCACACACACACACACACAC3C3C3C3C3C3C3C3C3C3C3C3BBBBBBBBBBBB
+BBBBBBAAAAAAAAAAAAAAAAAA888888888888888888797979797979797979797979797979797979
+797979797979797979797979929292929292929292DDDDDDDDDDDDDDDDDDFCFCFCFCFCFCFCFCFC
+FCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5
+EBEBEBEBEBEBEBEBEBECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEA
+EBEBEBEBEBEBEBEBEBE8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5
+E6E6E6E6E6E6E6E6E6E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E4E4E4E4E4E4E4E4E4E5E5E5
+E5E5E5E5E5E5E5E5E5E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4D7D7D7D7D7D7D7D7D7A6A6A6
+A6A6A6A6A6A6585858585858585858585858303030303030303030282828282828282828252525
+252525252525242424242424242424242424242424242424242424212121212121212121202020
+2020202020202121212121212121212222222222222222222222222B2B2B2B2B2B2B2B2B545454
+5454545454547676767676767676767B7B7B7B7B7B7B7B7B777777777777777777777777727272
+7272727272726969696969696969696565656565656565655C5C5C5C5C5C5C5C5C5C5C5C4D4D4D
+4D4D4D4D4D4D424242424242424242414141414141414141505050505050505050636363636363
+6363636363636464646464646464646161616161616161616363636363636363636B6B6B6B6B6B
+6B6B6B838383838383838383838383A1A1A1A1A1A1A1A1A1AFAFAFAFAFAFAFAFAFA4A4A4A4A4A4
+A4A4A49797979797979797979797979090909090909090908686868686868686867A7A7A7A7A7A
+7A7A7A767676767676767676808080808080808080808080969696969696969696B3B3B3B3B3B3
+B3B3B3CECECECECECECECECEDADADADADADADADADAD5D5D5D5D5D5D5D5D5D5D5D5C3C3C3C3C3C3
+C3C3C3B8B8B8B8B8B8B8B8B8ADADADADADADADADADA7A7A7A7A7A7A7A7A7A7A7A7AAAAAAAAAAAA
+AAAAAAABABABABABABABABABA2A2A2A2A2A2A2A2A29B9B9B9B9B9B9B9B9B989898989898989898
+9898989A9A9A9A9A9A9A9A9A9F9F9F9F9F9F9F9F9FA8A8A8A8A8A8A8A8A8B0B0B0B0B0B0B0B0B0
+B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4BABABABABABABABABA
+C7C7C7C7C7C7C7C7C7C7C7C7D0D0D0D0D0D0D0D0D0D4D4D4D4D4D4D4D4D4D0D0D0D0D0D0D0D0D0
+CCCCCCCCCCCCCCCCCCC5C5C5C5C5C5C5C5C5C5C5C5BBBBBBBBBBBBBBBBBBB0B0B0B0B0B0B0B0B0
+A2A2A2A2A2A2A2A2A2979797979797979797888888888888888888888888898989898989898989
+B4B4B4B4B4B4B4B4B4F2F2F2F2F2F2F2F2F2FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6EBEBEBEBEBEBEBEBEBECECEC
+ECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBE8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E7E7E7
+E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5E6E6E6E6E6E6E6E6E6E7E7E7
+E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E4E4E4E4E4E4E4E4E4E5E5E5E5E5E5E5E5E5E5E5E5E6E6E6
+E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4D7D7D7D7D7D7D7D7D7A6A6A6A6A6A6A6A6A6585858585858
+585858585858303030303030303030282828282828282828252525252525252525242424242424
+242424242424242424242424242424212121212121212121202020202020202020212121212121
+2121212222222222222222222222222B2B2B2B2B2B2B2B2B545454545454545454767676767676
+7676767B7B7B7B7B7B7B7B7B777777777777777777777777727272727272727272696969696969
+6969696565656565656565655C5C5C5C5C5C5C5C5C5C5C5C4D4D4D4D4D4D4D4D4D424242424242
+424242414141414141414141505050505050505050636363636363636363636363646464646464
+6464646161616161616161616363636363636363636B6B6B6B6B6B6B6B6B838383838383838383
+838383A1A1A1A1A1A1A1A1A1AFAFAFAFAFAFAFAFAFA4A4A4A4A4A4A4A4A4979797979797979797
+9797979090909090909090908686868686868686867A7A7A7A7A7A7A7A7A767676767676767676
+808080808080808080808080969696969696969696B3B3B3B3B3B3B3B3B3CECECECECECECECECE
+DADADADADADADADADAD5D5D5D5D5D5D5D5D5D5D5D5C3C3C3C3C3C3C3C3C3B8B8B8B8B8B8B8B8B8
+ADADADADADADADADADA7A7A7A7A7A7A7A7A7A7A7A7AAAAAAAAAAAAAAAAAAABABABABABABABABAB
+A2A2A2A2A2A2A2A2A29B9B9B9B9B9B9B9B9B9898989898989898989898989A9A9A9A9A9A9A9A9A
+9F9F9F9F9F9F9F9F9FA8A8A8A8A8A8A8A8A8B0B0B0B0B0B0B0B0B0B4B4B4B4B4B4B4B4B4B4B4B4
+B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4BABABABABABABABABAC7C7C7C7C7C7C7C7C7C7C7C7
+D0D0D0D0D0D0D0D0D0D4D4D4D4D4D4D4D4D4D0D0D0D0D0D0D0D0D0CCCCCCCCCCCCCCCCCCC5C5C5
+C5C5C5C5C5C5C5C5C5BBBBBBBBBBBBBBBBBBB0B0B0B0B0B0B0B0B0A2A2A2A2A2A2A2A2A2979797
+979797979797888888888888888888888888898989898989898989B4B4B4B4B4B4B4B4B4F2F2F2
+F2F2F2F2F2F2FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6EBEBEBEBEBEBEBEBEBECECECECECECECECECEBEBEBEBEBEB
+EBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBE8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6
+E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5E6E6E6E6E6E6E6E6E6E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7
+E7E7E7E4E4E4E4E4E4E4E4E4E5E5E5E5E5E5E5E5E5E5E5E5E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4
+E4E4E4D7D7D7D7D7D7D7D7D7A6A6A6A6A6A6A6A6A6585858585858585858585858303030303030
+303030282828282828282828252525252525252525242424242424242424242424242424242424
+242424212121212121212121202020202020202020212121212121212121222222222222222222
+2222222B2B2B2B2B2B2B2B2B5454545454545454547676767676767676767B7B7B7B7B7B7B7B7B
+777777777777777777777777727272727272727272696969696969696969656565656565656565
+5C5C5C5C5C5C5C5C5C5C5C5C4D4D4D4D4D4D4D4D4D424242424242424242414141414141414141
+505050505050505050636363636363636363636363646464646464646464616161616161616161
+6363636363636363636B6B6B6B6B6B6B6B6B838383838383838383838383A1A1A1A1A1A1A1A1A1
+AFAFAFAFAFAFAFAFAFA4A4A4A4A4A4A4A4A4979797979797979797979797909090909090909090
+8686868686868686867A7A7A7A7A7A7A7A7A767676767676767676808080808080808080808080
+969696969696969696B3B3B3B3B3B3B3B3B3CECECECECECECECECEDADADADADADADADADAD5D5D5
+D5D5D5D5D5D5D5D5D5C3C3C3C3C3C3C3C3C3B8B8B8B8B8B8B8B8B8ADADADADADADADADADA7A7A7
+A7A7A7A7A7A7A7A7A7AAAAAAAAAAAAAAAAAAABABABABABABABABABA2A2A2A2A2A2A2A2A29B9B9B
+9B9B9B9B9B9B9898989898989898989898989A9A9A9A9A9A9A9A9A9F9F9F9F9F9F9F9F9FA8A8A8
+A8A8A8A8A8A8B0B0B0B0B0B0B0B0B0B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4
+B4B4B4B4B4B4BABABABABABABABABAC7C7C7C7C7C7C7C7C7C7C7C7D0D0D0D0D0D0D0D0D0D4D4D4
+D4D4D4D4D4D4D0D0D0D0D0D0D0D0D0CCCCCCCCCCCCCCCCCCC5C5C5C5C5C5C5C5C5C5C5C5BBBBBB
+BBBBBBBBBBBBB0B0B0B0B0B0B0B0B0A2A2A2A2A2A2A2A2A2979797979797979797888888888888
+888888888888898989898989898989B4B4B4B4B4B4B4B4B4F2F2F2F2F2F2F2F2F2FEFEFEFEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6
+C6C6C6ECECECECECECECECECECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEA
+EAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6
+E6E6E6E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5
+E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5DFE0DFDFE0DFDFE0DF
+BABABABABABABABABA6D6D6D6D6D6D6D6D6D6D6D6D373737373737373737292929292929292929
+272727272727272727252525252525252525252525272727272727272727242424242424242424
+2222222222222222222222222222222222222222222222222222222222222C2C2C2C2C2C2C2C2C
+5656565656565656567777777777777777777D7D7D7D7D7D7D7D7D7B7B7B7B7B7B7B7B7B7B7B7B
+7575757575757575756A6A6A6A6A6A6A6A6A646464646464646464595959595959595959595959
+4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F4F565656565656565656656565656565656565757575
+7575757575757575757A7A7A7A7A7A7A7A7A7979797979797979797D7D7D7D7D7D7D7D7D818181
+8181818181818F8F8F8F8F8F8F8F8F8F8F8F9D9D9D9D9D9D9D9D9DA6A6A6A6A6A6A6A6A6A2A2A2
+A2A2A2A2A2A29D9D9D9D9D9D9D9D9D9D9D9D929292929292929292838383838383838383777777
+777777777777767676767676767676808080808080808080808080919191919191919191ACACAC
+ACACACACACACCBCBCBCBCBCBCBCBCBD9D9D9D9D9D9D9D9D9D6D6D5D6D6D5D6D6D5D6D6D5C7C7C7
+C7C7C7C7C7C7BCBCBCBCBCBCBCBCBCB3B3B3B3B3B3B3B3B3ADADADADADADADADADADADADADADAD
+ADADADADADADB0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0A8A8A8A8A8A8A8A8A8A1A1A1A1A1A1
+A1A1A1A1A1A19D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9F9F9F9F9F9F9F9F9FA5A5A5A5A5A5
+A5A5A5ABABABABABABABABABABABABB2B2B2B2B2B2B2B2B2BCBCBCBCBCBCBCBCBCC8C8C8C8C8C8
+C8C8C8D2D2D2D2D2D2D2D2D2D2D2D2D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D4D4D4D4D4D4
+D4D4D4CFCFCFCFCFCFCFCFCFC6C6C6C6C6C6C6C6C6C6C6C6BCBCBCBCBCBCBCBCBCB1B1B1B1B1B1
+B1B1B1ACACACACACACACACACABABABABABABABABABA3A3A3A3A3A3A3A3A3A3A3A3A5A5A5A5A5A5
+A5A5A5CCCCCCCCCCCCCCCCCCF9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3ECECECECECECECECEC
+ECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9
+E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9
+E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6E6E6E6E7E7E7E7E7E7E7E7E7
+E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E6E6E6E6E6E6E6E6E6E6E6E6
+E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5DFE0DFDFE0DFDFE0DFBABABABABABABABABA6D6D6D
+6D6D6D6D6D6D6D6D6D373737373737373737292929292929292929272727272727272727252525
+252525252525252525272727272727272727242424242424242424222222222222222222222222
+2222222222222222222222222222222222222C2C2C2C2C2C2C2C2C565656565656565656777777
+7777777777777D7D7D7D7D7D7D7D7D7B7B7B7B7B7B7B7B7B7B7B7B7575757575757575756A6A6A
+6A6A6A6A6A6A6464646464646464645959595959595959595959594F4F4F4F4F4F4F4F4F4F4F4F
+4F4F4F4F4F4F5656565656565656566565656565656565657575757575757575757575757A7A7A
+7A7A7A7A7A7A7979797979797979797D7D7D7D7D7D7D7D7D8181818181818181818F8F8F8F8F8F
+8F8F8F8F8F8F9D9D9D9D9D9D9D9D9DA6A6A6A6A6A6A6A6A6A2A2A2A2A2A2A2A2A29D9D9D9D9D9D
+9D9D9D9D9D9D929292929292929292838383838383838383777777777777777777767676767676
+767676808080808080808080808080919191919191919191ACACACACACACACACACCBCBCBCBCBCB
+CBCBCBD9D9D9D9D9D9D9D9D9D6D6D5D6D6D5D6D6D5D6D6D5C7C7C7C7C7C7C7C7C7BCBCBCBCBCBC
+BCBCBCB3B3B3B3B3B3B3B3B3ADADADADADADADADADADADADADADADADADADADADADB0B0B0B0B0B0
+B0B0B0B0B0B0B0B0B0B0B0B0A8A8A8A8A8A8A8A8A8A1A1A1A1A1A1A1A1A1A1A1A19D9D9D9D9D9D
+9D9D9D9D9D9D9D9D9D9D9D9D9F9F9F9F9F9F9F9F9FA5A5A5A5A5A5A5A5A5ABABABABABABABABAB
+ABABABB2B2B2B2B2B2B2B2B2BCBCBCBCBCBCBCBCBCC8C8C8C8C8C8C8C8C8D2D2D2D2D2D2D2D2D2
+D2D2D2D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D4D4D4D4D4D4D4D4D4CFCFCFCFCFCFCFCFCF
+C6C6C6C6C6C6C6C6C6C6C6C6BCBCBCBCBCBCBCBCBCB1B1B1B1B1B1B1B1B1ACACACACACACACACAC
+ABABABABABABABABABA3A3A3A3A3A3A3A3A3A3A3A3A5A5A5A5A5A5A5A5A5CCCCCCCCCCCCCCCCCC
+F9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3ECECECECECECECECECEDEDEDEDEDEDEDEDEDECECEC
+ECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBE9E9E9E9E9E9E9E9E9EAEAEA
+EAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E8E8E8
+E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6
+E6E6E6E6E6E6E3E3E3E3E3E3E3E3E3CBCBCBCBCBCBCBCBCB878787878787878787878787444444
+4444444444442D2D2D2D2D2D2D2D2D2929292929292929292929292929292929292929292B2B2B
+2B2B2B2B2B2B282828282828282828252525252525252525242424242424242424242424242424
+2424242424242D2D2D2D2D2D2D2D2D5656565656565656567878787878787878787E7E7E7E7E7E
+7E7E7E7C7C7C7C7C7C7C7C7C7C7C7C7575757575757575756D6D6D6D6D6D6D6D6D636363636363
+6363635B5B5B5B5B5B5B5B5B5B5B5B5E5E5E5E5E5E5E5E5E6767676767676767676F6F6F6F6F6F
+6F6F6F7777777777777777778080808080808080808080808787878787878787878D8D8D8D8D8D
+8D8D8D9191919191919191919292929292929292929696969696969696969696969C9C9C9C9C9C
+9C9C9C9C9C9C9C9C9C9C9C9C979797979797979797939393939393939393939393898989898989
+8989897B7B7B7B7B7B7B7B7B7575757575757575757777777777777777777F7F7F7F7F7F7F7F7F
+7F7F7F8E8E8E8E8E8E8E8E8EA8A8A8A8A8A8A8A8A8CBCBCBCBCBCBCBCBCBDFE0DFDFE0DFDFE0DF
+DBDBDBDBDBDBDBDBDBDBDBDBCBCBCBCBCBCBCBCBCBBFBFBFBFBFBFBFBFBFB8B8B8B8B8B8B8B8B8
+B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B5B5B5B5B5B5B5B5B5B8B8B8B8B8B8B8B8B8
+B9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B8B8B8B6B6B6B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4
+B8B8B8B8B8B8B8B8B8BBBBBBBBBBBBBBBBBBC0C0C0C0C0C0C0C0C0C0C0C0C6C6C6C6C6C6C6C6C6
+CFCFCFCFCFCFCFCFCFD6D6D5D6D6D5D6D6D5DBDBDBDBDBDBDBDBDBDBDBDBDDDDDDDDDDDDDDDDDD
+DADADADADADADADADAD6D6D5D6D6D5D6D6D5D1D1D1D1D1D1D1D1D1CBCBCBCBCBCBCBCBCBCBCBCB
+C0C0C0C0C0C0C0C0C0B3B3B3B3B3B3B3B3B3ACACACACACACACACACB0B1B0B0B1B0B0B1B0B7B7B7
+B7B7B7B7B7B7B7B7B7BEBEBEBEBEBEBEBEBEDBDBDBDBDBDBDBDBDBFAFAFAFAFAFAFAFAFAFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7B4B4B4
+B4B4B4B4B4B4ECECECECECECECECECEDEDEDEDEDEDEDEDEDECECECECECECECECECECECECEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBE9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9
+E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7
+E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E3E3E3E3E3E3
+E3E3E3CBCBCBCBCBCBCBCBCB8787878787878787878787874444444444444444442D2D2D2D2D2D
+2D2D2D2929292929292929292929292929292929292929292B2B2B2B2B2B2B2B2B282828282828
+2828282525252525252525252424242424242424242424242424242424242424242D2D2D2D2D2D
+2D2D2D5656565656565656567878787878787878787E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C
+7C7C7C7575757575757575756D6D6D6D6D6D6D6D6D6363636363636363635B5B5B5B5B5B5B5B5B
+5B5B5B5E5E5E5E5E5E5E5E5E6767676767676767676F6F6F6F6F6F6F6F6F777777777777777777
+8080808080808080808080808787878787878787878D8D8D8D8D8D8D8D8D919191919191919191
+9292929292929292929696969696969696969696969C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
+9797979797979797979393939393939393939393938989898989898989897B7B7B7B7B7B7B7B7B
+7575757575757575757777777777777777777F7F7F7F7F7F7F7F7F7F7F7F8E8E8E8E8E8E8E8E8E
+A8A8A8A8A8A8A8A8A8CBCBCBCBCBCBCBCBCBDFE0DFDFE0DFDFE0DFDBDBDBDBDBDBDBDBDBDBDBDB
+CBCBCBCBCBCBCBCBCBBFBFBFBFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4B4B4B4
+B4B4B4B4B4B4B4B4B4B5B5B5B5B5B5B5B5B5B8B8B8B8B8B8B8B8B8B9B9B9B9B9B9B9B9B9B8B8B8
+B8B8B8B8B8B8B8B8B8B6B6B6B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8BBBBBB
+BBBBBBBBBBBBC0C0C0C0C0C0C0C0C0C0C0C0C6C6C6C6C6C6C6C6C6CFCFCFCFCFCFCFCFCFD6D6D5
+D6D6D5D6D6D5DBDBDBDBDBDBDBDBDBDBDBDBDDDDDDDDDDDDDDDDDDDADADADADADADADADAD6D6D5
+D6D6D5D6D6D5D1D1D1D1D1D1D1D1D1CBCBCBCBCBCBCBCBCBCBCBCBC0C0C0C0C0C0C0C0C0B3B3B3
+B3B3B3B3B3B3ACACACACACACACACACB0B1B0B0B1B0B0B1B0B7B7B7B7B7B7B7B7B7B7B7B7BEBEBE
+BEBEBEBEBEBEDBDBDBDBDBDBDBDBDBFAFAFAFAFAFAFAFAFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7B4B4B4B4B4B4B4B4B4ECECECECECEC
+ECECECEDEDEDEDEDEDEDEDEDECECECECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBE9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9
+E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7
+E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E3E3E3E3E3E3E3E3E3CBCBCBCBCBCBCBCBCB
+8787878787878787878787874444444444444444442D2D2D2D2D2D2D2D2D292929292929292929
+2929292929292929292929292B2B2B2B2B2B2B2B2B282828282828282828252525252525252525
+2424242424242424242424242424242424242424242D2D2D2D2D2D2D2D2D565656565656565656
+7878787878787878787E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C7C7C7C757575757575757575
+6D6D6D6D6D6D6D6D6D6363636363636363635B5B5B5B5B5B5B5B5B5B5B5B5E5E5E5E5E5E5E5E5E
+6767676767676767676F6F6F6F6F6F6F6F6F777777777777777777808080808080808080808080
+8787878787878787878D8D8D8D8D8D8D8D8D919191919191919191929292929292929292969696
+9696969696969696969C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C979797979797979797939393
+9393939393939393938989898989898989897B7B7B7B7B7B7B7B7B757575757575757575777777
+7777777777777F7F7F7F7F7F7F7F7F7F7F7F8E8E8E8E8E8E8E8E8EA8A8A8A8A8A8A8A8A8CBCBCB
+CBCBCBCBCBCBDFE0DFDFE0DFDFE0DFDBDBDBDBDBDBDBDBDBDBDBDBCBCBCBCBCBCBCBCBCBBFBFBF
+BFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B5B5B5
+B5B5B5B5B5B5B8B8B8B8B8B8B8B8B8B9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B8B8B8B6B6B6
+B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8BBBBBBBBBBBBBBBBBBC0C0C0C0C0C0
+C0C0C0C0C0C0C6C6C6C6C6C6C6C6C6CFCFCFCFCFCFCFCFCFD6D6D5D6D6D5D6D6D5DBDBDBDBDBDB
+DBDBDBDBDBDBDDDDDDDDDDDDDDDDDDDADADADADADADADADAD6D6D5D6D6D5D6D6D5D1D1D1D1D1D1
+D1D1D1CBCBCBCBCBCBCBCBCBCBCBCBC0C0C0C0C0C0C0C0C0B3B3B3B3B3B3B3B3B3ACACACACACAC
+ACACACB0B1B0B0B1B0B0B1B0B7B7B7B7B7B7B7B7B7B7B7B7BEBEBEBEBEBEBEBEBEDBDBDBDBDBDB
+DBDBDBFAFAFAFAFAFAFAFAFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF7F7F7F7F7F7F7F7F7B4B4B4B4B4B4B4B4B4EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9
+E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8
+E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7
+E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4D6D6D5D6D6D5D6D6D59C9C9C9C9C9C9C9C9C9C9C9C
+4E4E4E4E4E4E4E4E4E3131313131313131312C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C
+2B2B2B2B2B2B2B2B2B282828282828282828272727272727272727272727272727272727252525
+2525252525252525253030303030303030305757575757575757577777777777777777777E7E7E
+7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7878787878787878787171717171717171716A6A6A
+6A6A6A6A6A6A6969696969696969696969697171717171717171717777777777777777777D7D7D
+7D7D7D7D7D7D8585858585858585858E8E8E8E8E8E8E8E8E8E8E8E9696969696969696969C9C9C
+9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9B9B9B9B9B9B9B9B9B979797979797979797979797949494
+949494949494929292929292929292909090909090909090909090909090909090909090868686
+8686868686867B7B7B7B7B7B7B7B7B7878787878787878787A7A7A7A7A7A7A7A7A808080808080
+8080808080808B8B8B8B8B8B8B8B8BA5A5A5A5A5A5A5A5A5C7C7C7C7C7C7C7C7C7DFE0DFDFE0DF
+DFE0DFE0E0E0E0E0E0E0E0E0E0E0E0CECECECECECECECECEC1C1C1C1C1C1C1C1C1BBBBBBBBBBBB
+BBBBBBB8B8B8B8B8B8B8B8B8B8B8B8B9B9B9B9B9B9B9B9B9BDBDBDBDBDBDBDBDBDBFBFBFBFBFBF
+BFBFBFBFBFBFBFBFBFBFBFBFC3C3C3C3C3C3C3C3C3C3C3C3C9C9C9C9C9C9C9C9C9CCCCCCCCCCCC
+CCCCCCD0D0D0D0D0D0D0D0D0D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D4D4D4D4D4D4
+D4D4D4D6D6D6D6D6D6D6D6D6D9D9D9D9D9D9D9D9D9DDDDDDDDDDDDDDDDDDDDDDDDDFDFDFDFDFDF
+DFDFDFDBDBDBDBDBDBDBDBDBD6D6D6D6D6D6D6D6D6D3D3D3D3D3D3D3D3D3CCCCCCCCCCCCCCCCCC
+CCCCCCC0C0C0C0C0C0C0C0C0B4B4B4B4B4B4B4B4B4AEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1
+B9B9B9B9B9B9B9B9B9B9B9B9C8C8C8C8C8C8C8C8C8DFE0DFDFE0DFDFE0DFF9F9F9F9F9F9F9F9F9
+FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+C1C1C1C1C1C1C1C1C1EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEA
+EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E9E9E9
+E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E4E4E4
+E4E4E4E4E4E4D6D6D5D6D6D5D6D6D59C9C9C9C9C9C9C9C9C9C9C9C4E4E4E4E4E4E4E4E4E313131
+3131313131312C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B282828
+282828282828272727272727272727272727272727272727252525252525252525252525303030
+3030303030305757575757575757577777777777777777777E7E7E7E7E7E7E7E7E7E7E7E7E7E7E
+7E7E7E7E7E7E7878787878787878787171717171717171716A6A6A6A6A6A6A6A6A696969696969
+6969696969697171717171717171717777777777777777777D7D7D7D7D7D7D7D7D858585858585
+8585858E8E8E8E8E8E8E8E8E8E8E8E9696969696969696969C9C9C9C9C9C9C9C9C9E9E9E9E9E9E
+9E9E9E9B9B9B9B9B9B9B9B9B979797979797979797979797949494949494949494929292929292
+9292929090909090909090909090909090909090909090908686868686868686867B7B7B7B7B7B
+7B7B7B7878787878787878787A7A7A7A7A7A7A7A7A8080808080808080808080808B8B8B8B8B8B
+8B8B8BA5A5A5A5A5A5A5A5A5C7C7C7C7C7C7C7C7C7DFE0DFDFE0DFDFE0DFE0E0E0E0E0E0E0E0E0
+E0E0E0CECECECECECECECECEC1C1C1C1C1C1C1C1C1BBBBBBBBBBBBBBBBBBB8B8B8B8B8B8B8B8B8
+B8B8B8B9B9B9B9B9B9B9B9B9BDBDBDBDBDBDBDBDBDBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
+C3C3C3C3C3C3C3C3C3C3C3C3C9C9C9C9C9C9C9C9C9CCCCCCCCCCCCCCCCCCD0D0D0D0D0D0D0D0D0
+D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D4D4D4D4D4D4D4D4D4D6D6D6D6D6D6D6D6D6
+D9D9D9D9D9D9D9D9D9DDDDDDDDDDDDDDDDDDDDDDDDDFDFDFDFDFDFDFDFDFDBDBDBDBDBDBDBDBDB
+D6D6D6D6D6D6D6D6D6D3D3D3D3D3D3D3D3D3CCCCCCCCCCCCCCCCCCCCCCCCC0C0C0C0C0C0C0C0C0
+B4B4B4B4B4B4B4B4B4AEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B9B9B9B9B9B9B9B9B9B9B9B9
+C8C8C8C8C8C8C8C8C8DFE0DFDFE0DFDFE0DFF9F9F9F9F9F9F9F9F9FEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1EDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDECECEC
+ECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4D9D9D9D9D9D9
+D9D9D9A6A6A6A6A6A6A6A6A6A6A6A65858585858585858583535353535353535352F2F2F2F2F2F
+2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D292929292929292929282828282828282828292929292929
+292929282828282828282828282828282828282828282828303030303030303030545454545454
+5454547575757575757575757F7F7F7F7F7F7F7F7F8181818181818181818181817F7F7F7F7F7F
+7F7F7F7B7B7B7B7B7B7B7B7B7979797979797979797C7C7C7C7C7C7C7C7C7C7C7C808080808080
+8080807E7E7E7E7E7E7E7E7E7D7D7D7D7D7D7D7D7D8282828282828282828A8A8A8A8A8A8A8A8A
+8A8A8A9191919191919191919595959595959595959494949494949494948F8F8F8F8F8F8F8F8F
+8C8C8C8C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D909090909090909090959595959595959595
+9696969696969696969696968989898989898989898080808080808080807E7E7E7E7E7E7E7E7E
+7E7E7E7E7E7E7E7E7E8383838383838383838383838D8D8D8D8D8D8D8D8DA4A4A4A4A4A4A4A4A4
+C0C0C0C0C0C0C0C0C0DADADADADADADADADAE4E4E4E4E4E4E4E4E4E4E4E4D6D6D6D6D6D6D6D6D6
+C7C7C7C7C7C7C7C7C7BFBFBFBFBFBFBFBFBFBABABABABABABABABABABABABBBBBBBBBBBBBBBBBB
+C0C0C0C0C0C0C0C0C0C5C5C5C5C5C5C5C5C5C9C9C9C9C9C9C9C9C9CACACACACACACACACACACACA
+CDCDCDCDCDCDCDCDCDD3D3D3D3D3D3D3D3D3D7D7D7D7D7D7D7D7D7D6D6D5D6D6D5D6D6D5D5D5D5
+D5D5D5D5D5D5D5D5D5D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7DCDCDC
+DCDCDCDCDCDCDCDCDCDFDFDFDFDFDFDFDFDFDCDCDCDCDCDCDCDCDCD7D7D7D7D7D7D7D7D7D4D4D4
+D4D4D4D4D4D4CCCCCCCCCCCCCCCCCCCCCCCCC0C0C0C0C0C0C0C0C0B6B6B6B6B6B6B6B6B6B5B5B5
+B5B5B5B5B5B5B8B8B8B8B8B8B8B8B8B6B6B6B6B6B6B6B6B6B6B6B6C5C5C5C5C5C5C5C5C5DBDBDB
+DBDBDBDBDBDBF2F2F2F2F2F2F2F2F2FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD0D0D0D0D0D0D0D0D0EDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDECECECECECECECECECEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+EAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7
+E7E7E7E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4D9D9D9D9D9D9D9D9D9A6A6A6A6A6A6A6A6A6
+A6A6A65858585858585858583535353535353535352F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D
+2D2D2D292929292929292929282828282828282828292929292929292929282828282828282828
+282828282828282828282828303030303030303030545454545454545454757575757575757575
+7F7F7F7F7F7F7F7F7F8181818181818181818181817F7F7F7F7F7F7F7F7F7B7B7B7B7B7B7B7B7B
+7979797979797979797C7C7C7C7C7C7C7C7C7C7C7C8080808080808080807E7E7E7E7E7E7E7E7E
+7D7D7D7D7D7D7D7D7D8282828282828282828A8A8A8A8A8A8A8A8A8A8A8A919191919191919191
+9595959595959595959494949494949494948F8F8F8F8F8F8F8F8F8C8C8C8C8C8C8C8C8C8C8C8C
+8D8D8D8D8D8D8D8D8D909090909090909090959595959595959595969696969696969696969696
+8989898989898989898080808080808080807E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E838383
+8383838383838383838D8D8D8D8D8D8D8D8DA4A4A4A4A4A4A4A4A4C0C0C0C0C0C0C0C0C0DADADA
+DADADADADADAE4E4E4E4E4E4E4E4E4E4E4E4D6D6D6D6D6D6D6D6D6C7C7C7C7C7C7C7C7C7BFBFBF
+BFBFBFBFBFBFBABABABABABABABABABABABABBBBBBBBBBBBBBBBBBC0C0C0C0C0C0C0C0C0C5C5C5
+C5C5C5C5C5C5C9C9C9C9C9C9C9C9C9CACACACACACACACACACACACACDCDCDCDCDCDCDCDCDD3D3D3
+D3D3D3D3D3D3D7D7D7D7D7D7D7D7D7D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D6D6D5
+D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7DCDCDCDCDCDCDCDCDCDCDCDCDFDFDF
+DFDFDFDFDFDFDCDCDCDCDCDCDCDCDCD7D7D7D7D7D7D7D7D7D4D4D4D4D4D4D4D4D4CCCCCCCCCCCC
+CCCCCCCCCCCCC0C0C0C0C0C0C0C0C0B6B6B6B6B6B6B6B6B6B5B5B5B5B5B5B5B5B5B8B8B8B8B8B8
+B8B8B8B6B6B6B6B6B6B6B6B6B6B6B6C5C5C5C5C5C5C5C5C5DBDBDBDBDBDBDBDBDBF2F2F2F2F2F2
+F2F2F2FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFA
+FAFAFAD0D0D0D0D0D0D0D0D0EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6
+E4E4E4E4E4E4E4E4E4D9D9D9D9D9D9D9D9D9A6A6A6A6A6A6A6A6A6A6A6A6585858585858585858
+3535353535353535352F2F2F2F2F2F2F2F2F2D2D2D2D2D2D2D2D2D2D2D2D292929292929292929
+282828282828282828292929292929292929282828282828282828282828282828282828282828
+3030303030303030305454545454545454547575757575757575757F7F7F7F7F7F7F7F7F818181
+8181818181818181817F7F7F7F7F7F7F7F7F7B7B7B7B7B7B7B7B7B7979797979797979797C7C7C
+7C7C7C7C7C7C7C7C7C8080808080808080807E7E7E7E7E7E7E7E7E7D7D7D7D7D7D7D7D7D828282
+8282828282828A8A8A8A8A8A8A8A8A8A8A8A919191919191919191959595959595959595949494
+9494949494948F8F8F8F8F8F8F8F8F8C8C8C8C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D909090
+909090909090959595959595959595969696969696969696969696898989898989898989808080
+8080808080807E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E8383838383838383838383838D8D8D
+8D8D8D8D8D8DA4A4A4A4A4A4A4A4A4C0C0C0C0C0C0C0C0C0DADADADADADADADADAE4E4E4E4E4E4
+E4E4E4E4E4E4D6D6D6D6D6D6D6D6D6C7C7C7C7C7C7C7C7C7BFBFBFBFBFBFBFBFBFBABABABABABA
+BABABABABABABBBBBBBBBBBBBBBBBBC0C0C0C0C0C0C0C0C0C5C5C5C5C5C5C5C5C5C9C9C9C9C9C9
+C9C9C9CACACACACACACACACACACACACDCDCDCDCDCDCDCDCDD3D3D3D3D3D3D3D3D3D7D7D7D7D7D7
+D7D7D7D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6
+D6D6D6D7D7D7D7D7D7D7D7D7DCDCDCDCDCDCDCDCDCDCDCDCDFDFDFDFDFDFDFDFDFDCDCDCDCDCDC
+DCDCDCD7D7D7D7D7D7D7D7D7D4D4D4D4D4D4D4D4D4CCCCCCCCCCCCCCCCCCCCCCCCC0C0C0C0C0C0
+C0C0C0B6B6B6B6B6B6B6B6B6B5B5B5B5B5B5B5B5B5B8B8B8B8B8B8B8B8B8B6B6B6B6B6B6B6B6B6
+B6B6B6C5C5C5C5C5C5C5C5C5DBDBDBDBDBDBDBDBDBF2F2F2F2F2F2F2F2F2FEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD0D0D0D0D0D0D0D0D0
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E7E7E7
+E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4D8D8D8
+D8D8D8D8D8D8ACACACACACACACACACACACAC6565656565656565653A3A3A3A3A3A3A3A3A2F2F2F
+2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B282828282828282828282828
+282828282828292929292929292929282828282828282828282828303030303030303030545454
+545454545454767676767676767676808080808080808080828282828282828282828282848484
+8484848484848686868686868686868A8A8A8A8A8A8A8A8A8B8B8B8B8B8B8B8B8B8B8B8B8A8A8A
+8A8A8A8A8A8A8686868686868686868080808080808080807E7E7E7E7E7E7E7E7E808080808080
+808080808080848484848484848484878787878787878787888888888888888888888888888888
+8888888C8C8C8C8C8C8C8C8C8C8C8C9393939393939393939B9B9B9B9B9B9B9B9B9E9E9E9E9E9E
+9E9E9E9999999999999999999999998D8D8D8D8D8D8D8D8D858585858585858585838383838383
+8383838181818181818181818585858585858585858585858F8F8F8F8F8F8F8F8FA3A3A3A3A3A3
+A3A3A3C3C3C3C3C3C3C3C3C3E0E0E0E0E0E0E0E0E0E9E9E9E9E9E9E9E9E9E9E9E9DCDCDCDCDCDC
+DCDCDCCBCBCBCBCBCBCBCBCBC3C3C3C3C3C3C3C3C3BEBEBEBEBEBEBEBEBEBEBEBEBBBBBBBBBBBB
+BBBBBBBCBCBCBCBCBCBCBCBCC3C3C3C3C3C3C3C3C3CECECECECECECECECED3D3D3D3D3D3D3D3D3
+D3D3D3D4D4D4D4D4D4D4D4D4D6D6D6D6D6D6D6D6D6D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8
+D9D9D9D9D9D9D9D9D9D9D9D9DADADADADADADADADADCDCDCDCDCDCDCDCDCDDDDDDDDDDDDDDDDDD
+E0E0E0E0E0E0E0E0E0E0E0E0E1E1E1E1E1E1E1E1E1DEDEDEDEDEDEDEDEDED9D9D9D9D9D9D9D9D9
+D6D6D5D6D6D5D6D6D5CDCDCDCDCDCDCDCDCDCDCDCDC1C1C1C1C1C1C1C1C1B6B6B6B6B6B6B6B6B6
+B9B9B9B9B9B9B9B9B9C1C1C1C1C1C1C1C1C1B3B3B3B3B3B3B3B3B3B3B3B3BEBEBEBEBEBEBEBEBE
+D4D4D4D4D4D4D4D4D4EEEEEEEEEEEEEEEEEEFDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACACACACAEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9
+E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6
+E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4D8D8D8D8D8D8D8D8D8ACACACACACAC
+ACACACACACAC6565656565656565653A3A3A3A3A3A3A3A3A2F2F2F2F2F2F2F2F2F2C2C2C2C2C2C
+2C2C2C2C2C2C2B2B2B2B2B2B2B2B2B282828282828282828282828282828282828292929292929
+292929282828282828282828282828303030303030303030545454545454545454767676767676
+767676808080808080808080828282828282828282828282848484848484848484868686868686
+8686868A8A8A8A8A8A8A8A8A8B8B8B8B8B8B8B8B8B8B8B8B8A8A8A8A8A8A8A8A8A868686868686
+8686868080808080808080807E7E7E7E7E7E7E7E7E808080808080808080808080848484848484
+8484848787878787878787878888888888888888888888888888888888888C8C8C8C8C8C8C8C8C
+8C8C8C9393939393939393939B9B9B9B9B9B9B9B9B9E9E9E9E9E9E9E9E9E999999999999999999
+9999998D8D8D8D8D8D8D8D8D858585858585858585838383838383838383818181818181818181
+8585858585858585858585858F8F8F8F8F8F8F8F8FA3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3
+E0E0E0E0E0E0E0E0E0E9E9E9E9E9E9E9E9E9E9E9E9DCDCDCDCDCDCDCDCDCCBCBCBCBCBCBCBCBCB
+C3C3C3C3C3C3C3C3C3BEBEBEBEBEBEBEBEBEBEBEBEBBBBBBBBBBBBBBBBBBBCBCBCBCBCBCBCBCBC
+C3C3C3C3C3C3C3C3C3CECECECECECECECECED3D3D3D3D3D3D3D3D3D3D3D3D4D4D4D4D4D4D4D4D4
+D6D6D6D6D6D6D6D6D6D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9D9D9D9
+DADADADADADADADADADCDCDCDCDCDCDCDCDCDDDDDDDDDDDDDDDDDDE0E0E0E0E0E0E0E0E0E0E0E0
+E1E1E1E1E1E1E1E1E1DEDEDEDEDEDEDEDEDED9D9D9D9D9D9D9D9D9D6D6D5D6D6D5D6D6D5CDCDCD
+CDCDCDCDCDCDCDCDCDC1C1C1C1C1C1C1C1C1B6B6B6B6B6B6B6B6B6B9B9B9B9B9B9B9B9B9C1C1C1
+C1C1C1C1C1C1B3B3B3B3B3B3B3B3B3B3B3B3BEBEBEBEBEBEBEBEBED4D4D4D4D4D4D4D4D4EEEEEE
+EEEEEEEEEEEEFDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9CACACACACACACACACAEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9
+E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5
+E5E5E5E4E4E4E4E4E4E4E4E4D8D8D8D8D8D8D8D8D8ACACACACACACACACACACACAC656565656565
+6565653A3A3A3A3A3A3A3A3A2F2F2F2F2F2F2F2F2F2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B2B2B2B
+2B2B2B282828282828282828282828282828282828292929292929292929282828282828282828
+282828303030303030303030545454545454545454767676767676767676808080808080808080
+8282828282828282828282828484848484848484848686868686868686868A8A8A8A8A8A8A8A8A
+8B8B8B8B8B8B8B8B8B8B8B8B8A8A8A8A8A8A8A8A8A868686868686868686808080808080808080
+7E7E7E7E7E7E7E7E7E808080808080808080808080848484848484848484878787878787878787
+8888888888888888888888888888888888888C8C8C8C8C8C8C8C8C8C8C8C939393939393939393
+9B9B9B9B9B9B9B9B9B9E9E9E9E9E9E9E9E9E9999999999999999999999998D8D8D8D8D8D8D8D8D
+858585858585858585838383838383838383818181818181818181858585858585858585858585
+8F8F8F8F8F8F8F8F8FA3A3A3A3A3A3A3A3A3C3C3C3C3C3C3C3C3C3E0E0E0E0E0E0E0E0E0E9E9E9
+E9E9E9E9E9E9E9E9E9DCDCDCDCDCDCDCDCDCCBCBCBCBCBCBCBCBCBC3C3C3C3C3C3C3C3C3BEBEBE
+BEBEBEBEBEBEBEBEBEBBBBBBBBBBBBBBBBBBBCBCBCBCBCBCBCBCBCC3C3C3C3C3C3C3C3C3CECECE
+CECECECECECED3D3D3D3D3D3D3D3D3D3D3D3D4D4D4D4D4D4D4D4D4D6D6D6D6D6D6D6D6D6D9D9D9
+D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9D9D9D9DADADADADADADADADADCDCDC
+DCDCDCDCDCDCDDDDDDDDDDDDDDDDDDE0E0E0E0E0E0E0E0E0E0E0E0E1E1E1E1E1E1E1E1E1DEDEDE
+DEDEDEDEDEDED9D9D9D9D9D9D9D9D9D6D6D5D6D6D5D6D6D5CDCDCDCDCDCDCDCDCDCDCDCDC1C1C1
+C1C1C1C1C1C1B6B6B6B6B6B6B6B6B6B9B9B9B9B9B9B9B9B9C1C1C1C1C1C1C1C1C1B3B3B3B3B3B3
+B3B3B3B3B3B3BEBEBEBEBEBEBEBEBED4D4D4D4D4D4D4D4D4EEEEEEEEEEEEEEEEEEFDFDFDFDFDFD
+FDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACA
+CACACAEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE8E9E8E8E9E8E8E9E8
+E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E2E2E2E2E2E2E2E2E2
+DBDBDBDBDBDBDBDBDBC1C1C1C1C1C1C1C1C1C1C1C1828282828282828282494949494949494949
+3030303030303030302B2B2B2B2B2B2B2B2B2B2B2B282828282828282828282828282828282828
+2828282828282828282929292929292929292929292929292929292929292F2F2F2F2F2F2F2F2F
+525252525252525252767676767676767676818181818181818181848484848484848484848484
+8989898989898989898E8E8E8E8E8E8E8E8E939393939393939393959595959595959595959595
+9393939393939393939191919191919191918F8F8F8F8F8F8F8F8F8A8A8A8A8A8A8A8A8A8B8B8B
+8B8B8B8B8B8B8B8B8B8F8F8F8F8F8F8F8F8F929292929292929292959595959595959595989898
+9898989898989D9D9D9D9D9D9D9D9D9D9D9DA2A2A2A2A2A2A2A2A2A4A4A4A4A4A4A4A4A4A2A2A2
+A2A2A2A2A2A29C9C9C9C9C9C9C9C9C9C9C9C9090909090909090908A8A8A8A8A8A8A8A8A858585
+8585858585858282828282828282828686868686868686868686868F8F8F8F8F8F8F8F8FA1A1A1
+A1A1A1A1A1A1C2C2C2C2C2C2C2C2C2E3E3E3E3E3E3E3E3E3EDEDEDEDEDEDEDEDEDEDEDEDDFDFDF
+DFDFDFDFDFDFCACACACACACACACACAC3C3C3C3C3C3C3C3C3BFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
+BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFC2C2C2C2C2C2C2C2C2CCCCCCCCCCCCCCCCCCD7D7D7D7D7D7
+D7D7D7D7D7D7DDDDDDDDDDDDDDDDDDDEDEDEDEDEDEDEDEDEDFE0DFDFE0DFDFE0DFE0E0E0E0E0E0
+E0E0E0E1E1E1E1E1E1E1E1E1E1E1E1E4E4E4E4E4E4E4E4E4E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E6E6E6E6E6E6E6E6E6E6E6E6E3E3E3E3E3E3E3E3E3DDDDDDDDDDDDDDDDDDD9D9D9D9D9D9
+D9D9D9D5D5D5D5D5D5D5D5D5CCCCCCCCCCCCCCCCCCCCCCCCC0C0C0C0C0C0C0C0C0B5B5B5B5B5B5
+B5B5B5BBBBBBBBBBBBBBBBBBCBCBCBCBCBCBCBCBCBB7B7B7B7B7B7B7B7B7B7B7B7B2B2B2B2B2B2
+B2B2B2CACACACACACACACACAECECECECECECECECECFDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BDBDBDBDBDBDBDBDBDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEB
+EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8
+E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E2E2E2E2E2E2E2E2E2DBDBDBDBDBDBDBDBDBC1C1C1
+C1C1C1C1C1C1C1C1C18282828282828282824949494949494949493030303030303030302B2B2B
+2B2B2B2B2B2B2B2B2B282828282828282828282828282828282828282828282828282828292929
+2929292929292929292929292929292929292F2F2F2F2F2F2F2F2F525252525252525252767676
+7676767676768181818181818181818484848484848484848484848989898989898989898E8E8E
+8E8E8E8E8E8E939393939393939393959595959595959595959595939393939393939393919191
+9191919191918F8F8F8F8F8F8F8F8F8A8A8A8A8A8A8A8A8A8B8B8B8B8B8B8B8B8B8B8B8B8F8F8F
+8F8F8F8F8F8F9292929292929292929595959595959595959898989898989898989D9D9D9D9D9D
+9D9D9D9D9D9DA2A2A2A2A2A2A2A2A2A4A4A4A4A4A4A4A4A4A2A2A2A2A2A2A2A2A29C9C9C9C9C9C
+9C9C9C9C9C9C9090909090909090908A8A8A8A8A8A8A8A8A858585858585858585828282828282
+8282828686868686868686868686868F8F8F8F8F8F8F8F8FA1A1A1A1A1A1A1A1A1C2C2C2C2C2C2
+C2C2C2E3E3E3E3E3E3E3E3E3EDEDEDEDEDEDEDEDEDEDEDEDDFDFDFDFDFDFDFDFDFCACACACACACA
+CACACAC3C3C3C3C3C3C3C3C3BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
+BFBFBFC2C2C2C2C2C2C2C2C2CCCCCCCCCCCCCCCCCCD7D7D7D7D7D7D7D7D7D7D7D7DDDDDDDDDDDD
+DDDDDDDEDEDEDEDEDEDEDEDEDFE0DFDFE0DFDFE0DFE0E0E0E0E0E0E0E0E0E1E1E1E1E1E1E1E1E1
+E1E1E1E4E4E4E4E4E4E4E4E4E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6
+E6E6E6E3E3E3E3E3E3E3E3E3DDDDDDDDDDDDDDDDDDD9D9D9D9D9D9D9D9D9D5D5D5D5D5D5D5D5D5
+CCCCCCCCCCCCCCCCCCCCCCCCC0C0C0C0C0C0C0C0C0B5B5B5B5B5B5B5B5B5BBBBBBBBBBBBBBBBBB
+CBCBCBCBCBCBCBCBCBB7B7B7B7B7B7B7B7B7B7B7B7B2B2B2B2B2B2B2B2B2CACACACACACACACACA
+ECECECECECECECECECFDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9BDBDBDBDBDBDBDBDBDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEEEEEE
+EEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBE9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7
+E7E7E7E7E7E7E4E4E4E4E4E4E4E4E4DFE0DFDFE0DFDFE0DFD6D6D5D6D6D5D6D6D5D6D6D5A6A6A6
+A6A6A6A6A6A66363636363636363633939393939393939392B2B2B2B2B2B2B2B2B2B2B2B272727
+2727272727272828282828282828282929292929292929292C2C2C2C2C2C2C2C2C2D2D2D2D2D2D
+2D2D2D2D2D2D313131313131313131525252525252525252777777777777777777808080808080
+8080808484848484848484848484848A8A8A8A8A8A8A8A8A919191919191919191989898989898
+9898989B9B9B9B9B9B9B9B9B9B9B9B9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
+9E9E9E9E9E9E9E9E9E9E9E9E9F9F9F9F9F9F9F9F9F9F9F9FA3A3A3A3A3A3A3A3A3A7A7A7A7A7A7
+A7A7A7A7A7A7A7A7A7A7A7A7A8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAAAAAAAABABABABABAB
+ABABABA9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A2A2A2A2A2A2A2A2A2A2A2A2999999999999
+9999998E8E8E8E8E8E8E8E8E868686868686868686848484848484848484878787878787878787
+8787878D8D8D8D8D8D8D8D8D9E9E9E9E9E9E9E9E9EBFBFBFBFBFBFBFBFBFE3E3E3E3E3E3E3E3E3
+EFEFEFEFEFEFEFEFEFEFEFEFE3E3E3E3E3E3E3E3E3CFCFCFCFCFCFCFCFCFC3C3C3C3C3C3C3C3C3
+C0C0C0C0C0C0C0C0C0C0C0C0C4C4C4C4C4C4C4C4C4C7C7C7C7C7C7C7C7C7C9C9C9C9C9C9C9C9C9
+D0D0D0D0D0D0D0D0D0DADADADADADADADADADADADAE2E2E2E2E2E2E2E2E2E4E4E4E4E4E4E4E4E4
+E7E7E7E7E7E7E7E7E7E8E9E8E8E9E8E8E9E8EAEAEAEAEAEAEAEAEAEAEAEAF0F0F0F0F0F0F0F0F0
+F2F2F2F2F2F2F2F2F2F0F0F0F0F0F0F0F0F0EDEDEDEDEDEDEDEDEDEDEDEDE8E9E8E8E9E8E8E9E8
+E0E0E0E0E0E0E0E0E0D9D9D9D9D9D9D9D9D9D0D0D0D0D0D0D0D0D0CACACACACACACACACACACACA
+BFBFBFBFBFBFBFBFBFB5B5B5B5B5B5B5B5B5BDBDBDBDBDBDBDBDBDD2D2D2D2D2D2D2D2D2B9B9B9
+B9B9B9B9B9B9B9B9B9AEAEAEAEAEAEAEAEAEC6C6C6C6C6C6C6C6C6E8E8E8E8E8E8E8E8E8FDFDFD
+FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7
+C7C7C7C7C7C7EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEEEEEEEDEDED
+EDEDEDEDEDEDECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBE9E9E9E9E9E9
+E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E4E4E4E4E4E4
+E4E4E4DFE0DFDFE0DFDFE0DFD6D6D5D6D6D5D6D6D5D6D6D5A6A6A6A6A6A6A6A6A6636363636363
+6363633939393939393939392B2B2B2B2B2B2B2B2B2B2B2B272727272727272727282828282828
+2828282929292929292929292C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D313131313131
+313131525252525252525252777777777777777777808080808080808080848484848484848484
+8484848A8A8A8A8A8A8A8A8A9191919191919191919898989898989898989B9B9B9B9B9B9B9B9B
+9B9B9B9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
+9F9F9F9F9F9F9F9F9F9F9F9FA3A3A3A3A3A3A3A3A3A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7
+A8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAAAAAAAABABABABABABABABABA9A9A9A9A9A9A9A9A9
+A6A6A6A6A6A6A6A6A6A2A2A2A2A2A2A2A2A2A2A2A29999999999999999998E8E8E8E8E8E8E8E8E
+8686868686868686868484848484848484848787878787878787878787878D8D8D8D8D8D8D8D8D
+9E9E9E9E9E9E9E9E9EBFBFBFBFBFBFBFBFBFE3E3E3E3E3E3E3E3E3EFEFEFEFEFEFEFEFEFEFEFEF
+E3E3E3E3E3E3E3E3E3CFCFCFCFCFCFCFCFCFC3C3C3C3C3C3C3C3C3C0C0C0C0C0C0C0C0C0C0C0C0
+C4C4C4C4C4C4C4C4C4C7C7C7C7C7C7C7C7C7C9C9C9C9C9C9C9C9C9D0D0D0D0D0D0D0D0D0DADADA
+DADADADADADADADADAE2E2E2E2E2E2E2E2E2E4E4E4E4E4E4E4E4E4E7E7E7E7E7E7E7E7E7E8E9E8
+E8E9E8E8E9E8EAEAEAEAEAEAEAEAEAEAEAEAF0F0F0F0F0F0F0F0F0F2F2F2F2F2F2F2F2F2F0F0F0
+F0F0F0F0F0F0EDEDEDEDEDEDEDEDEDEDEDEDE8E9E8E8E9E8E8E9E8E0E0E0E0E0E0E0E0E0D9D9D9
+D9D9D9D9D9D9D0D0D0D0D0D0D0D0D0CACACACACACACACACACACACABFBFBFBFBFBFBFBFBFB5B5B5
+B5B5B5B5B5B5BDBDBDBDBDBDBDBDBDD2D2D2D2D2D2D2D2D2B9B9B9B9B9B9B9B9B9B9B9B9AEAEAE
+AEAEAEAEAEAEC6C6C6C6C6C6C6C6C6E8E8E8E8E8E8E8E8E8FDFDFDFDFDFDFDFDFDFDFDFDFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7EDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDECECECECECEC
+ECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBECECECECECEC
+ECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBE9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E4E4E4E4E4E4E4E4E4DFE0DFDFE0DFDFE0DF
+D6D6D5D6D6D5D6D6D5D6D6D5A6A6A6A6A6A6A6A6A6636363636363636363393939393939393939
+2B2B2B2B2B2B2B2B2B2B2B2B272727272727272727282828282828282828292929292929292929
+2C2C2C2C2C2C2C2C2C2D2D2D2D2D2D2D2D2D2D2D2D313131313131313131525252525252525252
+7777777777777777778080808080808080808484848484848484848484848A8A8A8A8A8A8A8A8A
+9191919191919191919898989898989898989B9B9B9B9B9B9B9B9B9B9B9B9C9C9C9C9C9C9C9C9C
+9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9F9F9F9F9F9F9F9F9F9F9F9F
+A3A3A3A3A3A3A3A3A3A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A8A8A8A8A8A8A8A8A8AAAAAA
+AAAAAAAAAAAAAAAAAAABABABABABABABABABA9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A2A2A2
+A2A2A2A2A2A2A2A2A29999999999999999998E8E8E8E8E8E8E8E8E868686868686868686848484
+8484848484848787878787878787878787878D8D8D8D8D8D8D8D8D9E9E9E9E9E9E9E9E9EBFBFBF
+BFBFBFBFBFBFE3E3E3E3E3E3E3E3E3EFEFEFEFEFEFEFEFEFEFEFEFE3E3E3E3E3E3E3E3E3CFCFCF
+CFCFCFCFCFCFC3C3C3C3C3C3C3C3C3C0C0C0C0C0C0C0C0C0C0C0C0C4C4C4C4C4C4C4C4C4C7C7C7
+C7C7C7C7C7C7C9C9C9C9C9C9C9C9C9D0D0D0D0D0D0D0D0D0DADADADADADADADADADADADAE2E2E2
+E2E2E2E2E2E2E4E4E4E4E4E4E4E4E4E7E7E7E7E7E7E7E7E7E8E9E8E8E9E8E8E9E8EAEAEAEAEAEA
+EAEAEAEAEAEAF0F0F0F0F0F0F0F0F0F2F2F2F2F2F2F2F2F2F0F0F0F0F0F0F0F0F0EDEDEDEDEDED
+EDEDEDEDEDEDE8E9E8E8E9E8E8E9E8E0E0E0E0E0E0E0E0E0D9D9D9D9D9D9D9D9D9D0D0D0D0D0D0
+D0D0D0CACACACACACACACACACACACABFBFBFBFBFBFBFBFBFB5B5B5B5B5B5B5B5B5BDBDBDBDBDBD
+BDBDBDD2D2D2D2D2D2D2D2D2B9B9B9B9B9B9B9B9B9B9B9B9AEAEAEAEAEAEAEAEAEC6C6C6C6C6C6
+C6C6C6E8E8E8E8E8E8E8E8E8FDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7EDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEE
+EFEFEFEFEFEFEFEFEFEFEFEFEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDED
+ECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECEC
+ECECECECECECECECECEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8
+E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4DFDFDFDFDFDFDFDFDFDFDFDF
+C2C2C2C2C2C2C2C2C28383838383838383834646464646464646462D2D2D2D2D2D2D2D2D2D2D2D
+2727272727272727272828282828282828282B2B2B2B2B2B2B2B2B303030303030303030343434
+3434343434343434343B3B3B3B3B3B3B3B3B5A5A5A5A5A5A5A5A5A797979797979797979818181
+8181818181818484848484848484848484848B8B8B8B8B8B8B8B8B9393939393939393939A9A9A
+9A9A9A9A9A9A9D9D9D9D9D9D9D9D9D9D9D9D9E9E9E9E9E9E9E9E9EA1A1A1A1A1A1A1A1A1A5A5A5
+A5A5A5A5A5A5A7A7A7A7A7A7A7A7A7A9A9A9A9A9A9A9A9A9A9A9A9AEAEAEAEAEAEAEAEAEB0B1B0
+B0B1B0B0B1B0AFAFAFAFAFAFAFAFAFB0B0B0B0B0B0B0B0B0B1B1B1B1B1B1B1B1B1B1B1B1B0B1B0
+B0B1B0B0B1B0ADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADA0A0A0
+A0A0A0A0A0A08F8F8F8F8F8F8F8F8F868686868686868686868686868686868686878787878787
+8787878787878B8B8B8B8B8B8B8B8B9E9E9E9E9E9E9E9E9EC2C2C2C2C2C2C2C2C2E3E3E3E3E3E3
+E3E3E3EDEDEDEDEDEDEDEDEDEDEDEDE4E4E4E4E4E4E4E4E4D4D4D4D4D4D4D4D4D4C5C5C5C5C5C5
+C5C5C5BFBFBFBFBFBFBFBFBFBFBFBFC5C5C5C5C5C5C5C5C5CACACACACACACACACACDCDCDCDCDCD
+CDCDCDD4D4D4D4D4D4D4D4D4DDDDDDDDDDDDDDDDDDDDDDDDE6E6E6E6E6E6E6E6E6EAEAEAEAEAEA
+EAEAEAEDEDEDEDEDEDEDEDEDF1F1F1F1F1F1F1F1F1F2F2F2F2F2F2F2F2F2F2F2F2F6F6F6F6F6F6
+F6F6F6F9F9F9F9F9F9F9F9F9F7F7F7F7F7F7F7F7F7F4F4F4F4F4F4F4F4F4F4F4F4EDEDEDEDEDED
+EDEDEDE5E5E5E5E5E5E5E5E5DBDBDBDBDBDBDBDBDBD0D0D0D0D0D0D0D0D0C7C7C7C7C7C7C7C7C7
+C7C7C7BEBEBEBEBEBEBEBEBEB5B5B5B5B5B5B5B5B5BDBDBDBDBDBDBDBDBDCECECECECECECECECE
+B3B3B3B3B3B3B3B3B3B3B3B3B0B1B0B0B1B0B0B1B0C6C6C6C6C6C6C6C6C6E4E4E4E4E4E4E4E4E4
+FDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFB
+D7D7D7D7D7D7D7D7D7EDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEFEFEFEFEFEFEFEFEFEFEFEF
+EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDECECECECECECECECECECECEC
+ECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECEAEAEA
+EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E5E5E5
+E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4DFDFDFDFDFDFDFDFDFDFDFDFC2C2C2C2C2C2C2C2C2838383
+8383838383834646464646464646462D2D2D2D2D2D2D2D2D2D2D2D272727272727272727282828
+2828282828282B2B2B2B2B2B2B2B2B3030303030303030303434343434343434343434343B3B3B
+3B3B3B3B3B3B5A5A5A5A5A5A5A5A5A797979797979797979818181818181818181848484848484
+8484848484848B8B8B8B8B8B8B8B8B9393939393939393939A9A9A9A9A9A9A9A9A9D9D9D9D9D9D
+9D9D9D9D9D9D9E9E9E9E9E9E9E9E9EA1A1A1A1A1A1A1A1A1A5A5A5A5A5A5A5A5A5A7A7A7A7A7A7
+A7A7A7A9A9A9A9A9A9A9A9A9A9A9A9AEAEAEAEAEAEAEAEAEB0B1B0B0B1B0B0B1B0AFAFAFAFAFAF
+AFAFAFB0B0B0B0B0B0B0B0B0B1B1B1B1B1B1B1B1B1B1B1B1B0B1B0B0B1B0B0B1B0ADADADADADAD
+ADADADADADADADADADADADADADADADADADADADADADADADADA0A0A0A0A0A0A0A0A08F8F8F8F8F8F
+8F8F8F8686868686868686868686868686868686868787878787878787878787878B8B8B8B8B8B
+8B8B8B9E9E9E9E9E9E9E9E9EC2C2C2C2C2C2C2C2C2E3E3E3E3E3E3E3E3E3EDEDEDEDEDEDEDEDED
+EDEDEDE4E4E4E4E4E4E4E4E4D4D4D4D4D4D4D4D4D4C5C5C5C5C5C5C5C5C5BFBFBFBFBFBFBFBFBF
+BFBFBFC5C5C5C5C5C5C5C5C5CACACACACACACACACACDCDCDCDCDCDCDCDCDD4D4D4D4D4D4D4D4D4
+DDDDDDDDDDDDDDDDDDDDDDDDE6E6E6E6E6E6E6E6E6EAEAEAEAEAEAEAEAEAEDEDEDEDEDEDEDEDED
+F1F1F1F1F1F1F1F1F1F2F2F2F2F2F2F2F2F2F2F2F2F6F6F6F6F6F6F6F6F6F9F9F9F9F9F9F9F9F9
+F7F7F7F7F7F7F7F7F7F4F4F4F4F4F4F4F4F4F4F4F4EDEDEDEDEDEDEDEDEDE5E5E5E5E5E5E5E5E5
+DBDBDBDBDBDBDBDBDBD0D0D0D0D0D0D0D0D0C7C7C7C7C7C7C7C7C7C7C7C7BEBEBEBEBEBEBEBEBE
+B5B5B5B5B5B5B5B5B5BDBDBDBDBDBDBDBDBDCECECECECECECECECEB3B3B3B3B3B3B3B3B3B3B3B3
+B0B1B0B0B1B0B0B1B0C6C6C6C6C6C6C6C6C6E4E4E4E4E4E4E4E4E4FDFDFDFDFDFDFDFDFDFDFDFD
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD7D7D7D7D7D7D7D7D7EFEFEF
+EFEFEFEFEFEFEFEFEFEFEFEFEFEFEFF0F0F0F0F0F0F0F0F0F0F0F0EFEFEFEFEFEFEFEFEFEEEEEE
+EEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEEEEEEEEEEEEEEEEEEECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EAEAEAEAEAEA
+EAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5
+E5E5E5E3E3E3E3E3E3E3E3E3E3E3E3D5D5D5D5D5D5D5D5D5A8A8A8A8A8A8A8A8A85F605F5F605F
+5F605F3434343434343434343434342828282828282828282828282828282828282F2F2F2F2F2F
+2F2F2F3B3B3B3B3B3B3B3B3B4444444444444444444444444B4B4B4B4B4B4B4B4B616161616161
+6161617B7B7B7B7B7B7B7B7B8181818181818181818484848484848484848484848A8A8A8A8A8A
+8A8A8A9090909090909090909A9A9A9A9A9A9A9A9A9F9F9F9F9F9F9F9F9F9F9F9FA1A1A1A1A1A1
+A1A1A1A4A4A4A4A4A4A4A4A4A9A9A9A9A9A9A9A9A9ADADADADADADADADADB0B0B0B0B0B0B0B0B0
+B0B0B0B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3
+B6B6B6B6B6B6B6B6B6B6B6B6B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B9B9B9B9B9B9B9B9B9
+B8B8B8B8B8B8B8B8B8B8B8B8A5A5A5A5A5A5A5A5A5909090909090909090898989898989898989
+8888888888888888888888888888888888888888888A8A8A8A8A8A8A8A8A9E9E9E9E9E9E9E9E9E
+BFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFE7E7E7E7E7E7E7E7E7E7E7E7E2E2E2E2E2E2E2E2E2
+D7D7D7D7D7D7D7D7D7C9C9C9C9C9C9C9C9C9BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
+C2C2C2C2C2C2C2C2C2C6C6C6C6C6C6C6C6C6D6D6D6D6D6D6D6D6D6E6E6E6E6E6E6E6E6E6E6E6E6
+EEEEEEEEEEEEEEEEEEF2F2F2F2F2F2F2F2F2F5F5F5F5F5F5F5F5F5F8F8F8F8F8F8F8F8F8F9F9F9
+F9F9F9F9F9F9F9F9F9FAFAFAFAFAFAFAFAFAFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF9F9F9
+F9F9F9F9F9F9F9F9F9F0F0F0F0F0F0F0F0F0E8E8E8E8E8E8E8E8E8DEDEDEDEDEDEDEDEDED3D3D3
+D3D3D3D3D3D3C8C8C8C8C8C8C8C8C8C8C8C8BDBDBDBDBDBDBDBDBDB5B5B5B5B5B5B5B5B5BABABA
+BABABABABABAC2C2C2C2C2C2C2C2C2AAAAAAAAAAAAAAAAAAAAAAAAB7B7B7B7B7B7B7B7B7C6C6C6
+C6C6C6C6C6C6E1E1E1E1E1E1E1E1E1FCFCFCFCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACACACACAEFEFEFEFEFEFEFEFEFEFEFEFEFEFEF
+EFEFEFF0F0F0F0F0F0F0F0F0F0F0F0EFEFEFEFEFEFEFEFEFEEEEEEEEEEEEEEEEEEEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEE
+EEEEEEECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBE9E9E9E9E9E9
+E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9
+E9E9E9E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E3E3E3E3E3E3E3E3E3
+E3E3E3D5D5D5D5D5D5D5D5D5A8A8A8A8A8A8A8A8A85F605F5F605F5F605F343434343434343434
+3434342828282828282828282828282828282828282F2F2F2F2F2F2F2F2F3B3B3B3B3B3B3B3B3B
+4444444444444444444444444B4B4B4B4B4B4B4B4B6161616161616161617B7B7B7B7B7B7B7B7B
+8181818181818181818484848484848484848484848A8A8A8A8A8A8A8A8A909090909090909090
+9A9A9A9A9A9A9A9A9A9F9F9F9F9F9F9F9F9F9F9F9FA1A1A1A1A1A1A1A1A1A4A4A4A4A4A4A4A4A4
+A9A9A9A9A9A9A9A9A9ADADADADADADADADADB0B0B0B0B0B0B0B0B0B0B0B0B4B4B4B4B4B4B4B4B4
+B4B4B4B4B4B4B4B4B4B1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B6B6B6B6B6B6B6B6B6B6B6B6
+B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B8B8B8
+A5A5A5A5A5A5A5A5A5909090909090909090898989898989898989888888888888888888888888
+8888888888888888888A8A8A8A8A8A8A8A8A9E9E9E9E9E9E9E9E9EBFBFBFBFBFBFBFBFBFDFDFDF
+DFDFDFDFDFDFE7E7E7E7E7E7E7E7E7E7E7E7E2E2E2E2E2E2E2E2E2D7D7D7D7D7D7D7D7D7C9C9C9
+C9C9C9C9C9C9BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFC2C2C2C2C2C2C2C2C2C6C6C6
+C6C6C6C6C6C6D6D6D6D6D6D6D6D6D6E6E6E6E6E6E6E6E6E6E6E6E6EEEEEEEEEEEEEEEEEEF2F2F2
+F2F2F2F2F2F2F5F5F5F5F5F5F5F5F5F8F8F8F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9F9F9F9FAFAFA
+FAFAFAFAFAFAFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF9F9F9F9F9F9F9F9F9F9F9F9F0F0F0
+F0F0F0F0F0F0E8E8E8E8E8E8E8E8E8DEDEDEDEDEDEDEDEDED3D3D3D3D3D3D3D3D3C8C8C8C8C8C8
+C8C8C8C8C8C8BDBDBDBDBDBDBDBDBDB5B5B5B5B5B5B5B5B5BABABABABABABABABAC2C2C2C2C2C2
+C2C2C2AAAAAAAAAAAAAAAAAAAAAAAAB7B7B7B7B7B7B7B7B7C6C6C6C6C6C6C6C6C6E1E1E1E1E1E1
+E1E1E1FCFCFCFCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9CACACACACACACACACAEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFF0F0F0F0F0F0F0F0F0
+F0F0F0EFEFEFEFEFEFEFEFEFEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEECECECECECECECECEC
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9
+E9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8
+E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E3E3E3E3E3E3E3E3E3E3E3E3D5D5D5D5D5D5D5D5D5
+A8A8A8A8A8A8A8A8A85F605F5F605F5F605F343434343434343434343434282828282828282828
+2828282828282828282F2F2F2F2F2F2F2F2F3B3B3B3B3B3B3B3B3B444444444444444444444444
+4B4B4B4B4B4B4B4B4B6161616161616161617B7B7B7B7B7B7B7B7B818181818181818181848484
+8484848484848484848A8A8A8A8A8A8A8A8A9090909090909090909A9A9A9A9A9A9A9A9A9F9F9F
+9F9F9F9F9F9F9F9F9FA1A1A1A1A1A1A1A1A1A4A4A4A4A4A4A4A4A4A9A9A9A9A9A9A9A9A9ADADAD
+ADADADADADADB0B0B0B0B0B0B0B0B0B0B0B0B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B1B1B1
+B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B6B6B6B6B6B6B6B6B6B6B6B6B5B5B5B5B5B5B5B5B5B5B5B5
+B5B5B5B5B5B5B9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B8B8B8A5A5A5A5A5A5A5A5A5909090
+9090909090908989898989898989898888888888888888888888888888888888888888888A8A8A
+8A8A8A8A8A8A9E9E9E9E9E9E9E9E9EBFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFE7E7E7E7E7E7
+E7E7E7E7E7E7E2E2E2E2E2E2E2E2E2D7D7D7D7D7D7D7D7D7C9C9C9C9C9C9C9C9C9BFBFBFBFBFBF
+BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFC2C2C2C2C2C2C2C2C2C6C6C6C6C6C6C6C6C6D6D6D6D6D6D6
+D6D6D6E6E6E6E6E6E6E6E6E6E6E6E6EEEEEEEEEEEEEEEEEEF2F2F2F2F2F2F2F2F2F5F5F5F5F5F5
+F5F5F5F8F8F8F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9F9F9F9FAFAFAFAFAFAFAFAFAFCFCFCFCFCFC
+FCFCFCFCFCFCFCFCFCFCFCFCF9F9F9F9F9F9F9F9F9F9F9F9F0F0F0F0F0F0F0F0F0E8E8E8E8E8E8
+E8E8E8DEDEDEDEDEDEDEDEDED3D3D3D3D3D3D3D3D3C8C8C8C8C8C8C8C8C8C8C8C8BDBDBDBDBDBD
+BDBDBDB5B5B5B5B5B5B5B5B5BABABABABABABABABAC2C2C2C2C2C2C2C2C2AAAAAAAAAAAAAAAAAA
+AAAAAAB7B7B7B7B7B7B7B7B7C6C6C6C6C6C6C6C6C6E1E1E1E1E1E1E1E1E1FCFCFCFCFCFCFCFCFC
+FCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACACACACA
+F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
+EEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDECECECECECECECECECECECEC
+ECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEBEBEB
+EBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E7E7E7
+E7E7E7E7E7E7E4E4E4E4E4E4E4E4E4E4E4E4DEDEDEDEDEDEDEDEDEC5C5C5C5C5C5C5C5C5838383
+8383838383834242424242424242424242422B2B2B2B2B2B2B2B2B292929292929292929363636
+3636363636364D4D4D4D4D4D4D4D4D5B5B5B5B5B5B5B5B5B5B5B5B5C5C5C5C5C5C5C5C5C676767
+6767676767677C7C7C7C7C7C7C7C7C818181818181818181838383838383838383838383878787
+8787878787879090909090909090909C9C9C9C9C9C9C9C9CA1A1A1A1A1A1A1A1A1A1A1A1A3A3A3
+A3A3A3A3A3A3A8A8A8A8A8A8A8A8A8AEAEAEAEAEAEAEAEAEB2B2B2B2B2B2B2B2B2B6B6B6B6B6B6
+B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8
+B8B8B8BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBDBDBDBDBDBDBDBDBDC3C3C3C3C3C3
+C3C3C3BEBEBEBEBEBEBEBEBEBEBEBEA8A8A8A8A8A8A8A8A89191919191919191918B8B8B8B8B8B
+8B8B8B8989898989898989898888888888888888888888888B8B8B8B8B8B8B8B8B9F9F9F9F9F9F
+9F9F9FBFBFBFBFBFBFBFBFBFDBDBDBDBDBDBDBDBDBE3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3
+E3E3E3DFDFDFDFDFDFDFDFDFD0D0D0D0D0D0D0D0D0C1C1C1C1C1C1C1C1C1C1C1C1BCBCBCBCBCBC
+BCBCBCB9B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBBCFCFCFCFCFCFCFCFCFE6E6E6E6E6E6E6E6E6
+E6E6E6F1F1F1F1F1F1F1F1F1F9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FBFBFBFBFBFBFBFBFBFBFBFBF3F3F3F3F3F3F3F3F3E9E9E9E9E9E9E9E9E9DEDEDEDEDEDEDEDEDE
+D5D5D5D5D5D5D5D5D5C8C8C8C8C8C8C8C8C8C8C8C8BCBCBCBCBCBCBCBCBCB3B3B3B3B3B3B3B3B3
+B6B6B6B6B6B6B6B6B6B9B9B9B9B9B9B9B9B9B2B2B2B2B2B2B2B2B2B2B2B2C5C5C5C5C5C5C5C5C5
+C9C9C9C9C9C9C9C9C9E1E1E1E1E1E1E1E1E1FCFCFCFCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD4D4D4D4D4D4D4D4D4F0F0F0F0F0F0F0F0F0F0F0F0
+F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0EEEEEEEEEEEEEEEEEEEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEEEEEE
+EEEEEEEEEEEEEDEDEDEDEDEDEDEDEDECECECECECECECECECECECECECECECECECECECECECEBEBEB
+EBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBEBEBEBEAEAEA
+EAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E4E4E4E4E4E4
+E4E4E4E4E4E4DEDEDEDEDEDEDEDEDEC5C5C5C5C5C5C5C5C5838383838383838383424242424242
+4242424242422B2B2B2B2B2B2B2B2B2929292929292929293636363636363636364D4D4D4D4D4D
+4D4D4D5B5B5B5B5B5B5B5B5B5B5B5B5C5C5C5C5C5C5C5C5C6767676767676767677C7C7C7C7C7C
+7C7C7C818181818181818181838383838383838383838383878787878787878787909090909090
+9090909C9C9C9C9C9C9C9C9CA1A1A1A1A1A1A1A1A1A1A1A1A3A3A3A3A3A3A3A3A3A8A8A8A8A8A8
+A8A8A8AEAEAEAEAEAEAEAEAEB2B2B2B2B2B2B2B2B2B6B6B6B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8
+B8B8B8B7B7B7B7B7B7B7B7B7B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8BBBBBBBBBBBBBBBBBB
+BBBBBBBBBBBBBBBBBBBBBBBBBDBDBDBDBDBDBDBDBDC3C3C3C3C3C3C3C3C3BEBEBEBEBEBEBEBEBE
+BEBEBEA8A8A8A8A8A8A8A8A89191919191919191918B8B8B8B8B8B8B8B8B898989898989898989
+8888888888888888888888888B8B8B8B8B8B8B8B8B9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBF
+DBDBDBDBDBDBDBDBDBE3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3DFDFDFDFDFDFDFDFDF
+D0D0D0D0D0D0D0D0D0C1C1C1C1C1C1C1C1C1C1C1C1BCBCBCBCBCBCBCBCBCB9B9B9B9B9B9B9B9B9
+BBBBBBBBBBBBBBBBBBCFCFCFCFCFCFCFCFCFE6E6E6E6E6E6E6E6E6E6E6E6F1F1F1F1F1F1F1F1F1
+F9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFBFBFBFBFBFBFBFBFBFBFBFB
+F3F3F3F3F3F3F3F3F3E9E9E9E9E9E9E9E9E9DEDEDEDEDEDEDEDEDED5D5D5D5D5D5D5D5D5C8C8C8
+C8C8C8C8C8C8C8C8C8BCBCBCBCBCBCBCBCBCB3B3B3B3B3B3B3B3B3B6B6B6B6B6B6B6B6B6B9B9B9
+B9B9B9B9B9B9B2B2B2B2B2B2B2B2B2B2B2B2C5C5C5C5C5C5C5C5C5C9C9C9C9C9C9C9C9C9E1E1E1
+E1E1E1E1E1E1FCFCFCFCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFB
+FBFBFBFBFBFBD4D4D4D4D4D4D4D4D4F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
+F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0EEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEDEDEDEDEDED
+EDEDEDECECECECECECECECECECECECECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9
+E9E9E9E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E4E4E4E4E4E4E4E4E4E4E4E4DEDEDEDEDEDE
+DEDEDEC5C5C5C5C5C5C5C5C58383838383838383834242424242424242424242422B2B2B2B2B2B
+2B2B2B2929292929292929293636363636363636364D4D4D4D4D4D4D4D4D5B5B5B5B5B5B5B5B5B
+5B5B5B5C5C5C5C5C5C5C5C5C6767676767676767677C7C7C7C7C7C7C7C7C818181818181818181
+8383838383838383838383838787878787878787879090909090909090909C9C9C9C9C9C9C9C9C
+A1A1A1A1A1A1A1A1A1A1A1A1A3A3A3A3A3A3A3A3A3A8A8A8A8A8A8A8A8A8AEAEAEAEAEAEAEAEAE
+B2B2B2B2B2B2B2B2B2B6B6B6B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7
+B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+BDBDBDBDBDBDBDBDBDC3C3C3C3C3C3C3C3C3BEBEBEBEBEBEBEBEBEBEBEBEA8A8A8A8A8A8A8A8A8
+9191919191919191918B8B8B8B8B8B8B8B8B898989898989898989888888888888888888888888
+8B8B8B8B8B8B8B8B8B9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFDBDBDBDBDBDBDBDBDBE3E3E3
+E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3DFDFDFDFDFDFDFDFDFD0D0D0D0D0D0D0D0D0C1C1C1
+C1C1C1C1C1C1C1C1C1BCBCBCBCBCBCBCBCBCB9B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBBCFCFCF
+CFCFCFCFCFCFE6E6E6E6E6E6E6E6E6E6E6E6F1F1F1F1F1F1F1F1F1F9F9F9F9F9F9F9F9F9FDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFBFBFBFBFBFBFBFBFBFBFBFBF3F3F3F3F3F3F3F3F3E9E9E9
+E9E9E9E9E9E9DEDEDEDEDEDEDEDEDED5D5D5D5D5D5D5D5D5C8C8C8C8C8C8C8C8C8C8C8C8BCBCBC
+BCBCBCBCBCBCB3B3B3B3B3B3B3B3B3B6B6B6B6B6B6B6B6B6B9B9B9B9B9B9B9B9B9B2B2B2B2B2B2
+B2B2B2B2B2B2C5C5C5C5C5C5C5C5C5C9C9C9C9C9C9C9C9C9E1E1E1E1E1E1E1E1E1FCFCFCFCFCFC
+FCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD4D4D4D4D4D4
+D4D4D4EFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEEEEEEEEE
+EEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDECECECECECECECECEC
+ECECECECECECECECECECECECECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6E6E6E6E2E2E2E2E2E2E2E2E2D6D6D5D6D6D5D6D6D5
+A8A8A8A8A8A8A8A8A85C5C5C5C5C5C5C5C5C5C5C5C3232323232323232322F2F2F2F2F2F2F2F2F
+4444444444444444446262626262626262626C6C6C6C6C6C6C6C6C6C6C6C666666666666666666
+6B6B6B6B6B6B6B6B6B7D7D7D7D7D7D7D7D7D808080808080808080828282828282828282828282
+8787878787878787879090909090909090909B9B9B9B9B9B9B9B9BA0A0A0A0A0A0A0A0A0A0A0A0
+A3A3A3A3A3A3A3A3A3A8A8A8A8A8A8A8A8A8B0B0B0B0B0B0B0B0B0B3B3B3B3B3B3B3B3B3B9B9B9
+B9B9B9B9B9B9B9B9B9BCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBFBFBFBFBFBFBFBFBFC0C0C0
+C0C0C0C0C0C0C2C2C2C2C2C2C2C2C2C2C2C2C1C1C1C1C1C1C1C1C1C3C3C3C3C3C3C3C3C3C5C5C5
+C5C5C5C5C5C5BFBFBFBFBFBFBFBFBFBFBFBFA8A8A8A8A8A8A8A8A89292929292929292928A8A8A
+8A8A8A8A8A8A8686868686868686868686868686868686868686868E8E8E8E8E8E8E8E8EA3A3A3
+A3A3A3A3A3A3C2C2C2C2C2C2C2C2C2DDDDDDDDDDDDDDDDDDE4E4E4E4E4E4E4E4E4E4E4E4E5E5E5
+E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5DBDBDBDBDBDBDBDBDBCACACACACACACACACACACACABDBDBD
+BDBDBDBDBDBDB6B6B6B6B6B6B6B6B6B5B5B5B5B5B5B5B5B5BEBEBEBEBEBEBEBEBED2D2D2D2D2D2
+D2D2D2D2D2D2E7E7E7E7E7E7E7E7E7F5F5F5F5F5F5F5F5F5FDFDFDFDFDFDFDFDFDFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFCFCFCFCFCFCFCFCFCFCFCFCF5F5F5F5F5F5F5F5F5EAEAEAEAEAEAEAEAEADFDFDFDFDFDF
+DFDFDFD6D6D5D6D6D5D6D6D5C8C8C8C8C8C8C8C8C8C8C8C8BBBBBBBBBBBBBBBBBBB1B1B1B1B1B1
+B1B1B1B1B1B1B1B1B1B1B1B1B8B8B8B8B8B8B8B8B8C3C3C3C3C3C3C3C3C3C3C3C3D3D3D3D3D3D3
+D3D3D3D1D1D1D1D1D1D1D1D1E5E5E5E5E5E5E5E5E5FDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE1E1E1E1E1E1E1E1E1EFEFEFEFEFEFEFEFEF
+EFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDECECECECECECECECECECECECECECECECECECECECEC
+ECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E6E6E6
+E6E6E6E6E6E6E6E6E6E2E2E2E2E2E2E2E2E2D6D6D5D6D6D5D6D6D5A8A8A8A8A8A8A8A8A85C5C5C
+5C5C5C5C5C5C5C5C5C3232323232323232322F2F2F2F2F2F2F2F2F444444444444444444626262
+6262626262626C6C6C6C6C6C6C6C6C6C6C6C6666666666666666666B6B6B6B6B6B6B6B6B7D7D7D
+7D7D7D7D7D7D808080808080808080828282828282828282828282878787878787878787909090
+9090909090909B9B9B9B9B9B9B9B9BA0A0A0A0A0A0A0A0A0A0A0A0A3A3A3A3A3A3A3A3A3A8A8A8
+A8A8A8A8A8A8B0B0B0B0B0B0B0B0B0B3B3B3B3B3B3B3B3B3B9B9B9B9B9B9B9B9B9B9B9B9BCBCBC
+BCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBFBFBFBFBFBFBFBFBFC0C0C0C0C0C0C0C0C0C2C2C2C2C2C2
+C2C2C2C2C2C2C1C1C1C1C1C1C1C1C1C3C3C3C3C3C3C3C3C3C5C5C5C5C5C5C5C5C5BFBFBFBFBFBF
+BFBFBFBFBFBFA8A8A8A8A8A8A8A8A89292929292929292928A8A8A8A8A8A8A8A8A868686868686
+8686868686868686868686868686868E8E8E8E8E8E8E8E8EA3A3A3A3A3A3A3A3A3C2C2C2C2C2C2
+C2C2C2DDDDDDDDDDDDDDDDDDE4E4E4E4E4E4E4E4E4E4E4E4E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5
+E5E5E5DBDBDBDBDBDBDBDBDBCACACACACACACACACACACACABDBDBDBDBDBDBDBDBDB6B6B6B6B6B6
+B6B6B6B5B5B5B5B5B5B5B5B5BEBEBEBEBEBEBEBEBED2D2D2D2D2D2D2D2D2D2D2D2E7E7E7E7E7E7
+E7E7E7F5F5F5F5F5F5F5F5F5FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFCFCFCFCFCFCFCFCFC
+FCFCFCF5F5F5F5F5F5F5F5F5EAEAEAEAEAEAEAEAEADFDFDFDFDFDFDFDFDFD6D6D5D6D6D5D6D6D5
+C8C8C8C8C8C8C8C8C8C8C8C8BBBBBBBBBBBBBBBBBBB1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1
+B8B8B8B8B8B8B8B8B8C3C3C3C3C3C3C3C3C3C3C3C3D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1
+E5E5E5E5E5E5E5E5E5FDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FCFCFCFCFCFCFCFCFCE1E1E1E1E1E1E1E1E1EEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEEEEEE
+EEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDECECECECECECECECECEDEDEDEDEDEDEDEDEDECECEC
+ECECECECECECECECECECECECECECECECECECEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5E3E3E3
+E3E3E3E3E3E3DCDCDCDCDCDCDCDCDCC5C5C5C5C5C5C5C5C5808080808080808080808080414141
+414141414141363636363636363636565656565656565656707070707070707070727272727272
+7272727272726A6A6A6A6A6A6A6A6A6E6E6E6E6E6E6E6E6E7D7D7D7D7D7D7D7D7D7F7F7F7F7F7F
+7F7F7F818181818181818181818181878787878787878787909090909090909090999999999999
+9999999F9F9F9F9F9F9F9F9F9F9F9FA2A2A2A2A2A2A2A2A2A8A8A8A8A8A8A8A8A8ADADADADADAD
+ADADADB4B4B4B4B4B4B4B4B4BBBBBBBBBBBBBBBBBBBBBBBBBFBFBFBFBFBFBFBFBFC4C4C4C4C4C4
+C4C4C4C8C8C8C8C8C8C8C8C8CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBC7C7C7C7C7C7
+C7C7C7C5C5C5C5C5C5C5C5C5CACACACACACACACACAC2C2C2C2C2C2C2C2C2C2C2C2A7A7A7A7A7A7
+A7A7A78F8F8F8F8F8F8F8F8F858585858585858585828282828282828282838383838383838383
+8383838F8F8F8F8F8F8F8F8FA8A8A8A8A8A8A8A8A8C9C9C9C9C9C9C9C9C9DFDFDFDFDFDFDFDFDF
+E6E6E6E6E6E6E6E6E6E6E6E6E9E9E9E9E9E9E9E9E9EBEBEBEBEBEBEBEBEBE1E1E1E1E1E1E1E1E1
+D1D1D1D1D1D1D1D1D1D1D1D1C1C1C1C1C1C1C1C1C1B7B7B7B7B7B7B7B7B7B4B4B4B4B4B4B4B4B4
+B1B1B1B1B1B1B1B1B1BEBEBEBEBEBEBEBEBEBEBEBED1D1D1D1D1D1D1D1D1E3E3E3E3E3E3E3E3E3
+F5F5F5F5F5F5F5F5F5FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDF6F6F6F6F6F6F6F6F6
+EBEBEBEBEBEBEBEBEBDFDFDFDFDFDFDFDFDFD4D4D4D4D4D4D4D4D4C7C7C7C7C7C7C7C7C7C7C7C7
+BABABABABABABABABAB0B1B0B0B1B0B0B1B0B0B0B0B0B0B0B0B0B0BDBDBDBDBDBDBDBDBDCDCDCD
+CDCDCDCDCDCDCDCDCDDADADADADADADADADAD7D7D7D7D7D7D7D7D7EBEBEBEBEBEBEBEBEBFDFDFD
+FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7
+C7C7C7C7C7C7EEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEEEEEEEDEDED
+EDEDEDEDEDEDECECECECECECECECECEDEDEDEDEDEDEDEDEDECECECECECECECECECECECECECECEC
+ECECECECECECEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+EAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5E3E3E3E3E3E3E3E3E3DCDCDCDCDCDC
+DCDCDCC5C5C5C5C5C5C5C5C5808080808080808080808080414141414141414141363636363636
+3636365656565656565656567070707070707070707272727272727272727272726A6A6A6A6A6A
+6A6A6A6E6E6E6E6E6E6E6E6E7D7D7D7D7D7D7D7D7D7F7F7F7F7F7F7F7F7F818181818181818181
+8181818787878787878787879090909090909090909999999999999999999F9F9F9F9F9F9F9F9F
+9F9F9FA2A2A2A2A2A2A2A2A2A8A8A8A8A8A8A8A8A8ADADADADADADADADADB4B4B4B4B4B4B4B4B4
+BBBBBBBBBBBBBBBBBBBBBBBBBFBFBFBFBFBFBFBFBFC4C4C4C4C4C4C4C4C4C8C8C8C8C8C8C8C8C8
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBC7C7C7C7C7C7C7C7C7C5C5C5C5C5C5C5C5C5
+CACACACACACACACACAC2C2C2C2C2C2C2C2C2C2C2C2A7A7A7A7A7A7A7A7A78F8F8F8F8F8F8F8F8F
+8585858585858585858282828282828282828383838383838383838383838F8F8F8F8F8F8F8F8F
+A8A8A8A8A8A8A8A8A8C9C9C9C9C9C9C9C9C9DFDFDFDFDFDFDFDFDFE6E6E6E6E6E6E6E6E6E6E6E6
+E9E9E9E9E9E9E9E9E9EBEBEBEBEBEBEBEBEBE1E1E1E1E1E1E1E1E1D1D1D1D1D1D1D1D1D1D1D1D1
+C1C1C1C1C1C1C1C1C1B7B7B7B7B7B7B7B7B7B4B4B4B4B4B4B4B4B4B1B1B1B1B1B1B1B1B1BEBEBE
+BEBEBEBEBEBEBEBEBED1D1D1D1D1D1D1D1D1E3E3E3E3E3E3E3E3E3F5F5F5F5F5F5F5F5F5FDFDFD
+FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDF6F6F6F6F6F6F6F6F6EBEBEBEBEBEBEBEBEBDFDFDF
+DFDFDFDFDFDFD4D4D4D4D4D4D4D4D4C7C7C7C7C7C7C7C7C7C7C7C7BABABABABABABABABAB0B1B0
+B0B1B0B0B1B0B0B0B0B0B0B0B0B0B0BDBDBDBDBDBDBDBDBDCDCDCDCDCDCDCDCDCDCDCDCDDADADA
+DADADADADADAD7D7D7D7D7D7D7D7D7EBEBEBEBEBEBEBEBEBFDFDFDFDFDFDFDFDFDFDFDFDFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7EEEEEEEEEEEE
+EEEEEEEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDECECECECECEC
+ECECECEDEDEDEDEDEDEDEDEDECECECECECECECECECECECECECECECECECECECECECEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDECECECECECEC
+ECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9
+E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6
+E5E5E5E5E5E5E5E5E5E5E5E5E3E3E3E3E3E3E3E3E3DCDCDCDCDCDCDCDCDCC5C5C5C5C5C5C5C5C5
+808080808080808080808080414141414141414141363636363636363636565656565656565656
+7070707070707070707272727272727272727272726A6A6A6A6A6A6A6A6A6E6E6E6E6E6E6E6E6E
+7D7D7D7D7D7D7D7D7D7F7F7F7F7F7F7F7F7F818181818181818181818181878787878787878787
+9090909090909090909999999999999999999F9F9F9F9F9F9F9F9F9F9F9FA2A2A2A2A2A2A2A2A2
+A8A8A8A8A8A8A8A8A8ADADADADADADADADADB4B4B4B4B4B4B4B4B4BBBBBBBBBBBBBBBBBBBBBBBB
+BFBFBFBFBFBFBFBFBFC4C4C4C4C4C4C4C4C4C8C8C8C8C8C8C8C8C8CBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBC7C7C7C7C7C7C7C7C7C5C5C5C5C5C5C5C5C5CACACACACACACACACAC2C2C2
+C2C2C2C2C2C2C2C2C2A7A7A7A7A7A7A7A7A78F8F8F8F8F8F8F8F8F858585858585858585828282
+8282828282828383838383838383838383838F8F8F8F8F8F8F8F8FA8A8A8A8A8A8A8A8A8C9C9C9
+C9C9C9C9C9C9DFDFDFDFDFDFDFDFDFE6E6E6E6E6E6E6E6E6E6E6E6E9E9E9E9E9E9E9E9E9EBEBEB
+EBEBEBEBEBEBE1E1E1E1E1E1E1E1E1D1D1D1D1D1D1D1D1D1D1D1D1C1C1C1C1C1C1C1C1C1B7B7B7
+B7B7B7B7B7B7B4B4B4B4B4B4B4B4B4B1B1B1B1B1B1B1B1B1BEBEBEBEBEBEBEBEBEBEBEBED1D1D1
+D1D1D1D1D1D1E3E3E3E3E3E3E3E3E3F5F5F5F5F5F5F5F5F5FDFDFDFDFDFDFDFDFDFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFD
+FDFDFDFDFDFDF6F6F6F6F6F6F6F6F6EBEBEBEBEBEBEBEBEBDFDFDFDFDFDFDFDFDFD4D4D4D4D4D4
+D4D4D4C7C7C7C7C7C7C7C7C7C7C7C7BABABABABABABABABAB0B1B0B0B1B0B0B1B0B0B0B0B0B0B0
+B0B0B0BDBDBDBDBDBDBDBDBDCDCDCDCDCDCDCDCDCDCDCDCDDADADADADADADADADAD7D7D7D7D7D7
+D7D7D7EBEBEBEBEBEBEBEBEBFDFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDECECECECECECECECECEDEDEDEDEDEDEDEDED
+EBEBEBEBEBEBEBEBEBECECECECECECECECECECECECECECECECECECECECECECECECECECECECECEC
+EDEDEDEDEDEDEDEDEDECECECECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEA
+E9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8
+E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E4E4E4
+E3E3E3E3E3E3E3E3E3DFDFDFDFDFDFDFDFDFD5D5D5D5D5D5D5D5D5A3A3A3A3A3A3A3A3A3A3A3A3
+585858585858585858404040404040404040636363636363636363757575757575757575727272
+7272727272727272726C6C6C6C6C6C6C6C6C7373737373737373737F7F7F7F7F7F7F7F7F7F7F7F
+7F7F7F7F7F7F818181818181818181818181888888888888888888919191919191919191979797
+9797979797979D9D9D9D9D9D9D9D9D9D9D9DA2A2A2A2A2A2A2A2A2A8A8A8A8A8A8A8A8A8AEAEAE
+AEAEAEAEAEAEB5B5B5B5B5B5B5B5B5BEBEBEBEBEBEBEBEBEBEBEBEC5C5C5C5C5C5C5C5C5CCCCCC
+CCCCCCCCCCCCD1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0D0D0D0CECECE
+CECECECECECECACACACACACACACACACBCBCBCBCBCBCBCBCBBCBCBCBCBCBCBCBCBCBCBCBC9E9E9E
+9E9E9E9E9E9E878787878787878787818181818181818181818181818181818181848484848484
+848484848484909090909090909090ABABABABABABABABABCFCFCFCFCFCFCFCFCFE4E4E4E4E4E4
+E4E4E4ECECECECECECECECECECECECF2F2F2F2F2F2F2F2F2F5F5F5F5F5F5F5F5F5E9E9E9E9E9E9
+E9E9E9D5D5D5D5D5D5D5D5D5D5D5D5C4C4C4C4C4C4C4C4C4BBBBBBBBBBBBBBBBBBB8B8B8B8B8B8
+B8B8B8B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0BBBBBBBBBBBBBBBBBBCBCBCBCBCBCB
+CBCBCBE3E3E3E3E3E3E3E3E3F2F2F2F2F2F2F2F2F2FBFBFBFBFBFBFBFBFBFBFBFBFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFCF7F7F7F7F7F7
+F7F7F7ECECECECECECECECECDFDFDFDFDFDFDFDFDFD3D3D3D3D3D3D3D3D3C5C5C5C5C5C5C5C5C5
+C5C5C5B8B8B8B8B8B8B8B8B8B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0C5C5C5C5C5C5C5C5C5
+DADADADADADADADADADADADADBDBDBDBDBDBDBDBDBD6D6D5D6D6D5D6D6D5F0F0F0F0F0F0F0F0F0
+FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+C6C6C6C6C6C6C6C6C6EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEEEEEE
+EDEDEDEDEDEDEDEDEDECECECECECECECECECEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBECECEC
+ECECECECECECECECECECECECECECECECECECECECECECECECECECECEDEDEDEDEDEDEDEDEDECECEC
+ECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9EAEAEA
+EAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7
+E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3DFDFDF
+DFDFDFDFDFDFD5D5D5D5D5D5D5D5D5A3A3A3A3A3A3A3A3A3A3A3A3585858585858585858404040
+4040404040406363636363636363637575757575757575757272727272727272727272726C6C6C
+6C6C6C6C6C6C7373737373737373737F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818181818181
+8181818181818888888888888888889191919191919191919797979797979797979D9D9D9D9D9D
+9D9D9D9D9D9DA2A2A2A2A2A2A2A2A2A8A8A8A8A8A8A8A8A8AEAEAEAEAEAEAEAEAEB5B5B5B5B5B5
+B5B5B5BEBEBEBEBEBEBEBEBEBEBEBEC5C5C5C5C5C5C5C5C5CCCCCCCCCCCCCCCCCCD1D1D1D1D1D1
+D1D1D1D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECACACACACACA
+CACACACBCBCBCBCBCBCBCBCBBCBCBCBCBCBCBCBCBCBCBCBC9E9E9E9E9E9E9E9E9E878787878787
+878787818181818181818181818181818181818181848484848484848484848484909090909090
+909090ABABABABABABABABABCFCFCFCFCFCFCFCFCFE4E4E4E4E4E4E4E4E4ECECECECECECECECEC
+ECECECF2F2F2F2F2F2F2F2F2F5F5F5F5F5F5F5F5F5E9E9E9E9E9E9E9E9E9D5D5D5D5D5D5D5D5D5
+D5D5D5C4C4C4C4C4C4C4C4C4BBBBBBBBBBBBBBBBBBB8B8B8B8B8B8B8B8B8B0B1B0B0B1B0B0B1B0
+B0B1B0B0B1B0B0B1B0B0B1B0BBBBBBBBBBBBBBBBBBCBCBCBCBCBCBCBCBCBE3E3E3E3E3E3E3E3E3
+F2F2F2F2F2F2F2F2F2FBFBFBFBFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFCF7F7F7F7F7F7F7F7F7ECECECECECECECECEC
+DFDFDFDFDFDFDFDFDFD3D3D3D3D3D3D3D3D3C5C5C5C5C5C5C5C5C5C5C5C5B8B8B8B8B8B8B8B8B8
+B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0C5C5C5C5C5C5C5C5C5DADADADADADADADADADADADA
+DBDBDBDBDBDBDBDBDBD6D6D5D6D6D5D6D6D5F0F0F0F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6ECECEC
+ECECECECECECEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBECECECECECECECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+EAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8
+E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E1E1E1E1E1E1E1E1E1DFDFDFDFDFDFDFDFDFDBDBDBDBDBDB
+DBDBDBBFBFBFBFBFBFBFBFBFBFBFBF7676767676767676764E4E4E4E4E4E4E4E4E696969696969
+6969697373737373737373736C6C6C6C6C6C6C6C6C6C6C6C6D6D6D6D6D6D6D6D6D797979797979
+797979818181818181818181818181818181818181818181818181818181818181878787878787
+8787879090909090909090909494949494949494949A9A9A9A9A9A9A9A9A9A9A9AA0A0A0A0A0A0
+A0A0A0A7A7A7A7A7A7A7A7A7AEAEAEAEAEAEAEAEAEB7B7B7B7B7B7B7B7B7C2C2C2C2C2C2C2C2C2
+C2C2C2CBCBCBCBCBCBCBCBCBD2D2D2D2D2D2D2D2D2D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D0D0D0D0D0D0D0D0D0C5C5C5C5C5C5C5C5C5
+ADADADADADADADADADADADAD9090909090909090907F7F7F7F7F7F7F7F7F7D7D7D7D7D7D7D7D7D
+818181818181818181868686868686868686868686909090909090909090A8A8A8A8A8A8A8A8A8
+CDCDCDCDCDCDCDCDCDE3E3E3E3E3E3E3E3E3E8E9E8E8E9E8E8E9E8E8E9E8F1F1F1F1F1F1F1F1F1
+F9F9F9F9F9F9F9F9F9E8E8E8E8E8E8E8E8E8CCCCCCCCCCCCCCCCCCCCCCCCBEBEBEBEBEBEBEBEBE
+BABABABABABABABABABCBCBCBCBCBCBCBCBCB7B7B7B7B7B7B7B7B7ADADADADADADADADADADADAD
+ADADADADADADADADADB7B7B7B7B7B7B7B7B7CBCBCBCBCBCBCBCBCBDDDDDDDDDDDDDDDDDDECECEC
+ECECECECECECECECECF5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F8F8F8F8F8F8F8F8F8F9F9F9
+F9F9F9F9F9F9F9F9F9F3F3F3F3F3F3F3F3F3E8E8E8E8E8E8E8E8E8DCDCDCDCDCDCDCDCDCCFCFCF
+CFCFCFCFCFCFC4C4C4C4C4C4C4C4C4C4C4C4B9B9B9B9B9B9B9B9B9B0B1B0B0B1B0B0B1B0B0B1B0
+B0B1B0B0B1B0C4C4C4C4C4C4C4C4C4D2D2D2D2D2D2D2D2D2D2D2D2CDCDCDCDCDCDCDCDCDD2D2D2
+D2D2D2D2D2D2F3F3F3F3F3F3F3F3F3FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BBBBBBBBBBBBBBBBBBECECECECECECECECECEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBECECECECECEC
+ECECECEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9
+E9E9E9E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8
+E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E1E1E1E1E1E1E1E1E1DFDFDFDFDFDFDFDFDFDBDBDBDBDBDBDBDBDBBFBFBFBFBFBFBFBFBF
+BFBFBF7676767676767676764E4E4E4E4E4E4E4E4E696969696969696969737373737373737373
+6C6C6C6C6C6C6C6C6C6C6C6C6D6D6D6D6D6D6D6D6D797979797979797979818181818181818181
+818181818181818181818181818181818181818181878787878787878787909090909090909090
+9494949494949494949A9A9A9A9A9A9A9A9A9A9A9AA0A0A0A0A0A0A0A0A0A7A7A7A7A7A7A7A7A7
+AEAEAEAEAEAEAEAEAEB7B7B7B7B7B7B7B7B7C2C2C2C2C2C2C2C2C2C2C2C2CBCBCBCBCBCBCBCBCB
+D2D2D2D2D2D2D2D2D2D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D5D6D6D5D6D6D5D0D0D0D0D0D0D0D0D0C5C5C5C5C5C5C5C5C5ADADADADADADADADADADADAD
+9090909090909090907F7F7F7F7F7F7F7F7F7D7D7D7D7D7D7D7D7D818181818181818181868686
+868686868686868686909090909090909090A8A8A8A8A8A8A8A8A8CDCDCDCDCDCDCDCDCDE3E3E3
+E3E3E3E3E3E3E8E9E8E8E9E8E8E9E8E8E9E8F1F1F1F1F1F1F1F1F1F9F9F9F9F9F9F9F9F9E8E8E8
+E8E8E8E8E8E8CCCCCCCCCCCCCCCCCCCCCCCCBEBEBEBEBEBEBEBEBEBABABABABABABABABABCBCBC
+BCBCBCBCBCBCB7B7B7B7B7B7B7B7B7ADADADADADADADADADADADADADADADADADADADADADB7B7B7
+B7B7B7B7B7B7CBCBCBCBCBCBCBCBCBDDDDDDDDDDDDDDDDDDECECECECECECECECECECECECF5F5F5
+F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F8F8F8F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9F9F9F9F3F3F3
+F3F3F3F3F3F3E8E8E8E8E8E8E8E8E8DCDCDCDCDCDCDCDCDCCFCFCFCFCFCFCFCFCFC4C4C4C4C4C4
+C4C4C4C4C4C4B9B9B9B9B9B9B9B9B9B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0C4C4C4C4C4C4
+C4C4C4D2D2D2D2D2D2D2D2D2D2D2D2CDCDCDCDCDCDCDCDCDD2D2D2D2D2D2D2D2D2F3F3F3F3F3F3
+F3F3F3FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9BBBBBBBBBBBBBBBBBBECECECECECECECECECEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBECECECECECECECECECEBEBEBEBEBEBEBEBEB
+EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8
+E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7
+E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E1E1E1E1E1E1E1E1E1
+DFDFDFDFDFDFDFDFDFDBDBDBDBDBDBDBDBDBBFBFBFBFBFBFBFBFBFBFBFBF767676767676767676
+4E4E4E4E4E4E4E4E4E6969696969696969697373737373737373736C6C6C6C6C6C6C6C6C6C6C6C
+6D6D6D6D6D6D6D6D6D797979797979797979818181818181818181818181818181818181818181
+8181818181818181818787878787878787879090909090909090909494949494949494949A9A9A
+9A9A9A9A9A9A9A9A9AA0A0A0A0A0A0A0A0A0A7A7A7A7A7A7A7A7A7AEAEAEAEAEAEAEAEAEB7B7B7
+B7B7B7B7B7B7C2C2C2C2C2C2C2C2C2C2C2C2CBCBCBCBCBCBCBCBCBD2D2D2D2D2D2D2D2D2D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D0D0D0
+D0D0D0D0D0D0C5C5C5C5C5C5C5C5C5ADADADADADADADADADADADAD9090909090909090907F7F7F
+7F7F7F7F7F7F7D7D7D7D7D7D7D7D7D818181818181818181868686868686868686868686909090
+909090909090A8A8A8A8A8A8A8A8A8CDCDCDCDCDCDCDCDCDE3E3E3E3E3E3E3E3E3E8E9E8E8E9E8
+E8E9E8E8E9E8F1F1F1F1F1F1F1F1F1F9F9F9F9F9F9F9F9F9E8E8E8E8E8E8E8E8E8CCCCCCCCCCCC
+CCCCCCCCCCCCBEBEBEBEBEBEBEBEBEBABABABABABABABABABCBCBCBCBCBCBCBCBCB7B7B7B7B7B7
+B7B7B7ADADADADADADADADADADADADADADADADADADADADADB7B7B7B7B7B7B7B7B7CBCBCBCBCBCB
+CBCBCBDDDDDDDDDDDDDDDDDDECECECECECECECECECECECECF5F5F5F5F5F5F5F5F5F6F6F6F6F6F6
+F6F6F6F8F8F8F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9F9F9F9F3F3F3F3F3F3F3F3F3E8E8E8E8E8E8
+E8E8E8DCDCDCDCDCDCDCDCDCCFCFCFCFCFCFCFCFCFC4C4C4C4C4C4C4C4C4C4C4C4B9B9B9B9B9B9
+B9B9B9B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0C4C4C4C4C4C4C4C4C4D2D2D2D2D2D2D2D2D2
+D2D2D2CDCDCDCDCDCDCDCDCDD2D2D2D2D2D2D2D2D2F3F3F3F3F3F3F3F3F3FEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BBBBBBBBBBBBBBBBBB
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBECECECECECECECECECEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+EBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAE8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1DFDFDF
+DFDFDFDFDFDFD0D0D0D0D0D0D0D0D0D0D0D09A9A9A9A9A9A9A9A9A6666666666666666666F6F6F
+6F6F6F6F6F6F7171717171717171716A6A6A6A6A6A6A6A6A6A6A6A6F6F6F6F6F6F6F6F6F7E7E7E
+7E7E7E7E7E7E818181818181818181828282828282828282838383838383838383838383888888
+8888888888888E8E8E8E8E8E8E8E8E9292929292929292929797979797979797979797979D9D9D
+9D9D9D9D9D9DA4A4A4A4A4A4A4A4A4AFAFAFAFAFAFAFAFAFB9B9B9B9B9B9B9B9B9C5C5C5C5C5C5
+C5C5C5C5C5C5D0D0D0D0D0D0D0D0D0D7D7D7D7D7D7D7D7D7DBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADAD1D1D1D1D1D1D1D1D1BFBFBFBFBFBF
+BFBFBF9C9C9C9C9C9C9C9C9C9C9C9C8181818181818181817979797979797979797C7C7C7C7C7C
+7C7C7C8484848484848484848989898989898989898989898F8F8F8F8F8F8F8F8F9F9F9F9F9F9F
+9F9F9FB9B9B9B9B9B9B9B9B9CDCDCDCDCDCDCDCDCDD6D6D5D6D6D5D6D6D5D6D6D5E0E0E0E0E0E0
+E0E0E0E8E9E8E8E9E8E8E9E8D6D6D5D6D6D5D6D6D5BCBCBCBCBCBCBCBCBCBCBCBCB0B1B0B0B1B0
+B0B1B0B4B4B4B4B4B4B4B4B4BABABABABABABABABAB8B8B8B8B8B8B8B8B8AEAEAEAEAEAEAEAEAE
+AEAEAEA8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAB5B5B5B5B5B5B5B5B5C6C6C6C6C6C6C6C6C6
+D7D7D7D7D7D7D7D7D7D7D7D7E2E2E2E2E2E2E2E2E2E9E9E9E9E9E9E9E9E9EEEEEEEEEEEEEEEEEE
+F1F1F1F1F1F1F1F1F1F1F1F1EBEBEBEBEBEBEBEBEBE0E0E0E0E0E0E0E0E0D7D7D7D7D7D7D7D7D7
+CBCBCBCBCBCBCBCBCBC0C0C0C0C0C0C0C0C0C0C0C0B9B9B9B9B9B9B9B9B9B0B1B0B0B1B0B0B1B0
+AFAFAFAFAFAFAFAFAFBBBBBBBBBBBBBBBBBBC5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5
+D9D9D9D9D9D9D9D9D9F8F8F8F8F8F8F8F8F8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5EDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEEEEEEEEEEEEEEEEEEEEEEEEEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBECECEC
+ECECECECECECEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBEAEAEA
+EAEAEAEAEAEAE8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8
+E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1DFDFDFDFDFDFDFDFDFD0D0D0D0D0D0
+D0D0D0D0D0D09A9A9A9A9A9A9A9A9A6666666666666666666F6F6F6F6F6F6F6F6F717171717171
+7171716A6A6A6A6A6A6A6A6A6A6A6A6F6F6F6F6F6F6F6F6F7E7E7E7E7E7E7E7E7E818181818181
+8181818282828282828282828383838383838383838383838888888888888888888E8E8E8E8E8E
+8E8E8E9292929292929292929797979797979797979797979D9D9D9D9D9D9D9D9DA4A4A4A4A4A4
+A4A4A4AFAFAFAFAFAFAFAFAFB9B9B9B9B9B9B9B9B9C5C5C5C5C5C5C5C5C5C5C5C5D0D0D0D0D0D0
+D0D0D0D7D7D7D7D7D7D7D7D7DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDADADADADADADADADAD1D1D1D1D1D1D1D1D1BFBFBFBFBFBFBFBFBF9C9C9C9C9C9C9C9C9C
+9C9C9C8181818181818181817979797979797979797C7C7C7C7C7C7C7C7C848484848484848484
+8989898989898989898989898F8F8F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9FB9B9B9B9B9B9B9B9B9
+CDCDCDCDCDCDCDCDCDD6D6D5D6D6D5D6D6D5D6D6D5E0E0E0E0E0E0E0E0E0E8E9E8E8E9E8E8E9E8
+D6D6D5D6D6D5D6D6D5BCBCBCBCBCBCBCBCBCBCBCBCB0B1B0B0B1B0B0B1B0B4B4B4B4B4B4B4B4B4
+BABABABABABABABABAB8B8B8B8B8B8B8B8B8AEAEAEAEAEAEAEAEAEAEAEAEA8A8A8A8A8A8A8A8A8
+AAAAAAAAAAAAAAAAAAB5B5B5B5B5B5B5B5B5C6C6C6C6C6C6C6C6C6D7D7D7D7D7D7D7D7D7D7D7D7
+E2E2E2E2E2E2E2E2E2E9E9E9E9E9E9E9E9E9EEEEEEEEEEEEEEEEEEF1F1F1F1F1F1F1F1F1F1F1F1
+EBEBEBEBEBEBEBEBEBE0E0E0E0E0E0E0E0E0D7D7D7D7D7D7D7D7D7CBCBCBCBCBCBCBCBCBC0C0C0
+C0C0C0C0C0C0C0C0C0B9B9B9B9B9B9B9B9B9B0B1B0B0B1B0B0B1B0AFAFAFAFAFAFAFAFAFBBBBBB
+BBBBBBBBBBBBC5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5D9D9D9D9D9D9D9D9D9F8F8F8
+F8F8F8F8F8F8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEA
+EAEAEAEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8
+E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6
+E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2
+E2E2E2E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0D9D9D9D9D9D9D9D9D9D9D9D9B9B9B9B9B9B9
+B9B9B9868686868686868686767676767676767676707070707070707070696969696969696969
+696969707070707070707070828282828282828282838383838383838383838383838383838383
+8484848484848484848484848989898989898989898D8D8D8D8D8D8D8D8D909090909090909090
+9494949494949494949494949A9A9A9A9A9A9A9A9AA1A1A1A1A1A1A1A1A1AEAEAEAEAEAEAEAEAE
+BBBBBBBBBBBBBBBBBBC8C8C8C8C8C8C8C8C8C8C8C8D2D2D2D2D2D2D2D2D2D9D9D9D9D9D9D9D9D9
+DDDDDDDDDDDDDDDDDDDFDFDFDFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDDDDDDD7D7D7D7D7D7D7D7D7
+C9C9C9C9C9C9C9C9C9B0B0B0B0B0B0B0B0B08C8C8C8C8C8C8C8C8C8C8C8C797979797979797979
+7878787878787878787D7D7D7D7D7D7D7D7D858585858585858585888888888888888888888888
+8686868686868686868D8D8D8D8D8D8D8D8D9B9B9B9B9B9B9B9B9BACACACACACACACACACBBBBBB
+BBBBBBBBBBBBBBBBBBC8C8C8C8C8C8C8C8C8CCCCCCCCCCCCCCCCCCBDBDBDBDBDBDBDBDBDA7A7A7
+A7A7A7A7A7A7A7A7A79E9E9E9E9E9E9E9E9EA6A6A6A6A6A6A6A6A6B0B0B0B0B0B0B0B0B0B0B1B0
+B0B1B0B0B1B0ABABABABABABABABABABABABAAAAAAAAAAAAAAAAAAA8A8A8A8A8A8A8A8A8A9A9A9
+A9A9A9A9A9A9B3B3B3B3B3B3B3B3B3C2C2C2C2C2C2C2C2C2C2C2C2CCCCCCCCCCCCCCCCCCD8D8D8
+D8D8D8D8D8D8E3E3E3E3E3E3E3E3E3E8E8E8E8E8E8E8E8E8E8E8E8E4E4E4E4E4E4E4E4E4DBDBDB
+DBDBDBDBDBDBD2D2D2D2D2D2D2D2D2C6C6C6C6C6C6C6C6C6BCBCBCBCBCBCBCBCBCBCBCBCB8B8B8
+B8B8B8B8B8B8B0B1B0B0B1B0B0B1B0AEAEAEAEAEAEAEAEAEBCBCBCBCBCBCBCBCBCC9C9C9C9C9C9
+C9C9C9C9C9C9CACACACACACACACACAE1E1E1E1E1E1E1E1E1FCFCFCFCFCFCFCFCFCFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6
+C6C6C6EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDECECECECECEC
+ECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEB
+EBEBEBEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8
+E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1
+E0E0E0E0E0E0E0E0E0D9D9D9D9D9D9D9D9D9D9D9D9B9B9B9B9B9B9B9B9B9868686868686868686
+767676767676767676707070707070707070696969696969696969696969707070707070707070
+828282828282828282838383838383838383838383838383838383848484848484848484848484
+8989898989898989898D8D8D8D8D8D8D8D8D909090909090909090949494949494949494949494
+9A9A9A9A9A9A9A9A9AA1A1A1A1A1A1A1A1A1AEAEAEAEAEAEAEAEAEBBBBBBBBBBBBBBBBBBC8C8C8
+C8C8C8C8C8C8C8C8C8D2D2D2D2D2D2D2D2D2D9D9D9D9D9D9D9D9D9DDDDDDDDDDDDDDDDDDDFDFDF
+DFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDDDDDDD7D7D7D7D7D7D7D7D7C9C9C9C9C9C9C9C9C9B0B0B0
+B0B0B0B0B0B08C8C8C8C8C8C8C8C8C8C8C8C7979797979797979797878787878787878787D7D7D
+7D7D7D7D7D7D8585858585858585858888888888888888888888888686868686868686868D8D8D
+8D8D8D8D8D8D9B9B9B9B9B9B9B9B9BACACACACACACACACACBBBBBBBBBBBBBBBBBBBBBBBBC8C8C8
+C8C8C8C8C8C8CCCCCCCCCCCCCCCCCCBDBDBDBDBDBDBDBDBDA7A7A7A7A7A7A7A7A7A7A7A79E9E9E
+9E9E9E9E9E9EA6A6A6A6A6A6A6A6A6B0B0B0B0B0B0B0B0B0B0B1B0B0B1B0B0B1B0ABABABABABAB
+ABABABABABABAAAAAAAAAAAAAAAAAAA8A8A8A8A8A8A8A8A8A9A9A9A9A9A9A9A9A9B3B3B3B3B3B3
+B3B3B3C2C2C2C2C2C2C2C2C2C2C2C2CCCCCCCCCCCCCCCCCCD8D8D8D8D8D8D8D8D8E3E3E3E3E3E3
+E3E3E3E8E8E8E8E8E8E8E8E8E8E8E8E4E4E4E4E4E4E4E4E4DBDBDBDBDBDBDBDBDBD2D2D2D2D2D2
+D2D2D2C6C6C6C6C6C6C6C6C6BCBCBCBCBCBCBCBCBCBCBCBCB8B8B8B8B8B8B8B8B8B0B1B0B0B1B0
+B0B1B0AEAEAEAEAEAEAEAEAEBCBCBCBCBCBCBCBCBCC9C9C9C9C9C9C9C9C9C9C9C9CACACACACACA
+CACACAE1E1E1E1E1E1E1E1E1FCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6EDEDEDEDEDEDEDEDED
+EDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDECECECECECECECECECEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEA
+E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7
+E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3
+E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0D9D9D9
+D9D9D9D9D9D9D9D9D9B9B9B9B9B9B9B9B9B9868686868686868686767676767676767676707070
+707070707070696969696969696969696969707070707070707070828282828282828282838383
+8383838383838383838383838383838484848484848484848484848989898989898989898D8D8D
+8D8D8D8D8D8D9090909090909090909494949494949494949494949A9A9A9A9A9A9A9A9AA1A1A1
+A1A1A1A1A1A1AEAEAEAEAEAEAEAEAEBBBBBBBBBBBBBBBBBBC8C8C8C8C8C8C8C8C8C8C8C8D2D2D2
+D2D2D2D2D2D2D9D9D9D9D9D9D9D9D9DDDDDDDDDDDDDDDDDDDFDFDFDFDFDFDFDFDFDDDDDDDDDDDD
+DDDDDDDDDDDDD7D7D7D7D7D7D7D7D7C9C9C9C9C9C9C9C9C9B0B0B0B0B0B0B0B0B08C8C8C8C8C8C
+8C8C8C8C8C8C7979797979797979797878787878787878787D7D7D7D7D7D7D7D7D858585858585
+8585858888888888888888888888888686868686868686868D8D8D8D8D8D8D8D8D9B9B9B9B9B9B
+9B9B9BACACACACACACACACACBBBBBBBBBBBBBBBBBBBBBBBBC8C8C8C8C8C8C8C8C8CCCCCCCCCCCC
+CCCCCCBDBDBDBDBDBDBDBDBDA7A7A7A7A7A7A7A7A7A7A7A79E9E9E9E9E9E9E9E9EA6A6A6A6A6A6
+A6A6A6B0B0B0B0B0B0B0B0B0B0B1B0B0B1B0B0B1B0ABABABABABABABABABABABABAAAAAAAAAAAA
+AAAAAAA8A8A8A8A8A8A8A8A8A9A9A9A9A9A9A9A9A9B3B3B3B3B3B3B3B3B3C2C2C2C2C2C2C2C2C2
+C2C2C2CCCCCCCCCCCCCCCCCCD8D8D8D8D8D8D8D8D8E3E3E3E3E3E3E3E3E3E8E8E8E8E8E8E8E8E8
+E8E8E8E4E4E4E4E4E4E4E4E4DBDBDBDBDBDBDBDBDBD2D2D2D2D2D2D2D2D2C6C6C6C6C6C6C6C6C6
+BCBCBCBCBCBCBCBCBCBCBCBCB8B8B8B8B8B8B8B8B8B0B1B0B0B1B0B0B1B0AEAEAEAEAEAEAEAEAE
+BCBCBCBCBCBCBCBCBCC9C9C9C9C9C9C9C9C9C9C9C9CACACACACACACACACAE1E1E1E1E1E1E1E1E1
+FCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6ECECECECECECECECECECECECECECECECECECEBEBEB
+EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9
+E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9
+E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7
+E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E5E5E5
+E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E2E2E2E1E1E1
+E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDDDDDDDDDDDDDDDDDDDDDDDDCCCCCC
+CCCCCCCCCCCCA1A1A1A1A1A1A1A1A1818181818181818181747474747474747474696969696969
+6969696969696E6E6E6E6E6E6E6E6E818181818181818181858585858585858585848484848484
+8484848484848484848484848484848888888888888888888C8C8C8C8C8C8C8C8C8D8D8D8D8D8D
+8D8D8D9090909090909090909090909797979797979797979F9F9F9F9F9F9F9F9FABABABABABAB
+ABABABBBBBBBBBBBBBBBBBBBC8C8C8C8C8C8C8C8C8C8C8C8D5D5D5D5D5D5D5D5D5DBDBDBDBDBDB
+DBDBDBDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD9D9D9D9D9D9D9D9D9D9D9D9D0D0D0D0D0D0
+D0D0D0BDBDBDBDBDBDBDBDBD9E9E9E9E9E9E9E9E9E808080808080808080808080777777777777
+7777777878787878787878787E7E7E7E7E7E7E7E7E838383838383838383828282828282828282
+8282827B7B7B7B7B7B7B7B7B797979797979797979818181818181818181919191919191919191
+A1A1A1A1A1A1A1A1A1A1A1A1ADADADADADADADADADB0B1B0B0B1B0B0B1B0A7A7A7A7A7A7A7A7A7
+9494949494949494949494948989898989898989898C8C8C8C8C8C8C8C8C969696969696969696
+9C9C9C9C9C9C9C9C9CA5A5A5A5A5A5A5A5A5A5A5A5B0B1B0B0B1B0B0B1B0B0B0B0B0B0B0B0B0B0
+A8A8A8A8A8A8A8A8A8A5A5A5A5A5A5A5A5A5ADADADADADADADADADADADADBBBBBBBBBBBBBBBBBB
+CACACACACACACACACAD8D8D8D8D8D8D8D8D8DFDFDFDFDFDFDFDFDFDFDFDFDCDCDCDCDCDCDCDCDC
+D5D5D5D5D5D5D5D5D5CDCDCDCDCDCDCDCDCDC2C2C2C2C2C2C2C2C2B8B8B8B8B8B8B8B8B8B8B8B8
+B5B5B5B5B5B5B5B5B5B1B1B1B1B1B1B1B1B1AFAFAFAFAFAFAFAFAFC0C0C0C0C0C0C0C0C0CECECE
+CECECECECECECECECECECECECECECECECECEE9E9E9E9E9E9E9E9E9FDFDFDFDFDFDFDFDFDFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C3C3C3
+C3C3C3C3C3C3ECECECECECECECECECECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9EAEAEAEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9
+E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6
+E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4
+E4E4E4E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0
+E0E0E0DFE0DFDFE0DFDFE0DFDDDDDDDDDDDDDDDDDDDDDDDDCCCCCCCCCCCCCCCCCCA1A1A1A1A1A1
+A1A1A18181818181818181817474747474747474746969696969696969696969696E6E6E6E6E6E
+6E6E6E818181818181818181858585858585858585848484848484848484848484848484848484
+8484848888888888888888888C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D909090909090909090
+9090909797979797979797979F9F9F9F9F9F9F9F9FABABABABABABABABABBBBBBBBBBBBBBBBBBB
+C8C8C8C8C8C8C8C8C8C8C8C8D5D5D5D5D5D5D5D5D5DBDBDBDBDBDBDBDBDBDDDDDDDDDDDDDDDDDD
+DDDDDDDDDDDDDDDDDDD9D9D9D9D9D9D9D9D9D9D9D9D0D0D0D0D0D0D0D0D0BDBDBDBDBDBDBDBDBD
+9E9E9E9E9E9E9E9E9E808080808080808080808080777777777777777777787878787878787878
+7E7E7E7E7E7E7E7E7E8383838383838383838282828282828282828282827B7B7B7B7B7B7B7B7B
+797979797979797979818181818181818181919191919191919191A1A1A1A1A1A1A1A1A1A1A1A1
+ADADADADADADADADADB0B1B0B0B1B0B0B1B0A7A7A7A7A7A7A7A7A7949494949494949494949494
+8989898989898989898C8C8C8C8C8C8C8C8C9696969696969696969C9C9C9C9C9C9C9C9CA5A5A5
+A5A5A5A5A5A5A5A5A5B0B1B0B0B1B0B0B1B0B0B0B0B0B0B0B0B0B0A8A8A8A8A8A8A8A8A8A5A5A5
+A5A5A5A5A5A5ADADADADADADADADADADADADBBBBBBBBBBBBBBBBBBCACACACACACACACACAD8D8D8
+D8D8D8D8D8D8DFDFDFDFDFDFDFDFDFDFDFDFDCDCDCDCDCDCDCDCDCD5D5D5D5D5D5D5D5D5CDCDCD
+CDCDCDCDCDCDC2C2C2C2C2C2C2C2C2B8B8B8B8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B1B1B1
+B1B1B1B1B1B1AFAFAFAFAFAFAFAFAFC0C0C0C0C0C0C0C0C0CECECECECECECECECECECECECECECE
+CECECECECECEE9E9E9E9E9E9E9E9E9FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3ECECECECECEC
+ECECECECECECECECECECECECEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA
+EAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8
+E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6
+E6E6E6E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3
+E2E2E2E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DF
+DDDDDDDDDDDDDDDDDDDDDDDDCCCCCCCCCCCCCCCCCCA1A1A1A1A1A1A1A1A1818181818181818181
+7474747474747474746969696969696969696969696E6E6E6E6E6E6E6E6E818181818181818181
+858585858585858585848484848484848484848484848484848484848484888888888888888888
+8C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D909090909090909090909090979797979797979797
+9F9F9F9F9F9F9F9F9FABABABABABABABABABBBBBBBBBBBBBBBBBBBC8C8C8C8C8C8C8C8C8C8C8C8
+D5D5D5D5D5D5D5D5D5DBDBDBDBDBDBDBDBDBDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD9D9D9
+D9D9D9D9D9D9D9D9D9D0D0D0D0D0D0D0D0D0BDBDBDBDBDBDBDBDBD9E9E9E9E9E9E9E9E9E808080
+8080808080808080807777777777777777777878787878787878787E7E7E7E7E7E7E7E7E838383
+8383838383838282828282828282828282827B7B7B7B7B7B7B7B7B797979797979797979818181
+818181818181919191919191919191A1A1A1A1A1A1A1A1A1A1A1A1ADADADADADADADADADB0B1B0
+B0B1B0B0B1B0A7A7A7A7A7A7A7A7A79494949494949494949494948989898989898989898C8C8C
+8C8C8C8C8C8C9696969696969696969C9C9C9C9C9C9C9C9CA5A5A5A5A5A5A5A5A5A5A5A5B0B1B0
+B0B1B0B0B1B0B0B0B0B0B0B0B0B0B0A8A8A8A8A8A8A8A8A8A5A5A5A5A5A5A5A5A5ADADADADADAD
+ADADADADADADBBBBBBBBBBBBBBBBBBCACACACACACACACACAD8D8D8D8D8D8D8D8D8DFDFDFDFDFDF
+DFDFDFDFDFDFDCDCDCDCDCDCDCDCDCD5D5D5D5D5D5D5D5D5CDCDCDCDCDCDCDCDCDC2C2C2C2C2C2
+C2C2C2B8B8B8B8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B1B1B1B1B1B1B1B1B1AFAFAFAFAFAF
+AFAFAFC0C0C0C0C0C0C0C0C0CECECECECECECECECECECECECECECECECECECECECEE9E9E9E9E9E9
+E9E9E9FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEB
+EAEAEAEAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E0E0E0E0E0E0E0E0E0E0E0E0
+DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDCDCDCDCDCDCDCDCDCDCDCDC
+D3D3D3D3D3D3D3D3D3B3B3B3B3B3B3B3B3B38D8D8D8D8D8D8D8D8D7C7C7C7C7C7C7C7C7C6F6F6F
+6F6F6F6F6F6F6F6F6F696969696969696969797979797979797979838383838383838383848484
+8484848484848585858585858585858585858686868686868686868989898989898989898A8A8A
+8A8A8A8A8A8A8D8D8D8D8D8D8D8D8D8D8D8D9494949494949494949E9E9E9E9E9E9E9E9EAAAAAA
+AAAAAAAAAAAABABABABABABABABABAC6C6C6C6C6C6C6C6C6C6C6C6D5D5D5D5D5D5D5D5D5DDDDDD
+DDDDDDDDDDDDDEDEDEDEDEDEDEDEDEDADADADADADADADADAD1D1D1D1D1D1D1D1D1D1D1D1C5C5C5
+C5C5C5C5C5C5ADADADADADADADADAD8C8C8C8C8C8C8C8C8C767676767676767676767676717171
+7171717171717474747474747474747979797979797979797B7B7B7B7B7B7B7B7B767676767676
+7676767676766D6D6D6D6D6D6D6D6D6A6A6A6A6A6A6A6A6A717171717171717171818181818181
+8181818D8D8D8D8D8D8D8D8D8D8D8D9191919191919191919494949494949494948F8F8F8F8F8F
+8F8F8F7A7A7A7A7A7A7A7A7A7A7A7A6161616161616161615D5D5D5D5D5D5D5D5D6F6F6F6F6F6F
+6F6F6F888888888888888888A7A7A7A7A7A7A7A7A7A7A7A7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7
+B7B7B7AAAAAAAAAAAAAAAAAAA2A2A2A2A2A2A2A2A2A4A4A4A4A4A4A4A4A4A4A4A4B0B0B0B0B0B0
+B0B0B0BFBFBFBFBFBFBFBFBFCDCDCDCDCDCDCDCDCDD5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D5D5D5CFCFCFCFCFCFCFCFCFC7C7C7C7C7C7C7C7C7BEBEBEBEBEBEBEBEBEB4B4B4B4B4B4B4B4B4
+B4B4B4B1B1B1B1B1B1B1B1B1B0B0B0B0B0B0B0B0B0AEAEAEAEAEAEAEAEAEBCBCBCBCBCBCBCBCBC
+C7C7C7C7C7C7C7C7C7C7C7C7D6D6D5D6D6D5D6D6D5F5F5F5F5F5F5F5F5F5FEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7
+B4B4B4B4B4B4B4B4B4EBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEAEAEAEAEAEAEAEAEAEAEAEA
+E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E5E5E5E5E5E5E5E5E5E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E2E2E2
+E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E0E0E0E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DF
+DFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDCDCDCDCDCDCDCDCDCDCDCDCD3D3D3D3D3D3D3D3D3B3B3B3
+B3B3B3B3B3B38D8D8D8D8D8D8D8D8D7C7C7C7C7C7C7C7C7C6F6F6F6F6F6F6F6F6F6F6F6F696969
+696969696969797979797979797979838383838383838383848484848484848484858585858585
+8585858585858686868686868686868989898989898989898A8A8A8A8A8A8A8A8A8D8D8D8D8D8D
+8D8D8D8D8D8D9494949494949494949E9E9E9E9E9E9E9E9EAAAAAAAAAAAAAAAAAABABABABABABA
+BABABAC6C6C6C6C6C6C6C6C6C6C6C6D5D5D5D5D5D5D5D5D5DDDDDDDDDDDDDDDDDDDEDEDEDEDEDE
+DEDEDEDADADADADADADADADAD1D1D1D1D1D1D1D1D1D1D1D1C5C5C5C5C5C5C5C5C5ADADADADADAD
+ADADAD8C8C8C8C8C8C8C8C8C767676767676767676767676717171717171717171747474747474
+7474747979797979797979797B7B7B7B7B7B7B7B7B7676767676767676767676766D6D6D6D6D6D
+6D6D6D6A6A6A6A6A6A6A6A6A7171717171717171718181818181818181818D8D8D8D8D8D8D8D8D
+8D8D8D9191919191919191919494949494949494948F8F8F8F8F8F8F8F8F7A7A7A7A7A7A7A7A7A
+7A7A7A6161616161616161615D5D5D5D5D5D5D5D5D6F6F6F6F6F6F6F6F6F888888888888888888
+A7A7A7A7A7A7A7A7A7A7A7A7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7AAAAAAAAAAAAAAAAAA
+A2A2A2A2A2A2A2A2A2A4A4A4A4A4A4A4A4A4A4A4A4B0B0B0B0B0B0B0B0B0BFBFBFBFBFBFBFBFBF
+CDCDCDCDCDCDCDCDCDD5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5CFCFCFCFCFCFCFCFCF
+C7C7C7C7C7C7C7C7C7BEBEBEBEBEBEBEBEBEB4B4B4B4B4B4B4B4B4B4B4B4B1B1B1B1B1B1B1B1B1
+B0B0B0B0B0B0B0B0B0AEAEAEAEAEAEAEAEAEBCBCBCBCBCBCBCBCBCC7C7C7C7C7C7C7C7C7C7C7C7
+D6D6D5D6D6D5D6D6D5F5F5F5F5F5F5F5F5F5FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7B4B4B4B4B4B4B4B4B4E9E9E9
+E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E8E8E8
+E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5E6E6E6
+E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3
+E3E3E3E3E3E3E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1
+E1E1E1DFE0DFDFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDDDDDDDDDDDD
+DDDDDDDCDCDCDCDCDCDCDCDCDCDCDCD8D8D8D8D8D8D8D8D8C1C1C1C1C1C1C1C1C1999999999999
+9999998585858585858585857B7B7B7B7B7B7B7B7B7B7B7B707070707070707070757575757575
+7575757F7F7F7F7F7F7F7F7F838383838383838383858585858585858585858585868686868686
+8686868787878787878787878787878787878787878A8A8A8A8A8A8A8A8A8A8A8A909090909090
+9090909B9B9B9B9B9B9B9B9BA8A8A8A8A8A8A8A8A8B7B7B7B7B7B7B7B7B7C4C4C4C4C4C4C4C4C4
+C4C4C4D1D1D1D1D1D1D1D1D1DADADADADADADADADADDDDDDDDDDDDDDDDDDD8D8D8D8D8D8D8D8D8
+CCCCCCCCCCCCCCCCCCCCCCCCBBBBBBBBBBBBBBBBBB9D9D9D9D9D9D9D9D9D7C7C7C7C7C7C7C7C7C
+7070707070707070707070706F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F
+6D6D6D6D6D6D6D6D6D6363636363636363636363635252525252525252524D4D4D4D4D4D4D4D4D
+5A5A5A5A5A5A5A5A5A6F6F6F6F6F6F6F6F6F7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F
+7E7E7E7E7E7E7E7E7E7B7B7B7B7B7B7B7B7B6A6A6A6A6A6A6A6A6A6A6A6A5F605F5F605F5F605F
+6262626262626262626B6B6B6B6B6B6B6B6B8D8D8D8D8D8D8D8D8DAFAFAFAFAFAFAFAFAFAFAFAF
+B8B8B8B8B8B8B8B8B8B9B9B9B9B9B9B9B9B9B2B2B2B2B2B2B2B2B2AAAAAAAAAAAAAAAAAAA7A7A7
+A7A7A7A7A7A7A7A7A7ADADADADADADADADADBBBBBBBBBBBBBBBBBBC7C7C7C7C7C7C7C7C7CDCDCD
+CDCDCDCDCDCDCDCDCDCFCFCFCFCFCFCFCFCFCACACACACACACACACAC3C3C3C3C3C3C3C3C3BBBBBB
+BBBBBBBBBBBBB2B2B2B2B2B2B2B2B2B2B2B2B0B0B0B0B0B0B0B0B0AEAEAEAEAEAEAEAEAEACACAC
+ACACACACACACB3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3C3C3C3E4E4E4E4E4E4E4E4E4FCFCFC
+FCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1E9E9E9E9E9E9E9E9E9EAEAEAEAEAEA
+EAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7
+E7E7E7E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5
+E5E5E5E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E3E3E3E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DF
+DFE0DFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDC
+DCDCDCD8D8D8D8D8D8D8D8D8C1C1C1C1C1C1C1C1C1999999999999999999858585858585858585
+7B7B7B7B7B7B7B7B7B7B7B7B7070707070707070707575757575757575757F7F7F7F7F7F7F7F7F
+838383838383838383858585858585858585858585868686868686868686878787878787878787
+8787878787878787878A8A8A8A8A8A8A8A8A8A8A8A9090909090909090909B9B9B9B9B9B9B9B9B
+A8A8A8A8A8A8A8A8A8B7B7B7B7B7B7B7B7B7C4C4C4C4C4C4C4C4C4C4C4C4D1D1D1D1D1D1D1D1D1
+DADADADADADADADADADDDDDDDDDDDDDDDDDDD8D8D8D8D8D8D8D8D8CCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBBBBBBBB9D9D9D9D9D9D9D9D9D7C7C7C7C7C7C7C7C7C707070707070707070707070
+6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6D6D6D6D6D6D6D6D6D636363
+6363636363636363635252525252525252524D4D4D4D4D4D4D4D4D5A5A5A5A5A5A5A5A5A6F6F6F
+6F6F6F6F6F6F7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7E7E7E7E7E7E7E7E7E7B7B7B
+7B7B7B7B7B7B6A6A6A6A6A6A6A6A6A6A6A6A5F605F5F605F5F605F6262626262626262626B6B6B
+6B6B6B6B6B6B8D8D8D8D8D8D8D8D8DAFAFAFAFAFAFAFAFAFAFAFAFB8B8B8B8B8B8B8B8B8B9B9B9
+B9B9B9B9B9B9B2B2B2B2B2B2B2B2B2AAAAAAAAAAAAAAAAAAA7A7A7A7A7A7A7A7A7A7A7A7ADADAD
+ADADADADADADBBBBBBBBBBBBBBBBBBC7C7C7C7C7C7C7C7C7CDCDCDCDCDCDCDCDCDCDCDCDCFCFCF
+CFCFCFCFCFCFCACACACACACACACACAC3C3C3C3C3C3C3C3C3BBBBBBBBBBBBBBBBBBB2B2B2B2B2B2
+B2B2B2B2B2B2B0B0B0B0B0B0B0B0B0AEAEAEAEAEAEAEAEAEACACACACACACACACACB3B3B3B3B3B3
+B3B3B3C3C3C3C3C3C3C3C3C3C3C3C3E4E4E4E4E4E4E4E4E4FCFCFCFCFCFCFCFCFCFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9C1C1C1C1C1C1C1C1C1E9E9E9E9E9E9E9E9E9EAEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9
+E9E9E9E9E9E9E9E9E9E9E9E9E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7
+E7E7E7E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6
+E5E5E5E5E5E5E5E5E5E5E5E5E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5
+E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E3E3E3E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDF
+DFDFDFDFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDCDCDCD8D8D8D8D8D8D8D8D8
+C1C1C1C1C1C1C1C1C19999999999999999998585858585858585857B7B7B7B7B7B7B7B7B7B7B7B
+7070707070707070707575757575757575757F7F7F7F7F7F7F7F7F838383838383838383858585
+8585858585858585858686868686868686868787878787878787878787878787878787878A8A8A
+8A8A8A8A8A8A8A8A8A9090909090909090909B9B9B9B9B9B9B9B9BA8A8A8A8A8A8A8A8A8B7B7B7
+B7B7B7B7B7B7C4C4C4C4C4C4C4C4C4C4C4C4D1D1D1D1D1D1D1D1D1DADADADADADADADADADDDDDD
+DDDDDDDDDDDDD8D8D8D8D8D8D8D8D8CCCCCCCCCCCCCCCCCCCCCCCCBBBBBBBBBBBBBBBBBB9D9D9D
+9D9D9D9D9D9D7C7C7C7C7C7C7C7C7C7070707070707070707070706F6F6F6F6F6F6F6F6F6F6F6F
+6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6D6D6D6D6D6D6D6D6D636363636363636363636363525252
+5252525252524D4D4D4D4D4D4D4D4D5A5A5A5A5A5A5A5A5A6F6F6F6F6F6F6F6F6F7C7C7C7C7C7C
+7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7E7E7E7E7E7E7E7E7E7B7B7B7B7B7B7B7B7B6A6A6A6A6A6A
+6A6A6A6A6A6A5F605F5F605F5F605F6262626262626262626B6B6B6B6B6B6B6B6B8D8D8D8D8D8D
+8D8D8DAFAFAFAFAFAFAFAFAFAFAFAFB8B8B8B8B8B8B8B8B8B9B9B9B9B9B9B9B9B9B2B2B2B2B2B2
+B2B2B2AAAAAAAAAAAAAAAAAAA7A7A7A7A7A7A7A7A7A7A7A7ADADADADADADADADADBBBBBBBBBBBB
+BBBBBBC7C7C7C7C7C7C7C7C7CDCDCDCDCDCDCDCDCDCDCDCDCFCFCFCFCFCFCFCFCFCACACACACACA
+CACACAC3C3C3C3C3C3C3C3C3BBBBBBBBBBBBBBBBBBB2B2B2B2B2B2B2B2B2B2B2B2B0B0B0B0B0B0
+B0B0B0AEAEAEAEAEAEAEAEAEACACACACACACACACACB3B3B3B3B3B3B3B3B3C3C3C3C3C3C3C3C3C3
+C3C3C3E4E4E4E4E4E4E4E4E4FCFCFCFCFCFCFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1
+E9E9E9E9E9E9E9E9E9E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8
+E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6
+E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E1E1E1
+E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFE0DF
+DFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDC
+DCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBD9D9D9D9D9D9D9D9D9C7C7C7C7C7C7C7C7C7A1A1A1
+A1A1A1A1A1A18989898989898989898484848484848484848484847E7E7E7E7E7E7E7E7E787878
+7878787878787B7B7B7B7B7B7B7B7B828282828282828282848484848484848484848484858585
+8585858585858686868686868686868585858585858585858686868686868686868686868D8D8D
+8D8D8D8D8D8D979797979797979797A4A4A4A4A4A4A4A4A4B1B1B1B1B1B1B1B1B1BEBEBEBEBEBE
+BEBEBEBEBEBEC9C9C9C9C9C9C9C9C9D1D1D1D1D1D1D1D1D1D5D5D5D5D5D5D5D5D5D0D0D0D0D0D0
+D0D0D0C4C4C4C4C4C4C4C4C4C4C4C4AFAFAFAFAFAFAFAFAF8B8B8B8B8B8B8B8B8B717171717171
+7171716D6D6D6D6D6D6D6D6D6D6D6D727272727272727272707070707070707070676767676767
+6767675E5E5E5E5E5E5E5E5E4D4D4D4D4D4D4D4D4D4D4D4D3B3B3B3B3B3B3B3B3B373737373737
+3737374747474747474747475D5D5D5D5D5D5D5D5D6C6C6C6C6C6C6C6C6C6C6C6C6F6F6F6F6F6F
+6F6F6F7272727272727272727C7C7C7C7C7C7C7C7C848484848484848484848484909090909090
+9090908F8F8F8F8F8F8F8F8F8E8E8E8E8E8E8E8E8EA2A2A2A2A2A2A2A2A2B2B2B2B2B2B2B2B2B2
+B2B2B2B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7B1B1B1B1B1B1B1B1B1
+AEAEAEAEAEAEAEAEAEAEAEAEB0B1B0B0B1B0B0B1B0BDBDBDBDBDBDBDBDBDC7C7C7C7C7C7C7C7C7
+CCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBC6C6C6C6C6C6C6C6C6C0C0C0C0C0C0C0C0C0
+B8B8B8B8B8B8B8B8B8B0B0B0B0B0B0B0B0B0B0B0B0B0B1B0B0B1B0B0B1B0AFAFAFAFAFAFAFAFAF
+AAAAAAAAAAAAAAAAAAB1B1B1B1B1B1B1B1B1D0D0D0D0D0D0D0D0D0D0D0D0F5F5F5F5F5F5F5F5F5
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD0D0D0D0D0D0D0D0D0E9E9E9E9E9E9E9E9E9E8E9E8
+E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E9E8E8E8E8E8E8E8E8E8E8E7E7E7
+E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6
+E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1
+E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFDEDEDEDEDEDE
+DEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDB
+DBDBDBDBDBDBD9D9D9D9D9D9D9D9D9C7C7C7C7C7C7C7C7C7A1A1A1A1A1A1A1A1A1898989898989
+8989898484848484848484848484847E7E7E7E7E7E7E7E7E7878787878787878787B7B7B7B7B7B
+7B7B7B828282828282828282848484848484848484848484858585858585858585868686868686
+8686868585858585858585858686868686868686868686868D8D8D8D8D8D8D8D8D979797979797
+979797A4A4A4A4A4A4A4A4A4B1B1B1B1B1B1B1B1B1BEBEBEBEBEBEBEBEBEBEBEBEC9C9C9C9C9C9
+C9C9C9D1D1D1D1D1D1D1D1D1D5D5D5D5D5D5D5D5D5D0D0D0D0D0D0D0D0D0C4C4C4C4C4C4C4C4C4
+C4C4C4AFAFAFAFAFAFAFAFAF8B8B8B8B8B8B8B8B8B7171717171717171716D6D6D6D6D6D6D6D6D
+6D6D6D7272727272727272727070707070707070706767676767676767675E5E5E5E5E5E5E5E5E
+4D4D4D4D4D4D4D4D4D4D4D4D3B3B3B3B3B3B3B3B3B373737373737373737474747474747474747
+5D5D5D5D5D5D5D5D5D6C6C6C6C6C6C6C6C6C6C6C6C6F6F6F6F6F6F6F6F6F727272727272727272
+7C7C7C7C7C7C7C7C7C8484848484848484848484849090909090909090908F8F8F8F8F8F8F8F8F
+8E8E8E8E8E8E8E8E8EA2A2A2A2A2A2A2A2A2B2B2B2B2B2B2B2B2B2B2B2B2B6B6B6B6B6B6B6B6B6
+B8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAE
+B0B1B0B0B1B0B0B1B0BDBDBDBDBDBDBDBDBDC7C7C7C7C7C7C7C7C7CCCCCCCCCCCCCCCCCCCCCCCC
+CBCBCBCBCBCBCBCBCBC6C6C6C6C6C6C6C6C6C0C0C0C0C0C0C0C0C0B8B8B8B8B8B8B8B8B8B0B0B0
+B0B0B0B0B0B0B0B0B0B0B1B0B0B1B0B0B1B0AFAFAFAFAFAFAFAFAFAAAAAAAAAAAAAAAAAAB1B1B1
+B1B1B1B1B1B1D0D0D0D0D0D0D0D0D0D0D0D0F5F5F5F5F5F5F5F5F5FEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFA
+FAFAFAFAFAFAD0D0D0D0D0D0D0D0D0E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8
+E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5
+E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0
+E0E0E0E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0DFE0DFDFE0DF
+DFE0DFDFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDDDDDDDDDDDD
+DDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBD8D8D8D8D8D8
+D8D8D8CECECECECECECECECEAEAEAEAEAEAEAEAEAE909090909090909090898989898989898989
+8989898888888888888888887D7D7D7D7D7D7D7D7D7A7A7A7A7A7A7A7A7A818181818181818181
+848484848484848484848484838383838383838383838383838383838383848484848484848484
+848484848484848484848484888888888888888888939393939393939393A1A1A1A1A1A1A1A1A1
+ACACACACACACACACACB5B5B5B5B5B5B5B5B5B5B5B5BEBEBEBEBEBEBEBEBEC6C6C6C6C6C6C6C6C6
+CACACACACACACACACAC5C5C5C5C5C5C5C5C5B9B9B9B9B9B9B9B9B9B9B9B9A0A0A0A0A0A0A0A0A0
+7D7D7D7D7D7D7D7D7D6B6B6B6B6B6B6B6B6B6C6C6C6C6C6C6C6C6C6C6C6C767676767676767676
+7777777777777777776A6A6A6A6A6A6A6A6A585858585858585858494949494949494949494949
+4C4C4C4C4C4C4C4C4C5151515151515151515555555555555555555C5C5C5C5C5C5C5C5C636363
+636363636363636363616161616161616161676767676767676767808080808080808080949494
+9494949494949494949E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9F9F9F9F9F9F9F9F9FA8A8A8
+A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAAAAAAAB0B0B0B0B0B0B0B0B0B2B2B2B2B2B2B2B2B2B6B6B6
+B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4B4B4B4B6B6B6B6B6B6B6B6B6BFBFBF
+BFBFBFBFBFBFC9C9C9C9C9C9C9C9C9CCCCCCCCCCCCCCCCCCCCCCCCC9C9C9C9C9C9C9C9C9C2C2C2
+C2C2C2C2C2C2BDBDBDBDBDBDBDBDBDB5B5B5B5B5B5B5B5B5AFAFAFAFAFAFAFAFAFAFAFAFB0B1B0
+B0B1B0B0B1B0AFAFAFAFAFAFAFAFAFAAAAAAAAAAAAAAAAAAB9B9B9B9B9B9B9B9B9E8E8E8E8E8E8
+E8E8E8E8E8E8FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACA
+CACACAE8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
+E8E8E8E6E6E6E6E6E6E6E6E6E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5
+E5E5E5E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E2E2E2E2E2E2E2E2E2
+E2E2E2E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0E1E1E1E1E1E1E1E1E1
+E1E1E1E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DF
+DFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDC
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBD8D8D8D8D8D8D8D8D8CECECECECECECECECE
+AEAEAEAEAEAEAEAEAE909090909090909090898989898989898989898989888888888888888888
+7D7D7D7D7D7D7D7D7D7A7A7A7A7A7A7A7A7A818181818181818181848484848484848484848484
+838383838383838383838383838383838383848484848484848484848484848484848484848484
+888888888888888888939393939393939393A1A1A1A1A1A1A1A1A1ACACACACACACACACACB5B5B5
+B5B5B5B5B5B5B5B5B5BEBEBEBEBEBEBEBEBEC6C6C6C6C6C6C6C6C6CACACACACACACACACAC5C5C5
+C5C5C5C5C5C5B9B9B9B9B9B9B9B9B9B9B9B9A0A0A0A0A0A0A0A0A07D7D7D7D7D7D7D7D7D6B6B6B
+6B6B6B6B6B6B6C6C6C6C6C6C6C6C6C6C6C6C7676767676767676767777777777777777776A6A6A
+6A6A6A6A6A6A5858585858585858584949494949494949494949494C4C4C4C4C4C4C4C4C515151
+5151515151515555555555555555555C5C5C5C5C5C5C5C5C636363636363636363636363616161
+6161616161616767676767676767678080808080808080809494949494949494949494949E9E9E
+9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9F9F9F9F9F9F9F9F9FA8A8A8A8A8A8A8A8A8AAAAAAAAAAAA
+AAAAAAAAAAAAB0B0B0B0B0B0B0B0B0B2B2B2B2B2B2B2B2B2B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8
+B8B8B8B4B4B4B4B4B4B4B4B4B4B4B4B6B6B6B6B6B6B6B6B6BFBFBFBFBFBFBFBFBFC9C9C9C9C9C9
+C9C9C9CCCCCCCCCCCCCCCCCCCCCCCCC9C9C9C9C9C9C9C9C9C2C2C2C2C2C2C2C2C2BDBDBDBDBDBD
+BDBDBDB5B5B5B5B5B5B5B5B5AFAFAFAFAFAFAFAFAFAFAFAFB0B1B0B0B1B0B0B1B0AFAFAFAFAFAF
+AFAFAFAAAAAAAAAAAAAAAAAAB9B9B9B9B9B9B9B9B9E8E8E8E8E8E8E8E8E8E8E8E8FDFDFDFDFDFD
+FDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACACACACAE8E9E8E8E9E8E8E9E8
+E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6
+E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5E5
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2
+E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1
+E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDFDFDF
+DFDFDFDFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBD8D8D8D8D8D8D8D8D8CECECECECECECECECEAEAEAEAEAEAEAEAEAE909090
+9090909090908989898989898989898989898888888888888888887D7D7D7D7D7D7D7D7D7A7A7A
+7A7A7A7A7A7A818181818181818181848484848484848484848484838383838383838383838383
+838383838383848484848484848484848484848484848484848484888888888888888888939393
+939393939393A1A1A1A1A1A1A1A1A1ACACACACACACACACACB5B5B5B5B5B5B5B5B5B5B5B5BEBEBE
+BEBEBEBEBEBEC6C6C6C6C6C6C6C6C6CACACACACACACACACAC5C5C5C5C5C5C5C5C5B9B9B9B9B9B9
+B9B9B9B9B9B9A0A0A0A0A0A0A0A0A07D7D7D7D7D7D7D7D7D6B6B6B6B6B6B6B6B6B6C6C6C6C6C6C
+6C6C6C6C6C6C7676767676767676767777777777777777776A6A6A6A6A6A6A6A6A585858585858
+5858584949494949494949494949494C4C4C4C4C4C4C4C4C515151515151515151555555555555
+5555555C5C5C5C5C5C5C5C5C636363636363636363636363616161616161616161676767676767
+6767678080808080808080809494949494949494949494949E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
+9E9E9E9F9F9F9F9F9F9F9F9FA8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAAAAAAAB0B0B0B0B0B0
+B0B0B0B2B2B2B2B2B2B2B2B2B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4
+B4B4B4B6B6B6B6B6B6B6B6B6BFBFBFBFBFBFBFBFBFC9C9C9C9C9C9C9C9C9CCCCCCCCCCCCCCCCCC
+CCCCCCC9C9C9C9C9C9C9C9C9C2C2C2C2C2C2C2C2C2BDBDBDBDBDBDBDBDBDB5B5B5B5B5B5B5B5B5
+AFAFAFAFAFAFAFAFAFAFAFAFB0B1B0B0B1B0B0B1B0AFAFAFAFAFAFAFAFAFAAAAAAAAAAAAAAAAAA
+B9B9B9B9B9B9B9B9B9E8E8E8E8E8E8E8E8E8E8E8E8FDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9CACACACACACACACACAE8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E8E8E8
+E8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E5E5E5
+E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E2E2E2
+E2E2E2E2E2E2E0E0E0E0E0E0E0E0E0E0E0E0E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0E1E1E1
+E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DF
+DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDDDDDDDCDCDC
+DCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADADADADAD8D8D8
+D8D8D8D8D8D8D2D2D2D2D2D2D2D2D2BCBCBCBCBCBCBCBCBC9B9B9B9B9B9B9B9B9B8F8F8F8F8F8F
+8F8F8F8F8F8F909090909090909090898989898989898989828282828282828282828282828282
+828282848484848484848484848484828282828282828282828282828282828282838383838383
+8383838282828282828282828282828585858585858585859090909090909090909C9C9C9C9C9C
+9C9C9CA6A6A6A6A6A6A6A6A6ADADADADADADADADADADADADB6B6B6B6B6B6B6B6B6BFBFBFBFBFBF
+BFBFBFC1C1C1C1C1C1C1C1C1BBBBBBBBBBBBBBBBBBAFAFAFAFAFAFAFAFAFAFAFAF919191919191
+9191917272727272727272726969696969696969696F6F6F6F6F6F6F6F6F6F6F6F7B7B7B7B7B7B
+7B7B7B7D7D7D7D7D7D7D7D7D757575757575757575646464646464646464565656565656565656
+5656565D5D5D5D5D5D5D5D5D6666666666666666666363636363636363635D5D5D5D5D5D5D5D5D
+5B5B5B5B5B5B5B5B5B5B5B5B5656565656565656565D5D5D5D5D5D5D5D5D787878787878787878
+8B8B8B8B8B8B8B8B8B8B8B8B9292929292929292929898989898989898989E9E9E9E9E9E9E9E9E
+A2A2A2A2A2A2A2A2A2A3A3A3A3A3A3A3A3A3A3A3A3A9A9A9A9A9A9A9A9A9ADADADADADADADADAD
+B4B4B4B4B4B4B4B4B4B6B6B6B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8
+C3C3C3C3C3C3C3C3C3CBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCC7C7C7C7C7C7C7C7C7
+BFBFBFBFBFBFBFBFBFB9B9B9B9B9B9B9B9B9B3B3B3B3B3B3B3B3B3B0B0B0B0B0B0B0B0B0B0B0B0
+B0B1B0B0B1B0B0B1B0AFAFAFAFAFAFAFAFAFABABABABABABABABABBFBFBFBFBFBFBFBFBFF1F1F1
+F1F1F1F1F1F1F1F1F1FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BDBDBD
+BDBDBDBDBDBDE8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E8E8E8E7E7E7
+E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E2E2E2E2E2E2E2E2E2E0E0E0E0E0E0
+E0E0E0E0E0E0E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0
+E0E0E0DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DF
+DFE0DFDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADADADADAD8D8D8D8D8D8D8D8D8D2D2D2D2D2D2
+D2D2D2BCBCBCBCBCBCBCBCBC9B9B9B9B9B9B9B9B9B8F8F8F8F8F8F8F8F8F8F8F8F909090909090
+909090898989898989898989828282828282828282828282828282828282848484848484848484
+848484828282828282828282828282828282828282838383838383838383828282828282828282
+8282828585858585858585859090909090909090909C9C9C9C9C9C9C9C9CA6A6A6A6A6A6A6A6A6
+ADADADADADADADADADADADADB6B6B6B6B6B6B6B6B6BFBFBFBFBFBFBFBFBFC1C1C1C1C1C1C1C1C1
+BBBBBBBBBBBBBBBBBBAFAFAFAFAFAFAFAFAFAFAFAF919191919191919191727272727272727272
+6969696969696969696F6F6F6F6F6F6F6F6F6F6F6F7B7B7B7B7B7B7B7B7B7D7D7D7D7D7D7D7D7D
+7575757575757575756464646464646464645656565656565656565656565D5D5D5D5D5D5D5D5D
+6666666666666666666363636363636363635D5D5D5D5D5D5D5D5D5B5B5B5B5B5B5B5B5B5B5B5B
+5656565656565656565D5D5D5D5D5D5D5D5D7878787878787878788B8B8B8B8B8B8B8B8B8B8B8B
+9292929292929292929898989898989898989E9E9E9E9E9E9E9E9EA2A2A2A2A2A2A2A2A2A3A3A3
+A3A3A3A3A3A3A3A3A3A9A9A9A9A9A9A9A9A9ADADADADADADADADADB4B4B4B4B4B4B4B4B4B6B6B6
+B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8C3C3C3C3C3C3C3C3C3CBCBCB
+CBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCC7C7C7C7C7C7C7C7C7BFBFBFBFBFBFBFBFBFB9B9B9
+B9B9B9B9B9B9B3B3B3B3B3B3B3B3B3B0B0B0B0B0B0B0B0B0B0B0B0B0B1B0B0B1B0B0B1B0AFAFAF
+AFAFAFAFAFAFABABABABABABABABABBFBFBFBFBFBFBFBFBFF1F1F1F1F1F1F1F1F1F1F1F1FEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BDBDBDBDBDBDBDBDBDE8E9E8E8E9E8
+E8E9E8E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3
+E3E3E3E3E3E3E3E3E3E3E3E3E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0E0E0E0DFE0DFDFE0DF
+DFE0DFDFDFDFDFDFDFDFDFDFDFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDE
+DEDEDEDFDFDFDFDFDFDFDFDFDFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDD
+DCDCDCDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADA
+D9D9D9D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D4D4D4D4D4D4D4D4D4C5C5C5C5C5C5C5C5C5
+A4A4A4A4A4A4A4A4A4929292929292929292929292949494949494949494929292929292929292
+8E8E8E8E8E8E8E8E8E868686868686868686848484848484848484848484818181818181818181
+818181818181818181818181818181818181808080808080808080808080838383838383838383
+8B8B8B8B8B8B8B8B8B969696969696969696A1A1A1A1A1A1A1A1A1A8A8A8A8A8A8A8A8A8A8A8A8
+AFAFAFAFAFAFAFAFAFB6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5A6A6A6
+A6A6A6A6A6A6A6A6A68686868686868686866D6D6D6D6D6D6D6D6D6B6B6B6B6B6B6B6B6B747474
+7474747474747474747C7C7C7C7C7C7C7C7C7A7A7A7A7A7A7A7A7A7676767676767676766E6E6E
+6E6E6E6E6E6E656565656565656565656565646464646464646464666666666666666666616161
+6161616161615959595959595959595454545454545454545454545555555555555555555F605F
+5F605F5F605F7171717171717171718181818181818181818181818D8D8D8D8D8D8D8D8D959595
+9595959595959A9A9A9A9A9A9A9A9A9E9E9E9E9E9E9E9E9EA2A2A2A2A2A2A2A2A2A2A2A2A8A8A8
+A8A8A8A8A8A8A9A9A9A9A9A9A9A9A9AEAEAEAEAEAEAEAEAEAFAFAFAFAFAFAFAFAFB0B0B0B0B0B0
+B0B0B0B0B0B0B6B6B6B6B6B6B6B6B6BFBFBFBFBFBFBFBFBFC6C6C6C6C6C6C6C6C6CBCBCBCBCBCB
+CBCBCBCBCBCBC7C7C7C7C7C7C7C7C7C0C0C0C0C0C0C0C0C0B8B8B8B8B8B8B8B8B8B3B3B3B3B3B3
+B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B2B2B2B2B2B2B2B2B2B0B0B0B0B0B0B0B0B0A9A9A9A9A9A9
+A9A9A9BEBEBEBEBEBEBEBEBEF0F0F0F0F0F0F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7
+E8E8E8E8E8E8E8E8E8E8E8E8E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3
+E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDF
+DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDEDEDEDFDFDFDFDFDFDFDFDF
+DFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDCDCDC
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9
+D7D7D7D7D7D7D7D7D7D4D4D4D4D4D4D4D4D4C5C5C5C5C5C5C5C5C5A4A4A4A4A4A4A4A4A4929292
+9292929292929292929494949494949494949292929292929292928E8E8E8E8E8E8E8E8E868686
+868686868686848484848484848484848484818181818181818181818181818181818181818181
+8181818181818080808080808080808080808383838383838383838B8B8B8B8B8B8B8B8B969696
+969696969696A1A1A1A1A1A1A1A1A1A8A8A8A8A8A8A8A8A8A8A8A8AFAFAFAFAFAFAFAFAFB6B6B6
+B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5A6A6A6A6A6A6A6A6A6A6A6A6868686
+8686868686866D6D6D6D6D6D6D6D6D6B6B6B6B6B6B6B6B6B7474747474747474747474747C7C7C
+7C7C7C7C7C7C7A7A7A7A7A7A7A7A7A7676767676767676766E6E6E6E6E6E6E6E6E656565656565
+656565656565646464646464646464666666666666666666616161616161616161595959595959
+5959595454545454545454545454545555555555555555555F605F5F605F5F605F717171717171
+7171718181818181818181818181818D8D8D8D8D8D8D8D8D9595959595959595959A9A9A9A9A9A
+9A9A9A9E9E9E9E9E9E9E9E9EA2A2A2A2A2A2A2A2A2A2A2A2A8A8A8A8A8A8A8A8A8A9A9A9A9A9A9
+A9A9A9AEAEAEAEAEAEAEAEAEAFAFAFAFAFAFAFAFAFB0B0B0B0B0B0B0B0B0B0B0B0B6B6B6B6B6B6
+B6B6B6BFBFBFBFBFBFBFBFBFC6C6C6C6C6C6C6C6C6CBCBCBCBCBCBCBCBCBCBCBCBC7C7C7C7C7C7
+C7C7C7C0C0C0C0C0C0C0C0C0B8B8B8B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1
+B1B1B1B2B2B2B2B2B2B2B2B2B0B0B0B0B0B0B0B0B0A9A9A9A9A9A9A9A9A9BEBEBEBEBEBEBEBEBE
+F0F0F0F0F0F0F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+C7C7C7C7C7C7C7C7C7E8E9E8E8E9E8E8E9E8E7E7E7E7E7E7E7E7E7E8E8E8E8E8E8E8E8E8E8E8E8
+E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E1E1E1E1E1E1E1E1E1E0E0E0
+E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDFE0DFDFE0DFDFE0DFDFDFDF
+DFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDEDEDEDFDFDFDFDFDFDFDFDFDFE0DFDFE0DFDFE0DFDEDEDE
+DEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D4D4D4
+D4D4D4D4D4D4C5C5C5C5C5C5C5C5C5A4A4A4A4A4A4A4A4A4929292929292929292929292949494
+9494949494949292929292929292928E8E8E8E8E8E8E8E8E868686868686868686848484848484
+848484848484818181818181818181818181818181818181818181818181818181808080808080
+8080808080808383838383838383838B8B8B8B8B8B8B8B8B969696969696969696A1A1A1A1A1A1
+A1A1A1A8A8A8A8A8A8A8A8A8A8A8A8AFAFAFAFAFAFAFAFAFB6B6B6B6B6B6B6B6B6B8B8B8B8B8B8
+B8B8B8B5B5B5B5B5B5B5B5B5A6A6A6A6A6A6A6A6A6A6A6A68686868686868686866D6D6D6D6D6D
+6D6D6D6B6B6B6B6B6B6B6B6B7474747474747474747474747C7C7C7C7C7C7C7C7C7A7A7A7A7A7A
+7A7A7A7676767676767676766E6E6E6E6E6E6E6E6E656565656565656565656565646464646464
+646464666666666666666666616161616161616161595959595959595959545454545454545454
+5454545555555555555555555F605F5F605F5F605F717171717171717171818181818181818181
+8181818D8D8D8D8D8D8D8D8D9595959595959595959A9A9A9A9A9A9A9A9A9E9E9E9E9E9E9E9E9E
+A2A2A2A2A2A2A2A2A2A2A2A2A8A8A8A8A8A8A8A8A8A9A9A9A9A9A9A9A9A9AEAEAEAEAEAEAEAEAE
+AFAFAFAFAFAFAFAFAFB0B0B0B0B0B0B0B0B0B0B0B0B6B6B6B6B6B6B6B6B6BFBFBFBFBFBFBFBFBF
+C6C6C6C6C6C6C6C6C6CBCBCBCBCBCBCBCBCBCBCBCBC7C7C7C7C7C7C7C7C7C0C0C0C0C0C0C0C0C0
+B8B8B8B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B2B2B2B2B2B2B2B2B2
+B0B0B0B0B0B0B0B0B0A9A9A9A9A9A9A9A9A9BEBEBEBEBEBEBEBEBEF0F0F0F0F0F0F0F0F0F0F0F0
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7E7E7E7
+E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E4E4E4
+E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E2E2E2E2E2E2E2E2E2E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DFDFDFDF
+DFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDDDDDDDDDDDD
+DDDDDDDDDDDDDEDEDEDEDEDEDEDEDEDFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDDDDDDDDDDDD
+DDDDDDDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADA
+DADADAD8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D4D4D4D4D4D4D4D4D4C8C8C8C8C8C8
+C8C8C8A6A6A6A6A6A6A6A6A69090909090909090909090909090909090909090908E8E8E8E8E8E
+8E8E8E8E8E8E8E8E8E8E8E8E858585858585858585848484848484848484848484818181818181
+8181817F7F7F7F7F7F7F7F7F7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E818181818181
+8181818686868686868686869090909090909090909B9B9B9B9B9B9B9B9BA2A2A2A2A2A2A2A2A2
+A2A2A2A8A8A8A8A8A8A8A8A8AEAEAEAEAEAEAEAEAEB0B1B0B0B1B0B0B1B0AEAEAEAEAEAEAEAEAE
+9E9E9E9E9E9E9E9E9E9E9E9E8181818181818181816F6F6F6F6F6F6F6F6F707070707070707070
+7878787878787878787878787A7A7A7A7A7A7A7A7A777777777777777777737373737373737373
+707070707070707070696969696969696969696969646464646464646464626262626262626262
+5F605F5F605F5F605F5E5E5E5E5E5E5E5E5E626262626262626262626262676767676767676767
+6E6E6E6E6E6E6E6E6E787878787878787878888888888888888888888888979797979797979797
+9D9D9D9D9D9D9D9D9D9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9EA3A3A3A3A3A3A3A3A3A3A3A3
+A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAABABAB
+ABABABABABABABABABACACACACACACACACACB5B5B5B5B5B5B5B5B5BFBFBFBFBFBFBFBFBFC7C7C7
+C7C7C7C7C7C7C7C7C7C6C6C6C6C6C6C6C6C6BFBFBFBFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B4B4B4
+B4B4B4B4B4B4B3B3B3B3B3B3B3B3B3B3B3B3B4B4B4B4B4B4B4B4B4B0B0B0B0B0B0B0B0B0A8A8A8
+A8A8A8A8A8A8BBBBBBBBBBBBBBBBBBEEEEEEEEEEEEEEEEEEEEEEEEFDFDFDFDFDFDFDFDFDFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7
+E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3
+E3E3E3E3E3E3E3E3E3E3E3E3E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E2E2E2E2E2E2
+E2E2E2E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDEDEDEDEDEDE
+DEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDDDDDDDEDEDEDEDEDE
+DEDEDEDFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADAD8D8D8D8D8D8D8D8D8
+D8D8D8D7D7D7D7D7D7D7D7D7D4D4D4D4D4D4D4D4D4C8C8C8C8C8C8C8C8C8A6A6A6A6A6A6A6A6A6
+9090909090909090909090909090909090909090908E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
+8585858585858585858484848484848484848484848181818181818181817F7F7F7F7F7F7F7F7F
+7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E818181818181818181868686868686868686
+9090909090909090909B9B9B9B9B9B9B9B9BA2A2A2A2A2A2A2A2A2A2A2A2A8A8A8A8A8A8A8A8A8
+AEAEAEAEAEAEAEAEAEB0B1B0B0B1B0B0B1B0AEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E
+8181818181818181816F6F6F6F6F6F6F6F6F707070707070707070787878787878787878787878
+7A7A7A7A7A7A7A7A7A777777777777777777737373737373737373707070707070707070696969
+6969696969696969696464646464646464646262626262626262625F605F5F605F5F605F5E5E5E
+5E5E5E5E5E5E6262626262626262626262626767676767676767676E6E6E6E6E6E6E6E6E787878
+7878787878788888888888888888888888889797979797979797979D9D9D9D9D9D9D9D9D9C9C9C
+9C9C9C9C9C9C9E9E9E9E9E9E9E9E9EA3A3A3A3A3A3A3A3A3A3A3A3A4A4A4A4A4A4A4A4A4A6A6A6
+A6A6A6A6A6A6A8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAABABABABABABABABABABABABACACAC
+ACACACACACACB5B5B5B5B5B5B5B5B5BFBFBFBFBFBFBFBFBFC7C7C7C7C7C7C7C7C7C7C7C7C6C6C6
+C6C6C6C6C6C6BFBFBFBFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4B3B3B3B3B3B3
+B3B3B3B3B3B3B4B4B4B4B4B4B4B4B4B0B0B0B0B0B0B0B0B0A8A8A8A8A8A8A8A8A8BBBBBBBBBBBB
+BBBBBBEEEEEEEEEEEEEEEEEEEEEEEEFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFB
+FBFBFBD7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7
+E7E7E7E5E5E5E5E5E5E5E5E5E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3E3
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E2E2E2E2E2E2E2E2E2E0E0E0E0E0E0E0E0E0
+DFE0DFDFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDE
+DEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDDDDDDDEDEDEDEDEDEDEDEDEDFE0DFDFE0DFDFE0DF
+DEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDADADADADADADADADAD8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7
+D4D4D4D4D4D4D4D4D4C8C8C8C8C8C8C8C8C8A6A6A6A6A6A6A6A6A6909090909090909090909090
+9090909090909090908E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E858585858585858585848484
+8484848484848484848181818181818181817F7F7F7F7F7F7F7F7F7E7E7E7E7E7E7E7E7E7E7E7E
+7E7E7E7E7E7E7E7E7E8181818181818181818686868686868686869090909090909090909B9B9B
+9B9B9B9B9B9BA2A2A2A2A2A2A2A2A2A2A2A2A8A8A8A8A8A8A8A8A8AEAEAEAEAEAEAEAEAEB0B1B0
+B0B1B0B0B1B0AEAEAEAEAEAEAEAEAE9E9E9E9E9E9E9E9E9E9E9E9E8181818181818181816F6F6F
+6F6F6F6F6F6F7070707070707070707878787878787878787878787A7A7A7A7A7A7A7A7A777777
+777777777777737373737373737373707070707070707070696969696969696969696969646464
+6464646464646262626262626262625F605F5F605F5F605F5E5E5E5E5E5E5E5E5E626262626262
+6262626262626767676767676767676E6E6E6E6E6E6E6E6E787878787878787878888888888888
+8888888888889797979797979797979D9D9D9D9D9D9D9D9D9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E
+9E9E9EA3A3A3A3A3A3A3A3A3A3A3A3A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A8A8A8A8A8A8
+A8A8A8AAAAAAAAAAAAAAAAAAABABABABABABABABABABABABACACACACACACACACACB5B5B5B5B5B5
+B5B5B5BFBFBFBFBFBFBFBFBFC7C7C7C7C7C7C7C7C7C7C7C7C6C6C6C6C6C6C6C6C6BFBFBFBFBFBF
+BFBFBFB8B8B8B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4B3B3B3B3B3B3B3B3B3B3B3B3B4B4B4B4B4B4
+B4B4B4B0B0B0B0B0B0B0B0B0A8A8A8A8A8A8A8A8A8BBBBBBBBBBBBBBBBBBEEEEEEEEEEEEEEEEEE
+EEEEEEFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD7D7D7D7D7D7D7D7D7
+E6E6E6E6E6E6E6E6E6E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5
+E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1
+E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDFDFDF
+DEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDFDFDFDFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDDDDDD
+DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDC
+DCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9
+D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D3D3D3D3D3D3D3D3D3C7C7C7
+C7C7C7C7C7C79E9E9E9E9E9E9E9E9E8484848484848484848484848A8A8A8A8A8A8A8A8A8B8B8B
+8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B848484848484848484828282828282828282828282818181
+8181818181817F7F7F7F7F7F7F7F7F7D7D7D7D7D7D7D7D7D7C7C7C7C7C7C7C7C7C7C7C7C7E7E7E
+7E7E7E7E7E7E8383838383838383838C8C8C8C8C8C8C8C8C9595959595959595959E9E9E9E9E9E
+9E9E9E9E9E9EA1A1A1A1A1A1A1A1A1A7A7A7A7A7A7A7A7A7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAA9B9B9B9B9B9B9B9B9B9B9B9B818181818181818181737373737373737373777777777777
+7777777B7B7B7B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A767676767676767676707070707070
+7070706C6C6C6C6C6C6C6C6C696969696969696969696969666666666666666666646464646464
+6464646969696969696969697070707070707070707474747474747474747474747A7A7A7A7A7A
+7A7A7A7E7E7E7E7E7E7E7E7E878787878787878787959595959595959595959595A0A0A0A0A0A0
+A0A0A0A0A0A0A0A0A0A0A0A09E9E9E9E9E9E9E9E9EA1A1A1A1A1A1A1A1A1A3A3A3A3A3A3A3A3A3
+A3A3A3A3A3A3A3A3A3A3A3A3A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
+A1A1A1A1A1A1A1A1A1A1A1A1A2A2A2A2A2A2A2A2A2ACACACACACACACACACB8B8B8B8B8B8B8B8B8
+C2C2C2C2C2C2C2C2C2C2C2C2C4C4C4C4C4C4C4C4C4BEBEBEBEBEBEBEBEBEB8B8B8B8B8B8B8B8B8
+B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5ADADADADADADADADAD
+A6A6A6A6A6A6A6A6A6BBBBBBBBBBBBBBBBBBEFEFEFEFEFEFEFEFEFEFEFEFFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACACACACAE6E6E6E6E6E6E6E6E6E7E7E7
+E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E5E5E5E5E5E5E5E5E5E3E3E3E3E3E3E3E3E3E2E2E2
+E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1
+E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDEDEDE
+DEDEDEDEDEDEDFDFDFDFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
+DDDDDDDDDDDDDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDB
+DBDBDBDBDBDBD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8
+D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D3D3D3D3D3D3D3D3D3C7C7C7C7C7C7C7C7C79E9E9E9E9E9E
+9E9E9E8484848484848484848484848A8A8A8A8A8A8A8A8A8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B
+8B8B8B8484848484848484848282828282828282828282828181818181818181817F7F7F7F7F7F
+7F7F7F7D7D7D7D7D7D7D7D7D7C7C7C7C7C7C7C7C7C7C7C7C7E7E7E7E7E7E7E7E7E838383838383
+8383838C8C8C8C8C8C8C8C8C9595959595959595959E9E9E9E9E9E9E9E9E9E9E9EA1A1A1A1A1A1
+A1A1A1A7A7A7A7A7A7A7A7A7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9B9B9B9B9B9B9B9B9B
+9B9B9B8181818181818181817373737373737373737777777777777777777B7B7B7B7B7B7B7B7B
+7B7B7B7A7A7A7A7A7A7A7A7A7676767676767676767070707070707070706C6C6C6C6C6C6C6C6C
+696969696969696969696969666666666666666666646464646464646464696969696969696969
+7070707070707070707474747474747474747474747A7A7A7A7A7A7A7A7A7E7E7E7E7E7E7E7E7E
+878787878787878787959595959595959595959595A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0
+9E9E9E9E9E9E9E9E9EA1A1A1A1A1A1A1A1A1A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3
+A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A1A1A1A1A1A1A1A1A1A1A1A1
+A2A2A2A2A2A2A2A2A2ACACACACACACACACACB8B8B8B8B8B8B8B8B8C2C2C2C2C2C2C2C2C2C2C2C2
+C4C4C4C4C4C4C4C4C4BEBEBEBEBEBEBEBEBEB8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B5B5B5
+B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5ADADADADADADADADADA6A6A6A6A6A6A6A6A6BBBBBB
+BBBBBBBBBBBBEFEFEFEFEFEFEFEFEFEFEFEFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9CACACACACACACACACAE4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E1E1E1E1E1E1E1E1E1DFE0DFDFE0DF
+DFE0DFE1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFE0DFDFE0DF
+DFE0DFDEDEDEDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEDEDEDEDEDE
+DEDEDEDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDC
+DCDCDCDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDADADADADADADADADADADADAD9D9D9D9D9D9
+D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D7D7D7D5D5D5D5D5D5D5D5D5CACACACACACACACACAA0A0A0A0A0A0A0A0A0767676767676767676
+7676767E7E7E7E7E7E7E7E7E8A8A8A8A8A8A8A8A8A8C8C8C8C8C8C8C8C8C868686868686868686
+8383838383838383838383838181818181818181818080808080808080807E7E7E7E7E7E7E7E7E
+7C7C7C7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D808080808080808080878787878787878787
+9090909090909090909999999999999999999999999D9D9D9D9D9D9D9D9DA1A1A1A1A1A1A1A1A1
+A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A59A9A9A9A9A9A9A9A9A9A9A9A868686868686868686
+7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7B7B7B7B7B7B7B7B7B
+7676767676767676767171717171717171716E6E6E6E6E6E6E6E6E727272727272727272727272
+7171717171717171716F6F6F6F6F6F6F6F6F757575757575757575818181818181818181848484
+8484848484848484848B8B8B8B8B8B8B8B8B929292929292929292999999999999999999A1A1A1
+A1A1A1A1A1A1A1A1A1A8A8A8A8A8A8A8A8A8A6A6A6A6A6A6A6A6A6A2A2A2A2A2A2A2A2A2A7A7A7
+A7A7A7A7A7A7A8A8A8A8A8A8A8A8A8A8A8A8A7A7A7A7A7A7A7A7A7A3A3A3A3A3A3A3A3A3A1A1A1
+A1A1A1A1A1A1A1A1A1A1A1A1A1A1A19A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AA4A4A4
+A4A4A4A4A4A4B1B1B1B1B1B1B1B1B1B9B9B9B9B9B9B9B9B9B9B9B9BFBFBFBFBFBFBFBFBFBFBFBF
+BFBFBFBFBFBFB9B9B9B9B9B9B9B9B9B7B7B7B7B7B7B7B7B7B6B6B6B6B6B6B6B6B6B6B6B6B4B4B4
+B4B4B4B4B4B4ABABABABABABABABABA3A3A3A3A3A3A3A3A3BABABABABABABABABAF0F0F0F0F0F0
+F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD4D4D4D4D4D4
+D4D4D4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E3E3E3E3E3E3E3E3E3E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFE1E1E1E1E1E1E1E1E1
+E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDE
+DEDEDEDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDD
+DCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDC
+DBDBDBDBDBDBDBDBDBDADADADADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9
+D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D5D5D5D5D5D5D5D5D5
+CACACACACACACACACAA0A0A0A0A0A0A0A0A07676767676767676767676767E7E7E7E7E7E7E7E7E
+8A8A8A8A8A8A8A8A8A8C8C8C8C8C8C8C8C8C868686868686868686838383838383838383838383
+8181818181818181818080808080808080807E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C7C7C7C
+7D7D7D7D7D7D7D7D7D808080808080808080878787878787878787909090909090909090999999
+9999999999999999999D9D9D9D9D9D9D9D9DA1A1A1A1A1A1A1A1A1A5A5A5A5A5A5A5A5A5A5A5A5
+A5A5A5A5A5A59A9A9A9A9A9A9A9A9A9A9A9A8686868686868686867C7C7C7C7C7C7C7C7C7D7D7D
+7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7B7B7B7B7B7B7B7B7B767676767676767676717171
+7171717171716E6E6E6E6E6E6E6E6E7272727272727272727272727171717171717171716F6F6F
+6F6F6F6F6F6F7575757575757575758181818181818181818484848484848484848484848B8B8B
+8B8B8B8B8B8B929292929292929292999999999999999999A1A1A1A1A1A1A1A1A1A1A1A1A8A8A8
+A8A8A8A8A8A8A6A6A6A6A6A6A6A6A6A2A2A2A2A2A2A2A2A2A7A7A7A7A7A7A7A7A7A8A8A8A8A8A8
+A8A8A8A8A8A8A7A7A7A7A7A7A7A7A7A3A3A3A3A3A3A3A3A3A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1
+A1A1A19A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AA4A4A4A4A4A4A4A4A4B1B1B1B1B1B1
+B1B1B1B9B9B9B9B9B9B9B9B9B9B9B9BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFB9B9B9B9B9B9
+B9B9B9B7B7B7B7B7B7B7B7B7B6B6B6B6B6B6B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4ABABABABABAB
+ABABABA3A3A3A3A3A3A3A3A3BABABABABABABABABAF0F0F0F0F0F0F0F0F0F0F0F0FEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD4D4D4D4D4D4D4D4D4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3
+E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFE1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1
+E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDD
+DDDDDDDDDDDDDDDDDDDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDCDCDC
+DCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDADADA
+DADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D5D5D5D5D5D5D5D5D5CACACACACACACACACAA0A0A0
+A0A0A0A0A0A07676767676767676767676767E7E7E7E7E7E7E7E7E8A8A8A8A8A8A8A8A8A8C8C8C
+8C8C8C8C8C8C868686868686868686838383838383838383838383818181818181818181808080
+8080808080807E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D808080
+8080808080808787878787878787879090909090909090909999999999999999999999999D9D9D
+9D9D9D9D9D9DA1A1A1A1A1A1A1A1A1A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A59A9A9A9A9A9A
+9A9A9A9A9A9A8686868686868686867C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D
+7D7D7D7D7D7D7B7B7B7B7B7B7B7B7B7676767676767676767171717171717171716E6E6E6E6E6E
+6E6E6E7272727272727272727272727171717171717171716F6F6F6F6F6F6F6F6F757575757575
+7575758181818181818181818484848484848484848484848B8B8B8B8B8B8B8B8B929292929292
+929292999999999999999999A1A1A1A1A1A1A1A1A1A1A1A1A8A8A8A8A8A8A8A8A8A6A6A6A6A6A6
+A6A6A6A2A2A2A2A2A2A2A2A2A7A7A7A7A7A7A7A7A7A8A8A8A8A8A8A8A8A8A8A8A8A7A7A7A7A7A7
+A7A7A7A3A3A3A3A3A3A3A3A3A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A19A9A9A9A9A9A9A9A9A
+9A9A9A9A9A9A9A9A9A9A9A9AA4A4A4A4A4A4A4A4A4B1B1B1B1B1B1B1B1B1B9B9B9B9B9B9B9B9B9
+B9B9B9BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFB9B9B9B9B9B9B9B9B9B7B7B7B7B7B7B7B7B7
+B6B6B6B6B6B6B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4ABABABABABABABABABA3A3A3A3A3A3A3A3A3
+BABABABABABABABABAF0F0F0F0F0F0F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FBFBFBFBFBFBFBFBFBD4D4D4D4D4D4D4D4D4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4
+E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1DFE0DF
+DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDEDEDE
+DEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDCDCDCDCDCDCDCDCDCDDDDDDDDDDDDDDDDDDDEDEDE
+DEDEDEDEDEDEDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADADADADAD9D9D9
+D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D5D5D5D5D5D5D5D5D5CECECECECECECECECEB0B0B0B0B0B0B0B0B07A7A7A7A7A7A
+7A7A7A7A7A7A707070707070707070848484848484848484898989898989898989858585858585
+8585858282828282828282828282828181818181818181817F7F7F7F7F7F7F7F7F7D7D7D7D7D7D
+7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D818181818181
+8181818989898989898989899292929292929292929292929999999999999999999E9E9E9E9E9E
+9E9E9EA0A0A0A0A0A0A0A0A0A1A1A1A1A1A1A1A1A19A9A9A9A9A9A9A9A9A9A9A9A8D8D8D8D8D8D
+8D8D8D8585858585858585858181818181818181817E7E7E7E7E7E7E7E7E7E7E7E7C7C7C7C7C7C
+7C7C7C7979797979797979797777777777777777777777777777777777777C7C7C7C7C7C7C7C7C
+7C7C7C7C7C7C7C7C7C7C7C7C7B7B7B7B7B7B7B7B7B828282828282828282919191919191919191
+999999999999999999999999A4A4A4A4A4A4A4A4A4ADADADADADADADADADB0B0B0B0B0B0B0B0B0
+B1B1B1B1B1B1B1B1B1B1B1B1B5B5B5B5B5B5B5B5B5B1B1B1B1B1B1B1B1B1ADADADADADADADADAD
+B0B1B0B0B1B0B0B1B0AFAFAFAFAFAFAFAFAFAFAFAFA8A8A8A8A8A8A8A8A89E9E9E9E9E9E9E9E9E
+9A9A9A9A9A9A9A9A9A999999999999999999909090909090909090909090909090909090909090
+9C9C9C9C9C9C9C9C9CA8A8A8A8A8A8A8A8A8B2B2B2B2B2B2B2B2B2B2B2B2BBBBBBBBBBBBBBBBBB
+BEBEBEBEBEBEBEBEBEB9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7B7B7B7
+B2B2B2B2B2B2B2B2B2A8A8A8A8A8A8A8A8A8A1A1A1A1A1A1A1A1A1B8B8B8B8B8B8B8B8B8EEEEEE
+EEEEEEEEEEEEEEEEEEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE1E1E1
+E1E1E1E1E1E1E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E3E3E3
+E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1DFE0DFDFE0DFDFE0DFDFE0DFDFE0DF
+DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDEDEDEDEDEDE
+DEDEDEDEDEDEDCDCDCDCDCDCDCDCDCDDDDDDDDDDDDDDDDDDDEDEDEDEDEDEDEDEDEDCDCDCDCDCDC
+DCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9
+D9D9D9D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D5D5D5D5D5
+D5D5D5CECECECECECECECECEB0B0B0B0B0B0B0B0B07A7A7A7A7A7A7A7A7A7A7A7A707070707070
+707070848484848484848484898989898989898989858585858585858585828282828282828282
+8282828181818181818181817F7F7F7F7F7F7F7F7F7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D
+7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D818181818181818181898989898989898989
+9292929292929292929292929999999999999999999E9E9E9E9E9E9E9E9EA0A0A0A0A0A0A0A0A0
+A1A1A1A1A1A1A1A1A19A9A9A9A9A9A9A9A9A9A9A9A8D8D8D8D8D8D8D8D8D858585858585858585
+8181818181818181817E7E7E7E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C797979797979797979
+7777777777777777777777777777777777777C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
+7B7B7B7B7B7B7B7B7B828282828282828282919191919191919191999999999999999999999999
+A4A4A4A4A4A4A4A4A4ADADADADADADADADADB0B0B0B0B0B0B0B0B0B1B1B1B1B1B1B1B1B1B1B1B1
+B5B5B5B5B5B5B5B5B5B1B1B1B1B1B1B1B1B1ADADADADADADADADADB0B1B0B0B1B0B0B1B0AFAFAF
+AFAFAFAFAFAFAFAFAFA8A8A8A8A8A8A8A8A89E9E9E9E9E9E9E9E9E9A9A9A9A9A9A9A9A9A999999
+9999999999999090909090909090909090909090909090909090909C9C9C9C9C9C9C9C9CA8A8A8
+A8A8A8A8A8A8B2B2B2B2B2B2B2B2B2B2B2B2BBBBBBBBBBBBBBBBBBBEBEBEBEBEBEBEBEBEB9B9B9
+B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7B7B7B7B2B2B2B2B2B2B2B2B2A8A8A8
+A8A8A8A8A8A8A1A1A1A1A1A1A1A1A1B8B8B8B8B8B8B8B8B8EEEEEEEEEEEEEEEEEEEEEEEEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE1E1E1E1E1E1E1E1E1E3E3E3E3E3E3
+E3E3E3E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1
+E1E1E1E0E0E0E0E0E0E0E0E0DFDFDFDFDFDFDFDFDFDFE0DFDFE0DFDFE0DFDFE0DFDEDEDEDEDEDE
+DEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
+DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADA
+D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D2D2D2D2D2D2D2D2D2
+C3C3C3C3C3C3C3C3C39B9B9B9B9B9B9B9B9B9B9B9B787878787878787878787878787878787878
+8181818181818181818080808080808080807F7F7F7F7F7F7F7F7F7F7F7F808080808080808080
+7E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D7D7D7D7C7C7C7C7C7C7C7C7C
+7B7B7B7B7B7B7B7B7B7E7E7E7E7E7E7E7E7E8484848484848484848F8F8F8F8F8F8F8F8F8F8F8F
+9595959595959595959A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9D9D9D9D9D9D9D9D9D989898
+9898989898989898988F8F8F8F8F8F8F8F8F898989898989898989858585858585858585828282
+8282828282828282828080808080808080807F7F7F7F7F7F7F7F7F7E7E7E7E7E7E7E7E7E7F7F7F
+7F7F7F7F7F7F838383838383838383838383848484848484848484868686868686868686909090
+909090909090A5A5A5A5A5A5A5A5A5B4B4B4B4B4B4B4B4B4B4B4B4BFBFBFBFBFBFBFBFBFC5C5C5
+C5C5C5C5C5C5C3C3C3C3C3C3C3C3C3C2C2C2C2C2C2C2C2C2C2C2C2C5C5C5C5C5C5C5C5C5C2C2C2
+C2C2C2C2C2C2BEBEBEBEBEBEBEBEBEBCBCBCBCBCBCBCBCBCB4B4B4B4B4B4B4B4B4B4B4B4AAAAAA
+AAAAAAAAAAAA9F9F9F9F9F9F9F9F9F979797979797979797909090909090909090898989898989
+898989898989878787878787878787949494949494949494A1A1A1A1A1A1A1A1A1AFAFAFAFAFAF
+AFAFAFAFAFAFBBBBBBBBBBBBBBBBBBBFBFBFBFBFBFBFBFBFBABABABABABABABABAB5B5B5B5B5B5
+B5B5B5B6B6B6B6B6B6B6B6B6B6B6B6B0B1B0B0B1B0B0B1B0A5A5A5A5A5A5A5A5A5A0A0A0A0A0A0
+A0A0A0BBBBBBBBBBBBBBBBBBF0F0F0F0F0F0F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7E3E3E3E3E3E3E3E3E3E4E4E4E4E4E4E4E4E4
+E3E3E3E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0
+DFDFDFDFDFDFDFDFDFDFE0DFDFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDE
+DEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
+DDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D2D2D2D2D2D2D2D2D2C3C3C3C3C3C3C3C3C39B9B9B
+9B9B9B9B9B9B9B9B9B787878787878787878787878787878787878818181818181818181808080
+8080808080807F7F7F7F7F7F7F7F7F7F7F7F8080808080808080807E7E7E7E7E7E7E7E7E7C7C7C
+7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D7D7D7D7C7C7C7C7C7C7C7C7C7B7B7B7B7B7B7B7B7B7E7E7E
+7E7E7E7E7E7E8484848484848484848F8F8F8F8F8F8F8F8F8F8F8F9595959595959595959A9A9A
+9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9D9D9D9D9D9D9D9D9D9898989898989898989898988F8F8F
+8F8F8F8F8F8F898989898989898989858585858585858585828282828282828282828282808080
+8080808080807F7F7F7F7F7F7F7F7F7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F838383838383
+838383838383848484848484848484868686868686868686909090909090909090A5A5A5A5A5A5
+A5A5A5B4B4B4B4B4B4B4B4B4B4B4B4BFBFBFBFBFBFBFBFBFC5C5C5C5C5C5C5C5C5C3C3C3C3C3C3
+C3C3C3C2C2C2C2C2C2C2C2C2C2C2C2C5C5C5C5C5C5C5C5C5C2C2C2C2C2C2C2C2C2BEBEBEBEBEBE
+BEBEBEBCBCBCBCBCBCBCBCBCB4B4B4B4B4B4B4B4B4B4B4B4AAAAAAAAAAAAAAAAAA9F9F9F9F9F9F
+9F9F9F979797979797979797909090909090909090898989898989898989898989878787878787
+878787949494949494949494A1A1A1A1A1A1A1A1A1AFAFAFAFAFAFAFAFAFAFAFAFBBBBBBBBBBBB
+BBBBBBBFBFBFBFBFBFBFBFBFBABABABABABABABABAB5B5B5B5B5B5B5B5B5B6B6B6B6B6B6B6B6B6
+B6B6B6B0B1B0B0B1B0B0B1B0A5A5A5A5A5A5A5A5A5A0A0A0A0A0A0A0A0A0BBBBBBBBBBBBBBBBBB
+F0F0F0F0F0F0F0F0F0F0F0F0FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+C7C7C7C7C7C7C7C7C7E3E3E3E3E3E3E3E3E3E4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E3E3E3
+E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0DFDFDFDFDFDFDFDFDFDFE0DF
+DFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDDDDDD
+DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDCDCDC
+DCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5
+D6D6D5D6D6D5D2D2D2D2D2D2D2D2D2C3C3C3C3C3C3C3C3C39B9B9B9B9B9B9B9B9B9B9B9B787878
+7878787878787878787878787878788181818181818181818080808080808080807F7F7F7F7F7F
+7F7F7F7F7F7F8080808080808080807E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D
+7D7D7D7D7D7D7C7C7C7C7C7C7C7C7C7B7B7B7B7B7B7B7B7B7E7E7E7E7E7E7E7E7E848484848484
+8484848F8F8F8F8F8F8F8F8F8F8F8F9595959595959595959A9A9A9A9A9A9A9A9A9C9C9C9C9C9C
+9C9C9C9D9D9D9D9D9D9D9D9D9898989898989898989898988F8F8F8F8F8F8F8F8F898989898989
+8989898585858585858585858282828282828282828282828080808080808080807F7F7F7F7F7F
+7F7F7F7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F838383838383838383838383848484848484
+848484868686868686868686909090909090909090A5A5A5A5A5A5A5A5A5B4B4B4B4B4B4B4B4B4
+B4B4B4BFBFBFBFBFBFBFBFBFC5C5C5C5C5C5C5C5C5C3C3C3C3C3C3C3C3C3C2C2C2C2C2C2C2C2C2
+C2C2C2C5C5C5C5C5C5C5C5C5C2C2C2C2C2C2C2C2C2BEBEBEBEBEBEBEBEBEBCBCBCBCBCBCBCBCBC
+B4B4B4B4B4B4B4B4B4B4B4B4AAAAAAAAAAAAAAAAAA9F9F9F9F9F9F9F9F9F979797979797979797
+909090909090909090898989898989898989898989878787878787878787949494949494949494
+A1A1A1A1A1A1A1A1A1AFAFAFAFAFAFAFAFAFAFAFAFBBBBBBBBBBBBBBBBBBBFBFBFBFBFBFBFBFBF
+BABABABABABABABABAB5B5B5B5B5B5B5B5B5B6B6B6B6B6B6B6B6B6B6B6B6B0B1B0B0B1B0B0B1B0
+A5A5A5A5A5A5A5A5A5A0A0A0A0A0A0A0A0A0BBBBBBBBBBBBBBBBBBF0F0F0F0F0F0F0F0F0F0F0F0
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7E2E2E2
+E2E2E2E2E2E2E3E3E3E3E3E3E3E3E3E2E2E2E2E2E2E2E2E2E2E2E2E0E0E0E0E0E0E0E0E0E0E0E0
+E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDDDDDD
+DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
+DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADA
+DADADAD9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3
+D3D3D3CECECECECECECECECEBCBCBCBCBCBCBCBCBCBCBCBC989898989898989898737373737373
+7373737171717171717171717474747474747474747777777777777777777777777E7E7E7E7E7E
+7E7E7E7D7D7D7D7D7D7D7D7D7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7A7A7A7A7A7A
+7A7A7A7A7A7A7A7A7A7A7A7A7D7D7D7D7D7D7D7D7D8383838383838383838C8C8C8C8C8C8C8C8C
+8C8C8C9494949494949494949999999999999999999D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D
+9797979797979797979797979191919191919191918E8E8E8E8E8E8E8E8E898989898989898989
+8484848484848484848484848383838383838383838181818181818181817F7F7F7F7F7F7F7F7F
+8181818181818181818686868686868686868686868C8C8C8C8C8C8C8C8C939393939393939393
+A0A0A0A0A0A0A0A0A0B3B3B3B3B3B3B3B3B3C2C2C2C2C2C2C2C2C2C2C2C2CBCBCBCBCBCBCBCBCB
+CDCDCDCDCDCDCDCDCDCACACACACACACACACAC5C5C5C5C5C5C5C5C5C5C5C5C1C1C1C1C1C1C1C1C1
+BEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBBBBBBBBBBBBBBBBBBB3B3B3B3B3B3B3B3B3B3B3B3
+ACACACACACACACACACA1A1A1A1A1A1A1A1A1939393939393939393868686868686868686757575
+7575757575757575757878787878787878788F8F8F8F8F8F8F8F8FA0A0A0A0A0A0A0A0A0AFAFAF
+AFAFAFAFAFAFAFAFAFBBBBBBBBBBBBBBBBBBBFBFBFBFBFBFBFBFBFBABABABABABABABABAB3B3B3
+B3B3B3B3B3B3B4B4B4B4B4B4B4B4B4B4B4B4ADADADADADADADADADA2A2A2A2A2A2A2A2A29F9F9F
+9F9F9F9F9F9FBDBDBDBDBDBDBDBDBDF1F1F1F1F1F1F1F1F1F1F1F1FEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6E2E2E2E2E2E2E2E2E2E3E3E3E3E3E3
+E3E3E3E2E2E2E2E2E2E2E2E2E2E2E2E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0DFE0DFDFE0DF
+DFE0DFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
+DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
+DDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADAD9D9D9D9D9D9D9D9D9
+D9D9D9D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3CECECECECECECECECE
+BCBCBCBCBCBCBCBCBCBCBCBC989898989898989898737373737373737373717171717171717171
+7474747474747474747777777777777777777777777E7E7E7E7E7E7E7E7E7D7D7D7D7D7D7D7D7D
+7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A7A
+7D7D7D7D7D7D7D7D7D8383838383838383838C8C8C8C8C8C8C8C8C8C8C8C949494949494949494
+9999999999999999999D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D979797979797979797979797
+9191919191919191918E8E8E8E8E8E8E8E8E898989898989898989848484848484848484848484
+8383838383838383838181818181818181817F7F7F7F7F7F7F7F7F818181818181818181868686
+8686868686868686868C8C8C8C8C8C8C8C8C939393939393939393A0A0A0A0A0A0A0A0A0B3B3B3
+B3B3B3B3B3B3C2C2C2C2C2C2C2C2C2C2C2C2CBCBCBCBCBCBCBCBCBCDCDCDCDCDCDCDCDCDCACACA
+CACACACACACAC5C5C5C5C5C5C5C5C5C5C5C5C1C1C1C1C1C1C1C1C1BEBEBEBEBEBEBEBEBEBEBEBE
+BEBEBEBEBEBEBBBBBBBBBBBBBBBBBBB3B3B3B3B3B3B3B3B3B3B3B3ACACACACACACACACACA1A1A1
+A1A1A1A1A1A1939393939393939393868686868686868686757575757575757575757575787878
+7878787878788F8F8F8F8F8F8F8F8FA0A0A0A0A0A0A0A0A0AFAFAFAFAFAFAFAFAFAFAFAFBBBBBB
+BBBBBBBBBBBBBFBFBFBFBFBFBFBFBFBABABABABABABABABAB3B3B3B3B3B3B3B3B3B4B4B4B4B4B4
+B4B4B4B4B4B4ADADADADADADADADADA2A2A2A2A2A2A2A2A29F9F9F9F9F9F9F9F9FBDBDBDBDBDBD
+BDBDBDF1F1F1F1F1F1F1F1F1F1F1F1FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9C6C6C6C6C6C6C6C6C6E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0
+E0E0E0E0E0E0E0E0E0E0E0E0DFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDE
+DEDEDEDEDEDEDEDEDEDEDEDEDCDCDCDCDCDCDCDCDCDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDC
+DCDCDCDCDCDCDCDCDCDCDCDCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDC
+DCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDADADADADADADADADAD8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5
+D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D2D2D2D2D2D2D2D2D2CBCBCBCBCBCBCBCBCBCBCBCB
+B0B0B0B0B0B0B0B0B0787878787878787878585858585858585858575757575757575757636363
+6363636363636363637979797979797979797C7C7C7C7C7C7C7C7C7B7B7B7B7B7B7B7B7B7B7B7B
+7B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D828282
+8282828282828B8B8B8B8B8B8B8B8B8B8B8B9494949494949494949A9A9A9A9A9A9A9A9AA0A0A0
+A0A0A0A0A0A09E9E9E9E9E9E9E9E9E9292929292929292929292928E8E8E8E8E8E8E8E8E8B8B8B
+8B8B8B8B8B8B8585858585858585858080808080808080808080807D7D7D7D7D7D7D7D7D7C7C7C
+7C7C7C7C7C7C7E7E7E7E7E7E7E7E7E8282828282828282828C8C8C8C8C8C8C8C8C8C8C8C959595
+9595959595959E9E9E9E9E9E9E9E9EA6A6A6A6A6A6A6A6A6AEAEAEAEAEAEAEAEAEB7B7B7B7B7B7
+B7B7B7B7B7B7B8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7B3B3B3B3B3B3B3B3B3ABABABABABAB
+ABABABABABABA4A4A4A4A4A4A4A4A4A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A19E9E9E9E9E9E
+9E9E9E9D9D9D9D9D9D9D9D9D9D9D9D9A9A9A9A9A9A9A9A9A929292929292929292858585858585
+8585857272727272727272725F605F5F605F5F605F5F605F737373737373737373999999999999
+999999AAAAAAAAAAAAAAAAAAB2B2B2B2B2B2B2B2B2B2B2B2BDBDBDBDBDBDBDBDBDBFBFBFBFBFBF
+BFBFBFBABABABABABABABABAB6B6B6B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4B4B4B4ACACACACACAC
+ACACACA2A2A2A2A2A2A2A2A29F9F9F9F9F9F9F9F9FC2C2C2C2C2C2C2C2C2F4F4F4F4F4F4F4F4F4
+F4F4F4FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BBBBBBBBBBBBBBBBBB
+E2E2E2E2E2E2E2E2E2E1E1E1E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0
+DFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDE
+DCDCDCDCDCDCDCDCDCDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDC
+DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADA
+DADADADADADAD8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6
+D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4
+D4D4D4D4D4D4D2D2D2D2D2D2D2D2D2CBCBCBCBCBCBCBCBCBCBCBCBB0B0B0B0B0B0B0B0B0787878
+787878787878585858585858585858575757575757575757636363636363636363636363797979
+7979797979797C7C7C7C7C7C7C7C7C7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7A7A7A
+7A7A7A7A7A7A7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D8282828282828282828B8B8B8B8B8B
+8B8B8B8B8B8B9494949494949494949A9A9A9A9A9A9A9A9AA0A0A0A0A0A0A0A0A09E9E9E9E9E9E
+9E9E9E9292929292929292929292928E8E8E8E8E8E8E8E8E8B8B8B8B8B8B8B8B8B858585858585
+8585858080808080808080808080807D7D7D7D7D7D7D7D7D7C7C7C7C7C7C7C7C7C7E7E7E7E7E7E
+7E7E7E8282828282828282828C8C8C8C8C8C8C8C8C8C8C8C9595959595959595959E9E9E9E9E9E
+9E9E9EA6A6A6A6A6A6A6A6A6AEAEAEAEAEAEAEAEAEB7B7B7B7B7B7B7B7B7B7B7B7B8B8B8B8B8B8
+B8B8B8B7B7B7B7B7B7B7B7B7B3B3B3B3B3B3B3B3B3ABABABABABABABABABABABABA4A4A4A4A4A4
+A4A4A4A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A19E9E9E9E9E9E9E9E9E9D9D9D9D9D9D9D9D9D
+9D9D9D9A9A9A9A9A9A9A9A9A929292929292929292858585858585858585727272727272727272
+5F605F5F605F5F605F5F605F737373737373737373999999999999999999AAAAAAAAAAAAAAAAAA
+B2B2B2B2B2B2B2B2B2B2B2B2BDBDBDBDBDBDBDBDBDBFBFBFBFBFBFBFBFBFBABABABABABABABABA
+B6B6B6B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4B4B4B4ACACACACACACACACACA2A2A2A2A2A2A2A2A2
+9F9F9F9F9F9F9F9F9FC2C2C2C2C2C2C2C2C2F4F4F4F4F4F4F4F4F4F4F4F4FEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BBBBBBBBBBBBBBBBBBE2E2E2E2E2E2E2E2E2E1E1E1
+E1E1E1E1E1E1E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0DFDFDFDFDFDFDFDFDFDFDFDF
+DFDFDFDFDFDFDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDCDCDCDCDCDCDCDCDCDDDDDD
+DDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDDDDDDDDDDDDDDDDDDDDDDDD
+DDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADAD8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5
+D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D2D2D2D2D2D2
+D2D2D2CBCBCBCBCBCBCBCBCBCBCBCBB0B0B0B0B0B0B0B0B0787878787878787878585858585858
+5858585757575757575757576363636363636363636363637979797979797979797C7C7C7C7C7C
+7C7C7C7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A7C7C7C7C7C7C
+7C7C7C7D7D7D7D7D7D7D7D7D8282828282828282828B8B8B8B8B8B8B8B8B8B8B8B949494949494
+9494949A9A9A9A9A9A9A9A9AA0A0A0A0A0A0A0A0A09E9E9E9E9E9E9E9E9E929292929292929292
+9292928E8E8E8E8E8E8E8E8E8B8B8B8B8B8B8B8B8B858585858585858585808080808080808080
+8080807D7D7D7D7D7D7D7D7D7C7C7C7C7C7C7C7C7C7E7E7E7E7E7E7E7E7E828282828282828282
+8C8C8C8C8C8C8C8C8C8C8C8C9595959595959595959E9E9E9E9E9E9E9E9EA6A6A6A6A6A6A6A6A6
+AEAEAEAEAEAEAEAEAEB7B7B7B7B7B7B7B7B7B7B7B7B8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7
+B3B3B3B3B3B3B3B3B3ABABABABABABABABABABABABA4A4A4A4A4A4A4A4A4A1A1A1A1A1A1A1A1A1
+A1A1A1A1A1A1A1A1A19E9E9E9E9E9E9E9E9E9D9D9D9D9D9D9D9D9D9D9D9D9A9A9A9A9A9A9A9A9A
+9292929292929292928585858585858585857272727272727272725F605F5F605F5F605F5F605F
+737373737373737373999999999999999999AAAAAAAAAAAAAAAAAAB2B2B2B2B2B2B2B2B2B2B2B2
+BDBDBDBDBDBDBDBDBDBFBFBFBFBFBFBFBFBFBABABABABABABABABAB6B6B6B6B6B6B6B6B6B4B4B4
+B4B4B4B4B4B4B4B4B4ACACACACACACACACACA2A2A2A2A2A2A2A2A29F9F9F9F9F9F9F9F9FC2C2C2
+C2C2C2C2C2C2F4F4F4F4F4F4F4F4F4F4F4F4FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9BBBBBBBBBBBBBBBBBBE0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0
+E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0DEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDCDCDCDC
+DCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBD8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5
+D5D5D5D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1CFCFCFCFCFCFCFCFCF
+CFCFCFBCBCBCBCBCBCBCBCBC8B8B8B8B8B8B8B8B8B5454545454545454543A3A3A3A3A3A3A3A3A
+4848484848484848484848487070707070707070707C7C7C7C7C7C7C7C7C7A7A7A7A7A7A7A7A7A
+7B7B7B7B7B7B7B7B7B7B7B7B7979797979797979797A7A7A7A7A7A7A7A7A7C7C7C7C7C7C7C7C7C
+808080808080808080898989898989898989898989919191919191919191989898989898989898
+A1A1A1A1A1A1A1A1A19D9D9D9D9D9D9D9D9D8F8F8F8F8F8F8F8F8F8F8F8F888888888888888888
+8383838383838383837C7C7C7C7C7C7C7C7C767676767676767676767676717171717171717171
+7474747474747474747C7C7C7C7C7C7C7C7C8383838383838383838E8E8E8E8E8E8E8E8E8E8E8E
+989898989898989898999999999999999999979797979797979797949494949494949494959595
+959595959595959595919191919191919191919191919191919191919191919191919191909090
+9090909090909090909090909090909090909090909090909090908D8D8D8D8D8D8D8D8D848484
+8484848484847F7F7F7F7F7F7F7F7F7F7F7F7979797979797979797474747474747474746E6E6E
+6E6E6E6E6E6E6A6A6A6A6A6A6A6A6A7171717171717171717171718B8B8B8B8B8B8B8B8BA9A9A9
+A9A9A9A9A9A9B6B6B6B6B6B6B6B6B6BBBBBBBBBBBBBBBBBBBBBBBBBFBFBFBFBFBFBFBFBFBFBFBF
+BFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B2B2B2B2B2B2B2B2B2B2B2B2AAAAAA
+AAAAAAAAAAAAA1A1A1A1A1A1A1A1A19F9F9F9F9F9F9F9F9FCBCBCBCBCBCBCBCBCBF9F9F9F9F9F9
+F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C5C5C5C5C5C5
+C5C5C5E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0
+E0E0E0DEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDB
+DBDBDBDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4
+D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1CFCFCFCFCFCFCFCFCFCFCFCFBCBCBCBCBCBCBCBCBC
+8B8B8B8B8B8B8B8B8B5454545454545454543A3A3A3A3A3A3A3A3A484848484848484848484848
+7070707070707070707C7C7C7C7C7C7C7C7C7A7A7A7A7A7A7A7A7A7B7B7B7B7B7B7B7B7B7B7B7B
+7979797979797979797A7A7A7A7A7A7A7A7A7C7C7C7C7C7C7C7C7C808080808080808080898989
+898989898989898989919191919191919191989898989898989898A1A1A1A1A1A1A1A1A19D9D9D
+9D9D9D9D9D9D8F8F8F8F8F8F8F8F8F8F8F8F8888888888888888888383838383838383837C7C7C
+7C7C7C7C7C7C7676767676767676767676767171717171717171717474747474747474747C7C7C
+7C7C7C7C7C7C8383838383838383838E8E8E8E8E8E8E8E8E8E8E8E989898989898989898999999
+999999999999979797979797979797949494949494949494959595959595959595959595919191
+919191919191919191919191919191919191919191919191909090909090909090909090909090
+9090909090909090909090909090908D8D8D8D8D8D8D8D8D8484848484848484847F7F7F7F7F7F
+7F7F7F7F7F7F7979797979797979797474747474747474746E6E6E6E6E6E6E6E6E6A6A6A6A6A6A
+6A6A6A7171717171717171717171718B8B8B8B8B8B8B8B8BA9A9A9A9A9A9A9A9A9B6B6B6B6B6B6
+B6B6B6BBBBBBBBBBBBBBBBBBBBBBBBBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFB8B8B8B8B8B8
+B8B8B8B5B5B5B5B5B5B5B5B5B2B2B2B2B2B2B2B2B2B2B2B2AAAAAAAAAAAAAAAAAAA1A1A1A1A1A1
+A1A1A19F9F9F9F9F9F9F9F9FCBCBCBCBCBCBCBCBCBF9F9F9F9F9F9F9F9F9F9F9F9FFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5E0E0E0E0E0E0E0E0E0
+E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0DEDEDEDEDEDEDEDEDE
+DDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDCDCDCDCDCDCDCDCDC
+DCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBD8D8D8D8D8D8D8D8D8D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5
+D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D1D1D1
+D1D1D1D1D1D1CFCFCFCFCFCFCFCFCFCFCFCFBCBCBCBCBCBCBCBCBC8B8B8B8B8B8B8B8B8B545454
+5454545454543A3A3A3A3A3A3A3A3A4848484848484848484848487070707070707070707C7C7C
+7C7C7C7C7C7C7A7A7A7A7A7A7A7A7A7B7B7B7B7B7B7B7B7B7B7B7B7979797979797979797A7A7A
+7A7A7A7A7A7A7C7C7C7C7C7C7C7C7C808080808080808080898989898989898989898989919191
+919191919191989898989898989898A1A1A1A1A1A1A1A1A19D9D9D9D9D9D9D9D9D8F8F8F8F8F8F
+8F8F8F8F8F8F8888888888888888888383838383838383837C7C7C7C7C7C7C7C7C767676767676
+7676767676767171717171717171717474747474747474747C7C7C7C7C7C7C7C7C838383838383
+8383838E8E8E8E8E8E8E8E8E8E8E8E989898989898989898999999999999999999979797979797
+979797949494949494949494959595959595959595959595919191919191919191919191919191
+919191919191919191919191909090909090909090909090909090909090909090909090909090
+9090908D8D8D8D8D8D8D8D8D8484848484848484847F7F7F7F7F7F7F7F7F7F7F7F797979797979
+7979797474747474747474746E6E6E6E6E6E6E6E6E6A6A6A6A6A6A6A6A6A717171717171717171
+7171718B8B8B8B8B8B8B8B8BA9A9A9A9A9A9A9A9A9B6B6B6B6B6B6B6B6B6BBBBBBBBBBBBBBBBBB
+BBBBBBBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5
+B2B2B2B2B2B2B2B2B2B2B2B2AAAAAAAAAAAAAAAAAAA1A1A1A1A1A1A1A1A19F9F9F9F9F9F9F9F9F
+CBCBCBCBCBCBCBCBCBF9F9F9F9F9F9F9F9F9F9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DF
+DFE0DFDFE0DFDFE0DFDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDADADADADADADADADAD8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D4D4D4
+D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0
+D0D0D0D0D0D0C5C5C5C5C5C5C5C5C5A5A5A5A5A5A5A5A5A56C6C6C6C6C6C6C6C6C3E3E3E3E3E3E
+3E3E3E4040404040404040404040406969696969696969697C7C7C7C7C7C7C7C7C7B7B7B7B7B7B
+7B7B7B7979797979797979797979797979797979797979797A7A7A7A7A7A7A7A7A7C7C7C7C7C7C
+7C7C7C828282828282828282898989898989898989898989909090909090909090949494949494
+9494949F9F9F9F9F9F9F9F9F9D9D9D9D9D9D9D9D9D8F8F8F8F8F8F8F8F8F8F8F8F858585858585
+8585857C7C7C7C7C7C7C7C7C7070707070707070706D6D6D6D6D6D6D6D6D6D6D6D6E6E6E6E6E6E
+6E6E6E7373737373737373737D7D7D7D7D7D7D7D7D808080808080808080818181818181818181
+8181818181818181818181817E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D
+7E7E7E7E7E7E7E7E7E7E7E7E7B7B7B7B7B7B7B7B7B818181818181818181828282828282828282
+8383838383838383838383838585858585858585858585858585858585857F7F7F7F7F7F7F7F7F
+777777777777777777747474747474747474747474707070707070707070727272727272727272
+757575757575757575838383838383838383999999999999999999999999A8A8A8A8A8A8A8A8A8
+B7B7B7B7B7B7B7B7B7BBBBBBBBBBBBBBBBBBC0C0C0C0C0C0C0C0C0C0C0C0C3C3C3C3C3C3C3C3C3
+BEBEBEBEBEBEBEBEBEB7B7B7B7B7B7B7B7B7B5B5B5B5B5B5B5B5B5B0B1B0B0B1B0B0B1B0B0B1B0
+A7A7A7A7A7A7A7A7A79E9E9E9E9E9E9E9E9EA2A2A2A2A2A2A2A2A2D6D6D6D6D6D6D6D6D6FCFCFC
+FCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6
+C6C6C6C6C6C6E0E0E0E0E0E0E0E0E0DFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDFE0DFDEDEDE
+DEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADA
+DADADAD8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4
+D4D4D4D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0C5C5C5C5C5C5
+C5C5C5A5A5A5A5A5A5A5A5A56C6C6C6C6C6C6C6C6C3E3E3E3E3E3E3E3E3E404040404040404040
+4040406969696969696969697C7C7C7C7C7C7C7C7C7B7B7B7B7B7B7B7B7B797979797979797979
+7979797979797979797979797A7A7A7A7A7A7A7A7A7C7C7C7C7C7C7C7C7C828282828282828282
+8989898989898989898989899090909090909090909494949494949494949F9F9F9F9F9F9F9F9F
+9D9D9D9D9D9D9D9D9D8F8F8F8F8F8F8F8F8F8F8F8F8585858585858585857C7C7C7C7C7C7C7C7C
+7070707070707070706D6D6D6D6D6D6D6D6D6D6D6D6E6E6E6E6E6E6E6E6E737373737373737373
+7D7D7D7D7D7D7D7D7D808080808080808080818181818181818181818181818181818181818181
+7E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E7E7E7E
+7B7B7B7B7B7B7B7B7B818181818181818181828282828282828282838383838383838383838383
+8585858585858585858585858585858585857F7F7F7F7F7F7F7F7F777777777777777777747474
+747474747474747474707070707070707070727272727272727272757575757575757575838383
+838383838383999999999999999999999999A8A8A8A8A8A8A8A8A8B7B7B7B7B7B7B7B7B7BBBBBB
+BBBBBBBBBBBBC0C0C0C0C0C0C0C0C0C0C0C0C3C3C3C3C3C3C3C3C3BEBEBEBEBEBEBEBEBEB7B7B7
+B7B7B7B7B7B7B5B5B5B5B5B5B5B5B5B0B1B0B0B1B0B0B1B0B0B1B0A7A7A7A7A7A7A7A7A79E9E9E
+9E9E9E9E9E9EA2A2A2A2A2A2A2A2A2D6D6D6D6D6D6D6D6D6FCFCFCFCFCFCFCFCFCFCFCFCFEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6DFE0DFDFE0DF
+DFE0DFDFDFDFDFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBD9D9D9D9D9D9D9D9D9DADADADADADADADADADADADAD9D9D9D9D9D9
+D9D9D9DADADADADADADADADADBDBDBDBDBDBDBDBDBDADADADADADADADADAD9D9D9D9D9D9D9D9D9
+D9D9D9DADADADADADADADADADBDBDBDBDBDBDBDBDBD8D8D8D8D8D8D8D8D8D6D6D6D6D6D6D6D6D6
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0C9C9C9C9C9C9C9C9C9BBBBBBBBBBBBBBBBBB
+909090909090909090545454545454545454414141414141414141414141616161616161616161
+7979797979797979797B7B7B7B7B7B7B7B7B797979797979797979797979787878787878787878
+7878787878787878787B7B7B7B7B7B7B7B7B8282828282828282828A8A8A8A8A8A8A8A8A8A8A8A
+9090909090909090909090909090909090909999999999999999999C9C9C9C9C9C9C9C9C949494
+9494949494949494948A8A8A8A8A8A8A8A8A7474747474747474745B5B5B5B5B5B5B5B5B5C5C5C
+5C5C5C5C5C5C5C5C5C6666666666666666666C6C6C6C6C6C6C6C6C6F6F6F6F6F6F6F6F6F6C6C6C
+6C6C6C6C6C6C6868686868686868686868686666666666666666666767676767676767676B6B6B
+6B6B6B6B6B6B6E6E6E6E6E6E6E6E6E717171717171717171717171727272727272727272767676
+7676767676767777777777777777777777777777777777777777777C7C7C7C7C7C7C7C7C818181
+8181818181818181818181818181818585858585858585858B8B8B8B8B8B8B8B8B8B8B8B8C8C8C
+8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E9F9F9F9F9F9F9F9F9FB4B4B4B4B4B4
+B4B4B4B4B4B4BEBEBEBEBEBEBEBEBEBFBFBFBFBFBFBFBFBFBCBCBCBCBCBCBCBCBCBFBFBFBFBFBF
+BFBFBFBFBFBFC0C0C0C0C0C0C0C0C0BABABABABABABABABAB6B6B6B6B6B6B6B6B6B4B4B4B4B4B4
+B4B4B4AEAEAEAEAEAEAEAEAEAEAEAEA2A2A2A2A2A2A2A2A29B9B9B9B9B9B9B9B9BA6A6A6A6A6A6
+A6A6A6DEDEDEDEDEDEDEDEDEFCFCFCFCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDF
+DDDDDDDDDDDDDDDDDDDDDDDDDCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+D9D9D9D9D9D9D9D9D9DADADADADADADADADADADADAD9D9D9D9D9D9D9D9D9DADADADADADADADADA
+DBDBDBDBDBDBDBDBDBDADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9DADADADADADADADADA
+DBDBDBDBDBDBDBDBDBD8D8D8D8D8D8D8D8D8D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0C9C9C9C9C9C9C9C9C9BBBBBBBBBBBBBBBBBB909090909090909090545454
+5454545454544141414141414141414141416161616161616161617979797979797979797B7B7B
+7B7B7B7B7B7B7979797979797979797979797878787878787878787878787878787878787B7B7B
+7B7B7B7B7B7B8282828282828282828A8A8A8A8A8A8A8A8A8A8A8A909090909090909090909090
+9090909090909999999999999999999C9C9C9C9C9C9C9C9C9494949494949494949494948A8A8A
+8A8A8A8A8A8A7474747474747474745B5B5B5B5B5B5B5B5B5C5C5C5C5C5C5C5C5C5C5C5C666666
+6666666666666C6C6C6C6C6C6C6C6C6F6F6F6F6F6F6F6F6F6C6C6C6C6C6C6C6C6C686868686868
+6868686868686666666666666666666767676767676767676B6B6B6B6B6B6B6B6B6E6E6E6E6E6E
+6E6E6E717171717171717171717171727272727272727272767676767676767676777777777777
+7777777777777777777777777777777C7C7C7C7C7C7C7C7C818181818181818181818181818181
+8181818585858585858585858B8B8B8B8B8B8B8B8B8B8B8B8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C
+8C8C8C8E8E8E8E8E8E8E8E8E9F9F9F9F9F9F9F9F9FB4B4B4B4B4B4B4B4B4B4B4B4BEBEBEBEBEBE
+BEBEBEBFBFBFBFBFBFBFBFBFBCBCBCBCBCBCBCBCBCBFBFBFBFBFBFBFBFBFBFBFBFC0C0C0C0C0C0
+C0C0C0BABABABABABABABABAB6B6B6B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4AEAEAEAEAEAEAEAEAE
+AEAEAEA2A2A2A2A2A2A2A2A29B9B9B9B9B9B9B9B9BA6A6A6A6A6A6A6A6A6DEDEDEDEDEDEDEDEDE
+FCFCFCFCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+C3C3C3C3C3C3C3C3C3DFE0DFDFE0DFDFE0DFDFDFDFDFDFDFDFDFDFDDDDDDDDDDDDDDDDDDDDDDDD
+DCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBD9D9D9D9D9D9D9D9D9DADADA
+DADADADADADADADADAD9D9D9D9D9D9D9D9D9DADADADADADADADADADBDBDBDBDBDBDBDBDBDADADA
+DADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9DADADADADADADADADADBDBDBDBDBDBDBDBDBD8D8D8
+D8D8D8D8D8D8D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D3D3D3
+D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0C9C9C9
+C9C9C9C9C9C9BBBBBBBBBBBBBBBBBB909090909090909090545454545454545454414141414141
+4141414141416161616161616161617979797979797979797B7B7B7B7B7B7B7B7B797979797979
+7979797979797878787878787878787878787878787878787B7B7B7B7B7B7B7B7B828282828282
+8282828A8A8A8A8A8A8A8A8A8A8A8A909090909090909090909090909090909090999999999999
+9999999C9C9C9C9C9C9C9C9C9494949494949494949494948A8A8A8A8A8A8A8A8A747474747474
+7474745B5B5B5B5B5B5B5B5B5C5C5C5C5C5C5C5C5C5C5C5C6666666666666666666C6C6C6C6C6C
+6C6C6C6F6F6F6F6F6F6F6F6F6C6C6C6C6C6C6C6C6C686868686868686868686868666666666666
+6666666767676767676767676B6B6B6B6B6B6B6B6B6E6E6E6E6E6E6E6E6E717171717171717171
+717171727272727272727272767676767676767676777777777777777777777777777777777777
+7777777C7C7C7C7C7C7C7C7C818181818181818181818181818181818181858585858585858585
+8B8B8B8B8B8B8B8B8B8B8B8B8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E
+9F9F9F9F9F9F9F9F9FB4B4B4B4B4B4B4B4B4B4B4B4BEBEBEBEBEBEBEBEBEBFBFBFBFBFBFBFBFBF
+BCBCBCBCBCBCBCBCBCBFBFBFBFBFBFBFBFBFBFBFBFC0C0C0C0C0C0C0C0C0BABABABABABABABABA
+B6B6B6B6B6B6B6B6B6B4B4B4B4B4B4B4B4B4AEAEAEAEAEAEAEAEAEAEAEAEA2A2A2A2A2A2A2A2A2
+9B9B9B9B9B9B9B9B9BA6A6A6A6A6A6A6A6A6DEDEDEDEDEDEDEDEDEFCFCFCFCFCFCFCFCFCFCFCFC
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3DEDEDE
+DEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDDDDDDDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADADADADADBDBDB
+DBDBDBDBDBDBDADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9
+D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9DADADADADADADADADAD9D9D9D9D9D9D9D9D9D8D8D8D8D8D8
+D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6
+D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D4D4D4D4D4D4D4D4D4D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCBCBCBCBCBCBCBCBCBC8C8C8C8C8C8
+C8C8C8B1B1B1B1B1B1B1B1B17878787878787878785151515151515151515151515D5D5D5D5D5D
+5D5D5D7777777777777777777A7A7A7A7A7A7A7A7A787878787878787878787878777777777777
+7777777777777777777777777C7C7C7C7C7C7C7C7C8282828282828282828C8C8C8C8C8C8C8C8C
+8C8C8C9191919191919191918F8F8F8F8F8F8F8F8F9494949494949494949C9C9C9C9C9C9C9C9C
+9B9B9B9B9B9B9B9B9B9B9B9B9494949494949494947C7C7C7C7C7C7C7C7C565656565656565656
+494949494949494949494949525252525252525252585858585858585858595959595959595959
+5757575757575757575858585858585858585858585B5B5B5B5B5B5B5B5B626262626262626262
+6767676767676767676E6E6E6E6E6E6E6E6E7676767676767676767676767D7D7D7D7D7D7D7D7D
+7F7F7F7F7F7F7F7F7F8484848484848484849090909090909090909090909A9A9A9A9A9A9A9A9A
+A1A1A1A1A1A1A1A1A1A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A1A1A1A1A1A1A1A1A1A1A1A1
+9E9E9E9E9E9E9E9E9E9999999999999999999E9E9E9E9E9E9E9E9EB1B1B1B1B1B1B1B1B1C2C2C2
+C2C2C2C2C2C2C2C2C2C7C7C7C7C7C7C7C7C7C0C0C0C0C0C0C0C0C0B8B8B8B8B8B8B8B8B8B9B9B9
+B9B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBBB6B6B6B6B6B6B6B6B6B3B3B3B3B3B3B3B3B3B1B1B1
+B1B1B1B1B1B1ACACACACACACACACACACACACA0A0A0A0A0A0A0A0A09A9A9A9A9A9A9A9A9AACACAC
+ACACACACACACE6E6E6E6E6E6E6E6E6FCFCFCFCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF7F7F7F7F7F7F7F7F7B4B4B4B4B4B4B4B4B4DEDEDEDEDEDEDEDEDEDEDEDEDEDEDE
+DEDEDEDDDDDDDDDDDDDDDDDDDDDDDDDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADADADADADBDBDBDBDBDBDBDBDBDADADADADADA
+DADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9
+D9D9D9DADADADADADADADADAD9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D9D9D9D9D9D9
+D9D9D9D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5
+D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D4D4D4D4D4D4D4D4D4D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+CFCFCFCFCFCFCFCFCFCFCFCFCBCBCBCBCBCBCBCBCBC8C8C8C8C8C8C8C8C8B1B1B1B1B1B1B1B1B1
+7878787878787878785151515151515151515151515D5D5D5D5D5D5D5D5D777777777777777777
+7A7A7A7A7A7A7A7A7A787878787878787878787878777777777777777777777777777777777777
+7C7C7C7C7C7C7C7C7C8282828282828282828C8C8C8C8C8C8C8C8C8C8C8C919191919191919191
+8F8F8F8F8F8F8F8F8F9494949494949494949C9C9C9C9C9C9C9C9C9B9B9B9B9B9B9B9B9B9B9B9B
+9494949494949494947C7C7C7C7C7C7C7C7C565656565656565656494949494949494949494949
+525252525252525252585858585858585858595959595959595959575757575757575757585858
+5858585858585858585B5B5B5B5B5B5B5B5B6262626262626262626767676767676767676E6E6E
+6E6E6E6E6E6E7676767676767676767676767D7D7D7D7D7D7D7D7D7F7F7F7F7F7F7F7F7F848484
+8484848484849090909090909090909090909A9A9A9A9A9A9A9A9AA1A1A1A1A1A1A1A1A1A2A2A2
+A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A1A1A1A1A1A1A1A1A1A1A1A19E9E9E9E9E9E9E9E9E999999
+9999999999999E9E9E9E9E9E9E9E9EB1B1B1B1B1B1B1B1B1C2C2C2C2C2C2C2C2C2C2C2C2C7C7C7
+C7C7C7C7C7C7C0C0C0C0C0C0C0C0C0B8B8B8B8B8B8B8B8B8B9B9B9B9B9B9B9B9B9B9B9B9BBBBBB
+BBBBBBBBBBBBB6B6B6B6B6B6B6B6B6B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1ACACACACACAC
+ACACACACACACA0A0A0A0A0A0A0A0A09A9A9A9A9A9A9A9A9AACACACACACACACACACE6E6E6E6E6E6
+E6E6E6FCFCFCFCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7
+F7F7F7B4B4B4B4B4B4B4B4B4DEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADADADADADADADADADADADBDBDBDBDBDBDBDBDB
+DADADADADADADADADADADADAD9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9
+D9D9D9D9D9D9D9D9D9D9D9D9DADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9
+D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8
+D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2
+D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECE
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDC5C5C5C5C5C5C5C5C5A5A5A5A5A5A5A5A5A57A7A7A
+7A7A7A7A7A7A7A7A7A666666666666666666747474747474747474797979797979797979787878
+7878787878787878787676767676767676767575757575757575757B7B7B7B7B7B7B7B7B808080
+8080808080808B8B8B8B8B8B8B8B8B8B8B8B959595959595959595939393939393939393919191
+9191919191919A9A9A9A9A9A9A9A9AA0A0A0A0A0A0A0A0A0A0A0A0A2A2A2A2A2A2A2A2A2989898
+989898989898767676767676767676585858585858585858585858515151515151515151545454
+5454545454545858585858585858585C5C5C5C5C5C5C5C5C6161616161616161616161616C6C6C
+6C6C6C6C6C6C7878787878787878788383838383838383838F8F8F8F8F8F8F8F8F9C9C9C9C9C9C
+9C9C9C9C9C9CA5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8ACACACACACACACACACB3B3B3B3B3B3
+B3B3B3B3B3B3BCBCBCBCBCBCBCBCBCC1C1C1C1C1C1C1C1C1B8B8B8B8B8B8B8B8B8AAAAAAAAAAAA
+AAAAAAA4A4A4A4A4A4A4A4A4A4A4A49E9E9E9E9E9E9E9E9EA0A0A0A0A0A0A0A0A0ADADADADADAD
+ADADADBEBEBEBEBEBEBEBEBEC6C6C6C6C6C6C6C6C6C6C6C6C9C9C9C9C9C9C9C9C9BDBDBDBDBDBD
+BDBDBDB0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1
+B1B1B1B2B2B2B2B2B2B2B2B2B0B1B0B0B1B0B0B1B0A8A8A8A8A8A8A8A8A8A8A8A89D9D9D9D9D9D
+9D9D9D979797979797979797B7B7B7B7B7B7B7B7B7F1F1F1F1F1F1F1F1F1FDFDFDFDFDFDFDFDFD
+FDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1
+DEDEDEDEDEDEDEDEDEDDDDDDDDDDDDDDDDDDDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DADADADADADADADADADADADADADADADADADADBDBDBDBDBDBDBDBDBDADADADADADADADADADADADA
+D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9
+DADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8
+D8D8D8D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D6D6D6D6D6D6D6D6D6D6D6D5
+D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDC5C5C5C5C5C5C5C5C5A5A5A5A5A5A5A5A5A57A7A7A7A7A7A7A7A7A7A7A7A666666
+666666666666747474747474747474797979797979797979787878787878787878787878767676
+7676767676767575757575757575757B7B7B7B7B7B7B7B7B8080808080808080808B8B8B8B8B8B
+8B8B8B8B8B8B9595959595959595959393939393939393939191919191919191919A9A9A9A9A9A
+9A9A9AA0A0A0A0A0A0A0A0A0A0A0A0A2A2A2A2A2A2A2A2A2989898989898989898767676767676
+767676585858585858585858585858515151515151515151545454545454545454585858585858
+5858585C5C5C5C5C5C5C5C5C6161616161616161616161616C6C6C6C6C6C6C6C6C787878787878
+7878788383838383838383838F8F8F8F8F8F8F8F8F9C9C9C9C9C9C9C9C9C9C9C9CA5A5A5A5A5A5
+A5A5A5A8A8A8A8A8A8A8A8A8ACACACACACACACACACB3B3B3B3B3B3B3B3B3B3B3B3BCBCBCBCBCBC
+BCBCBCC1C1C1C1C1C1C1C1C1B8B8B8B8B8B8B8B8B8AAAAAAAAAAAAAAAAAAA4A4A4A4A4A4A4A4A4
+A4A4A49E9E9E9E9E9E9E9E9EA0A0A0A0A0A0A0A0A0ADADADADADADADADADBEBEBEBEBEBEBEBEBE
+C6C6C6C6C6C6C6C6C6C6C6C6C9C9C9C9C9C9C9C9C9BDBDBDBDBDBDBDBDBDB0B1B0B0B1B0B0B1B0
+B0B1B0B0B1B0B0B1B0B0B1B0B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B2B2B2B2B2B2B2B2B2
+B0B1B0B0B1B0B0B1B0A8A8A8A8A8A8A8A8A8A8A8A89D9D9D9D9D9D9D9D9D979797979797979797
+B7B7B7B7B7B7B7B7B7F1F1F1F1F1F1F1F1F1FDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1DEDEDEDEDEDEDEDEDEDDDDDD
+DDDDDDDDDDDDDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADADADADA
+DADADADADADADBDBDBDBDBDBDBDBDBDADADADADADADADADADADADAD9D9D9D9D9D9D9D9D9D8D8D8
+D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9DADADADADADADADADAD9D9D9
+D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D9D9D9
+D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5
+D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3
+D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0CECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDC5C5C5C5C5C5
+C5C5C5A5A5A5A5A5A5A5A5A57A7A7A7A7A7A7A7A7A7A7A7A666666666666666666747474747474
+747474797979797979797979787878787878787878787878767676767676767676757575757575
+7575757B7B7B7B7B7B7B7B7B8080808080808080808B8B8B8B8B8B8B8B8B8B8B8B959595959595
+9595959393939393939393939191919191919191919A9A9A9A9A9A9A9A9AA0A0A0A0A0A0A0A0A0
+A0A0A0A2A2A2A2A2A2A2A2A2989898989898989898767676767676767676585858585858585858
+5858585151515151515151515454545454545454545858585858585858585C5C5C5C5C5C5C5C5C
+6161616161616161616161616C6C6C6C6C6C6C6C6C787878787878787878838383838383838383
+8F8F8F8F8F8F8F8F8F9C9C9C9C9C9C9C9C9C9C9C9CA5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8
+ACACACACACACACACACB3B3B3B3B3B3B3B3B3B3B3B3BCBCBCBCBCBCBCBCBCC1C1C1C1C1C1C1C1C1
+B8B8B8B8B8B8B8B8B8AAAAAAAAAAAAAAAAAAA4A4A4A4A4A4A4A4A4A4A4A49E9E9E9E9E9E9E9E9E
+A0A0A0A0A0A0A0A0A0ADADADADADADADADADBEBEBEBEBEBEBEBEBEC6C6C6C6C6C6C6C6C6C6C6C6
+C9C9C9C9C9C9C9C9C9BDBDBDBDBDBDBDBDBDB0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0
+B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B2B2B2B2B2B2B2B2B2B0B1B0B0B1B0B0B1B0A8A8A8
+A8A8A8A8A8A8A8A8A89D9D9D9D9D9D9D9D9D979797979797979797B7B7B7B7B7B7B7B7B7F1F1F1
+F1F1F1F1F1F1FDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1DCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDADADADADADADADADADADADADADADADADADAD9D9D9D9D9D9D9D9D9DADADADADADA
+DADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9
+D9D9D9D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7
+D7D7D7D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4
+D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCECECECECECECECECECDCDCDCDCDCDCDCDCD
+CDCDCDCECECECECECECECECECFCFCFCFCFCFCFCFCFCECECECECECECECECEC5C5C5C5C5C5C5C5C5
+A9A9A9A9A9A9A9A9A9A9A9A97D7D7D7D7D7D7D7D7D727272727272727272787878787878787878
+777777777777777777777777767676767676767676757575757575757575797979797979797979
+7F7F7F7F7F7F7F7F7F898989898989898989898989959595959595959595989898989898989898
+919191919191919191999999999999999999A4A4A4A4A4A4A4A4A4A4A4A4AAAAAAAAAAAAAAAAAA
+ABABABABABABABABAB9C9C9C9C9C9C9C9C9C838383838383838383838383717171717171717171
+6969696969696969696D6D6D6D6D6D6D6D6D747474747474747474797979797979797979797979
+8383838383838383839090909090909090909D9D9D9D9D9D9D9D9DA8A8A8A8A8A8A8A8A8B1B1B1
+B1B1B1B1B1B1B1B1B1B7B7B7B7B7B7B7B7B7BCBCBCBCBCBCBCBCBCBDBDBDBDBDBDBDBDBDBEBEBE
+BEBEBEBEBEBEBEBEBECBCBCBCBCBCBCBCBCBD0D0D0D0D0D0D0D0D0BBBBBBBBBBBBBBBBBBA9A9A9
+A9A9A9A9A9A9A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0ADADADADADADADADADBBBBBB
+BBBBBBBBBBBBC4C4C4C4C4C4C4C4C4C9C9C9C9C9C9C9C9C9C9C9C9C7C7C7C7C7C7C7C7C7B8B8B8
+B8B8B8B8B8B8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8AEAEAEAEAEAEAEAEAEB0B1B0
+B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0ACACACACACACACACACA1A1A1A1A1A1A1A1A1A1A1A1989898
+989898989898979797979797979797C4C4C4C4C4C4C4C4C4F9F9F9F9F9F9F9F9F9FDFDFDFDFDFD
+FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD0D0D0D0D0D0
+D0D0D0DCDCDCDCDCDCDCDCDCDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADA
+DADADADADADADADADADADADAD9D9D9D9D9D9D9D9D9DADADADADADADADADAD9D9D9D9D9D9D9D9D9
+D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8
+D7D7D7D7D7D7D7D7D7D7D7D7D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D6D6D5D6D6D5D6D6D5
+D6D6D6D6D6D6D6D6D6D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4
+D4D4D4D4D4D4D4D4D4D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+CFCFCFCFCFCFCFCFCFCECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECE
+CFCFCFCFCFCFCFCFCFCECECECECECECECECEC5C5C5C5C5C5C5C5C5A9A9A9A9A9A9A9A9A9A9A9A9
+7D7D7D7D7D7D7D7D7D727272727272727272787878787878787878777777777777777777777777
+7676767676767676767575757575757575757979797979797979797F7F7F7F7F7F7F7F7F898989
+898989898989898989959595959595959595989898989898989898919191919191919191999999
+999999999999A4A4A4A4A4A4A4A4A4A4A4A4AAAAAAAAAAAAAAAAAAABABABABABABABABAB9C9C9C
+9C9C9C9C9C9C8383838383838383838383837171717171717171716969696969696969696D6D6D
+6D6D6D6D6D6D747474747474747474797979797979797979797979838383838383838383909090
+9090909090909D9D9D9D9D9D9D9D9DA8A8A8A8A8A8A8A8A8B1B1B1B1B1B1B1B1B1B1B1B1B7B7B7
+B7B7B7B7B7B7BCBCBCBCBCBCBCBCBCBDBDBDBDBDBDBDBDBDBEBEBEBEBEBEBEBEBEBEBEBECBCBCB
+CBCBCBCBCBCBD0D0D0D0D0D0D0D0D0BBBBBBBBBBBBBBBBBBA9A9A9A9A9A9A9A9A9A0A0A0A0A0A0
+A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0ADADADADADADADADADBBBBBBBBBBBBBBBBBBC4C4C4C4C4C4
+C4C4C4C9C9C9C9C9C9C9C9C9C9C9C9C7C7C7C7C7C7C7C7C7B8B8B8B8B8B8B8B8B8A8A8A8A8A8A8
+A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8AEAEAEAEAEAEAEAEAEB0B1B0B0B1B0B0B1B0B0B1B0B0B1B0
+B0B1B0ACACACACACACACACACA1A1A1A1A1A1A1A1A1A1A1A1989898989898989898979797979797
+979797C4C4C4C4C4C4C4C4C4F9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFAFAFAFAFAFAFAFAFAD0D0D0D0D0D0D0D0D0DCDCDCDCDCDCDCDCDC
+DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADADADADADADADADADADADADADADADADA
+D9D9D9D9D9D9D9D9D9DADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9
+D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7
+D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D4D4D4
+D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D1D1D1
+D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCECECE
+CECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECECFCFCFCFCFCFCFCFCFCECECE
+CECECECECECEC5C5C5C5C5C5C5C5C5A9A9A9A9A9A9A9A9A9A9A9A97D7D7D7D7D7D7D7D7D727272
+727272727272787878787878787878777777777777777777777777767676767676767676757575
+7575757575757979797979797979797F7F7F7F7F7F7F7F7F898989898989898989898989959595
+959595959595989898989898989898919191919191919191999999999999999999A4A4A4A4A4A4
+A4A4A4A4A4A4AAAAAAAAAAAAAAAAAAABABABABABABABABAB9C9C9C9C9C9C9C9C9C838383838383
+8383838383837171717171717171716969696969696969696D6D6D6D6D6D6D6D6D747474747474
+7474747979797979797979797979798383838383838383839090909090909090909D9D9D9D9D9D
+9D9D9DA8A8A8A8A8A8A8A8A8B1B1B1B1B1B1B1B1B1B1B1B1B7B7B7B7B7B7B7B7B7BCBCBCBCBCBC
+BCBCBCBDBDBDBDBDBDBDBDBDBEBEBEBEBEBEBEBEBEBEBEBECBCBCBCBCBCBCBCBCBD0D0D0D0D0D0
+D0D0D0BBBBBBBBBBBBBBBBBBA9A9A9A9A9A9A9A9A9A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0
+A0A0A0ADADADADADADADADADBBBBBBBBBBBBBBBBBBC4C4C4C4C4C4C4C4C4C9C9C9C9C9C9C9C9C9
+C9C9C9C7C7C7C7C7C7C7C7C7B8B8B8B8B8B8B8B8B8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8
+A8A8A8AEAEAEAEAEAEAEAEAEB0B1B0B0B1B0B0B1B0B0B1B0B0B1B0B0B1B0ACACACACACACACACAC
+A1A1A1A1A1A1A1A1A1A1A1A1989898989898989898979797979797979797C4C4C4C4C4C4C4C4C4
+F9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FAFAFAFAFAFAFAFAFAD0D0D0D0D0D0D0D0D0DBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDB
+DBDBDBDBDBDBDBDBDBDADADADADADADADADADADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9
+D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D6D6D6
+D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4
+D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECECECECFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D1D1D1D1D1D1
+D1D1D1C4C4C4C4C4C4C4C4C4C4C4C4919191919191919191737373737373737373767676767676
+7676767676767676767676767676767676767676767676767676767676767676767A7A7A7A7A7A
+7A7A7A7D7D7D7D7D7D7D7D7D868686868686868686868686919191919191919191999999999999
+999999949494949494949494979797979797979797A3A3A3A3A3A3A3A3A3A3A3A3A9A9A9A9A9A9
+A9A9A9AEAEAEAEAEAEAEAEAEAFAFAFAFAFAFAFAFAFA4A4A4A4A4A4A4A4A4A4A4A4969696969696
+9696968585858585858585857D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E
+7E7E7E8484848484848484848E8E8E8E8E8E8E8E8E9E9E9E9E9E9E9E9E9EA9A9A9A9A9A9A9A9A9
+B0B0B0B0B0B0B0B0B0B0B0B0B1B1B1B1B1B1B1B1B1B9B9B9B9B9B9B9B9B9BEBEBEBEBEBEBEBEBE
+BFBFBFBFBFBFBFBFBFBFBFBFC5C5C5C5C5C5C5C5C5C2C2C2C2C2C2C2C2C2B1B1B1B1B1B1B1B1B1
+A8A8A8A8A8A8A8A8A8A6A6A6A6A6A6A6A6A6A6A6A6ADADADADADADADADADBCBCBCBCBCBCBCBCBC
+C2C2C2C2C2C2C2C2C2C3C3C3C3C3C3C3C3C3C7C7C7C7C7C7C7C7C7C7C7C7C4C4C4C4C4C4C4C4C4
+B7B7B7B7B7B7B7B7B7A6A6A6A6A6A6A6A6A6A1A1A1A1A1A1A1A1A1A1A1A1A8A8A8A8A8A8A8A8A8
+ACACACACACACACACACACACACACACACACACACA8A8A8A8A8A8A8A8A89E9E9E9E9E9E9E9E9E9E9E9E
+939393939393939393999999999999999999D0D0D0D0D0D0D0D0D0FBFBFBFBFBFBFBFBFBFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACA
+CACACACACACADBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDADADA
+DADADADADADADADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5
+D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4
+D4D4D4D3D3D3D3D3D3D3D3D3D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCF
+CFCFCFCECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECFCFCFCFCFCF
+CFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D1D1D1D1D1D1D1D1D1C4C4C4C4C4C4C4C4C4
+C4C4C4919191919191919191737373737373737373767676767676767676767676767676767676
+7676767676767676767676767676767676767676767A7A7A7A7A7A7A7A7A7D7D7D7D7D7D7D7D7D
+868686868686868686868686919191919191919191999999999999999999949494949494949494
+979797979797979797A3A3A3A3A3A3A3A3A3A3A3A3A9A9A9A9A9A9A9A9A9AEAEAEAEAEAEAEAEAE
+AFAFAFAFAFAFAFAFAFA4A4A4A4A4A4A4A4A4A4A4A4969696969696969696858585858585858585
+7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E7E7E7E848484848484848484
+8E8E8E8E8E8E8E8E8E9E9E9E9E9E9E9E9E9EA9A9A9A9A9A9A9A9A9B0B0B0B0B0B0B0B0B0B0B0B0
+B1B1B1B1B1B1B1B1B1B9B9B9B9B9B9B9B9B9BEBEBEBEBEBEBEBEBEBFBFBFBFBFBFBFBFBFBFBFBF
+C5C5C5C5C5C5C5C5C5C2C2C2C2C2C2C2C2C2B1B1B1B1B1B1B1B1B1A8A8A8A8A8A8A8A8A8A6A6A6
+A6A6A6A6A6A6A6A6A6ADADADADADADADADADBCBCBCBCBCBCBCBCBCC2C2C2C2C2C2C2C2C2C3C3C3
+C3C3C3C3C3C3C7C7C7C7C7C7C7C7C7C7C7C7C4C4C4C4C4C4C4C4C4B7B7B7B7B7B7B7B7B7A6A6A6
+A6A6A6A6A6A6A1A1A1A1A1A1A1A1A1A1A1A1A8A8A8A8A8A8A8A8A8ACACACACACACACACACACACAC
+ACACACACACACA8A8A8A8A8A8A8A8A89E9E9E9E9E9E9E9E9E9E9E9E939393939393939393999999
+999999999999D0D0D0D0D0D0D0D0D0FBFBFBFBFBFBFBFBFBFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACACACACADBDBDBDBDBDB
+DBDBDBDADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2
+D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCD
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECECECED0D0D0D0D0D0D0D0D0
+D1D1D1D1D1D1D1D1D1D4D4D4D4D4D4D4D4D4CBCBCBCBCBCBCBCBCBCBCBCB999999999999999999
+737373737373737373747474747474747474757575757575757575757575747474747474747474
+7777777777777777777979797979797979797C7C7C7C7C7C7C7C7C848484848484848484848484
+8E8E8E8E8E8E8E8E8E9696969696969696969696969696969696969494949494949494949D9D9D
+9D9D9D9D9D9D9D9D9DA4A4A4A4A4A4A4A4A4ABABABABABABABABABB1B1B1B1B1B1B1B1B1AFAFAF
+AFAFAFAFAFAFAFAFAFA8A8A8A8A8A8A8A8A8969696969696969696868686868686868686808080
+8080808080807E7E7E7E7E7E7E7E7E7E7E7E808080808080808080848484848484848484909090
+9090909090909C9C9C9C9C9C9C9C9CA3A3A3A3A3A3A3A3A3A3A3A3A6A6A6A6A6A6A6A6A6ADADAD
+ADADADADADADB6B6B6B6B6B6B6B6B6B9B9B9B9B9B9B9B9B9B9B9B9BABABABABABABABABAB8B8B8
+B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3B4B4B4B4B4B4B4B4B4B7B7B7B7B7B7B7B7B7B7B7B7BCBCBC
+BCBCBCBCBCBCC1C1C1C1C1C1C1C1C1C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C1C1C1C1C1C1
+C1C1C1C1C1C1BEBEBEBEBEBEBEBEBEB2B2B2B2B2B2B2B2B29F9F9F9F9F9F9F9F9F9C9C9C9C9C9C
+9C9C9C9C9C9CA5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAA6A6A6A6A6A6
+A6A6A69A9A9A9A9A9A9A9A9A9A9A9A8D8D8D8D8D8D8D8D8D9F9F9F9F9F9F9F9F9FE1E1E1E1E1E1
+E1E1E1FCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9BDBDBDBDBDBDBDBDBDDBDBDBDBDBDBDBDBDBDADADADADADADADADA
+D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D6D6D6D6D6D6D6D6D6D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D1D1D1
+D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECECECED0D0D0D0D0D0D0D0D0D1D1D1D1D1D1D1D1D1D4D4D4
+D4D4D4D4D4D4CBCBCBCBCBCBCBCBCBCBCBCB999999999999999999737373737373737373747474
+747474747474757575757575757575757575747474747474747474777777777777777777797979
+7979797979797C7C7C7C7C7C7C7C7C8484848484848484848484848E8E8E8E8E8E8E8E8E969696
+9696969696969696969696969696969494949494949494949D9D9D9D9D9D9D9D9D9D9D9DA4A4A4
+A4A4A4A4A4A4ABABABABABABABABABB1B1B1B1B1B1B1B1B1AFAFAFAFAFAFAFAFAFAFAFAFA8A8A8
+A8A8A8A8A8A89696969696969696968686868686868686868080808080808080807E7E7E7E7E7E
+7E7E7E7E7E7E8080808080808080808484848484848484849090909090909090909C9C9C9C9C9C
+9C9C9CA3A3A3A3A3A3A3A3A3A3A3A3A6A6A6A6A6A6A6A6A6ADADADADADADADADADB6B6B6B6B6B6
+B6B6B6B9B9B9B9B9B9B9B9B9B9B9B9BABABABABABABABABAB8B8B8B8B8B8B8B8B8B3B3B3B3B3B3
+B3B3B3B4B4B4B4B4B4B4B4B4B7B7B7B7B7B7B7B7B7B7B7B7BCBCBCBCBCBCBCBCBCC1C1C1C1C1C1
+C1C1C1C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C1C1C1C1C1C1C1C1C1C1C1C1BEBEBEBEBEBE
+BEBEBEB2B2B2B2B2B2B2B2B29F9F9F9F9F9F9F9F9F9C9C9C9C9C9C9C9C9C9C9C9CA5A5A5A5A5A5
+A5A5A5A8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAA6A6A6A6A6A6A6A6A69A9A9A9A9A9A9A9A9A
+9A9A9A8D8D8D8D8D8D8D8D8D9F9F9F9F9F9F9F9F9FE1E1E1E1E1E1E1E1E1FCFCFCFCFCFCFCFCFC
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+BDBDBDBDBDBDBDBDBDDBDBDBDBDBDBDBDBDBDADADADADADADADADAD9D9D9D9D9D9D9D9D9D9D9D9
+D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6
+D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D5D5D5
+D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D3D3D3
+D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0CFCFCF
+CFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECECECED0D0D0D0D0D0D0D0D0D1D1D1D1D1D1D1D1D1D4D4D4D4D4D4D4D4D4CBCBCBCBCBCB
+CBCBCBCBCBCB999999999999999999737373737373737373747474747474747474757575757575
+7575757575757474747474747474747777777777777777777979797979797979797C7C7C7C7C7C
+7C7C7C8484848484848484848484848E8E8E8E8E8E8E8E8E969696969696969696969696969696
+9696969494949494949494949D9D9D9D9D9D9D9D9D9D9D9DA4A4A4A4A4A4A4A4A4ABABABABABAB
+ABABABB1B1B1B1B1B1B1B1B1AFAFAFAFAFAFAFAFAFAFAFAFA8A8A8A8A8A8A8A8A8969696969696
+9696968686868686868686868080808080808080807E7E7E7E7E7E7E7E7E7E7E7E808080808080
+8080808484848484848484849090909090909090909C9C9C9C9C9C9C9C9CA3A3A3A3A3A3A3A3A3
+A3A3A3A6A6A6A6A6A6A6A6A6ADADADADADADADADADB6B6B6B6B6B6B6B6B6B9B9B9B9B9B9B9B9B9
+B9B9B9BABABABABABABABABAB8B8B8B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3B4B4B4B4B4B4B4B4B4
+B7B7B7B7B7B7B7B7B7B7B7B7BCBCBCBCBCBCBCBCBCC1C1C1C1C1C1C1C1C1C0C0C0C0C0C0C0C0C0
+C0C0C0C0C0C0C0C0C0C1C1C1C1C1C1C1C1C1C1C1C1BEBEBEBEBEBEBEBEBEB2B2B2B2B2B2B2B2B2
+9F9F9F9F9F9F9F9F9F9C9C9C9C9C9C9C9C9C9C9C9CA5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8
+AAAAAAAAAAAAAAAAAAA6A6A6A6A6A6A6A6A69A9A9A9A9A9A9A9A9A9A9A9A8D8D8D8D8D8D8D8D8D
+9F9F9F9F9F9F9F9F9FE1E1E1E1E1E1E1E1E1FCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BDBDBDBDBDBDBDBDBDD9D9D9
+D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D3D3D3D3D3D3
+D3D3D3D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1
+D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECDCDCDCDCDCD
+CDCDCDCECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0
+D0D0D0D2D2D2D2D2D2D2D2D2D4D4D4D4D4D4D4D4D4CDCDCDCDCDCDCDCDCDCDCDCD9D9D9D9D9D9D
+9D9D9D747474747474747474757575757575757575757575757575757575757575757575757575
+7575757575757575757575757979797979797979797D7D7D7D7D7D7D7D7D818181818181818181
+818181898989898989898989909090909090909090969696969696969696959595959595959595
+9797979797979797979797979C9C9C9C9C9C9C9C9CA3A3A3A3A3A3A3A3A3AAAAAAAAAAAAAAAAAA
+AEAEAEAEAEAEAEAEAEAEAEAEAAAAAAAAAAAAAAAAAA9E9E9E9E9E9E9E9E9E919191919191919191
+8C8C8C8C8C8C8C8C8C8A8A8A8A8A8A8A8A8A8A8A8A888888888888888888878787878787878787
+8D8D8D8D8D8D8D8D8D9696969696969696969E9E9E9E9E9E9E9E9E9E9E9EA3A3A3A3A3A3A3A3A3
+A8A8A8A8A8A8A8A8A8B2B2B2B2B2B2B2B2B2B8B8B8B8B8B8B8B8B8B8B8B8BABABABABABABABABA
+BBBBBBBBBBBBBBBBBBBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBCBCBCBCBCBCBCBCBCBCBCBC
+BCBCBCBCBCBCBCBCBCBDBDBDBDBDBDBDBDBDBFBFBFBFBFBFBFBFBFC0C0C0C0C0C0C0C0C0BFBFBF
+BFBFBFBFBFBFBFBFBFB7B7B7B7B7B7B7B7B7ACACACACACACACACAC9B9B9B9B9B9B9B9B9B989898
+989898989898989898A1A1A1A1A1A1A1A1A1A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A5A5A5
+A5A5A5A5A5A59696969696969696969696968D8D8D8D8D8D8D8D8DB0B0B0B0B0B0B0B0B0EDEDED
+EDEDEDEDEDEDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1
+D1D1D1D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECE
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D2D2D2D2D2D2D2D2D2
+D4D4D4D4D4D4D4D4D4CDCDCDCDCDCDCDCDCDCDCDCD9D9D9D9D9D9D9D9D9D747474747474747474
+757575757575757575757575757575757575757575757575757575757575757575757575757575
+7979797979797979797D7D7D7D7D7D7D7D7D818181818181818181818181898989898989898989
+909090909090909090969696969696969696959595959595959595979797979797979797979797
+9C9C9C9C9C9C9C9C9CA3A3A3A3A3A3A3A3A3AAAAAAAAAAAAAAAAAAAEAEAEAEAEAEAEAEAEAEAEAE
+AAAAAAAAAAAAAAAAAA9E9E9E9E9E9E9E9E9E9191919191919191918C8C8C8C8C8C8C8C8C8A8A8A
+8A8A8A8A8A8A8A8A8A8888888888888888888787878787878787878D8D8D8D8D8D8D8D8D969696
+9696969696969E9E9E9E9E9E9E9E9E9E9E9EA3A3A3A3A3A3A3A3A3A8A8A8A8A8A8A8A8A8B2B2B2
+B2B2B2B2B2B2B8B8B8B8B8B8B8B8B8B8B8B8BABABABABABABABABABBBBBBBBBBBBBBBBBBBDBDBD
+BDBDBDBDBDBDBDBDBDBDBDBDBDBDBDBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBDBDBD
+BDBDBDBDBDBDBFBFBFBFBFBFBFBFBFC0C0C0C0C0C0C0C0C0BFBFBFBFBFBFBFBFBFBFBFBFB7B7B7
+B7B7B7B7B7B7ACACACACACACACACAC9B9B9B9B9B9B9B9B9B989898989898989898989898A1A1A1
+A1A1A1A1A1A1A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A5A5A5A5A5A5A5A5A5969696969696
+9696969696968D8D8D8D8D8D8D8D8DB0B0B0B0B0B0B0B0B0EDEDEDEDEDEDEDEDEDFDFDFDFDFDFD
+FDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9C7C7C7C7C7C7C7C7C7D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCECECECECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECECECE
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCBCBCBCBCBCBCBCBCBC5C5C5C5C5C5C5C5C5BEBEBE
+BEBEBEBEBEBEBEBEBE969696969696969696717171717171717171757575757575757575757575
+7575757575757575757575757575757575757575757575757575757777777777777777777A7A7A
+7A7A7A7A7A7A7D7D7D7D7D7D7D7D7D7D7D7D8383838383838383838A8A8A8A8A8A8A8A8A909090
+909090909090939393939393939393959595959595959595959595959595959595959595989898
+9898989898989E9E9E9E9E9E9E9E9EA4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A49D9D9D
+9D9D9D9D9D9D969696969696969696939393939393939393949494949494949494949494949494
+9494949494949595959595959595959A9A9A9A9A9A9A9A9A9F9F9F9F9F9F9F9F9FA5A5A5A5A5A5
+A5A5A5A5A5A5A9A9A9A9A9A9A9A9A9ACACACACACACACACACB0B1B0B0B1B0B0B1B0B3B3B3B3B3B3
+B3B3B3B3B3B3B4B4B4B4B4B4B4B4B4B6B6B6B6B6B6B6B6B6B5B5B5B5B5B5B5B5B5B3B3B3B3B3B3
+B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8BABABABABABA
+BABABABDBDBDBDBDBDBDBDBDBBBBBBBBBBBBBBBBBBBBBBBBB1B1B1B1B1B1B1B1B1A6A6A6A6A6A6
+A6A6A6999999999999999999989898989898989898989898A0A0A0A0A0A0A0A0A0A4A4A4A4A4A4
+A4A4A4A7A7A7A7A7A7A7A7A7A2A2A2A2A2A2A2A2A2959595959595959595959595929292929292
+929292C4C4C4C4C4C4C4C4C4F6F6F6F6F6F6F6F6F6FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD7D7D7D7D7D7D7D7D7
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7
+D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3
+D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECE
+CECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCBCBCBCBCBCBCBCBCBC5C5C5C5C5C5C5C5C5BEBEBEBEBEBEBEBEBEBEBEBE969696
+969696969696717171717171717171757575757575757575757575757575757575757575757575
+7575757575757575757575757575757777777777777777777A7A7A7A7A7A7A7A7A7D7D7D7D7D7D
+7D7D7D7D7D7D8383838383838383838A8A8A8A8A8A8A8A8A909090909090909090939393939393
+9393939595959595959595959595959595959595959595959898989898989898989E9E9E9E9E9E
+9E9E9EA4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A49D9D9D9D9D9D9D9D9D969696969696
+969696939393939393939393949494949494949494949494949494949494949494959595959595
+9595959A9A9A9A9A9A9A9A9A9F9F9F9F9F9F9F9F9FA5A5A5A5A5A5A5A5A5A5A5A5A9A9A9A9A9A9
+A9A9A9ACACACACACACACACACB0B1B0B0B1B0B0B1B0B3B3B3B3B3B3B3B3B3B3B3B3B4B4B4B4B4B4
+B4B4B4B6B6B6B6B6B6B6B6B6B5B5B5B5B5B5B5B5B5B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1
+B1B1B1B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8BABABABABABABABABABDBDBDBDBDBDBDBDBD
+BBBBBBBBBBBBBBBBBBBBBBBBB1B1B1B1B1B1B1B1B1A6A6A6A6A6A6A6A6A6999999999999999999
+989898989898989898989898A0A0A0A0A0A0A0A0A0A4A4A4A4A4A4A4A4A4A7A7A7A7A7A7A7A7A7
+A2A2A2A2A2A2A2A2A2959595959595959595959595929292929292929292C4C4C4C4C4C4C4C4C4
+F6F6F6F6F6F6F6F6F6FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D7D7D7
+D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5
+D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1
+D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECDCDCDCDCDCD
+CDCDCDCECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCBCBCBCBCBCB
+CBCBCBC5C5C5C5C5C5C5C5C5BEBEBEBEBEBEBEBEBEBEBEBE969696969696969696717171717171
+717171757575757575757575757575757575757575757575757575757575757575757575757575
+7575757777777777777777777A7A7A7A7A7A7A7A7A7D7D7D7D7D7D7D7D7D7D7D7D838383838383
+8383838A8A8A8A8A8A8A8A8A909090909090909090939393939393939393959595959595959595
+9595959595959595959595959898989898989898989E9E9E9E9E9E9E9E9EA4A4A4A4A4A4A4A4A4
+A4A4A4A4A4A4A4A4A4A4A4A49D9D9D9D9D9D9D9D9D969696969696969696939393939393939393
+9494949494949494949494949494949494949494949595959595959595959A9A9A9A9A9A9A9A9A
+9F9F9F9F9F9F9F9F9FA5A5A5A5A5A5A5A5A5A5A5A5A9A9A9A9A9A9A9A9A9ACACACACACACACACAC
+B0B1B0B0B1B0B0B1B0B3B3B3B3B3B3B3B3B3B3B3B3B4B4B4B4B4B4B4B4B4B6B6B6B6B6B6B6B6B6
+B5B5B5B5B5B5B5B5B5B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B4B4B4B4B4B4B4B4B4
+B8B8B8B8B8B8B8B8B8BABABABABABABABABABDBDBDBDBDBDBDBDBDBBBBBBBBBBBBBBBBBBBBBBBB
+B1B1B1B1B1B1B1B1B1A6A6A6A6A6A6A6A6A6999999999999999999989898989898989898989898
+A0A0A0A0A0A0A0A0A0A4A4A4A4A4A4A4A4A4A7A7A7A7A7A7A7A7A7A2A2A2A2A2A2A2A2A2959595
+959595959595959595929292929292929292C4C4C4C4C4C4C4C4C4F6F6F6F6F6F6F6F6F6FDFDFD
+FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFB
+FBFBFBFBFBFBD7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D7D7D7D9D9D9D9D9D9D9D9D9D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7
+D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D5D5D5D4D4D4D4D4D4D4D4D4D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCF
+CFCFCFCECECECECECECECECECECECECECECECECECECECECECECECECECECECFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCBCBCBCBCBCBCBCBCBB3B3B3B3B3B3B3B3B3959595959595959595
+8383838383838383838383836C6C6C6C6C6C6C6C6C626262626262626262727272727272727272
+757575757575757575757575747474747474747474757575757575757575757575757575757575
+7676767676767676767B7B7B7B7B7B7B7B7B7B7B7B7E7E7E7E7E7E7E7E7E848484848484848484
+8A8A8A8A8A8A8A8A8A8F8F8F8F8F8F8F8F8F919191919191919191919191909090909090909090
+9292929292929292929898989898989898989C9C9C9C9C9C9C9C9C9C9C9C9B9B9B9B9B9B9B9B9B
+969696969696969696949494949494949494959595959595959595949494949494949494949494
+9696969696969696969797979797979797979797979797979797979B9B9B9B9B9B9B9B9B9F9F9F
+9F9F9F9F9F9F9F9F9FA1A1A1A1A1A1A1A1A19C9C9C9C9C9C9C9C9C949494949494949494909090
+9090909090909090909696969696969696969E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9F9F9F
+9F9F9F9F9F9FA5A5A5A5A5A5A5A5A5A5A5A5B0B0B0B0B0B0B0B0B0B8B8B8B8B8B8B8B8B8B8B8B8
+B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B5B5B5ABABABABABABABABABA0A0A0
+A0A0A0A0A0A0969696969696969696999999999999999999999999A2A2A2A2A2A2A2A2A2A5A5A5
+A5A5A5A5A5A5A5A5A5A5A5A5A5A5A59E9E9E9E9E9E9E9E9E9393939393939393939393939E9E9E
+9E9E9E9E9E9EDBDBDBDBDBDBDBDBDBF9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFEFEFEFEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACA
+CACACAD7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D9D9D9D9D9D9D9D9D9
+D9D9D9D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6
+D6D6D6D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4
+D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCECECECECECECECECE
+CECECECECECECECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CBCBCBCBCBCBCBCBCBB3B3B3B3B3B3B3B3B3959595959595959595838383838383838383838383
+6C6C6C6C6C6C6C6C6C626262626262626262727272727272727272757575757575757575757575
+7474747474747474747575757575757575757575757575757575757676767676767676767B7B7B
+7B7B7B7B7B7B7B7B7B7E7E7E7E7E7E7E7E7E8484848484848484848A8A8A8A8A8A8A8A8A8F8F8F
+8F8F8F8F8F8F919191919191919191919191909090909090909090929292929292929292989898
+9898989898989C9C9C9C9C9C9C9C9C9C9C9C9B9B9B9B9B9B9B9B9B969696969696969696949494
+949494949494959595959595959595949494949494949494949494969696969696969696979797
+9797979797979797979797979797979B9B9B9B9B9B9B9B9B9F9F9F9F9F9F9F9F9F9F9F9FA1A1A1
+A1A1A1A1A1A19C9C9C9C9C9C9C9C9C949494949494949494909090909090909090909090969696
+9696969696969E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9F9F9F9F9F9F9F9F9FA5A5A5A5A5A5
+A5A5A5A5A5A5B0B0B0B0B0B0B0B0B0B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8
+B8B8B8B5B5B5B5B5B5B5B5B5B5B5B5ABABABABABABABABABA0A0A0A0A0A0A0A0A0969696969696
+969696999999999999999999999999A2A2A2A2A2A2A2A2A2A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5
+A5A5A59E9E9E9E9E9E9E9E9E9393939393939393939393939E9E9E9E9E9E9E9E9EDBDBDBDBDBDB
+DBDBDBF9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9CACACACACACACACACAD7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D4D4D4D4D4D4D4D4D4D1D1D1D1D1D1D1D1D1D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCECECE
+CECECECECECECFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0C2C2C2C2C2C2C2C2C29A9A9A
+9A9A9A9A9A9A666666666666666666484848484848484848484848404040404040404040555555
+555555555555717171717171717171757575757575757575757575727272727272727272737373
+7373737373737474747474747474747676767676767676767979797979797979797979797C7C7C
+7C7C7C7C7C7C8181818181818181818585858585858585858B8B8B8B8B8B8B8B8B8D8D8D8D8D8D
+8D8D8D8D8D8D8888888888888888888C8C8C8C8C8C8C8C8C949494949494949494969696969696
+9696969696969090909090909090908F8F8F8F8F8F8F8F8F909090909090909090939393939393
+9393939090909090909090909090909090909090909090908D8D8D8D8D8D8D8D8D888888888888
+888888888888888888888888888888888888888888888888878787878787878787808080808080
+8080807373737373737373737171717171717171717171717D7D7D7D7D7D7D7D7D898989898989
+8989898D8D8D8D8D8D8D8D8D959595959595959595A3A3A3A3A3A3A3A3A3A3A3A3B2B2B2B2B2B2
+B2B2B2BABABABABABABABABAB7B7B7B7B7B7B7B7B7B5B5B5B5B5B5B5B5B5B0B0B0B0B0B0B0B0B0
+B0B0B0A8A8A8A8A8A8A8A8A8A0A0A0A0A0A0A0A0A09A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
+9A9A9AA3A3A3A3A3A3A3A3A3A8A8A8A8A8A8A8A8A8A4A4A4A4A4A4A4A4A49B9B9B9B9B9B9B9B9B
+939393939393939393939393B7B7B7B7B7B7B7B7B7F0F0F0F0F0F0F0F0F0FDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FBFBFBFBFBFBFBFBFBD4D4D4D4D4D4D4D4D4D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8
+D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5
+D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D4D4D4D4D4D4D4D4D4D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECE
+CECECECECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECFCFCFCFCFCF
+CFCFCFCFCFCFD0D0D0D0D0D0D0D0D0C2C2C2C2C2C2C2C2C29A9A9A9A9A9A9A9A9A666666666666
+666666484848484848484848484848404040404040404040555555555555555555717171717171
+717171757575757575757575757575727272727272727272737373737373737373747474747474
+7474747676767676767676767979797979797979797979797C7C7C7C7C7C7C7C7C818181818181
+8181818585858585858585858B8B8B8B8B8B8B8B8B8D8D8D8D8D8D8D8D8D8D8D8D888888888888
+8888888C8C8C8C8C8C8C8C8C949494949494949494969696969696969696969696909090909090
+9090908F8F8F8F8F8F8F8F8F909090909090909090939393939393939393909090909090909090
+9090909090909090909090908D8D8D8D8D8D8D8D8D888888888888888888888888888888888888
+888888888888888888888888878787878787878787808080808080808080737373737373737373
+7171717171717171717171717D7D7D7D7D7D7D7D7D8989898989898989898D8D8D8D8D8D8D8D8D
+959595959595959595A3A3A3A3A3A3A3A3A3A3A3A3B2B2B2B2B2B2B2B2B2BABABABABABABABABA
+B7B7B7B7B7B7B7B7B7B5B5B5B5B5B5B5B5B5B0B0B0B0B0B0B0B0B0B0B0B0A8A8A8A8A8A8A8A8A8
+A0A0A0A0A0A0A0A0A09A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AA3A3A3A3A3A3A3A3A3
+A8A8A8A8A8A8A8A8A8A4A4A4A4A4A4A4A4A49B9B9B9B9B9B9B9B9B939393939393939393939393
+B7B7B7B7B7B7B7B7B7F0F0F0F0F0F0F0F0F0FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFE
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD4D4D4
+D4D4D4D4D4D4D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8
+D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5
+D5D5D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D4D4D4D4D4D4
+D4D4D4D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECECECECE
+CECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0
+D0D0D0C2C2C2C2C2C2C2C2C29A9A9A9A9A9A9A9A9A666666666666666666484848484848484848
+484848404040404040404040555555555555555555717171717171717171757575757575757575
+757575727272727272727272737373737373737373747474747474747474767676767676767676
+7979797979797979797979797C7C7C7C7C7C7C7C7C818181818181818181858585858585858585
+8B8B8B8B8B8B8B8B8B8D8D8D8D8D8D8D8D8D8D8D8D8888888888888888888C8C8C8C8C8C8C8C8C
+9494949494949494949696969696969696969696969090909090909090908F8F8F8F8F8F8F8F8F
+909090909090909090939393939393939393909090909090909090909090909090909090909090
+8D8D8D8D8D8D8D8D8D888888888888888888888888888888888888888888888888888888888888
+878787878787878787808080808080808080737373737373737373717171717171717171717171
+7D7D7D7D7D7D7D7D7D8989898989898989898D8D8D8D8D8D8D8D8D959595959595959595A3A3A3
+A3A3A3A3A3A3A3A3A3B2B2B2B2B2B2B2B2B2BABABABABABABABABAB7B7B7B7B7B7B7B7B7B5B5B5
+B5B5B5B5B5B5B0B0B0B0B0B0B0B0B0B0B0B0A8A8A8A8A8A8A8A8A8A0A0A0A0A0A0A0A0A09A9A9A
+9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AA3A3A3A3A3A3A3A3A3A8A8A8A8A8A8A8A8A8A4A4A4
+A4A4A4A4A4A49B9B9B9B9B9B9B9B9B939393939393939393939393B7B7B7B7B7B7B7B7B7F0F0F0
+F0F0F0F0F0F0FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFBFBFBFBFBFBD4D4D4D4D4D4D4D4D4D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6
+D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECECECECECECECECDCDCDCDCDCDCDCDCD
+CECECECECECECECECED0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFC0C0C0C0C0C0C0C0C0
+A2A2A2A2A2A2A2A2A2767676767676767676454545454545454545454545353535353535353535
+4F4F4F4F4F4F4F4F4F707070707070707070787878787878787878787878737373737373737373
+737373737373737373747474747474747474767676767676767676777777777777777777777777
+7A7A7A7A7A7A7A7A7A7C7C7C7C7C7C7C7C7C808080808080808080868686868686868686888888
+8888888888888888888383838383838383838484848484848484848A8A8A8A8A8A8A8A8A8E8E8E
+8E8E8E8E8E8E8E8E8E8B8B8B8B8B8B8B8B8B8989898989898989898989898989898989898B8B8B
+8B8B8B8B8B8B8C8C8C8C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D8787878787878787877F7F7F
+7F7F7F7F7F7F7B7B7B7B7B7B7B7B7B7979797979797979797979797B7B7B7B7B7B7B7B7B7B7B7B
+7B7B7B7B7B7B7777777777777777777676767676767676767676767D7D7D7D7D7D7D7D7D888888
+8888888888888F8F8F8F8F8F8F8F8F999999999999999999A8A8A8A8A8A8A8A8A8A8A8A8B5B5B5
+B5B5B5B5B5B5B9B9B9B9B9B9B9B9B9B5B5B5B5B5B5B5B5B5B0B0B0B0B0B0B0B0B0A9A9A9A9A9A9
+A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A5A5A5A5A5A5A5A5A59E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
+9E9E9E9E9E9EA6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A1A1A1A1A1A1A1A1A1979797979797
+9797979A9A9A9A9A9A9A9A9A9A9A9AD4D4D4D4D4D4D4D4D4FAFAFAFAFAFAFAFAFAFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFCFCFCFCFCFCFCFCFCE1E1E1E1E1E1E1E1E1D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+CECECECECECECECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECED0D0D0
+D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFC0C0C0C0C0C0C0C0C0A2A2A2A2A2A2A2A2A2767676
+7676767676764545454545454545454545453535353535353535354F4F4F4F4F4F4F4F4F707070
+707070707070787878787878787878787878737373737373737373737373737373737373747474
+7474747474747676767676767676767777777777777777777777777A7A7A7A7A7A7A7A7A7C7C7C
+7C7C7C7C7C7C808080808080808080868686868686868686888888888888888888888888838383
+8383838383838484848484848484848A8A8A8A8A8A8A8A8A8E8E8E8E8E8E8E8E8E8E8E8E8B8B8B
+8B8B8B8B8B8B8989898989898989898989898989898989898B8B8B8B8B8B8B8B8B8C8C8C8C8C8C
+8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D8787878787878787877F7F7F7F7F7F7F7F7F7B7B7B7B7B7B
+7B7B7B7979797979797979797979797B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B777777777777
+7777777676767676767676767676767D7D7D7D7D7D7D7D7D8888888888888888888F8F8F8F8F8F
+8F8F8F999999999999999999A8A8A8A8A8A8A8A8A8A8A8A8B5B5B5B5B5B5B5B5B5B9B9B9B9B9B9
+B9B9B9B5B5B5B5B5B5B5B5B5B0B0B0B0B0B0B0B0B0A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9
+A9A9A9A5A5A5A5A5A5A5A5A59E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA6A6A6A6A6A6
+A6A6A6A9A9A9A9A9A9A9A9A9A1A1A1A1A1A1A1A1A19797979797979797979A9A9A9A9A9A9A9A9A
+9A9A9AD4D4D4D4D4D4D4D4D4FAFAFAFAFAFAFAFAFAFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFC
+E1E1E1E1E1E1E1E1E1D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8
+D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D7D7D7
+D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D5D5D5D5D5D5D5D5D4D4D4
+D4D4D4D4D4D4D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D3D3D3
+D3D3D3D3D3D3D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECE
+CECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECED0D0D0D0D0D0D0D0D0D0D0D0CFCFCF
+CFCFCFCFCFCFC0C0C0C0C0C0C0C0C0A2A2A2A2A2A2A2A2A2767676767676767676454545454545
+4545454545453535353535353535354F4F4F4F4F4F4F4F4F707070707070707070787878787878
+787878787878737373737373737373737373737373737373747474747474747474767676767676
+7676767777777777777777777777777A7A7A7A7A7A7A7A7A7C7C7C7C7C7C7C7C7C808080808080
+808080868686868686868686888888888888888888888888838383838383838383848484848484
+8484848A8A8A8A8A8A8A8A8A8E8E8E8E8E8E8E8E8E8E8E8E8B8B8B8B8B8B8B8B8B898989898989
+8989898989898989898989898B8B8B8B8B8B8B8B8B8C8C8C8C8C8C8C8C8C8C8C8C8D8D8D8D8D8D
+8D8D8D8787878787878787877F7F7F7F7F7F7F7F7F7B7B7B7B7B7B7B7B7B797979797979797979
+7979797B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B777777777777777777767676767676767676
+7676767D7D7D7D7D7D7D7D7D8888888888888888888F8F8F8F8F8F8F8F8F999999999999999999
+A8A8A8A8A8A8A8A8A8A8A8A8B5B5B5B5B5B5B5B5B5B9B9B9B9B9B9B9B9B9B5B5B5B5B5B5B5B5B5
+B0B0B0B0B0B0B0B0B0A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A5A5A5A5A5A5A5A5A5
+9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9
+A1A1A1A1A1A1A1A1A19797979797979797979A9A9A9A9A9A9A9A9A9A9A9AD4D4D4D4D4D4D4D4D4
+FAFAFAFAFAFAFAFAFAFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFCFCFCFCFCE1E1E1E1E1E1E1E1E1D7D7D7
+D7D7D7D7D7D7D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4
+D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0
+D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCECECECECECECECECED0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFC4C4C4C4C4C4
+C4C4C4B1B1B1B1B1B1B1B1B19A9A9A9A9A9A9A9A9A6161616161616161616161613A3A3A3A3A3A
+3A3A3A4D4D4D4D4D4D4D4D4D6F6F6F6F6F6F6F6F6F7B7B7B7B7B7B7B7B7B7B7B7B767676767676
+767676727272727272727272737373737373737373747474747474747474757575757575757575
+7575757878787878787878787979797979797979797B7B7B7B7B7B7B7B7B7F7F7F7F7F7F7F7F7F
+8282828282828282828282827E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C808080808080808080
+868686868686868686868686858585858585858585858585858585858585868686868686868686
+8888888888888888888989898989898989898989898B8B8B8B8B8B8B8B8B898989898989898989
+8282828282828282827E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F
+808080808080808080818181818181818181808080808080808080808080868686868686868686
+909090909090909090979797979797979797A3A3A3A3A3A3A3A3A3AFAFAFAFAFAFAFAFAFAFAFAF
+B7B7B7B7B7B7B7B7B7B8B8B8B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3AFAFAFAFAFAFAFAFAFA8A8A8
+A8A8A8A8A8A8A8A8A8ABABABABABABABABABA8A8A8A8A8A8A8A8A8A2A2A2A2A2A2A2A2A2A3A3A3
+A3A3A3A3A3A3A3A3A3A8A8A8A8A8A8A8A8A8A9A9A9A9A9A9A9A9A9A0A0A0A0A0A0A0A0A0969696
+969696969696A9A9A9A9A9A9A9A9A9A9A9A9E8E8E8E8E8E8E8E8E8FCFCFCFCFCFCFCFCFCFDFDFD
+FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D7D8D8D8D8D8D8
+D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5
+D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4
+D4D4D4D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0CFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECE
+D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFC4C4C4C4C4C4C4C4C4B1B1B1B1B1B1B1B1B1
+9A9A9A9A9A9A9A9A9A6161616161616161616161613A3A3A3A3A3A3A3A3A4D4D4D4D4D4D4D4D4D
+6F6F6F6F6F6F6F6F6F7B7B7B7B7B7B7B7B7B7B7B7B767676767676767676727272727272727272
+737373737373737373747474747474747474757575757575757575757575787878787878787878
+7979797979797979797B7B7B7B7B7B7B7B7B7F7F7F7F7F7F7F7F7F828282828282828282828282
+7E7E7E7E7E7E7E7E7E7C7C7C7C7C7C7C7C7C808080808080808080868686868686868686868686
+858585858585858585858585858585858585868686868686868686888888888888888888898989
+8989898989898989898B8B8B8B8B8B8B8B8B8989898989898989898282828282828282827E7E7E
+7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F808080808080808080818181
+818181818181808080808080808080808080868686868686868686909090909090909090979797
+979797979797A3A3A3A3A3A3A3A3A3AFAFAFAFAFAFAFAFAFAFAFAFB7B7B7B7B7B7B7B7B7B8B8B8
+B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3AFAFAFAFAFAFAFAFAFA8A8A8A8A8A8A8A8A8A8A8A8ABABAB
+ABABABABABABA8A8A8A8A8A8A8A8A8A2A2A2A2A2A2A2A2A2A3A3A3A3A3A3A3A3A3A3A3A3A8A8A8
+A8A8A8A8A8A8A9A9A9A9A9A9A9A9A9A0A0A0A0A0A0A0A0A0969696969696969696A9A9A9A9A9A9
+A9A9A9A9A9A9E8E8E8E8E8E8E8E8E8FCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D7D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4
+D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECE
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECED0D0D0D0D0D0D0D0D0D0D0D0
+CFCFCFCFCFCFCFCFCFC6C6C6C6C6C6C6C6C6B6B6B6B6B6B6B6B6B6ACACACACACACACACAC808080
+8080808080808080804949494949494949494C4C4C4C4C4C4C4C4C6C6C6C6C6C6C6C6C6C7B7B7B
+7B7B7B7B7B7B7B7B7B797979797979797979727272727272727272727272727272727272737373
+737373737373757575757575757575757575777777777777777777777777777777777777797979
+7979797979797A7A7A7A7A7A7A7A7A7E7E7E7E7E7E7E7E7E7E7E7E7B7B7B7B7B7B7B7B7B777777
+7777777777777979797979797979797E7E7E7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F818181
+8181818181818383838383838383838888888888888888888A8A8A8A8A8A8A8A8A8A8A8A8C8C8C
+8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E898989898989898989868686868686868686858585858585
+858585858585838383838383838383818181818181818181858585858585858585878787878787
+8787878787878F8F8F8F8F8F8F8F8F999999999999999999A1A1A1A1A1A1A1A1A1ACACACACACAC
+ACACACB8B8B8B8B8B8B8B8B8B8B8B8BBBBBBBBBBBBBBBBBBB8B8B8B8B8B8B8B8B8B5B5B5B5B5B5
+B5B5B5B3B3B3B3B3B3B3B3B3B0B0B0B0B0B0B0B0B0B0B0B0AEAEAEAEAEAEAEAEAEAAAAAAAAAAAA
+AAAAAAA8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8A8A8A8A8A8
+A8A8A89E9E9E9E9E9E9E9E9E959595959595959595B5B5B5B5B5B5B5B5B5B5B5B5F0F0F0F0F0F0
+F0F0F0FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6
+D7D7D7D7D7D7D7D7D7D9D9D9D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7
+D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D3D3D3
+D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0D0D0
+D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCECECECECECECECECED0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFC6C6C6
+C6C6C6C6C6C6B6B6B6B6B6B6B6B6B6ACACACACACACACACAC808080808080808080808080494949
+4949494949494C4C4C4C4C4C4C4C4C6C6C6C6C6C6C6C6C6C7B7B7B7B7B7B7B7B7B7B7B7B797979
+797979797979727272727272727272727272727272727272737373737373737373757575757575
+7575757575757777777777777777777777777777777777777979797979797979797A7A7A7A7A7A
+7A7A7A7E7E7E7E7E7E7E7E7E7E7E7E7B7B7B7B7B7B7B7B7B777777777777777777797979797979
+7979797E7E7E7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F818181818181818181838383838383
+8383838888888888888888888A8A8A8A8A8A8A8A8A8A8A8A8C8C8C8C8C8C8C8C8C8E8E8E8E8E8E
+8E8E8E898989898989898989868686868686868686858585858585858585858585838383838383
+8383838181818181818181818585858585858585858787878787878787878787878F8F8F8F8F8F
+8F8F8F999999999999999999A1A1A1A1A1A1A1A1A1ACACACACACACACACACB8B8B8B8B8B8B8B8B8
+B8B8B8BBBBBBBBBBBBBBBBBBB8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B3B3B3B3B3B3B3B3B3
+B0B0B0B0B0B0B0B0B0B0B0B0AEAEAEAEAEAEAEAEAEAAAAAAAAAAAAAAAAAAA8A8A8A8A8A8A8A8A8
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8A8A8A8A8A8A8A8A89E9E9E9E9E9E9E9E9E
+959595959595959595B5B5B5B5B5B5B5B5B5B5B5B5F0F0F0F0F0F0F0F0F0FDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6D7D7D7D7D7D7D7D7D7D9D9D9
+D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D5
+D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5
+D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3
+D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0CFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0CECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECE
+CECECED0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFC6C6C6C6C6C6C6C6C6B6B6B6B6B6B6
+B6B6B6ACACACACACACACACAC8080808080808080808080804949494949494949494C4C4C4C4C4C
+4C4C4C6C6C6C6C6C6C6C6C6C7B7B7B7B7B7B7B7B7B7B7B7B797979797979797979727272727272
+727272727272727272727272737373737373737373757575757575757575757575777777777777
+7777777777777777777777777979797979797979797A7A7A7A7A7A7A7A7A7E7E7E7E7E7E7E7E7E
+7E7E7E7B7B7B7B7B7B7B7B7B7777777777777777777979797979797979797E7E7E7E7E7E7E7E7E
+7E7E7E7F7F7F7F7F7F7F7F7F818181818181818181838383838383838383888888888888888888
+8A8A8A8A8A8A8A8A8A8A8A8A8C8C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E898989898989898989
+868686868686868686858585858585858585858585838383838383838383818181818181818181
+8585858585858585858787878787878787878787878F8F8F8F8F8F8F8F8F999999999999999999
+A1A1A1A1A1A1A1A1A1ACACACACACACACACACB8B8B8B8B8B8B8B8B8B8B8B8BBBBBBBBBBBBBBBBBB
+B8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B3B3B3B3B3B3B3B3B3B0B0B0B0B0B0B0B0B0B0B0B0
+AEAEAEAEAEAEAEAEAEAAAAAAAAAAAAAAAAAAA8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAA8A8A8A8A8A8A8A8A89E9E9E9E9E9E9E9E9E959595959595959595B5B5B5
+B5B5B5B5B5B5B5B5B5F0F0F0F0F0F0F0F0F0FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9
+F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3
+D3D3D3D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCECECECECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECECECECECECED0D0D0D0D0D0D0D0D0
+D0D0D0CFCFCFCFCFCFCFCFCFC6C6C6C6C6C6C6C6C6B8B8B8B8B8B8B8B8B8B3B3B3B3B3B3B3B3B3
+9B9B9B9B9B9B9B9B9B9B9B9B666666666666666666515151515151515151686868686868686868
+7979797979797979797979797B7B7B7B7B7B7B7B7B747474747474747474707070707070707070
+717171717171717171737373737373737373737373757575757575757575767676767676767676
+7878787878787878787979797979797979797B7B7B7B7B7B7B7B7B7B7B7B787878787878787878
+747474747474747474737373737373737373757575757575757575757575777777777777777777
+7D7D7D7D7D7D7D7D7D8181818181818181818585858585858585858A8A8A8A8A8A8A8A8A8A8A8A
+8F8F8F8F8F8F8F8F8F9090909090909090908B8B8B8B8B8B8B8B8B888888888888888888898989
+8989898989898989898888888888888888888A8A8A8A8A8A8A8A8A8F8F8F8F8F8F8F8F8F979797
+979797979797979797A2A2A2A2A2A2A2A2A2A8A8A8A8A8A8A8A8A8B0B0B0B0B0B0B0B0B0B9B9B9
+B9B9B9B9B9B9C0C0C0C0C0C0C0C0C0C0C0C0BFBFBFBFBFBFBFBFBFBEBEBEBEBEBEBEBEBEBEBEBE
+BEBEBEBEBEBEBCBCBCBCBCBCBCBCBCB7B7B7B7B7B7B7B7B7B7B7B7B0B0B0B0B0B0B0B0B0AEAEAE
+AEAEAEAEAEAEADADADADADADADADADADADADADADADADADADADADADAAAAAAAAAAAAAAAAAAA4A4A4
+A4A4A4A4A4A4999999999999999999929292929292929292BABABABABABABABABABABABAF1F1F1
+F1F1F1F1F1F1FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BBBBBBBBBBBB
+BBBBBBD6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4
+D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2
+D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECDCDCDCDCDCDCDCDCD
+CECECECECECECECECECECECECECECECECECED0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCF
+C6C6C6C6C6C6C6C6C6B8B8B8B8B8B8B8B8B8B3B3B3B3B3B3B3B3B39B9B9B9B9B9B9B9B9B9B9B9B
+666666666666666666515151515151515151686868686868686868797979797979797979797979
+7B7B7B7B7B7B7B7B7B747474747474747474707070707070707070717171717171717171737373
+737373737373737373757575757575757575767676767676767676787878787878787878797979
+7979797979797B7B7B7B7B7B7B7B7B7B7B7B787878787878787878747474747474747474737373
+7373737373737575757575757575757575757777777777777777777D7D7D7D7D7D7D7D7D818181
+8181818181818585858585858585858A8A8A8A8A8A8A8A8A8A8A8A8F8F8F8F8F8F8F8F8F909090
+9090909090908B8B8B8B8B8B8B8B8B888888888888888888898989898989898989898989888888
+8888888888888A8A8A8A8A8A8A8A8A8F8F8F8F8F8F8F8F8F979797979797979797979797A2A2A2
+A2A2A2A2A2A2A8A8A8A8A8A8A8A8A8B0B0B0B0B0B0B0B0B0B9B9B9B9B9B9B9B9B9C0C0C0C0C0C0
+C0C0C0C0C0C0BFBFBFBFBFBFBFBFBFBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBCBCBCBCBCBC
+BCBCBCB7B7B7B7B7B7B7B7B7B7B7B7B0B0B0B0B0B0B0B0B0AEAEAEAEAEAEAEAEAEADADADADADAD
+ADADADADADADADADADADADADADADADAAAAAAAAAAAAAAAAAAA4A4A4A4A4A4A4A4A4999999999999
+999999929292929292929292BABABABABABABABABABABABAF1F1F1F1F1F1F1F1F1FDFDFDFDFDFD
+FDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9BBBBBBBBBBBBBBBBBBD6D6D5D6D6D5D6D6D5
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5
+D5D5D5D5D5D5D5D5D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2
+D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1
+D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2CFCFCFCFCFCFCFCFCFCECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECEC6C6C6C6C6C6C6C6C6B9B9B9
+B9B9B9B9B9B9B4B4B4B4B4B4B4B4B4ADADADADADADADADADADADAD8A8A8A8A8A8A8A8A8A646464
+6464646464646565656565656565657676767676767676767676767C7C7C7C7C7C7C7C7C757575
+7575757575756F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F707070707070707070707070727272
+7272727272727575757575757575757878787878787878787A7A7A7A7A7A7A7A7A7B7B7B7B7B7B
+7B7B7B7B7B7B7878787878787878787373737373737373736E6E6E6E6E6E6E6E6E6D6D6D6D6D6D
+6D6D6D6D6D6D7474747474747474747C7C7C7C7C7C7C7C7C808080808080808080838383838383
+838383888888888888888888888888909090909090909090949494949494949494909090909090
+9090908F8F8F8F8F8F8F8F8F929292929292929292929292909090909090909090999999999999
+999999A3A3A3A3A3A3A3A3A3ABABABABABABABABABABABABB4B4B4B4B4B4B4B4B4B7B7B7B7B7B7
+B7B7B7C0C0C0C0C0C0C0C0C0C5C5C5C5C5C5C5C5C5C6C6C6C6C6C6C6C6C6C6C6C6C5C5C5C5C5C5
+C5C5C5C5C5C5C5C5C5C5C5C5C6C6C6C6C6C6C6C6C6C3C3C3C3C3C3C3C3C3B9B9B9B9B9B9B9B9B9
+B9B9B9B3B3B3B3B3B3B3B3B3B2B2B2B2B2B2B2B2B2AFAFAFAFAFAFAFAFAFA8A8A8A8A8A8A8A8A8
+A8A8A8A3A3A3A3A3A3A3A3A39E9E9E9E9E9E9E9E9E959595959595959595949494949494949494
+BCBCBCBCBCBCBCBCBCBCBCBCF1F1F1F1F1F1F1F1F1FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+F9F9F9F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4
+D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D3D3D3D3D3D3D3D3D3D2D2D2
+D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D2D2D2
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2CFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0
+D0D0D0D0D0D0CECECECECECECECECEC6C6C6C6C6C6C6C6C6B9B9B9B9B9B9B9B9B9B4B4B4B4B4B4
+B4B4B4ADADADADADADADADADADADAD8A8A8A8A8A8A8A8A8A646464646464646464656565656565
+6565657676767676767676767676767C7C7C7C7C7C7C7C7C7575757575757575756F6F6F6F6F6F
+6F6F6F6F6F6F6F6F6F6F6F6F707070707070707070707070727272727272727272757575757575
+7575757878787878787878787A7A7A7A7A7A7A7A7A7B7B7B7B7B7B7B7B7B7B7B7B787878787878
+7878787373737373737373736E6E6E6E6E6E6E6E6E6D6D6D6D6D6D6D6D6D6D6D6D747474747474
+7474747C7C7C7C7C7C7C7C7C808080808080808080838383838383838383888888888888888888
+8888889090909090909090909494949494949494949090909090909090908F8F8F8F8F8F8F8F8F
+929292929292929292929292909090909090909090999999999999999999A3A3A3A3A3A3A3A3A3
+ABABABABABABABABABABABABB4B4B4B4B4B4B4B4B4B7B7B7B7B7B7B7B7B7C0C0C0C0C0C0C0C0C0
+C5C5C5C5C5C5C5C5C5C6C6C6C6C6C6C6C6C6C6C6C6C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5
+C6C6C6C6C6C6C6C6C6C3C3C3C3C3C3C3C3C3B9B9B9B9B9B9B9B9B9B9B9B9B3B3B3B3B3B3B3B3B3
+B2B2B2B2B2B2B2B2B2AFAFAFAFAFAFAFAFAFA8A8A8A8A8A8A8A8A8A8A8A8A3A3A3A3A3A3A3A3A3
+9E9E9E9E9E9E9E9E9E959595959595959595949494949494949494BCBCBCBCBCBCBCBCBCBCBCBC
+F1F1F1F1F1F1F1F1F1FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C5C5C5
+C5C5C5C5C5C5D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3
+D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1
+D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2CFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0CECECECECECE
+CECECEC6C6C6C6C6C6C6C6C6B9B9B9B9B9B9B9B9B9B4B4B4B4B4B4B4B4B4ADADADADADADADADAD
+ADADAD8A8A8A8A8A8A8A8A8A646464646464646464656565656565656565767676767676767676
+7676767C7C7C7C7C7C7C7C7C7575757575757575756F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F
+707070707070707070707070727272727272727272757575757575757575787878787878787878
+7A7A7A7A7A7A7A7A7A7B7B7B7B7B7B7B7B7B7B7B7B787878787878787878737373737373737373
+6E6E6E6E6E6E6E6E6E6D6D6D6D6D6D6D6D6D6D6D6D7474747474747474747C7C7C7C7C7C7C7C7C
+808080808080808080838383838383838383888888888888888888888888909090909090909090
+9494949494949494949090909090909090908F8F8F8F8F8F8F8F8F929292929292929292929292
+909090909090909090999999999999999999A3A3A3A3A3A3A3A3A3ABABABABABABABABABABABAB
+B4B4B4B4B4B4B4B4B4B7B7B7B7B7B7B7B7B7C0C0C0C0C0C0C0C0C0C5C5C5C5C5C5C5C5C5C6C6C6
+C6C6C6C6C6C6C6C6C6C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C6C6C6C6C6C6C6C6C6C3C3C3
+C3C3C3C3C3C3B9B9B9B9B9B9B9B9B9B9B9B9B3B3B3B3B3B3B3B3B3B2B2B2B2B2B2B2B2B2AFAFAF
+AFAFAFAFAFAFA8A8A8A8A8A8A8A8A8A8A8A8A3A3A3A3A3A3A3A3A39E9E9E9E9E9E9E9E9E959595
+959595959595949494949494949494BCBCBCBCBCBCBCBCBCBCBCBCF1F1F1F1F1F1F1F1F1FDFDFD
+FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C5C5C5C5C5C5C5C5C5D6D6D6D6D6D6
+D6D6D6D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1
+D1D1D1D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECE
+D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDC5C5C5C5C5C5C5C5C5
+BCBCBCBCBCBCBCBCBCB5B5B5B5B5B5B5B5B5B6B6B6B6B6B6B6B6B6B6B6B6A4A4A4A4A4A4A4A4A4
+8383838383838383836A6A6A6A6A6A6A6A6A707070707070707070707070797979797979797979
+7777777777777777777070707070707070706E6E6E6E6E6E6E6E6E707070707070707070707070
+7070707070707070707474747474747474747878787878787878787B7B7B7B7B7B7B7B7B7C7C7C
+7C7C7C7C7C7C7C7C7C7A7A7A7A7A7A7A7A7A7575757575757575756F6F6F6F6F6F6F6F6F6E6E6E
+6E6E6E6E6E6E6E6E6E7575757575757575757D7D7D7D7D7D7D7D7D828282828282828282848484
+8484848484848888888888888888888888889090909090909090909797979797979797979A9A9A
+9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9E9E9E9E9E9E9E9E9E9E9E9E9A9A9A9A9A9A9A9A9A9F9F9F
+9F9F9F9F9F9FABABABABABABABABABB0B1B0B0B1B0B0B1B0B0B1B0B6B6B6B6B6B6B6B6B6BDBDBD
+BDBDBDBDBDBDC7C7C7C7C7C7C7C7C7CBCBCBCBCBCBCBCBCBC5C5C5C5C5C5C5C5C5C5C5C5C4C4C4
+C4C4C4C4C4C4C8C8C8C8C8C8C8C8C8CACACACACACACACACAC5C5C5C5C5C5C5C5C5BEBEBEBEBEBE
+BEBEBEBEBEBEBBBBBBBBBBBBBBBBBBB8B8B8B8B8B8B8B8B8AEAEAEAEAEAEAEAEAEA4A4A4A4A4A4
+A4A4A4A4A4A49E9E9E9E9E9E9E9E9E989898989898989898919191919191919191969696969696
+969696BBBBBBBBBBBBBBBBBBBBBBBBF1F1F1F1F1F1F1F1F1FDFDFDFDFDFDFDFDFDFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7
+D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1
+D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECECECED0D0D0D0D0D0D0D0D0D0D0D0
+CECECECECECECECECECFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDC5C5C5C5C5C5C5C5C5BCBCBCBCBCBCBCBCBCB5B5B5
+B5B5B5B5B5B5B6B6B6B6B6B6B6B6B6B6B6B6A4A4A4A4A4A4A4A4A48383838383838383836A6A6A
+6A6A6A6A6A6A707070707070707070707070797979797979797979777777777777777777707070
+7070707070706E6E6E6E6E6E6E6E6E707070707070707070707070707070707070707070747474
+7474747474747878787878787878787B7B7B7B7B7B7B7B7B7C7C7C7C7C7C7C7C7C7C7C7C7A7A7A
+7A7A7A7A7A7A7575757575757575756F6F6F6F6F6F6F6F6F6E6E6E6E6E6E6E6E6E6E6E6E757575
+7575757575757D7D7D7D7D7D7D7D7D828282828282828282848484848484848484888888888888
+8888888888889090909090909090909797979797979797979A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
+9A9A9A9E9E9E9E9E9E9E9E9E9E9E9E9A9A9A9A9A9A9A9A9A9F9F9F9F9F9F9F9F9FABABABABABAB
+ABABABB0B1B0B0B1B0B0B1B0B0B1B0B6B6B6B6B6B6B6B6B6BDBDBDBDBDBDBDBDBDC7C7C7C7C7C7
+C7C7C7CBCBCBCBCBCBCBCBCBC5C5C5C5C5C5C5C5C5C5C5C5C4C4C4C4C4C4C4C4C4C8C8C8C8C8C8
+C8C8C8CACACACACACACACACAC5C5C5C5C5C5C5C5C5BEBEBEBEBEBEBEBEBEBEBEBEBBBBBBBBBBBB
+BBBBBBB8B8B8B8B8B8B8B8B8AEAEAEAEAEAEAEAEAEA4A4A4A4A4A4A4A4A4A4A4A49E9E9E9E9E9E
+9E9E9E989898989898989898919191919191919191969696969696969696BBBBBBBBBBBBBBBBBB
+BBBBBBF1F1F1F1F1F1F1F1F1FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9
+C6C6C6C6C6C6C6C6C6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7D7D7D7
+D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4
+D4D4D4D4D4D4D4D4D4D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3
+D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECECECECECECECECECECECFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CDCDCD
+CDCDCDCDCDCDC3C3C3C3C3C3C3C3C3BDBDBDBDBDBDBDBDBDB7B7B7B7B7B7B7B7B7B8B8B8B8B8B8
+B8B8B8B8B8B8B2B2B2B2B2B2B2B2B2A2A2A2A2A2A2A2A2A28282828282828282826E6E6E6E6E6E
+6E6E6E6E6E6E7474747474747474747777777777777777776F6F6F6F6F6F6F6F6F6D6D6D6D6D6D
+6D6D6D717171717171717171717171727272727272727272737373737373737373777777777777
+7777777A7A7A7A7A7A7A7A7A7B7B7B7B7B7B7B7B7B7B7B7B7C7C7C7C7C7C7C7C7C787878787878
+7878787272727272727272727070707070707070707070707676767676767676767C7C7C7C7C7C
+7C7C7C7F7F7F7F7F7F7F7F7F828282828282828282898989898989898989898989909090909090
+9090909595959595959595959B9B9B9B9B9B9B9B9B9E9E9E9E9E9E9E9E9EA2A2A2A2A2A2A2A2A2
+A2A2A2A2A2A2A2A2A2A2A2A2A6A6A6A6A6A6A6A6A6ACACACACACACACACACB0B0B0B0B0B0B0B0B0
+B0B0B0B8B8B8B8B8B8B8B8B8BFBFBFBFBFBFBFBFBFC5C5C5C5C5C5C5C5C5C8C8C8C8C8C8C8C8C8
+C5C5C5C5C5C5C5C5C5C5C5C5C3C3C3C3C3C3C3C3C3C8C8C8C8C8C8C8C8C8CACACACACACACACACA
+C5C5C5C5C5C5C5C5C5BFBFBFBFBFBFBFBFBFBFBFBFBABABABABABABABABAB3B3B3B3B3B3B3B3B3
+A9A9A9A9A9A9A9A9A99F9F9F9F9F9F9F9F9F9F9F9F989898989898989898929292929292929292
+909090909090909090959595959595959595B7B7B7B7B7B7B7B7B7B7B7B7F0F0F0F0F0F0F0F0F0
+FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D5
+D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D5D5D5
+D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3D3D3D3D1D1D1
+D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0
+D0D0D0CECECECECECECECECECECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CDCDCDCDCDCDCDCDCDC3C3C3C3C3C3
+C3C3C3BDBDBDBDBDBDBDBDBDB7B7B7B7B7B7B7B7B7B8B8B8B8B8B8B8B8B8B8B8B8B2B2B2B2B2B2
+B2B2B2A2A2A2A2A2A2A2A2A28282828282828282826E6E6E6E6E6E6E6E6E6E6E6E747474747474
+7474747777777777777777776F6F6F6F6F6F6F6F6F6D6D6D6D6D6D6D6D6D717171717171717171
+7171717272727272727272727373737373737373737777777777777777777A7A7A7A7A7A7A7A7A
+7B7B7B7B7B7B7B7B7B7B7B7B7C7C7C7C7C7C7C7C7C787878787878787878727272727272727272
+7070707070707070707070707676767676767676767C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F
+828282828282828282898989898989898989898989909090909090909090959595959595959595
+9B9B9B9B9B9B9B9B9B9E9E9E9E9E9E9E9E9EA2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2
+A6A6A6A6A6A6A6A6A6ACACACACACACACACACB0B0B0B0B0B0B0B0B0B0B0B0B8B8B8B8B8B8B8B8B8
+BFBFBFBFBFBFBFBFBFC5C5C5C5C5C5C5C5C5C8C8C8C8C8C8C8C8C8C5C5C5C5C5C5C5C5C5C5C5C5
+C3C3C3C3C3C3C3C3C3C8C8C8C8C8C8C8C8C8CACACACACACACACACAC5C5C5C5C5C5C5C5C5BFBFBF
+BFBFBFBFBFBFBFBFBFBABABABABABABABABAB3B3B3B3B3B3B3B3B3A9A9A9A9A9A9A9A9A99F9F9F
+9F9F9F9F9F9F9F9F9F989898989898989898929292929292929292909090909090909090959595
+959595959595B7B7B7B7B7B7B7B7B7B7B7B7F0F0F0F0F0F0F0F0F0FDFDFDFDFDFDFDFDFDFEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFF9F9F9F9F9F9F9F9F9C3C3C3C3C3C3C3C3C3D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D7D7D7D7D7D7D7D7D7D7D7D7D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D6D6D5
+D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1
+D1D1D1D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0CECECECECECECECECE
+CECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0CDCDCDCDCDCDCDCDCDC3C3C3C3C3C3C3C3C3BDBDBDBDBDBDBDBDBD
+B7B7B7B7B7B7B7B7B7B8B8B8B8B8B8B8B8B8B8B8B8B2B2B2B2B2B2B2B2B2A2A2A2A2A2A2A2A2A2
+8282828282828282826E6E6E6E6E6E6E6E6E6E6E6E747474747474747474777777777777777777
+6F6F6F6F6F6F6F6F6F6D6D6D6D6D6D6D6D6D717171717171717171717171727272727272727272
+7373737373737373737777777777777777777A7A7A7A7A7A7A7A7A7B7B7B7B7B7B7B7B7B7B7B7B
+7C7C7C7C7C7C7C7C7C787878787878787878727272727272727272707070707070707070707070
+7676767676767676767C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F828282828282828282898989
+8989898989898989899090909090909090909595959595959595959B9B9B9B9B9B9B9B9B9E9E9E
+9E9E9E9E9E9EA2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A6A6A6A6A6A6A6A6A6ACACAC
+ACACACACACACB0B0B0B0B0B0B0B0B0B0B0B0B8B8B8B8B8B8B8B8B8BFBFBFBFBFBFBFBFBFC5C5C5
+C5C5C5C5C5C5C8C8C8C8C8C8C8C8C8C5C5C5C5C5C5C5C5C5C5C5C5C3C3C3C3C3C3C3C3C3C8C8C8
+C8C8C8C8C8C8CACACACACACACACACAC5C5C5C5C5C5C5C5C5BFBFBFBFBFBFBFBFBFBFBFBFBABABA
+BABABABABABAB3B3B3B3B3B3B3B3B3A9A9A9A9A9A9A9A9A99F9F9F9F9F9F9F9F9F9F9F9F989898
+989898989898929292929292929292909090909090909090959595959595959595B7B7B7B7B7B7
+B7B7B7B7B7B7F0F0F0F0F0F0F0F0F0FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9F9F9F9
+F9F9F9C3C3C3C3C3C3C3C3C3D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6
+D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4
+D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3
+D4D4D4D4D4D4D4D4D4D4D4D4D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D1D1D1D1D1D1D1D1D1
+D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECECDCDCDCDCDCDCDCDCD
+CECECECECECECECECECFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECDCDCDCDCDCDCDCDCD
+CECECECECECECECECECFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+CBCBCBCBCBCBCBCBCBC0C0C0C0C0C0C0C0C0BCBCBCBCBCBCBCBCBCB8B8B8B8B8B8B8B8B8B6B6B6
+B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B0B1B0B0B1B0B0B1B0A1A1A1A1A1A1A1A1A1797979
+7979797979797979796C6C6C6C6C6C6C6C6C7272727272727272726E6E6E6E6E6E6E6E6E6B6B6B
+6B6B6B6B6B6B6D6D6D6D6D6D6D6D6D6D6D6D707070707070707070737373737373737373767676
+7676767676767878787878787878787878787878787878787878787B7B7B7B7B7B7B7B7B7A7A7A
+7A7A7A7A7A7A7575757575757575757474747474747474747474747979797979797979797B7B7B
+7B7B7B7B7B7B7C7C7C7C7C7C7C7C7C8080808080808080808A8A8A8A8A8A8A8A8A8A8A8A909090
+9090909090909797979797979797979A9A9A9A9A9A9A9A9A9B9B9B9B9B9B9B9B9BA0A0A0A0A0A0
+A0A0A0A0A0A0A7A7A7A7A7A7A7A7A7AEAEAEAEAEAEAEAEAEB2B2B2B2B2B2B2B2B2B5B5B5B5B5B5
+B5B5B5B5B5B5B8B8B8B8B8B8B8B8B8BDBDBDBDBDBDBDBDBDC1C1C1C1C1C1C1C1C1C4C4C4C4C4C4
+C4C4C4C2C2C2C2C2C2C2C2C2C2C2C2C1C1C1C1C1C1C1C1C1C4C4C4C4C4C4C4C4C4C7C7C7C7C7C7
+C7C7C7C2C2C2C2C2C2C2C2C2BABABABABABABABABABABABAB6B6B6B6B6B6B6B6B6AEAEAEAEAEAE
+AEAEAEA3A3A3A3A3A3A3A3A3999999999999999999999999909090909090909090909090909090
+909090959595959595959595989898989898989898B4B4B4B4B4B4B4B4B4B4B4B4E8E9E8E8E9E8
+E8E9E8FBFBFBFBFBFBFBFBFBFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEF7F7F7F7F7F7F7F7F7B4B4B4B4B4B4B4B4B4
+D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5
+D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4
+D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D4D4D4D4D4D4D4D4D4D4D4D4
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0
+D0D0D0D0D0D0CECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECFCFCF
+CFCFCFCFCFCFCECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECFCFCF
+CFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CBCBCBCBCBCBCBCBCBC0C0C0
+C0C0C0C0C0C0BCBCBCBCBCBCBCBCBCB8B8B8B8B8B8B8B8B8B6B6B6B6B6B6B6B6B6B6B6B6B8B8B8
+B8B8B8B8B8B8B0B1B0B0B1B0B0B1B0A1A1A1A1A1A1A1A1A17979797979797979797979796C6C6C
+6C6C6C6C6C6C7272727272727272726E6E6E6E6E6E6E6E6E6B6B6B6B6B6B6B6B6B6D6D6D6D6D6D
+6D6D6D6D6D6D707070707070707070737373737373737373767676767676767676787878787878
+7878787878787878787878787878787B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A757575757575
+7575757474747474747474747474747979797979797979797B7B7B7B7B7B7B7B7B7C7C7C7C7C7C
+7C7C7C8080808080808080808A8A8A8A8A8A8A8A8A8A8A8A909090909090909090979797979797
+9797979A9A9A9A9A9A9A9A9A9B9B9B9B9B9B9B9B9BA0A0A0A0A0A0A0A0A0A0A0A0A7A7A7A7A7A7
+A7A7A7AEAEAEAEAEAEAEAEAEB2B2B2B2B2B2B2B2B2B5B5B5B5B5B5B5B5B5B5B5B5B8B8B8B8B8B8
+B8B8B8BDBDBDBDBDBDBDBDBDC1C1C1C1C1C1C1C1C1C4C4C4C4C4C4C4C4C4C2C2C2C2C2C2C2C2C2
+C2C2C2C1C1C1C1C1C1C1C1C1C4C4C4C4C4C4C4C4C4C7C7C7C7C7C7C7C7C7C2C2C2C2C2C2C2C2C2
+BABABABABABABABABABABABAB6B6B6B6B6B6B6B6B6AEAEAEAEAEAEAEAEAEA3A3A3A3A3A3A3A3A3
+999999999999999999999999909090909090909090909090909090909090959595959595959595
+989898989898989898B4B4B4B4B4B4B4B4B4B4B4B4E8E9E8E8E9E8E8E9E8FBFBFBFBFBFBFBFBFB
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEF7F7F7F7F7F7F7F7F7B4B4B4B4B4B4B4B4B4D6D6D5D6D6D5D6D6D5D6D6D6
+D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D3
+D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D4D4D4D4D4D4D4D4D4D4D4D4D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0CECECECECECE
+CECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECFCFCFCFCFCFCFCFCFCECECECECECE
+CECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECECFCFCFCFCFCFCFCFCFD0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CBCBCBCBCBCBCBCBCBC0C0C0C0C0C0C0C0C0BCBCBCBCBCBC
+BCBCBCB8B8B8B8B8B8B8B8B8B6B6B6B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B0B1B0B0B1B0
+B0B1B0A1A1A1A1A1A1A1A1A17979797979797979797979796C6C6C6C6C6C6C6C6C727272727272
+7272726E6E6E6E6E6E6E6E6E6B6B6B6B6B6B6B6B6B6D6D6D6D6D6D6D6D6D6D6D6D707070707070
+707070737373737373737373767676767676767676787878787878787878787878787878787878
+7878787B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A757575757575757575747474747474747474
+7474747979797979797979797B7B7B7B7B7B7B7B7B7C7C7C7C7C7C7C7C7C808080808080808080
+8A8A8A8A8A8A8A8A8A8A8A8A9090909090909090909797979797979797979A9A9A9A9A9A9A9A9A
+9B9B9B9B9B9B9B9B9BA0A0A0A0A0A0A0A0A0A0A0A0A7A7A7A7A7A7A7A7A7AEAEAEAEAEAEAEAEAE
+B2B2B2B2B2B2B2B2B2B5B5B5B5B5B5B5B5B5B5B5B5B8B8B8B8B8B8B8B8B8BDBDBDBDBDBDBDBDBD
+C1C1C1C1C1C1C1C1C1C4C4C4C4C4C4C4C4C4C2C2C2C2C2C2C2C2C2C2C2C2C1C1C1C1C1C1C1C1C1
+C4C4C4C4C4C4C4C4C4C7C7C7C7C7C7C7C7C7C2C2C2C2C2C2C2C2C2BABABABABABABABABABABABA
+B6B6B6B6B6B6B6B6B6AEAEAEAEAEAEAEAEAEA3A3A3A3A3A3A3A3A3999999999999999999999999
+909090909090909090909090909090909090959595959595959595989898989898989898B4B4B4
+B4B4B4B4B4B4B4B4B4E8E9E8E8E9E8E8E9E8FBFBFBFBFBFBFBFBFBFEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEF7F7F7
+F7F7F7F7F7F7B4B4B4B4B4B4B4B4B4D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5
+D6D6D5D6D6D5D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3
+D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2
+D2D2D2D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1
+D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECECCCCCCCCCCCC
+CCCCCCCECECECECECECECECECFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECDCDCDCDCDCD
+CDCDCDCECECECECECECECECED0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECE
+CECECEC7C7C7C7C7C7C7C7C7BFBFBFBFBFBFBFBFBFBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9
+B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4B2B2B2B2B2B2B2B2B2
+9696969696969696969696966E6E6E6E6E6E6E6E6E6A6A6A6A6A6A6A6A6A6C6C6C6C6C6C6C6C6C
+6A6A6A6A6A6A6A6A6A6969696969696969696969696E6E6E6E6E6E6E6E6E727272727272727272
+7474747474747474747777777777777777777878787878787878787878787B7B7B7B7B7B7B7B7B
+7A7A7A7A7A7A7A7A7A7878787878787878787878787878787878787878787C7C7C7C7C7C7C7C7C
+7D7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E8383838383838383838C8C8C8C8C8C8C8C8C8C8C8C
+9393939393939393939B9B9B9B9B9B9B9B9B9898989898989898989898989898989898989E9E9E
+9E9E9E9E9E9E9E9E9EA8A8A8A8A8A8A8A8A8B2B2B2B2B2B2B2B2B2B7B7B7B7B7B7B7B7B7B8B8B8
+B8B8B8B8B8B8B8B8B8B6B6B6B6B6B6B6B6B6B9B9B9B9B9B9B9B9B9BFBFBFBFBFBFBFBFBFC2C2C2
+C2C2C2C2C2C2BFBFBFBFBFBFBFBFBFBFBFBFBDBDBDBDBDBDBDBDBDBEBEBEBEBEBEBEBEBEBFBFBF
+BFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3ACACAC
+ACACACACACAC9E9E9E9E9E9E9E9E9E9191919191919191919191918E8E8E8E8E8E8E8E8E929292
+929292929292969696969696969696969696969696969696A7A7A7A7A7A7A7A7A7A7A7A7D0D0D0
+D0D0D0D0D0D0EEEEEEEEEEEEEEEEEEFCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1
+C1C1C1D6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D5D6D6D5D6D6D5D6D6D5D5D5D5D5D5D5
+D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3
+D3D3D3D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D3D3D3D3D3D3D3D3D3
+D3D3D3D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECECCCCCCCCCCCCCCCCCCCECECECECECECECECE
+CFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCECECECECECECECECE
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CECECECECECECECECECECECEC7C7C7C7C7C7C7C7C7
+BFBFBFBFBFBFBFBFBFBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B8B8B8
+B8B8B8B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4B2B2B2B2B2B2B2B2B2969696969696969696969696
+6E6E6E6E6E6E6E6E6E6A6A6A6A6A6A6A6A6A6C6C6C6C6C6C6C6C6C6A6A6A6A6A6A6A6A6A696969
+6969696969696969696E6E6E6E6E6E6E6E6E727272727272727272747474747474747474777777
+7777777777777878787878787878787878787B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A787878
+7878787878787878787878787878787878787C7C7C7C7C7C7C7C7C7D7D7D7D7D7D7D7D7D7E7E7E
+7E7E7E7E7E7E8383838383838383838C8C8C8C8C8C8C8C8C8C8C8C9393939393939393939B9B9B
+9B9B9B9B9B9B9898989898989898989898989898989898989E9E9E9E9E9E9E9E9E9E9E9EA8A8A8
+A8A8A8A8A8A8B2B2B2B2B2B2B2B2B2B7B7B7B7B7B7B7B7B7B8B8B8B8B8B8B8B8B8B8B8B8B6B6B6
+B6B6B6B6B6B6B9B9B9B9B9B9B9B9B9BFBFBFBFBFBFBFBFBFC2C2C2C2C2C2C2C2C2BFBFBFBFBFBF
+BFBFBFBFBFBFBDBDBDBDBDBDBDBDBDBEBEBEBEBEBEBEBEBEBFBFBFBFBFBFBFBFBFB8B8B8B8B8B8
+B8B8B8B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3ACACACACACACACACAC9E9E9E9E9E9E
+9E9E9E9191919191919191919191918E8E8E8E8E8E8E8E8E929292929292929292969696969696
+969696969696969696969696A7A7A7A7A7A7A7A7A7A7A7A7D0D0D0D0D0D0D0D0D0EEEEEEEEEEEE
+EEEEEEFCFCFCFCFCFCFCFCFCFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEF9F9F9F9F9F9F9F9F9C1C1C1C1C1C1C1C1C1D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3
+D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCCCCCCCCCCCCCCCCCCCECECECECECECECECECECECECECECECECECECECECE
+CECECECECECECECECECDCDCDCDCDCDCDCDCDCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECE
+CECECECECECECCCCCCCCCCCCCCCCCCCCCCCCC3C3C3C3C3C3C3C3C3BDBDBDBDBDBDBDBDBDBBBBBB
+BBBBBBBBBBBBB9B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B8B8B8
+B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B1B1B1B1B1B1B1B1B1B1B1B1888888888888888888666666
+666666666666676767676767676767696969696969696969676767676767676767676767686868
+6868686868686E6E6E6E6E6E6E6E6E7373737373737373737878787878787878787B7B7B7B7B7B
+7B7B7B7B7B7B7C7C7C7C7C7C7C7C7C7A7A7A7A7A7A7A7A7A777777777777777777777777777777
+7777777777777B7B7B7B7B7B7B7B7B808080808080808080808080808080808080848484848484
+8484848A8A8A8A8A8A8A8A8A8A8A8A929292929292929292989898989898989898959595959595
+9595959595959595959595959C9C9C9C9C9C9C9C9C9C9C9CA4A4A4A4A4A4A4A4A4AFAFAFAFAFAF
+AFAFAFB1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B0B1B0B0B1B0B0B1B0B2B2B2B2B2B2
+B2B2B2B7B7B7B7B7B7B7B7B7BABABABABABABABABAB5B5B5B5B5B5B5B5B5B5B5B5B2B2B2B2B2B2
+B2B2B2B2B2B2B2B2B2B2B2B2B4B4B4B4B4B4B4B4B4ABABABABABABABABABAAAAAAAAAAAAAAAAAA
+AAAAAAACACACACACACACACACA4A4A4A4A4A4A4A4A49595959595959595958B8B8B8B8B8B8B8B8B
+8B8B8B8C8C8C8C8C8C8C8C8C929292929292929292949494949494949494939393939393939393
+959595959595959595959595A2A2A2A2A2A2A2A2A2C4C4C4C4C4C4C4C4C4E8E9E8E8E9E8E8E9E8
+FBFBFBFBFBFBFBFBFBFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFD
+FAFAFAFAFAFAFAFAFAD0D0D0D0D0D0D0D0D0D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2
+D2D2D2D2D2D2D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCCCCCC
+CCCCCCCCCCCCCECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECDCDCD
+CDCDCDCDCDCDCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECCCCCCCCCCCC
+CCCCCCCCCCCCC3C3C3C3C3C3C3C3C3BDBDBDBDBDBDBDBDBDBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9
+B9B9B9BBBBBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B5B5B5B5B5B5
+B5B5B5B1B1B1B1B1B1B1B1B1B1B1B1888888888888888888666666666666666666676767676767
+6767676969696969696969696767676767676767676767676868686868686868686E6E6E6E6E6E
+6E6E6E7373737373737373737878787878787878787B7B7B7B7B7B7B7B7B7B7B7B7C7C7C7C7C7C
+7C7C7C7A7A7A7A7A7A7A7A7A7777777777777777777777777777777777777777777B7B7B7B7B7B
+7B7B7B8080808080808080808080808080808080808484848484848484848A8A8A8A8A8A8A8A8A
+8A8A8A929292929292929292989898989898989898959595959595959595959595959595959595
+9C9C9C9C9C9C9C9C9C9C9C9CA4A4A4A4A4A4A4A4A4AFAFAFAFAFAFAFAFAFB1B1B1B1B1B1B1B1B1
+B3B3B3B3B3B3B3B3B3B3B3B3B0B1B0B0B1B0B0B1B0B2B2B2B2B2B2B2B2B2B7B7B7B7B7B7B7B7B7
+BABABABABABABABABAB5B5B5B5B5B5B5B5B5B5B5B5B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2
+B4B4B4B4B4B4B4B4B4ABABABABABABABABABAAAAAAAAAAAAAAAAAAAAAAAAACACACACACACACACAC
+A4A4A4A4A4A4A4A4A49595959595959595958B8B8B8B8B8B8B8B8B8B8B8B8C8C8C8C8C8C8C8C8C
+929292929292929292949494949494949494939393939393939393959595959595959595959595
+A2A2A2A2A2A2A2A2A2C4C4C4C4C4C4C4C4C4E8E9E8E8E9E8E8E9E8FBFBFBFBFBFBFBFBFBFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFAFAFAFAFAFAFAFAFAD0D0D0
+D0D0D0D0D0D0D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5D5
+D5D5D5D5D5D5D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D3D3D3D3D3D3
+D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCCCCCCCCCCCCCCCCCCCECECECECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECCCCCCCCCCCCCCCCCCCCCCCCC3C3C3C3C3C3
+C3C3C3BDBDBDBDBDBDBDBDBDBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBB
+BBBBBBB9B9B9B9B9B9B9B9B9B8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B1B1B1B1B1B1B1B1B1
+B1B1B1888888888888888888666666666666666666676767676767676767696969696969696969
+6767676767676767676767676868686868686868686E6E6E6E6E6E6E6E6E737373737373737373
+7878787878787878787B7B7B7B7B7B7B7B7B7B7B7B7C7C7C7C7C7C7C7C7C7A7A7A7A7A7A7A7A7A
+7777777777777777777777777777777777777777777B7B7B7B7B7B7B7B7B808080808080808080
+8080808080808080808484848484848484848A8A8A8A8A8A8A8A8A8A8A8A929292929292929292
+9898989898989898989595959595959595959595959595959595959C9C9C9C9C9C9C9C9C9C9C9C
+A4A4A4A4A4A4A4A4A4AFAFAFAFAFAFAFAFAFB1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3
+B0B1B0B0B1B0B0B1B0B2B2B2B2B2B2B2B2B2B7B7B7B7B7B7B7B7B7BABABABABABABABABAB5B5B5
+B5B5B5B5B5B5B5B5B5B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B4B4B4B4B4B4B4B4B4ABABAB
+ABABABABABABAAAAAAAAAAAAAAAAAAAAAAAAACACACACACACACACACA4A4A4A4A4A4A4A4A4959595
+9595959595958B8B8B8B8B8B8B8B8B8B8B8B8C8C8C8C8C8C8C8C8C929292929292929292949494
+949494949494939393939393939393959595959595959595959595A2A2A2A2A2A2A2A2A2C4C4C4
+C4C4C4C4C4C4E8E9E8E8E9E8E8E9E8FBFBFBFBFBFBFBFBFBFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFAFAFAFAFAFAFAFAFAD0D0D0D0D0D0D0D0D0D4D4D4D4D4D4
+D4D4D4D5D5D5D5D5D5D5D5D5D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3
+D3D3D3D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCF
+CDCDCDCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCECECECECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCC9C9C9C9C9C9C9C9C9
+C4C4C4C4C4C4C4C4C4C2C2C2C2C2C2C2C2C2C2C2C2BDBDBDBDBDBDBDBDBDB9B9B9B9B9B9B9B9B9
+BABABABABABABABABAB9B9B9B9B9B9B9B9B9BDBDBDBDBDBDBDBDBDBDBDBDBEBEBEBEBEBEBEBEBE
+B8B8B8B8B8B8B8B8B8B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B8B8B8A8A8A8A8A8A8A8A8A8
+777777777777777777616161616161616161646464646464646464666666666666666666666666
+6363636363636363636868686868686868686F6F6F6F6F6F6F6F6F767676767676767676797979
+797979797979797979797979797979797979787878787878787878767676767676767676757575
+7575757575757575757A7A7A7A7A7A7A7A7A808080808080808080828282828282828282858585
+8585858585858A8A8A8A8A8A8A8A8A8A8A8A909090909090909090919191919191919191939393
+939393939393949494949494949494949494949494949494949494979797979797979797A3A3A3
+A3A3A3A3A3A3A9A9A9A9A9A9A9A9A9ABABABABABABABABABABABABACACACACACACACACACAFAFAF
+AFAFAFAFAFAFB0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0ABABABABABABABABABABABABABABAB
+ABABABABABABABABABABABABABABABA8A8A8A8A8A8A8A8A8A1A1A1A1A1A1A1A1A1A4A4A4A4A4A4
+A4A4A4A4A4A4A1A1A1A1A1A1A1A1A19797979797979797978C8C8C8C8C8C8C8C8C888888888888
+8888888888888F8F8F8F8F8F8F8F8F939393939393939393939393939393939393919191919191
+9191918C8C8C8C8C8C8C8C8C8C8C8C888888888888888888989898989898989898BEBEBEBEBEBE
+BEBEBEE7E7E7E7E7E7E7E7E7FBFBFBFBFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEF9F9F9F9F9F9F9F9F9CACACACACACACACACAD4D4D4D4D4D4D4D4D4D5D5D5D5D5D5D5D5D5
+D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2
+D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+CFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCDCDCD
+CCCCCCCCCCCCCCCCCCCECECECECECECECECECECECECECECECECECECECECECECECECECECECECECE
+CDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCC9C9C9C9C9C9C9C9C9C4C4C4C4C4C4C4C4C4C2C2C2
+C2C2C2C2C2C2C2C2C2BDBDBDBDBDBDBDBDBDB9B9B9B9B9B9B9B9B9BABABABABABABABABAB9B9B9
+B9B9B9B9B9B9BDBDBDBDBDBDBDBDBDBDBDBDBEBEBEBEBEBEBEBEBEB8B8B8B8B8B8B8B8B8B6B6B6
+B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B8B8B8A8A8A8A8A8A8A8A8A8777777777777777777616161
+616161616161646464646464646464666666666666666666666666636363636363636363686868
+6868686868686F6F6F6F6F6F6F6F6F767676767676767676797979797979797979797979797979
+7979797979797878787878787878787676767676767676767575757575757575757575757A7A7A
+7A7A7A7A7A7A8080808080808080808282828282828282828585858585858585858A8A8A8A8A8A
+8A8A8A8A8A8A909090909090909090919191919191919191939393939393939393949494949494
+949494949494949494949494949494979797979797979797A3A3A3A3A3A3A3A3A3A9A9A9A9A9A9
+A9A9A9ABABABABABABABABABABABABACACACACACACACACACAFAFAFAFAFAFAFAFAFB0B0B0B0B0B0
+B0B0B0B0B0B0B0B0B0B0B0B0ABABABABABABABABABABABABABABABABABABABABABABABABABABAB
+ABABABA8A8A8A8A8A8A8A8A8A1A1A1A1A1A1A1A1A1A4A4A4A4A4A4A4A4A4A4A4A4A1A1A1A1A1A1
+A1A1A19797979797979797978C8C8C8C8C8C8C8C8C8888888888888888888888888F8F8F8F8F8F
+8F8F8F9393939393939393939393939393939393939191919191919191918C8C8C8C8C8C8C8C8C
+8C8C8C888888888888888888989898989898989898BEBEBEBEBEBEBEBEBEE7E7E7E7E7E7E7E7E7
+FBFBFBFBFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEF9F9F9F9F9F9F9F9F9
+CACACACACACACACACAD3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D2D2D2
+D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCECECECECECECECECECCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDC7C7C7C7C7C7C7C7C7BFBFBF
+BFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B2B2B2B2B2B2B2B2B2ADADADADADADADADADADADADB0B0B0
+B0B0B0B0B0B0B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B9B9B9B9B9B9
+B9B9B9B9B9B9BFBFBFBFBFBFBFBFBFBABABABABABABABABAB8B8B8B8B8B8B8B8B8B5B5B5B5B5B5
+B5B5B5B5B5B5B8B8B8B8B8B8B8B8B89D9D9D9D9D9D9D9D9D6D6D6D6D6D6D6D6D6D5E5E5E5E5E5E
+5E5E5E6262626262626262626262626262626262626262625F605F5F605F5F605F656565656565
+6565656F6F6F6F6F6F6F6F6F757575757575757575757575767676767676767676757575757575
+7575757474747474747474747575757575757575757575757878787878787878787D7D7D7D7D7D
+7D7D7D8080808080808080808383838383838383838787878787878787878787878C8C8C8C8C8C
+8C8C8C8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8F8F8F8F8F8F8F8F8F
+8F8F8F9191919191919191919B9B9B9B9B9B9B9B9B9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
+9E9E9E9E9E9E9E9E9E9E9E9EA3A3A3A3A3A3A3A3A3A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6
+A4A4A4A4A4A4A4A4A4A4A4A4A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A29E9E9E9E9E9E9E9E9E
+9898989898989898989999999999999999999999999494949494949494948C8C8C8C8C8C8C8C8C
+848484848484848484898989898989898989898989919191919191919191939393939393939393
+9292929292929292928F8F8F8F8F8F8F8F8F848484848484848484848484757575757575757575
+808080808080808080979797979797979797B9B9B9B9B9B9B9B9B9DFE0DFDFE0DFDFE0DFDFE0DF
+F6F6F6F6F6F6F6F6F6FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9BDBDBDBDBDBDBDBDBDD3D3D3
+D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2D2D2D2D2D2D2D2D2D2D2D2D3D3D3D3D3D3D3D3D3D1D1D1
+D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECE
+CECECECCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDC7C7C7C7C7C7C7C7C7BFBFBFBFBFBFBFBFBFB8B8B8B8B8B8
+B8B8B8B2B2B2B2B2B2B2B2B2ADADADADADADADADADADADADB0B0B0B0B0B0B0B0B0B6B6B6B6B6B6
+B6B6B6B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B9B9B9B9B9B9B9B9B9B9B9B9BFBFBFBFBFBF
+BFBFBFBABABABABABABABABAB8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B5B5B5B8B8B8B8B8B8
+B8B8B89D9D9D9D9D9D9D9D9D6D6D6D6D6D6D6D6D6D5E5E5E5E5E5E5E5E5E626262626262626262
+6262626262626262626262625F605F5F605F5F605F6565656565656565656F6F6F6F6F6F6F6F6F
+757575757575757575757575767676767676767676757575757575757575747474747474747474
+7575757575757575757575757878787878787878787D7D7D7D7D7D7D7D7D808080808080808080
+8383838383838383838787878787878787878787878C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D
+8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8F8F8F8F8F8F8F8F8F8F8F8F919191919191919191
+9B9B9B9B9B9B9B9B9B9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
+A3A3A3A3A3A3A3A3A3A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4
+A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A29E9E9E9E9E9E9E9E9E989898989898989898999999
+9999999999999999999494949494949494948C8C8C8C8C8C8C8C8C848484848484848484898989
+8989898989898989899191919191919191919393939393939393939292929292929292928F8F8F
+8F8F8F8F8F8F848484848484848484848484757575757575757575808080808080808080979797
+979797979797B9B9B9B9B9B9B9B9B9DFE0DFDFE0DFDFE0DFDFE0DFF6F6F6F6F6F6F6F6F6FDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDF9F9F9F9F9F9F9F9F9BDBDBDBDBDBDBDBDBDD3D3D3D3D3D3D3D3D3D3D3D3D3D3D3
+D3D3D3D2D2D2D2D2D2D2D2D2D2D2D2D3D3D3D3D3D3D3D3D3D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECCCCCCCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDC7C7C7C7C7C7C7C7C7BFBFBFBFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B2B2B2B2B2B2B2B2B2
+ADADADADADADADADADADADADB0B0B0B0B0B0B0B0B0B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8
+B8B8B8B8B8B8B8B8B8B9B9B9B9B9B9B9B9B9B9B9B9BFBFBFBFBFBFBFBFBFBABABABABABABABABA
+B8B8B8B8B8B8B8B8B8B5B5B5B5B5B5B5B5B5B5B5B5B8B8B8B8B8B8B8B8B89D9D9D9D9D9D9D9D9D
+6D6D6D6D6D6D6D6D6D5E5E5E5E5E5E5E5E5E626262626262626262626262626262626262626262
+5F605F5F605F5F605F6565656565656565656F6F6F6F6F6F6F6F6F757575757575757575757575
+767676767676767676757575757575757575747474747474747474757575757575757575757575
+7878787878787878787D7D7D7D7D7D7D7D7D808080808080808080838383838383838383878787
+8787878787878787878C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D
+8D8D8D8D8D8D8F8F8F8F8F8F8F8F8F8F8F8F9191919191919191919B9B9B9B9B9B9B9B9B9E9E9E
+9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A3A3A3A3A3A3A3A3A4A4A4
+A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A2A2A2A2A2A2A2A2A2A2A2A2
+A2A2A2A2A2A29E9E9E9E9E9E9E9E9E989898989898989898999999999999999999999999949494
+9494949494948C8C8C8C8C8C8C8C8C848484848484848484898989898989898989898989919191
+9191919191919393939393939393939292929292929292928F8F8F8F8F8F8F8F8F848484848484
+848484848484757575757575757575808080808080808080979797979797979797B9B9B9B9B9B9
+B9B9B9DFE0DFDFE0DFDFE0DFDFE0DFF6F6F6F6F6F6F6F6F6FDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9
+F9F9F9BDBDBDBDBDBDBDBDBDD2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1
+D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCECECECECECECECECECECECED0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+CFCFCFCFCFCFCFCFCFCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCBCBCBCBCBCBCBCBCBCBCBCBBFBFBFBFBFBFBFBFBF
+AFAFAFAFAFAFAFAFAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5A5A5A5A5A5A5A5A5A5A5A5
+A2A2A2A2A2A2A2A2A2B2B2B2B2B2B2B2B2B2B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8BBBBBB
+BBBBBBBBBBBBBBBBBBBEBEBEBEBEBEBEBEBEBFBFBFBFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B7B7B7
+B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B5B5B5B5B5B5B5B5B58F8F8F8F8F8F8F8F8F666666
+6666666666665C5C5C5C5C5C5C5C5C5C5C5C6161616161616161615C5C5C5C5C5C5C5C5C5C5C5C
+5C5C5C5C5C5C6565656565656565656F6F6F6F6F6F6F6F6F6F6F6F737373737373737373757575
+7575757575757575757575757575757575757575757575757575757777777777777777777B7B7B
+7B7B7B7B7B7B7F7F7F7F7F7F7F7F7F818181818181818181828282828282828282828282848484
+848484848484858585858585858585828282828282828282828282828282828282898989898989
+898989898989909090909090909090969696969696969696989898989898989898989898989898
+9898989898989090909090909090909494949494949494949898989898989898989D9D9D9D9D9D
+9D9D9D9C9C9C9C9C9C9C9C9C9C9C9C9797979797979797979090909090909090908D8D8D8D8D8D
+8D8D8D8D8D8D8D8D8D8D8D8D8C8C8C8C8C8C8C8C8C8C8C8C898989898989898989818181818181
+8181818383838383838383838C8C8C8C8C8C8C8C8C8C8C8C909090909090909090939393939393
+9393939292929292929292928C8C8C8C8C8C8C8C8C7E7E7E7E7E7E7E7E7E7E7E7E686868686868
+6868686E6E6E6E6E6E6E6E6E7F7F7F7F7F7F7F7F7F959595959595959595B2B2B2B2B2B2B2B2B2
+B2B2B2D6D6D6D6D6D6D6D6D6EFEFEFEFEFEFEFEFEFF9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF
+FEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7
+D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECE
+CECECECECECECECECED0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCBCBCBCBCBCBCBCBCBCBCBCBBFBFBFBFBFBFBFBFBFAFAFAFAFAFAFAFAFAFAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5A5A5A5A5A5A5A5A5A5A5A5A2A2A2A2A2A2A2A2A2B2B2B2
+B2B2B2B2B2B2B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8BBBBBBBBBBBBBBBBBBBBBBBBBEBEBE
+BEBEBEBEBEBEBFBFBFBFBFBFBFBFBFB8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7
+B7B7B7B7B7B7B5B5B5B5B5B5B5B5B58F8F8F8F8F8F8F8F8F6666666666666666665C5C5C5C5C5C
+5C5C5C5C5C5C6161616161616161615C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C656565656565
+6565656F6F6F6F6F6F6F6F6F6F6F6F737373737373737373757575757575757575757575757575
+7575757575757575757575757575757777777777777777777B7B7B7B7B7B7B7B7B7F7F7F7F7F7F
+7F7F7F818181818181818181828282828282828282828282848484848484848484858585858585
+858585828282828282828282828282828282828282898989898989898989898989909090909090
+909090969696969696969696989898989898989898989898989898989898989898909090909090
+9090909494949494949494949898989898989898989D9D9D9D9D9D9D9D9D9C9C9C9C9C9C9C9C9C
+9C9C9C9797979797979797979090909090909090908D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D
+8C8C8C8C8C8C8C8C8C8C8C8C898989898989898989818181818181818181838383838383838383
+8C8C8C8C8C8C8C8C8C8C8C8C909090909090909090939393939393939393929292929292929292
+8C8C8C8C8C8C8C8C8C7E7E7E7E7E7E7E7E7E7E7E7E6868686868686868686E6E6E6E6E6E6E6E6E
+7F7F7F7F7F7F7F7F7F959595959595959595B2B2B2B2B2B2B2B2B2B2B2B2D6D6D6D6D6D6D6D6D6
+EFEFEFEFEFEFEFEFEFF9F9F9F9F9F9F9F9F9FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE
+FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF
+FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7D2D2D2D2D2D2D2D2D2D1D1D1
+D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCF
+CFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECE
+CECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC8C8C8C8C8C8
+C8C8C8C8C8C8BABABABABABABABABAAAAAAAAAAAAAAAAAAAABABABABABABABABABAFAFAFAFAFAF
+AFAFAFA8A8A8A8A8A8A8A8A8A8A8A89F9F9F9F9F9F9F9F9FACACACACACACACACACB6B6B6B6B6B6
+B6B6B6B8B8B8B8B8B8B8B8B8BBBBBBBBBBBBBBBBBBBBBBBBBDBDBDBDBDBDBDBDBDC0C0C0C0C0C0
+C0C0C0BEBEBEBEBEBEBEBEBEB9B9B9B9B9B9B9B9B9B9B9B9B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6
+B6B6B6AEAEAEAEAEAEAEAEAE8989898989898989896767676767676767676767675E5E5E5E5E5E
+5E5E5E5D5D5D5D5D5D5D5D5D5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B656565656565656565
+6565656E6E6E6E6E6E6E6E6E757575757575757575767676767676767676757575757575757575
+7575757777777777777777777B7B7B7B7B7B7B7B7B7D7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E
+7E7E7E7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F8181818181818181817F7F7F7F7F7F7F7F7F
+7D7D7D7D7D7D7D7D7D8181818181818181818181818989898989898989898F8F8F8F8F8F8F8F8F
+9191919191919191919292929292929292929292928C8C8C8C8C8C8C8C8C8A8A8A8A8A8A8A8A8A
+8C8C8C8C8C8C8C8C8C8F8F8F8F8F8F8F8F8F8D8D8D8D8D8D8D8D8D8D8D8D8A8A8A8A8A8A8A8A8A
+8585858585858585858383838383838383838181818181818181817E7E7E7E7E7E7E7E7E7E7E7E
+7B7B7B7B7B7B7B7B7B7C7C7C7C7C7C7C7C7C8686868686868686868E8E8E8E8E8E8E8E8E8E8E8E
+9191919191919191919292929292929292929090909090909090908B8B8B8B8B8B8B8B8B7D7D7D
+7D7D7D7D7D7D7D7D7D6565656565656565656262626262626262626A6A6A6A6A6A6A6A6A797979
+7979797979798F8F8F8F8F8F8F8F8F8F8F8FA8A8A8A8A8A8A8A8A8C1C1C1C1C1C1C1C1C1E4E4E4
+E4E4E4E4E4E4FAFAFAFAFAFAFAFAFAFAFAFAFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE
+FEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFAFAFA
+FAFAFAFAFAFAD7D7D7D7D7D7D7D7D7D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFD0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0CFCFCFCFCFCFCFCFCFCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC8C8C8C8C8C8C8C8C8C8C8C8BABABABABABA
+BABABAAAAAAAAAAAAAAAAAAAABABABABABABABABABAFAFAFAFAFAFAFAFAFA8A8A8A8A8A8A8A8A8
+A8A8A89F9F9F9F9F9F9F9F9FACACACACACACACACACB6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8
+BBBBBBBBBBBBBBBBBBBBBBBBBDBDBDBDBDBDBDBDBDC0C0C0C0C0C0C0C0C0BEBEBEBEBEBEBEBEBE
+B9B9B9B9B9B9B9B9B9B9B9B9B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6AEAEAEAEAEAEAEAEAE
+8989898989898989896767676767676767676767675E5E5E5E5E5E5E5E5E5D5D5D5D5D5D5D5D5D
+5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B6565656565656565656565656E6E6E6E6E6E6E6E6E
+757575757575757575767676767676767676757575757575757575757575777777777777777777
+7B7B7B7B7B7B7B7B7B7D7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E
+7F7F7F7F7F7F7F7F7F8181818181818181817F7F7F7F7F7F7F7F7F7D7D7D7D7D7D7D7D7D818181
+8181818181818181818989898989898989898F8F8F8F8F8F8F8F8F919191919191919191929292
+9292929292929292928C8C8C8C8C8C8C8C8C8A8A8A8A8A8A8A8A8A8C8C8C8C8C8C8C8C8C8F8F8F
+8F8F8F8F8F8F8D8D8D8D8D8D8D8D8D8D8D8D8A8A8A8A8A8A8A8A8A858585858585858585838383
+8383838383838181818181818181817E7E7E7E7E7E7E7E7E7E7E7E7B7B7B7B7B7B7B7B7B7C7C7C
+7C7C7C7C7C7C8686868686868686868E8E8E8E8E8E8E8E8E8E8E8E919191919191919191929292
+9292929292929090909090909090908B8B8B8B8B8B8B8B8B7D7D7D7D7D7D7D7D7D7D7D7D656565
+6565656565656262626262626262626A6A6A6A6A6A6A6A6A7979797979797979798F8F8F8F8F8F
+8F8F8F8F8F8FA8A8A8A8A8A8A8A8A8C1C1C1C1C1C1C1C1C1E4E4E4E4E4E4E4E4E4FAFAFAFAFAFA
+FAFAFAFAFAFAFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFAFAFAFAFAFAFAFAFAD7D7D7D7D7D7
+D7D7D7D2D2D2D2D2D2D2D2D2D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCF
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCC8C8C8C8C8C8C8C8C8C8C8C8BABABABABABABABABAAAAAAAAAAAAAAAAAAA
+ABABABABABABABABABAFAFAFAFAFAFAFAFAFA8A8A8A8A8A8A8A8A8A8A8A89F9F9F9F9F9F9F9F9F
+ACACACACACACACACACB6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8BBBBBBBBBBBBBBBBBBBBBBBB
+BDBDBDBDBDBDBDBDBDC0C0C0C0C0C0C0C0C0BEBEBEBEBEBEBEBEBEB9B9B9B9B9B9B9B9B9B9B9B9
+B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6AEAEAEAEAEAEAEAEAE898989898989898989676767
+6767676767676767675E5E5E5E5E5E5E5E5E5D5D5D5D5D5D5D5D5D5B5B5B5B5B5B5B5B5B5B5B5B
+5B5B5B5B5B5B6565656565656565656565656E6E6E6E6E6E6E6E6E757575757575757575767676
+7676767676767575757575757575757575757777777777777777777B7B7B7B7B7B7B7B7B7D7D7D
+7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F818181
+8181818181817F7F7F7F7F7F7F7F7F7D7D7D7D7D7D7D7D7D818181818181818181818181898989
+8989898989898F8F8F8F8F8F8F8F8F9191919191919191919292929292929292929292928C8C8C
+8C8C8C8C8C8C8A8A8A8A8A8A8A8A8A8C8C8C8C8C8C8C8C8C8F8F8F8F8F8F8F8F8F8D8D8D8D8D8D
+8D8D8D8D8D8D8A8A8A8A8A8A8A8A8A858585858585858585838383838383838383818181818181
+8181817E7E7E7E7E7E7E7E7E7E7E7E7B7B7B7B7B7B7B7B7B7C7C7C7C7C7C7C7C7C868686868686
+8686868E8E8E8E8E8E8E8E8E8E8E8E919191919191919191929292929292929292909090909090
+9090908B8B8B8B8B8B8B8B8B7D7D7D7D7D7D7D7D7D7D7D7D656565656565656565626262626262
+6262626A6A6A6A6A6A6A6A6A7979797979797979798F8F8F8F8F8F8F8F8F8F8F8FA8A8A8A8A8A8
+A8A8A8C1C1C1C1C1C1C1C1C1E4E4E4E4E4E4E4E4E4FAFAFAFAFAFAFAFAFAFAFAFAFDFDFDFDFDFD
+FDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFAFAFAFAFAFAFAFAFAD7D7D7D7D7D7D7D7D7D1D1D1D1D1D1D1D1D1
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCF
+CECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECE
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC6C6C6
+C6C6C6C6C6C6C6C6C6B8B8B8B8B8B8B8B8B8ACACACACACACACACACADADADADADADADADADADADAD
+ADADADADADADAAAAAAAAAAAAAAAAAAAAAAAAA2A2A2A2A2A2A2A2A2A1A1A1A1A1A1A1A1A1A9A9A9
+A9A9A9A9A9A9B1B1B1B1B1B1B1B1B1B7B7B7B7B7B7B7B7B7B7B7B7BEBEBEBEBEBEBEBEBEBEBEBE
+BEBEBEBEBEBEC3C3C3C3C3C3C3C3C3BBBBBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B4B4B4
+B4B4B4B4B4B4B6B6B6B6B6B6B6B6B6AAAAAAAAAAAAAAAAAA8787878787878787878787876B6B6B
+6B6B6B6B6B6B5E5E5E5E5E5E5E5E5E5C5C5C5C5C5C5C5C5C595959595959595959595959595959
+5959595959596262626262626262626C6C6C6C6C6C6C6C6C727272727272727272737373737373
+737373737373757575757575757575767676767676767676777777777777777777767676767676
+7676767878787878787878787878787B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A797979797979
+7979797A7A7A7A7A7A7A7A7A7979797979797979797979797A7A7A7A7A7A7A7A7A7D7D7D7D7D7D
+7D7D7D848484848484848484888888888888888888888888858585858585858585828282828282
+828282828282828282828282818181818181818181808080808080808080808080808080808080
+8080807D7D7D7D7D7D7D7D7D7A7A7A7A7A7A7A7A7A767676767676767676737373737373737373
+7373737474747474747474748080808080808080808B8B8B8B8B8B8B8B8B8F8F8F8F8F8F8F8F8F
+8F8F8F9292929292929292929090909090909090908E8E8E8E8E8E8E8E8E8C8C8C8C8C8C8C8C8C
+7F7F7F7F7F7F7F7F7F7F7F7F6666666666666666665F605F5F605F5F605F626262626262626262
+676767676767676767747474747474747474747474868686868686868686A0A0A0A0A0A0A0A0A0
+D3D3D3D3D3D3D3D3D3F7F7F7F7F7F7F7F7F7F7F7F7FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+F9F9F9F9F9F9F9F9F9CACACACACACACACACAD1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCECECECECECECECECECFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCECECECECECECECECECBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC6C6C6C6C6C6C6C6C6C6C6C6B8B8B8
+B8B8B8B8B8B8ACACACACACACACACACADADADADADADADADADADADADADADADADADADAAAAAAAAAAAA
+AAAAAAAAAAAAA2A2A2A2A2A2A2A2A2A1A1A1A1A1A1A1A1A1A9A9A9A9A9A9A9A9A9B1B1B1B1B1B1
+B1B1B1B7B7B7B7B7B7B7B7B7B7B7B7BEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEC3C3C3C3C3C3
+C3C3C3BBBBBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B4B4B4B4B4B4B4B4B4B6B6B6B6B6B6
+B6B6B6AAAAAAAAAAAAAAAAAA8787878787878787878787876B6B6B6B6B6B6B6B6B5E5E5E5E5E5E
+5E5E5E5C5C5C5C5C5C5C5C5C595959595959595959595959595959595959595959626262626262
+6262626C6C6C6C6C6C6C6C6C727272727272727272737373737373737373737373757575757575
+757575767676767676767676777777777777777777767676767676767676787878787878787878
+7878787B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A7979797979797979797A7A7A7A7A7A7A7A7A
+7979797979797979797979797A7A7A7A7A7A7A7A7A7D7D7D7D7D7D7D7D7D848484848484848484
+888888888888888888888888858585858585858585828282828282828282828282828282828282
+8181818181818181818080808080808080808080808080808080808080807D7D7D7D7D7D7D7D7D
+7A7A7A7A7A7A7A7A7A767676767676767676737373737373737373737373747474747474747474
+8080808080808080808B8B8B8B8B8B8B8B8B8F8F8F8F8F8F8F8F8F8F8F8F929292929292929292
+9090909090909090908E8E8E8E8E8E8E8E8E8C8C8C8C8C8C8C8C8C7F7F7F7F7F7F7F7F7F7F7F7F
+6666666666666666665F605F5F605F5F605F626262626262626262676767676767676767747474
+747474747474747474868686868686868686A0A0A0A0A0A0A0A0A0D3D3D3D3D3D3D3D3D3F7F7F7
+F7F7F7F7F7F7F7F7F7FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9CACACA
+CACACACACACAD1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECE
+CECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECE
+CECECECBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCC6C6C6C6C6C6C6C6C6C6C6C6B8B8B8B8B8B8B8B8B8ACACACACACAC
+ACACACADADADADADADADADADADADADADADADADADADAAAAAAAAAAAAAAAAAAAAAAAAA2A2A2A2A2A2
+A2A2A2A1A1A1A1A1A1A1A1A1A9A9A9A9A9A9A9A9A9B1B1B1B1B1B1B1B1B1B7B7B7B7B7B7B7B7B7
+B7B7B7BEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEC3C3C3C3C3C3C3C3C3BBBBBBBBBBBBBBBBBB
+BBBBBBB9B9B9B9B9B9B9B9B9B4B4B4B4B4B4B4B4B4B6B6B6B6B6B6B6B6B6AAAAAAAAAAAAAAAAAA
+8787878787878787878787876B6B6B6B6B6B6B6B6B5E5E5E5E5E5E5E5E5E5C5C5C5C5C5C5C5C5C
+5959595959595959595959595959595959595959596262626262626262626C6C6C6C6C6C6C6C6C
+727272727272727272737373737373737373737373757575757575757575767676767676767676
+7777777777777777777676767676767676767878787878787878787878787B7B7B7B7B7B7B7B7B
+7A7A7A7A7A7A7A7A7A7979797979797979797A7A7A7A7A7A7A7A7A797979797979797979797979
+7A7A7A7A7A7A7A7A7A7D7D7D7D7D7D7D7D7D848484848484848484888888888888888888888888
+858585858585858585828282828282828282828282828282828282818181818181818181808080
+8080808080808080808080808080808080807D7D7D7D7D7D7D7D7D7A7A7A7A7A7A7A7A7A767676
+7676767676767373737373737373737373737474747474747474748080808080808080808B8B8B
+8B8B8B8B8B8B8F8F8F8F8F8F8F8F8F8F8F8F9292929292929292929090909090909090908E8E8E
+8E8E8E8E8E8E8C8C8C8C8C8C8C8C8C7F7F7F7F7F7F7F7F7F7F7F7F6666666666666666665F605F
+5F605F5F605F626262626262626262676767676767676767747474747474747474747474868686
+868686868686A0A0A0A0A0A0A0A0A0D3D3D3D3D3D3D3D3D3F7F7F7F7F7F7F7F7F7F7F7F7FDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9CACACACACACACACACAD1D1D1D1D1D1
+D1D1D1D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCF
+CFCFCFCECECECECECECECECECFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCF
+CFCFCFCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECBCBCBCBCBCBCBCBCB
+CCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCB
+C2C2C2C2C2C2C2C2C2C2C2C2B5B5B5B5B5B5B5B5B5ABABABABABABABABABACACACACACACACACAC
+AEAEAEAEAEAEAEAEAEAAAAAAAAAAAAAAAAAAAAAAAAA1A1A1A1A1A1A1A1A19B9B9B9B9B9B9B9B9B
+9D9D9D9D9D9D9D9D9DA7A7A7A7A7A7A7A7A7B5B5B5B5B5B5B5B5B5B5B5B5BBBBBBBBBBBBBBBBBB
+BEBEBEBEBEBEBEBEBEC1C1C1C1C1C1C1C1C1C3C3C3C3C3C3C3C3C3C3C3C3BBBBBBBBBBBBBBBBBB
+BCBCBCBCBCBCBCBCBCB4B4B4B4B4B4B4B4B4B6B6B6B6B6B6B6B6B6A8A8A8A8A8A8A8A8A8A8A8A8
+8D8D8D8D8D8D8D8D8D7676767676767676766464646464646464645A5A5A5A5A5A5A5A5A565656
+5656565656565656565656565656565656565D5D5D5D5D5D5D5D5D6767676767676767676F6F6F
+6F6F6F6F6F6F6F6F6F7171717171717171716E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6F6F6F
+6F6F6F6F6F6F737373737373737373737373757575757575757575727272727272727272707070
+707070707070737373737373737373767676767676767676767676737373737373737373707070
+7070707070707979797979797979797E7E7E7E7E7E7E7E7E7E7E7E7D7D7D7D7D7D7D7D7D7A7A7A
+7A7A7A7A7A7A777777777777777777767676767676767676777777777777777777777777767676
+7676767676767373737373737373737171717171717171716C6C6C6C6C6C6C6C6C6D6D6D6D6D6D
+6D6D6D6D6D6D7B7B7B7B7B7B7B7B7B888888888888888888909090909090909090919191919191
+9191919191919191919191919191918E8E8E8E8E8E8E8E8E8D8D8D8D8D8D8D8D8D8C8C8C8C8C8C
+8C8C8C878787878787878787878787787878787878787878696969696969696969626262626262
+626262626262626262626262696969696969696969696969757575757575757575A5A5A5A5A5A5
+A5A5A5DBDBDBDBDBDBDBDBDBF5F5F5F5F5F5F5F5F5F5F5F5FDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFAFAFAFAFAFAFAFAFAD4D4D4D4D4D4D4D4D4D1D1D1D1D1D1D1D1D1D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCECECECECECECECECE
+CFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECECECECBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCC
+CDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBC2C2C2C2C2C2C2C2C2C2C2C2
+B5B5B5B5B5B5B5B5B5ABABABABABABABABABACACACACACACACACACAEAEAEAEAEAEAEAEAEAAAAAA
+AAAAAAAAAAAAAAAAAAA1A1A1A1A1A1A1A1A19B9B9B9B9B9B9B9B9B9D9D9D9D9D9D9D9D9DA7A7A7
+A7A7A7A7A7A7B5B5B5B5B5B5B5B5B5B5B5B5BBBBBBBBBBBBBBBBBBBEBEBEBEBEBEBEBEBEC1C1C1
+C1C1C1C1C1C1C3C3C3C3C3C3C3C3C3C3C3C3BBBBBBBBBBBBBBBBBBBCBCBCBCBCBCBCBCBCB4B4B4
+B4B4B4B4B4B4B6B6B6B6B6B6B6B6B6A8A8A8A8A8A8A8A8A8A8A8A88D8D8D8D8D8D8D8D8D767676
+7676767676766464646464646464645A5A5A5A5A5A5A5A5A565656565656565656565656565656
+5656565656565D5D5D5D5D5D5D5D5D6767676767676767676F6F6F6F6F6F6F6F6F6F6F6F717171
+7171717171716E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6F6F6F6F6F6F6F6F6F737373737373
+737373737373757575757575757575727272727272727272707070707070707070737373737373
+737373767676767676767676767676737373737373737373707070707070707070797979797979
+7979797E7E7E7E7E7E7E7E7E7E7E7E7D7D7D7D7D7D7D7D7D7A7A7A7A7A7A7A7A7A777777777777
+777777767676767676767676777777777777777777777777767676767676767676737373737373
+7373737171717171717171716C6C6C6C6C6C6C6C6C6D6D6D6D6D6D6D6D6D6D6D6D7B7B7B7B7B7B
+7B7B7B888888888888888888909090909090909090919191919191919191919191919191919191
+9191918E8E8E8E8E8E8E8E8E8D8D8D8D8D8D8D8D8D8C8C8C8C8C8C8C8C8C878787878787878787
+878787787878787878787878696969696969696969626262626262626262626262626262626262
+696969696969696969696969757575757575757575A5A5A5A5A5A5A5A5A5DBDBDBDBDBDBDBDBDB
+F5F5F5F5F5F5F5F5F5F5F5F5FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFAFAFAFAFAFAFAFAFA
+D4D4D4D4D4D4D4D4D4D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECE
+CECECECECECECECECECFCFCFCFCFCFCFCFCFCECECECECECECECECECFCFCFCFCFCFCFCFCFD0D0D0
+D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCECECE
+CECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCECECE
+CECECECECECECCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBC8C8C8C8C8C8C8C8C8BCBCBCBCBCBCBCBCBCBCBCBCB0B1B0B0B1B0B0B1B0AAAAAA
+AAAAAAAAAAAAAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFABABABABABABABABABABABABA1A1A1
+A1A1A1A1A1A19A9A9A9A9A9A9A9A9A989898989898989898999999999999999999B1B1B1B1B1B1
+B1B1B1B1B1B1B8B8B8B8B8B8B8B8B8BEBEBEBEBEBEBEBEBEBDBDBDBDBDBDBDBDBDC5C5C5C5C5C5
+C5C5C5C5C5C5C1C1C1C1C1C1C1C1C1BDBDBDBDBDBDBDBDBDBABABABABABABABABAB2B2B2B2B2B2
+B2B2B2B8B8B8B8B8B8B8B8B8B8B8B8A8A8A8A8A8A8A8A8A8929292929292929292808080808080
+808080666666666666666666575757575757575757575757545454545454545454545454545454
+5454545858585858585858586464646464646464646464646B6B6B6B6B6B6B6B6B6B6B6B6B6B6B
+6B6B6B6B6B6B6B6B6B6B6B6B6C6C6C6C6C6C6C6C6C6D6D6D6D6D6D6D6D6D6D6D6D6E6E6E6E6E6E
+6E6E6E6C6C6C6C6C6C6C6C6C6B6B6B6B6B6B6B6B6B6E6E6E6E6E6E6E6E6E727272727272727272
+7272726F6F6F6F6F6F6F6F6F6B6B6B6B6B6B6B6B6B707070707070707070717171717171717171
+7171717070707070707070706F6F6F6F6F6F6F6F6F6E6E6E6E6E6E6E6E6E6B6B6B6B6B6B6B6B6B
+6C6C6C6C6C6C6C6C6C6C6C6C6B6B6B6B6B6B6B6B6B6A6A6A6A6A6A6A6A6A676767676767676767
+6767676767676767677474747474747474747474748484848484848484848C8C8C8C8C8C8C8C8C
+9090909090909090909292929292929292929292929191919191919191918F8F8F8F8F8F8F8F8F
+8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8B8B8B8B8B8B8B8B8B8B8B8B878787878787878787
+838383838383838383707070707070707070646464646464646464666666666666666666666666
+777777777777777777B1B1B1B1B1B1B1B1B1E5E5E5E5E5E5E5E5E5F1F1F1F1F1F1F1F1F1F1F1F1
+FBFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFE
+FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFBFBFBFBFBFBFBFBFBE0E0E0E0E0E0E0E0E0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECFCFCF
+CFCFCFCFCFCFCECECECECECECECECECFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0CFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCECECECECECECECECECDCDCDCDCDCD
+CDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCECECECECECECECECECCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBC8C8C8C8C8C8
+C8C8C8BCBCBCBCBCBCBCBCBCBCBCBCB0B1B0B0B1B0B0B1B0AAAAAAAAAAAAAAAAAAAFAFAFAFAFAF
+AFAFAFAFAFAFAFAFAFAFAFAFABABABABABABABABABABABABA1A1A1A1A1A1A1A1A19A9A9A9A9A9A
+9A9A9A989898989898989898999999999999999999B1B1B1B1B1B1B1B1B1B1B1B1B8B8B8B8B8B8
+B8B8B8BEBEBEBEBEBEBEBEBEBDBDBDBDBDBDBDBDBDC5C5C5C5C5C5C5C5C5C5C5C5C1C1C1C1C1C1
+C1C1C1BDBDBDBDBDBDBDBDBDBABABABABABABABABAB2B2B2B2B2B2B2B2B2B8B8B8B8B8B8B8B8B8
+B8B8B8A8A8A8A8A8A8A8A8A8929292929292929292808080808080808080666666666666666666
+575757575757575757575757545454545454545454545454545454545454585858585858585858
+6464646464646464646464646B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B
+6C6C6C6C6C6C6C6C6C6D6D6D6D6D6D6D6D6D6D6D6D6E6E6E6E6E6E6E6E6E6C6C6C6C6C6C6C6C6C
+6B6B6B6B6B6B6B6B6B6E6E6E6E6E6E6E6E6E7272727272727272727272726F6F6F6F6F6F6F6F6F
+6B6B6B6B6B6B6B6B6B707070707070707070717171717171717171717171707070707070707070
+6F6F6F6F6F6F6F6F6F6E6E6E6E6E6E6E6E6E6B6B6B6B6B6B6B6B6B6C6C6C6C6C6C6C6C6C6C6C6C
+6B6B6B6B6B6B6B6B6B6A6A6A6A6A6A6A6A6A676767676767676767676767676767676767747474
+7474747474747474748484848484848484848C8C8C8C8C8C8C8C8C909090909090909090929292
+9292929292929292929191919191919191918F8F8F8F8F8F8F8F8F8D8D8D8D8D8D8D8D8D8D8D8D
+8D8D8D8D8D8D8B8B8B8B8B8B8B8B8B8B8B8B878787878787878787838383838383838383707070
+707070707070646464646464646464666666666666666666666666777777777777777777B1B1B1
+B1B1B1B1B1B1E5E5E5E5E5E5E5E5E5F1F1F1F1F1F1F1F1F1F1F1F1FBFBFBFBFBFBFBFBFBFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE
+FEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFBFBFBFBFBFBFBFBFBE0E0E0E0E0E0E0E0E0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0
+D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCECECECECECE
+CECECECFCFCFCFCFCFCFCFCFD0D0D0D0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCDCDCDCDCDCDCDCDCDCECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCCCCCCCCCCCC
+CCCCCCCDCDCDCDCDCDCDCDCDCECECECECECECECECECCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBC8C8C8C8C8C8C8C8C8BCBCBCBCBCBCBCBCBC
+BCBCBCB0B1B0B0B1B0B0B1B0AAAAAAAAAAAAAAAAAAAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAF
+ABABABABABABABABABABABABA1A1A1A1A1A1A1A1A19A9A9A9A9A9A9A9A9A989898989898989898
+999999999999999999B1B1B1B1B1B1B1B1B1B1B1B1B8B8B8B8B8B8B8B8B8BEBEBEBEBEBEBEBEBE
+BDBDBDBDBDBDBDBDBDC5C5C5C5C5C5C5C5C5C5C5C5C1C1C1C1C1C1C1C1C1BDBDBDBDBDBDBDBDBD
+BABABABABABABABABAB2B2B2B2B2B2B2B2B2B8B8B8B8B8B8B8B8B8B8B8B8A8A8A8A8A8A8A8A8A8
+929292929292929292808080808080808080666666666666666666575757575757575757575757
+545454545454545454545454545454545454585858585858585858646464646464646464646464
+6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6C6C6C6C6C6C6C6C6C6D6D6D
+6D6D6D6D6D6D6D6D6D6E6E6E6E6E6E6E6E6E6C6C6C6C6C6C6C6C6C6B6B6B6B6B6B6B6B6B6E6E6E
+6E6E6E6E6E6E7272727272727272727272726F6F6F6F6F6F6F6F6F6B6B6B6B6B6B6B6B6B707070
+7070707070707171717171717171717171717070707070707070706F6F6F6F6F6F6F6F6F6E6E6E
+6E6E6E6E6E6E6B6B6B6B6B6B6B6B6B6C6C6C6C6C6C6C6C6C6C6C6C6B6B6B6B6B6B6B6B6B6A6A6A
+6A6A6A6A6A6A676767676767676767676767676767676767747474747474747474747474848484
+8484848484848C8C8C8C8C8C8C8C8C909090909090909090929292929292929292929292919191
+9191919191918F8F8F8F8F8F8F8F8F8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8B8B8B8B8B8B
+8B8B8B8B8B8B878787878787878787838383838383838383707070707070707070646464646464
+646464666666666666666666666666777777777777777777B1B1B1B1B1B1B1B1B1E5E5E5E5E5E5
+E5E5E5F1F1F1F1F1F1F1F1F1F1F1F1FBFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFBFBFBFBFBFB
+FBFBFBE0E0E0E0E0E0E0E0E0CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECE
+CECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECECECECECECE
+CFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCD
+CCCCCCCCCCCCCCCCCCCECECECECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCB
+C7C7C7C7C7C7C7C7C7C2C2C2C2C2C2C2C2C2B7B7B7B7B7B7B7B7B7B7B7B7B0B0B0B0B0B0B0B0B0
+ACACACACACACACACACA9A9A9A9A9A9A9A9A9A8A8A8A8A8A8A8A8A8ADADADADADADADADADADADAD
+9C9C9C9C9C9C9C9C9C939393939393939393989898989898989898959595959595959595A3A3A3
+A3A3A3A3A3A3A3A3A3B6B6B6B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8BDBDBDBDBDBDBDBDBDBFBFBF
+BFBFBFBFBFBFBFBFBFC6C6C6C6C6C6C6C6C6BCBCBCBCBCBCBCBCBCBDBDBDBDBDBDBDBDBDB8B8B8
+B8B8B8B8B8B8B4B4B4B4B4B4B4B4B4B4B4B4B7B7B7B7B7B7B7B7B7A4A4A4A4A4A4A4A4A4989898
+9898989898988686868686868686866464646464646464646464645151515151515151514F4F4F
+4F4F4F4F4F4F5151515151515151515555555555555555555555555C5C5C5C5C5C5C5C5C646464
+646464646464686868686868686868696969696969696969676767676767676767676767676767
+676767676767666666666666666666656565656565656565666666666666666666686868686868
+6868686868686767676767676767676868686868686868686B6B6B6B6B6B6B6B6B6A6A6A6A6A6A
+6A6A6A6A6A6A686868686868686868676767676767676767676767676767676767666666666666
+6666666363636363636363636363635F605F5F605F5F605F5E5E5E5E5E5E5E5E5E636363636363
+6363637070707070707070708080808080808080808080808787878787878787878B8B8B8B8B8B
+8B8B8B8F8F8F8F8F8F8F8F8F9090909090909090909090909090909090909090908E8E8E8E8E8E
+8E8E8E8E8E8E8E8E8E8E8E8E8C8C8C8C8C8C8C8C8C8585858585858585858585857E7E7E7E7E7E
+7E7E7E9090909090909090908484848484848484846D6D6D6D6D6D6D6D6D646464646464646464
+646464787878787878787878B1B1B1B1B1B1B1B1B1EAEAEAEAEAEAEAEAEAF1F1F1F1F1F1F1F1F1
+F1F1F1F9F9F9F9F9F9F9F9F9FCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECE
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECECECECECECECECECE
+CFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCF
+CECECECECECECECECECFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCECECE
+CECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBC7C7C7C7C7C7C7C7C7C2C2C2
+C2C2C2C2C2C2B7B7B7B7B7B7B7B7B7B7B7B7B0B0B0B0B0B0B0B0B0ACACACACACACACACACA9A9A9
+A9A9A9A9A9A9A8A8A8A8A8A8A8A8A8ADADADADADADADADADADADAD9C9C9C9C9C9C9C9C9C939393
+939393939393989898989898989898959595959595959595A3A3A3A3A3A3A3A3A3A3A3A3B6B6B6
+B6B6B6B6B6B6B8B8B8B8B8B8B8B8B8BDBDBDBDBDBDBDBDBDBFBFBFBFBFBFBFBFBFBFBFBFC6C6C6
+C6C6C6C6C6C6BCBCBCBCBCBCBCBCBCBDBDBDBDBDBDBDBDBDB8B8B8B8B8B8B8B8B8B4B4B4B4B4B4
+B4B4B4B4B4B4B7B7B7B7B7B7B7B7B7A4A4A4A4A4A4A4A4A4989898989898989898868686868686
+8686866464646464646464646464645151515151515151514F4F4F4F4F4F4F4F4F515151515151
+5151515555555555555555555555555C5C5C5C5C5C5C5C5C646464646464646464686868686868
+686868696969696969696969676767676767676767676767676767676767676767666666666666
+666666656565656565656565666666666666666666686868686868686868686868676767676767
+6767676868686868686868686B6B6B6B6B6B6B6B6B6A6A6A6A6A6A6A6A6A6A6A6A686868686868
+686868676767676767676767676767676767676767666666666666666666636363636363636363
+6363635F605F5F605F5F605F5E5E5E5E5E5E5E5E5E636363636363636363707070707070707070
+8080808080808080808080808787878787878787878B8B8B8B8B8B8B8B8B8F8F8F8F8F8F8F8F8F
+9090909090909090909090909090909090909090908E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
+8C8C8C8C8C8C8C8C8C8585858585858585858585857E7E7E7E7E7E7E7E7E909090909090909090
+8484848484848484846D6D6D6D6D6D6D6D6D646464646464646464646464787878787878787878
+B1B1B1B1B1B1B1B1B1EAEAEAEAEAEAEAEAEAF1F1F1F1F1F1F1F1F1F1F1F1F9F9F9F9F9F9F9F9F9
+FCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9C7C7C7C7C7C7C7C7C7CFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCFCFCFCECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBC6C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C1BDBDBDBDBDBDBDBDBDB2B2B2B2B2B2
+B2B2B2B2B2B2AEAEAEAEAEAEAEAEAEAAAAAAAAAAAAAAAAAA9E9E9E9E9E9E9E9E9EA1A1A1A1A1A1
+A1A1A1A6A6A6A6A6A6A6A6A6A6A6A69595959595959595959898989898989898989E9E9E9E9E9E
+9E9E9E9B9B9B9B9B9B9B9B9B949494949494949494949494A9A9A9A9A9A9A9A9A9B4B4B4B4B4B4
+B4B4B4B8B8B8B8B8B8B8B8B8BDBDBDBDBDBDBDBDBDBDBDBDC0C0C0C0C0C0C0C0C0C3C3C3C3C3C3
+C3C3C3B8B8B8B8B8B8B8B8B8BEBEBEBEBEBEBEBEBEB7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7
+B7B7B7B7B7B7B7B7B7B7B7B7A2A2A2A2A2A2A2A2A29B9B9B9B9B9B9B9B9B888888888888888888
+8888886262626262626262624E4E4E4E4E4E4E4E4E505050505050505050515151515151515151
+5151515252525252525252525757575757575757575F605F5F605F5F605F646464646464646464
+646464646464646464646464616161616161616161616161616161616161616161616161616161
+6262626262626262626262626262626262626262625E5E5E5E5E5E5E5E5E636363636363636363
+6666666666666666666565656565656565656565655F605F5F605F5F605F5D5D5D5D5D5D5D5D5D
+5B5B5B5B5B5B5B5B5B595959595959595959565656565656565656565656575757575757575757
+5F605F5F605F5F605F717171717171717171818181818181818181888888888888888888888888
+8989898989898989898989898989898989898C8C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E
+9191919191919191919090909090909090908E8E8E8E8E8E8E8E8E8D8D8D8D8D8D8D8D8D848484
+8484848484848484847878787878787878788484848484848484847F7F7F7F7F7F7F7F7F6F6F6F
+6F6F6F6F6F6F676767676767676767676767787878787878787878A9A9A9A9A9A9A9A9A9E8E8E8
+E8E8E8E8E8E8F5F5F5F5F5F5F5F5F5F5F5F5F9F9F9F9F9F9F9F9F9FCFCFCFCFCFCFCFCFCFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF9F9F9
+F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECFCFCFCFCFCF
+CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBC6C6C6C6C6C6
+C6C6C6C1C1C1C1C1C1C1C1C1BDBDBDBDBDBDBDBDBDB2B2B2B2B2B2B2B2B2B2B2B2AEAEAEAEAEAE
+AEAEAEAAAAAAAAAAAAAAAAAA9E9E9E9E9E9E9E9E9EA1A1A1A1A1A1A1A1A1A6A6A6A6A6A6A6A6A6
+A6A6A69595959595959595959898989898989898989E9E9E9E9E9E9E9E9E9B9B9B9B9B9B9B9B9B
+949494949494949494949494A9A9A9A9A9A9A9A9A9B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8
+BDBDBDBDBDBDBDBDBDBDBDBDC0C0C0C0C0C0C0C0C0C3C3C3C3C3C3C3C3C3B8B8B8B8B8B8B8B8B8
+BEBEBEBEBEBEBEBEBEB7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7
+A2A2A2A2A2A2A2A2A29B9B9B9B9B9B9B9B9B888888888888888888888888626262626262626262
+4E4E4E4E4E4E4E4E4E505050505050505050515151515151515151515151525252525252525252
+5757575757575757575F605F5F605F5F605F646464646464646464646464646464646464646464
+616161616161616161616161616161616161616161616161616161626262626262626262626262
+6262626262626262625E5E5E5E5E5E5E5E5E636363636363636363666666666666666666656565
+6565656565656565655F605F5F605F5F605F5D5D5D5D5D5D5D5D5D5B5B5B5B5B5B5B5B5B595959
+5959595959595656565656565656565656565757575757575757575F605F5F605F5F605F717171
+717171717171818181818181818181888888888888888888888888898989898989898989898989
+8989898989898C8C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E919191919191919191909090
+9090909090908E8E8E8E8E8E8E8E8E8D8D8D8D8D8D8D8D8D848484848484848484848484787878
+7878787878788484848484848484847F7F7F7F7F7F7F7F7F6F6F6F6F6F6F6F6F6F676767676767
+676767676767787878787878787878A9A9A9A9A9A9A9A9A9E8E8E8E8E8E8E8E8E8F5F5F5F5F5F5
+F5F5F5F5F5F5F9F9F9F9F9F9F9F9F9FCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6
+C6C6C6CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECE
+CECECECECECECECECECECECECECECECECECECECECECFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF
+CFCFCFCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CECECECECECECECECECECECECECECECECECECECECECECECECECECECECECECCCCCCCCCCCCCCCCCC
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBC6C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C1
+BDBDBDBDBDBDBDBDBDB2B2B2B2B2B2B2B2B2B2B2B2AEAEAEAEAEAEAEAEAEAAAAAAAAAAAAAAAAAA
+9E9E9E9E9E9E9E9E9EA1A1A1A1A1A1A1A1A1A6A6A6A6A6A6A6A6A6A6A6A6959595959595959595
+9898989898989898989E9E9E9E9E9E9E9E9E9B9B9B9B9B9B9B9B9B949494949494949494949494
+A9A9A9A9A9A9A9A9A9B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8BDBDBDBDBDBDBDBDBDBDBDBD
+C0C0C0C0C0C0C0C0C0C3C3C3C3C3C3C3C3C3B8B8B8B8B8B8B8B8B8BEBEBEBEBEBEBEBEBEB7B7B7
+B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7A2A2A2A2A2A2A2A2A29B9B9B
+9B9B9B9B9B9B8888888888888888888888886262626262626262624E4E4E4E4E4E4E4E4E505050
+5050505050505151515151515151515151515252525252525252525757575757575757575F605F
+5F605F5F605F646464646464646464646464646464646464646464616161616161616161616161
+6161616161616161616161616161616262626262626262626262626262626262626262625E5E5E
+5E5E5E5E5E5E6363636363636363636666666666666666666565656565656565656565655F605F
+5F605F5F605F5D5D5D5D5D5D5D5D5D5B5B5B5B5B5B5B5B5B595959595959595959565656565656
+5656565656565757575757575757575F605F5F605F5F605F717171717171717171818181818181
+8181818888888888888888888888888989898989898989898989898989898989898C8C8C8C8C8C
+8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E9191919191919191919090909090909090908E8E8E8E8E8E
+8E8E8E8D8D8D8D8D8D8D8D8D848484848484848484848484787878787878787878848484848484
+8484847F7F7F7F7F7F7F7F7F6F6F6F6F6F6F6F6F6F676767676767676767676767787878787878
+787878A9A9A9A9A9A9A9A9A9E8E8E8E8E8E8E8E8E8F5F5F5F5F5F5F5F5F5F5F5F5F9F9F9F9F9F9
+F9F9F9FCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
+FDFDFDFDFDFDFDFDFDFDFDFDF9F9F9F9F9F9F9F9F9C6C6C6C6C6C6C6C6C6CECECECECECECECECE
+CDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECCCCCCCCCCCCCCCCCC
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBC5C5C5C5C5C5C5C5C5C1C1C1C1C1C1C1C1C1C5C5C5
+C5C5C5C5C5C5C5C5C5C4C4C4C4C4C4C4C4C4BFBFBFBFBFBFBFBFBFB4B4B4B4B4B4B4B4B4AEAEAE
+AEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1A7A7A7A7A7A7A7A7A79C9C9C9C9C9C9C9C9CA3A3A3
+A3A3A3A3A3A39E9E9E9E9E9E9E9E9E9E9E9E9D9D9D9D9D9D9D9D9DA4A4A4A4A4A4A4A4A49D9D9D
+9D9D9D9D9D9D909090909090909090898989898989898989898989929292929292929292ADADAD
+ADADADADADADB0B0B0B0B0B0B0B0B0B8B8B8B8B8B8B8B8B8B8B8B8B9B9B9B9B9B9B9B9B9BFBFBF
+BFBFBFBFBFBFBCBCBCBCBCBCBCBCBCB8B8B8B8B8B8B8B8B8BFBFBFBFBFBFBFBFBFBFBFBFB3B3B3
+B3B3B3B3B3B3B9B9B9B9B9B9B9B9B9B1B1B1B1B1B1B1B1B19F9F9F9F9F9F9F9F9F9E9E9E9E9E9E
+9E9E9E9E9E9E8787878787878787875C5C5C5C5C5C5C5C5C4949494949494949494D4D4D4D4D4D
+4D4D4D4D4D4D4F4F4F4F4F4F4F4F4F4E4E4E4E4E4E4E4E4E515151515151515151575757575757
+5757575A5A5A5A5A5A5A5A5A5A5A5A5B5B5B5B5B5B5B5B5B5A5A5A5A5A5A5A5A5A5B5B5B5B5B5B
+5B5B5B5C5C5C5C5C5C5C5C5C595959595959595959595959575757575757575757575757575757
+575757585858585858585858565656565656565656565656525252525252525252505050505050
+5050504D4D4D4D4D4D4D4D4D4C4C4C4C4C4C4C4C4C525252525252525252525252636363636363
+6363637373737373737373737E7E7E7E7E7E7E7E7E858585858585858585888888888888888888
+8888888989898989898989898888888888888888888C8C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E
+8E8E8E9090909090909090908F8F8F8F8F8F8F8F8F9090909090909090908E8E8E8E8E8E8E8E8E
+8484848484848484848484847979797979797979797B7B7B7B7B7B7B7B7B6E6E6E6E6E6E6E6E6E
+6767676767676767676C6C6C6C6C6C6C6C6C6C6C6C787878787878787878A1A1A1A1A1A1A1A1A1
+E0E0E0E0E0E0E0E0E0F7F7F7F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9FCFCFCFCFCFCFCFCFC
+FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFC
+FCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFDFDFD
+FCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFC
+F6F6F6F6F6F6F6F6F6BBBBBBBBBBBBBBBBBBCECECECECECECECECECDCDCDCDCDCDCDCDCDCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDCDCD
+CDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCECECECECECECECECECECECECCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBC5C5C5C5C5C5C5C5C5C1C1C1C1C1C1C1C1C1C5C5C5C5C5C5C5C5C5C5C5C5C4C4C4
+C4C4C4C4C4C4BFBFBFBFBFBFBFBFBFB4B4B4B4B4B4B4B4B4AEAEAEAEAEAEAEAEAEAEAEAEB1B1B1
+B1B1B1B1B1B1A7A7A7A7A7A7A7A7A79C9C9C9C9C9C9C9C9CA3A3A3A3A3A3A3A3A39E9E9E9E9E9E
+9E9E9E9E9E9E9D9D9D9D9D9D9D9D9DA4A4A4A4A4A4A4A4A49D9D9D9D9D9D9D9D9D909090909090
+909090898989898989898989898989929292929292929292ADADADADADADADADADB0B0B0B0B0B0
+B0B0B0B8B8B8B8B8B8B8B8B8B8B8B8B9B9B9B9B9B9B9B9B9BFBFBFBFBFBFBFBFBFBCBCBCBCBCBC
+BCBCBCB8B8B8B8B8B8B8B8B8BFBFBFBFBFBFBFBFBFBFBFBFB3B3B3B3B3B3B3B3B3B9B9B9B9B9B9
+B9B9B9B1B1B1B1B1B1B1B1B19F9F9F9F9F9F9F9F9F9E9E9E9E9E9E9E9E9E9E9E9E878787878787
+8787875C5C5C5C5C5C5C5C5C4949494949494949494D4D4D4D4D4D4D4D4D4D4D4D4F4F4F4F4F4F
+4F4F4F4E4E4E4E4E4E4E4E4E5151515151515151515757575757575757575A5A5A5A5A5A5A5A5A
+5A5A5A5B5B5B5B5B5B5B5B5B5A5A5A5A5A5A5A5A5A5B5B5B5B5B5B5B5B5B5C5C5C5C5C5C5C5C5C
+595959595959595959595959575757575757575757575757575757575757585858585858585858
+5656565656565656565656565252525252525252525050505050505050504D4D4D4D4D4D4D4D4D
+4C4C4C4C4C4C4C4C4C525252525252525252525252636363636363636363737373737373737373
+7E7E7E7E7E7E7E7E7E858585858585858585888888888888888888888888898989898989898989
+8888888888888888888C8C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E909090909090909090
+8F8F8F8F8F8F8F8F8F9090909090909090908E8E8E8E8E8E8E8E8E848484848484848484848484
+7979797979797979797B7B7B7B7B7B7B7B7B6E6E6E6E6E6E6E6E6E6767676767676767676C6C6C
+6C6C6C6C6C6C6C6C6C787878787878787878A1A1A1A1A1A1A1A1A1E0E0E0E0E0E0E0E0E0F7F7F7
+F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9FCFCFCFCFCFCFCFCFCFBFBFBFBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFC
+FCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFC
+FCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFCF6F6F6F6F6F6F6F6F6BBBBBB
+BBBBBBBBBBBBCECECECECECECECECECDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCCCCCCCCCCCC
+CCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECE
+CECECECECECECCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBC5C5C5C5C5C5
+C5C5C5C1C1C1C1C1C1C1C1C1C5C5C5C5C5C5C5C5C5C5C5C5C4C4C4C4C4C4C4C4C4BFBFBFBFBFBF
+BFBFBFB4B4B4B4B4B4B4B4B4AEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1A7A7A7A7A7A7
+A7A7A79C9C9C9C9C9C9C9C9CA3A3A3A3A3A3A3A3A39E9E9E9E9E9E9E9E9E9E9E9E9D9D9D9D9D9D
+9D9D9DA4A4A4A4A4A4A4A4A49D9D9D9D9D9D9D9D9D909090909090909090898989898989898989
+898989929292929292929292ADADADADADADADADADB0B0B0B0B0B0B0B0B0B8B8B8B8B8B8B8B8B8
+B8B8B8B9B9B9B9B9B9B9B9B9BFBFBFBFBFBFBFBFBFBCBCBCBCBCBCBCBCBCB8B8B8B8B8B8B8B8B8
+BFBFBFBFBFBFBFBFBFBFBFBFB3B3B3B3B3B3B3B3B3B9B9B9B9B9B9B9B9B9B1B1B1B1B1B1B1B1B1
+9F9F9F9F9F9F9F9F9F9E9E9E9E9E9E9E9E9E9E9E9E8787878787878787875C5C5C5C5C5C5C5C5C
+4949494949494949494D4D4D4D4D4D4D4D4D4D4D4D4F4F4F4F4F4F4F4F4F4E4E4E4E4E4E4E4E4E
+5151515151515151515757575757575757575A5A5A5A5A5A5A5A5A5A5A5A5B5B5B5B5B5B5B5B5B
+5A5A5A5A5A5A5A5A5A5B5B5B5B5B5B5B5B5B5C5C5C5C5C5C5C5C5C595959595959595959595959
+575757575757575757575757575757575757585858585858585858565656565656565656565656
+5252525252525252525050505050505050504D4D4D4D4D4D4D4D4D4C4C4C4C4C4C4C4C4C525252
+5252525252525252526363636363636363637373737373737373737E7E7E7E7E7E7E7E7E858585
+8585858585858888888888888888888888888989898989898989898888888888888888888C8C8C
+8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E9090909090909090908F8F8F8F8F8F8F8F8F909090
+9090909090908E8E8E8E8E8E8E8E8E8484848484848484848484847979797979797979797B7B7B
+7B7B7B7B7B7B6E6E6E6E6E6E6E6E6E6767676767676767676C6C6C6C6C6C6C6C6C6C6C6C787878
+787878787878A1A1A1A1A1A1A1A1A1E0E0E0E0E0E0E0E0E0F7F7F7F7F7F7F7F7F7F7F7F7F9F9F9
+F9F9F9F9F9F9FCFCFCFCFCFCFCFCFCFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFCFCFCFCFCFC
+FCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFC
+FCFCFCFDFDFDFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFDFDFDFDFDFD
+FDFDFDFCFCFCFCFCFCFCFCFCFCFCFCF6F6F6F6F6F6F6F6F6BBBBBBBBBBBBBBBBBBCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECECECECECECECECECECECECECECCCCCCCCCCCC
+CCCCCCCBCBCBCBCBCBCBCBCBCACACACACACACACACACBCBCBCBCBCBCBCBCBC6C6C6C6C6C6C6C6C6
+C6C6C6C4C4C4C4C4C4C4C4C4BFBFBFBFBFBFBFBFBFA7A7A7A7A7A7A7A7A79E9E9E9E9E9E9E9E9E
+B4B4B4B4B4B4B4B4B4B4B4B4BFBFBFBFBFBFBFBFBFBEBEBEBEBEBEBEBEBEB5B5B5B5B5B5B5B5B5
+B6B6B6B6B6B6B6B6B6B6B6B6B7B7B7B7B7B7B7B7B7A5A5A5A5A5A5A5A5A5A7A7A7A7A7A7A7A7A7
+A8A8A8A8A8A8A8A8A89E9E9E9E9E9E9E9E9E9E9E9EA8A8A8A8A8A8A8A8A8A9A9A9A9A9A9A9A9A9
+9696969696969696968F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8A8A8A8A8A8A8A8A8A
+9C9C9C9C9C9C9C9C9CACACACACACACACACACB0B1B0B0B1B0B0B1B0B0B1B0B8B8B8B8B8B8B8B8B8
+B6B6B6B6B6B6B6B6B6BDBDBDBDBDBDBDBDBDB6B6B6B6B6B6B6B6B6BABABABABABABABABABABABA
+BABABABABABABABABAB2B2B2B2B2B2B2B2B2B9B9B9B9B9B9B9B9B9AEAEAEAEAEAEAEAEAEA2A2A2
+A2A2A2A2A2A2A2A2A2A0A0A0A0A0A0A0A0A0828282828282828282575757575757575757444444
+4444444444444444444747474747474747474C4C4C4C4C4C4C4C4C4D4D4D4D4D4D4D4D4D4C4C4C
+4C4C4C4C4C4C4F4F4F4F4F4F4F4F4F4F4F4F515151515151515151525252525252525252525252
+5252525252525454545454545454545050505050505050505050504E4E4E4E4E4E4E4E4E4C4C4C
+4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C494949494949494949494949484848484848484848474747
+474747474747474747474747474747515151515151515151656565656565656565656565777777
+7777777777777F7F7F7F7F7F7F7F7F848484848484848484858585858585858585878787878787
+8787878787878888888888888888888989898989898989898C8C8C8C8C8C8C8C8C8D8D8D8D8D8D
+8D8D8D8D8D8D8E8E8E8E8E8E8E8E8E8F8F8F8F8F8F8F8F8F9090909090909090908E8E8E8E8E8E
+8E8E8E8282828282828282828282827171717171717171716F6F6F6F6F6F6F6F6F686868686868
+6868686666666666666666667070707070707070707070707A7A7A7A7A7A7A7A7A9F9F9F9F9F9F
+9F9F9FD8D8D8D8D8D8D8D8D8F5F5F5F5F5F5F5F5F5F5F5F5F8F8F8F8F8F8F8F8F8FCFCFCFCFCFC
+FCFCFCFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFAFAFAFAFAFA
+FAFAFAFBFBFBFBFBFBFBFBFBFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFC
+FCFCFCF6F6F6F6F6F6F6F6F6C5C5C5C5C5C5C5C5C5CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CECECECECECECECECECECECECECECECECECECECECECCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCB
+CACACACACACACACACACBCBCBCBCBCBCBCBCBC6C6C6C6C6C6C6C6C6C6C6C6C4C4C4C4C4C4C4C4C4
+BFBFBFBFBFBFBFBFBFA7A7A7A7A7A7A7A7A79E9E9E9E9E9E9E9E9EB4B4B4B4B4B4B4B4B4B4B4B4
+BFBFBFBFBFBFBFBFBFBEBEBEBEBEBEBEBEBEB5B5B5B5B5B5B5B5B5B6B6B6B6B6B6B6B6B6B6B6B6
+B7B7B7B7B7B7B7B7B7A5A5A5A5A5A5A5A5A5A7A7A7A7A7A7A7A7A7A8A8A8A8A8A8A8A8A89E9E9E
+9E9E9E9E9E9E9E9E9EA8A8A8A8A8A8A8A8A8A9A9A9A9A9A9A9A9A99696969696969696968F8F8F
+8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8A8A8A8A8A8A8A8A8A9C9C9C9C9C9C9C9C9CACACAC
+ACACACACACACB0B1B0B0B1B0B0B1B0B0B1B0B8B8B8B8B8B8B8B8B8B6B6B6B6B6B6B6B6B6BDBDBD
+BDBDBDBDBDBDB6B6B6B6B6B6B6B6B6BABABABABABABABABABABABABABABABABABABABABAB2B2B2
+B2B2B2B2B2B2B9B9B9B9B9B9B9B9B9AEAEAEAEAEAEAEAEAEA2A2A2A2A2A2A2A2A2A2A2A2A0A0A0
+A0A0A0A0A0A0828282828282828282575757575757575757444444444444444444444444474747
+4747474747474C4C4C4C4C4C4C4C4C4D4D4D4D4D4D4D4D4D4C4C4C4C4C4C4C4C4C4F4F4F4F4F4F
+4F4F4F4F4F4F515151515151515151525252525252525252525252525252525252545454545454
+5454545050505050505050505050504E4E4E4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C
+4C4C4C494949494949494949494949484848484848484848474747474747474747474747474747
+4747475151515151515151516565656565656565656565657777777777777777777F7F7F7F7F7F
+7F7F7F848484848484848484858585858585858585878787878787878787878787888888888888
+8888888989898989898989898C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D8D8D8D8E8E8E8E8E8E
+8E8E8E8F8F8F8F8F8F8F8F8F9090909090909090908E8E8E8E8E8E8E8E8E828282828282828282
+8282827171717171717171716F6F6F6F6F6F6F6F6F686868686868686868666666666666666666
+7070707070707070707070707A7A7A7A7A7A7A7A7A9F9F9F9F9F9F9F9F9FD8D8D8D8D8D8D8D8D8
+F5F5F5F5F5F5F5F5F5F5F5F5F8F8F8F8F8F8F8F8F8FCFCFCFCFCFCFCFCFCFBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFAFAFAFAFAFAFAFAFAFBFBFBFBFBFBFBFBFB
+FCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFBFBFBFDFDFDFDFDFDFDFDFDFCFCFCFCFCFCFCFCFCFCFCFCF6F6F6F6F6F6F6F6F6
+C5C5C5C5C5C5C5C5C5CDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCECECECECECECECECECDCDCD
+CDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCFCFCFCFCFCFCFCFCFCECECE
+CECECECECECECECECECCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBC9C9C9
+C9C9C9C9C9C9BEBEBEBEBEBEBEBEBEBEBEBEBABABABABABABABABAAEAEAEAEAEAEAEAEAE868686
+868686868686838383838383838383A7A7A7A7A7A7A7A7A7A7A7A7C2C2C2C2C2C2C2C2C2CCCCCC
+CCCCCCCCCCCCC1C1C1C1C1C1C1C1C1B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B0B1B0
+B0B1B0B0B1B0AFAFAFAFAFAFAFAFAFABABABABABABABABABA8A8A8A8A8A8A8A8A8A8A8A8AEAEAE
+AEAEAEAEAEAEA8A8A8A8A8A8A8A8A89E9E9E9E9E9E9E9E9EA4A4A4A4A4A4A4A4A4A1A1A1A1A1A1
+A1A1A1A1A1A18F8F8F8F8F8F8F8F8F898989898989898989A2A2A2A2A2A2A2A2A2B0B0B0B0B0B0
+B0B0B0B0B0B0B1B1B1B1B1B1B1B1B1B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8
+B8B8B8B1B1B1B1B1B1B1B1B1B1B1B1B9B9B9B9B9B9B9B9B9B6B6B6B6B6B6B6B6B6B2B2B2B2B2B2
+B2B2B2BABABABABABABABABAACACACACACACACACACACACACA4A4A4A4A4A4A4A4A49E9E9E9E9E9E
+9E9E9E7777777777777777774F4F4F4F4F4F4F4F4F4F4F4F414141414141414141474747474747
+4747474E4E4E4E4E4E4E4E4E4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4C4C4C4C4C4C
+4C4C4C4C4C4C4C4C4C4C4C4C4B4B4B4B4B4B4B4B4B494949494949494949464646464646464646
+464646444444444444444444454545454545454545444444444444444444444444444444444444
+4444444242424242424242424545454545454545454E4E4E4E4E4E4E4E4E616161616161616161
+757575757575757575757575818181818181818181848484848484848484868686868686868686
+8686868686868686868787878787878787878787878888888888888888888C8C8C8C8C8C8C8C8C
+8D8D8D8D8D8D8D8D8D8E8E8E8E8E8E8E8E8E8E8E8E909090909090909090909090909090909090
+9090909090909090908D8D8D8D8D8D8D8D8D808080808080808080808080646464646464646464
+5D5D5D5D5D5D5D5D5D6262626262626262626A6A6A6A6A6A6A6A6A757575757575757575757575
+7E7E7E7E7E7E7E7E7EA4A4A4A4A4A4A4A4A4D3D3D3D3D3D3D3D3D3F2F2F2F2F2F2F2F2F2F2F2F2
+F9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFAFAFA
+FAFAFAFAFAFAFAFAFAF9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFCFCFC
+FCFCFCFCFCFCFBFBFBFBFBFBFBFBFBFBFBFBF7F7F7F7F7F7F7F7F7C5C5C5C5C5C5C5C5C5CDCDCD
+CDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCCCCCC
+CCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCCCCCC
+CCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBC9C9C9C9C9C9C9C9C9BEBEBEBEBEBE
+BEBEBEBEBEBEBABABABABABABABABAAEAEAEAEAEAEAEAEAE868686868686868686838383838383
+838383A7A7A7A7A7A7A7A7A7A7A7A7C2C2C2C2C2C2C2C2C2CCCCCCCCCCCCCCCCCCC1C1C1C1C1C1
+C1C1C1B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B0B1B0B0B1B0B0B1B0AFAFAFAFAFAF
+AFAFAFABABABABABABABABABA8A8A8A8A8A8A8A8A8A8A8A8AEAEAEAEAEAEAEAEAEA8A8A8A8A8A8
+A8A8A89E9E9E9E9E9E9E9E9EA4A4A4A4A4A4A4A4A4A1A1A1A1A1A1A1A1A1A1A1A18F8F8F8F8F8F
+8F8F8F898989898989898989A2A2A2A2A2A2A2A2A2B0B0B0B0B0B0B0B0B0B0B0B0B1B1B1B1B1B1
+B1B1B1B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8B1B1B1B1B1B1B1B1B1
+B1B1B1B9B9B9B9B9B9B9B9B9B6B6B6B6B6B6B6B6B6B2B2B2B2B2B2B2B2B2BABABABABABABABABA
+ACACACACACACACACACACACACA4A4A4A4A4A4A4A4A49E9E9E9E9E9E9E9E9E777777777777777777
+4F4F4F4F4F4F4F4F4F4F4F4F4141414141414141414747474747474747474E4E4E4E4E4E4E4E4E
+4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C
+4B4B4B4B4B4B4B4B4B494949494949494949464646464646464646464646444444444444444444
+454545454545454545444444444444444444444444444444444444444444424242424242424242
+4545454545454545454E4E4E4E4E4E4E4E4E616161616161616161757575757575757575757575
+818181818181818181848484848484848484868686868686868686868686868686868686878787
+8787878787878787878888888888888888888C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D8E8E8E
+8E8E8E8E8E8E8E8E8E9090909090909090909090909090909090909090909090909090908D8D8D
+8D8D8D8D8D8D8080808080808080808080806464646464646464645D5D5D5D5D5D5D5D5D626262
+6262626262626A6A6A6A6A6A6A6A6A7575757575757575757575757E7E7E7E7E7E7E7E7EA4A4A4
+A4A4A4A4A4A4D3D3D3D3D3D3D3D3D3F2F2F2F2F2F2F2F2F2F2F2F2F9F9F9F9F9F9F9F9F9FBFBFB
+FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFAFAFAFAFAFAFAFAFAFAFAFAF9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFCFCFCFCFCFCFCFCFCFBFBFBFBFBFB
+FBFBFBFBFBFBF7F7F7F7F7F7F7F7F7C5C5C5C5C5C5C5C5C5CDCDCDCDCDCDCDCDCDCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCBCBCBCBCBCB
+CBCBCBCECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCDCDCDCDCDCD
+CDCDCDCFCFCFCFCFCFCFCFCFCECECECECECECECECECECECECCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CCCCCCCBCBCBCBCBCBCBCBCBC9C9C9C9C9C9C9C9C9BEBEBEBEBEBEBEBEBEBEBEBEBABABABABABA
+BABABAAEAEAEAEAEAEAEAEAE868686868686868686838383838383838383A7A7A7A7A7A7A7A7A7
+A7A7A7C2C2C2C2C2C2C2C2C2CCCCCCCCCCCCCCCCCCC1C1C1C1C1C1C1C1C1B9B9B9B9B9B9B9B9B9
+B9B9B9B9B9B9B9B9B9B9B9B9B0B1B0B0B1B0B0B1B0AFAFAFAFAFAFAFAFAFABABABABABABABABAB
+A8A8A8A8A8A8A8A8A8A8A8A8AEAEAEAEAEAEAEAEAEA8A8A8A8A8A8A8A8A89E9E9E9E9E9E9E9E9E
+A4A4A4A4A4A4A4A4A4A1A1A1A1A1A1A1A1A1A1A1A18F8F8F8F8F8F8F8F8F898989898989898989
+A2A2A2A2A2A2A2A2A2B0B0B0B0B0B0B0B0B0B0B0B0B1B1B1B1B1B1B1B1B1B4B4B4B4B4B4B4B4B4
+B4B4B4B4B4B4B4B4B4B8B8B8B8B8B8B8B8B8B1B1B1B1B1B1B1B1B1B1B1B1B9B9B9B9B9B9B9B9B9
+B6B6B6B6B6B6B6B6B6B2B2B2B2B2B2B2B2B2BABABABABABABABABAACACACACACACACACACACACAC
+A4A4A4A4A4A4A4A4A49E9E9E9E9E9E9E9E9E7777777777777777774F4F4F4F4F4F4F4F4F4F4F4F
+4141414141414141414747474747474747474E4E4E4E4E4E4E4E4E4D4D4D4D4D4D4D4D4D4D4D4D
+4D4D4D4D4D4D4D4D4D4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4C4B4B4B4B4B4B4B4B4B494949
+494949494949464646464646464646464646444444444444444444454545454545454545444444
+4444444444444444444444444444444444444242424242424242424545454545454545454E4E4E
+4E4E4E4E4E4E616161616161616161757575757575757575757575818181818181818181848484
+848484848484868686868686868686868686868686868686878787878787878787878787888888
+8888888888888C8C8C8C8C8C8C8C8C8D8D8D8D8D8D8D8D8D8E8E8E8E8E8E8E8E8E8E8E8E909090
+9090909090909090909090909090909090909090909090908D8D8D8D8D8D8D8D8D808080808080
+8080808080806464646464646464645D5D5D5D5D5D5D5D5D6262626262626262626A6A6A6A6A6A
+6A6A6A7575757575757575757575757E7E7E7E7E7E7E7E7EA4A4A4A4A4A4A4A4A4D3D3D3D3D3D3
+D3D3D3F2F2F2F2F2F2F2F2F2F2F2F2F9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFBFBFBFBFBFBFAFAFAFAFAFAFAFAFAFAFAFAF9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFBFBFBFBFBFBFCFCFCFCFCFCFCFCFCFBFBFBFBFBFBFBFBFBFBFBFBF7F7F7F7F7F7
+F7F7F7C5C5C5C5C5C5C5C5C5CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCB
+CBCBCBCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCC
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECE
+CDCDCDCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCDCDCDCDCDCDCDCDCD
+CBCBCBCBCBCBCBCBCBC6C6C6C6C6C6C6C6C6C6C6C6C7C7C7C7C7C7C7C7C7B1B1B1B1B1B1B1B1B1
+919191919191919191A2A2A2A2A2A2A2A2A2BFBFBFBFBFBFBFBFBFBFBFBFCFCFCFCFCFCFCFCFCF
+D1D1D1D1D1D1D1D1D1C0C0C0C0C0C0C0C0C0B7B7B7B7B7B7B7B7B7B7B7B7BFBFBFBFBFBFBFBFBF
+BABABABABABABABABAB0B0B0B0B0B0B0B0B0ACACACACACACACACACB2B2B2B2B2B2B2B2B2B2B2B2
+ACACACACACACACACACAAAAAAAAAAAAAAAAAAAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFA4A4A4
+A4A4A4A4A4A4A4A4A49191919191919191918D8D8D8D8D8D8D8D8D929292929292929292ABABAB
+ABABABABABABABABABAEAEAEAEAEAEAEAEAEB0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0AFAFAF
+AFAFAFAFAFAFB1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEB6B6B6B6B6B6B6B6B6B2B2B2
+B2B2B2B2B2B2B4B4B4B4B4B4B4B4B4B7B7B7B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A7A5A5A5
+A5A5A5A5A5A59898989898989898986F6F6F6F6F6F6F6F6F6F6F6F4E4E4E4E4E4E4E4E4E3E3E3E
+3E3E3E3E3E3E4141414141414141414B4B4B4B4B4B4B4B4B505050505050505050505050505050
+5050505050505050505050505050504D4D4D4D4D4D4D4D4D494949494949494949444444444444
+4444444444444040404040404040403F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F
+3F3F3F3F3F3F4444444444444444444E4E4E4E4E4E4E4E4E5D5D5D5D5D5D5D5D5D6F6F6F6F6F6F
+6F6F6F7C7C7C7C7C7C7C7C7C7C7C7C848484848484848484858585858585858585858585858585
+8585858484848484848484848787878787878787878787878989898989898989898F8F8F8F8F8F
+8F8F8F9090909090909090909393939393939393939393939393939393939393938E8E8E8E8E8E
+8E8E8E8D8D8D8D8D8D8D8D8D8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E575757575757
+5757575151515151515151515F605F5F605F5F605F6D6D6D6D6D6D6D6D6D777777777777777777
+7777777E7E7E7E7E7E7E7E7EA5A5A5A5A5A5A5A5A5D8D8D8D8D8D8D8D8D8EFEFEFEFEFEFEFEFEF
+EFEFEFF9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFAFAFAFAFAFAFAFAFA
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF9F9F9F9F9F9F9F9F9FAFAFAFAFAFAFAFAFA
+FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF6F6F6F6F6F6F6F6F6C1C1C1C1C1C1C1C1C1
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCDCDCDCDCDCDCDCDCD
+CCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCECECECECECECECECECDCDCDCDCDCDCDCDCDCDCDCD
+CCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCDCDCDCDCDCDCDCDCDCBCBCBCBCBCBCBCBCBC6C6C6
+C6C6C6C6C6C6C6C6C6C7C7C7C7C7C7C7C7C7B1B1B1B1B1B1B1B1B1919191919191919191A2A2A2
+A2A2A2A2A2A2BFBFBFBFBFBFBFBFBFBFBFBFCFCFCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1D1C0C0C0
+C0C0C0C0C0C0B7B7B7B7B7B7B7B7B7B7B7B7BFBFBFBFBFBFBFBFBFBABABABABABABABABAB0B0B0
+B0B0B0B0B0B0ACACACACACACACACACB2B2B2B2B2B2B2B2B2B2B2B2ACACACACACACACACACAAAAAA
+AAAAAAAAAAAAAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFA4A4A4A4A4A4A4A4A4A4A4A4919191
+9191919191918D8D8D8D8D8D8D8D8D929292929292929292ABABABABABABABABABABABABAEAEAE
+AEAEAEAEAEAEB0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0AFAFAFAFAFAFAFAFAFB1B1B1B1B1B1
+B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEB6B6B6B6B6B6B6B6B6B2B2B2B2B2B2B2B2B2B4B4B4B4B4B4
+B4B4B4B7B7B7B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A7A5A5A5A5A5A5A5A5A5989898989898
+9898986F6F6F6F6F6F6F6F6F6F6F6F4E4E4E4E4E4E4E4E4E3E3E3E3E3E3E3E3E3E414141414141
+4141414B4B4B4B4B4B4B4B4B505050505050505050505050505050505050505050505050505050
+5050504D4D4D4D4D4D4D4D4D494949494949494949444444444444444444444444404040404040
+4040403F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F444444444444
+4444444E4E4E4E4E4E4E4E4E5D5D5D5D5D5D5D5D5D6F6F6F6F6F6F6F6F6F7C7C7C7C7C7C7C7C7C
+7C7C7C848484848484848484858585858585858585858585858585858585848484848484848484
+8787878787878787878787878989898989898989898F8F8F8F8F8F8F8F8F909090909090909090
+9393939393939393939393939393939393939393938E8E8E8E8E8E8E8E8E8D8D8D8D8D8D8D8D8D
+8E8E8E8E8E8E8E8E8E7E7E7E7E7E7E7E7E7E7E7E7E575757575757575757515151515151515151
+5F605F5F605F5F605F6D6D6D6D6D6D6D6D6D7777777777777777777777777E7E7E7E7E7E7E7E7E
+A5A5A5A5A5A5A5A5A5D8D8D8D8D8D8D8D8D8EFEFEFEFEFEFEFEFEFEFEFEFF9F9F9F9F9F9F9F9F9
+FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFAFAFAFAFAFAFAFAFAF9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFBFBFBF9F9F9F9F9F9F9F9F9FAFAFAFAFAFAFAFAFAFBFBFBFBFBFBFBFBFBFBFBFB
+FBFBFBFBFBFBFBFBFBF6F6F6F6F6F6F6F6F6C1C1C1C1C1C1C1C1C1CBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCFCFCF
+CFCFCFCFCFCFC7C7C7C7C7C7C7C7C7BDBDBDBDBDBDBDBDBDC9C9C9C9C9C9C9C9C9C9C9C9D6D6D5
+D6D6D5D6D6D5C9C9C9C9C9C9C9C9C9B8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7B8B8B8B8B8B8
+B8B8B8B8B8B8C5C5C5C5C5C5C5C5C5CBCBCBCBCBCBCBCBCBC8C8C8C8C8C8C8C8C8C6C6C6C6C6C6
+C6C6C6C6C6C6C5C5C5C5C5C5C5C5C5BFBFBFBFBFBFBFBFBFB4B4B4B4B4B4B4B4B4B0B1B0B0B1B0
+B0B1B0B0B0B0B0B0B0B0B0B0B0B0B0A6A6A6A6A6A6A6A6A6ADADADADADADADADADB5B5B5B5B5B5
+B5B5B5ACACACACACACACACACA5A5A5A5A5A5A5A5A5A5A5A5A1A1A1A1A1A1A1A1A1A4A4A4A4A4A4
+A4A4A4979797979797979797979797979797979797979797A5A5A5A5A5A5A5A5A5A7A7A7A7A7A7
+A7A7A7A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8ABABABABABABABABABABABABADADADADADAD
+ADADADABABABABABABABABABB2B2B2B2B2B2B2B2B2AFAFAFAFAFAFAFAFAFB2B2B2B2B2B2B2B2B2
+B2B2B2B1B1B1B1B1B1B1B1B1A4A4A4A4A4A4A4A4A4A5A5A5A5A5A5A5A5A5919191919191919191
+9191916C6C6C6C6C6C6C6C6C4D4D4D4D4D4D4D4D4D3C3C3C3C3C3C3C3C3C414141414141414141
+4C4C4C4C4C4C4C4C4C4C4C4C505050505050505050515151515151515151515151515151515151
+5050505050505050504E4E4E4E4E4E4E4E4E4E4E4E484848484848484848444444444444444444
+4242424242424242424545454545454545454545454F4F4F4F4F4F4F4F4F5E5E5E5E5E5E5E5E5E
+6E6E6E6E6E6E6E6E6E7878787878787878787E7E7E7E7E7E7E7E7E7E7E7E838383838383838383
+818181818181818181818181818181818181828282828282828282848484848484848484848484
+8A8A8A8A8A8A8A8A8A909090909090909090949494949494949494989898989898989898989898
+9595959595959595958F8F8F8F8F8F8F8F8F8D8D8D8D8D8D8D8D8D8F8F8F8F8F8F8F8F8F7C7C7C
+7C7C7C7C7C7C7C7C7C4E4E4E4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C626262626262626262727272
+727272727272797979797979797979797979808080808080808080ADADADADADADADADADE4E4E4
+E4E4E4E4E4E4EFEFEFEFEFEFEFEFEFEFEFEFF7F7F7F7F7F7F7F7F7FAFAFAFAFAFAFAFAFAFBFBFB
+FBFBFBFBFBFBFAFAFAFAFAFAFAFAFAF9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9FAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAF9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FAFAFAFAFAFAFAFAFAFBFBFBFBFBFBFBFBFBFBFBFBF4F4F4
+F4F4F4F4F4F4B2B2B2B2B2B2B2B2B2CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCFCFCFCFCFCFCFCFCFC7C7C7C7C7C7
+C7C7C7BDBDBDBDBDBDBDBDBDC9C9C9C9C9C9C9C9C9C9C9C9D6D6D5D6D6D5D6D6D5C9C9C9C9C9C9
+C9C9C9B8B8B8B8B8B8B8B8B8B7B7B7B7B7B7B7B7B7B8B8B8B8B8B8B8B8B8B8B8B8C5C5C5C5C5C5
+C5C5C5CBCBCBCBCBCBCBCBCBC8C8C8C8C8C8C8C8C8C6C6C6C6C6C6C6C6C6C6C6C6C5C5C5C5C5C5
+C5C5C5BFBFBFBFBFBFBFBFBFB4B4B4B4B4B4B4B4B4B0B1B0B0B1B0B0B1B0B0B0B0B0B0B0B0B0B0
+B0B0B0A6A6A6A6A6A6A6A6A6ADADADADADADADADADB5B5B5B5B5B5B5B5B5ACACACACACACACACAC
+A5A5A5A5A5A5A5A5A5A5A5A5A1A1A1A1A1A1A1A1A1A4A4A4A4A4A4A4A4A4979797979797979797
+979797979797979797979797A5A5A5A5A5A5A5A5A5A7A7A7A7A7A7A7A7A7A8A8A8A8A8A8A8A8A8
+A8A8A8A8A8A8A8A8A8ABABABABABABABABABABABABADADADADADADADADADABABABABABABABABAB
+B2B2B2B2B2B2B2B2B2AFAFAFAFAFAFAFAFAFB2B2B2B2B2B2B2B2B2B2B2B2B1B1B1B1B1B1B1B1B1
+A4A4A4A4A4A4A4A4A4A5A5A5A5A5A5A5A5A59191919191919191919191916C6C6C6C6C6C6C6C6C
+4D4D4D4D4D4D4D4D4D3C3C3C3C3C3C3C3C3C4141414141414141414C4C4C4C4C4C4C4C4C4C4C4C
+5050505050505050505151515151515151515151515151515151515050505050505050504E4E4E
+4E4E4E4E4E4E4E4E4E484848484848484848444444444444444444424242424242424242454545
+4545454545454545454F4F4F4F4F4F4F4F4F5E5E5E5E5E5E5E5E5E6E6E6E6E6E6E6E6E6E787878
+7878787878787E7E7E7E7E7E7E7E7E7E7E7E838383838383838383818181818181818181818181
+8181818181818282828282828282828484848484848484848484848A8A8A8A8A8A8A8A8A909090
+9090909090909494949494949494949898989898989898989898989595959595959595958F8F8F
+8F8F8F8F8F8F8D8D8D8D8D8D8D8D8D8F8F8F8F8F8F8F8F8F7C7C7C7C7C7C7C7C7C7C7C7C4E4E4E
+4E4E4E4E4E4E4C4C4C4C4C4C4C4C4C626262626262626262727272727272727272797979797979
+797979797979808080808080808080ADADADADADADADADADE4E4E4E4E4E4E4E4E4EFEFEFEFEFEF
+EFEFEFEFEFEFF7F7F7F7F7F7F7F7F7FAFAFAFAFAFAFAFAFAFBFBFBFBFBFBFBFBFBFAFAFAFAFAFA
+FAFAFAF9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FAFAFAFAFAFA
+FAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAF9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9FAFAFAFAFAFAFAFAFAFBFBFBFBFBFBFBFBFBFBFBFBF4F4F4F4F4F4F4F4F4B2B2B2B2B2B2
+B2B2B2CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD
+CDCDCDCDCDCDCDCDCDCDCDCDCFCFCFCFCFCFCFCFCFC7C7C7C7C7C7C7C7C7BDBDBDBDBDBDBDBDBD
+C9C9C9C9C9C9C9C9C9C9C9C9D6D6D5D6D6D5D6D6D5C9C9C9C9C9C9C9C9C9B8B8B8B8B8B8B8B8B8
+B7B7B7B7B7B7B7B7B7B8B8B8B8B8B8B8B8B8B8B8B8C5C5C5C5C5C5C5C5C5CBCBCBCBCBCBCBCBCB
+C8C8C8C8C8C8C8C8C8C6C6C6C6C6C6C6C6C6C6C6C6C5C5C5C5C5C5C5C5C5BFBFBFBFBFBFBFBFBF
+B4B4B4B4B4B4B4B4B4B0B1B0B0B1B0B0B1B0B0B0B0B0B0B0B0B0B0B0B0B0A6A6A6A6A6A6A6A6A6
+ADADADADADADADADADB5B5B5B5B5B5B5B5B5ACACACACACACACACACA5A5A5A5A5A5A5A5A5A5A5A5
+A1A1A1A1A1A1A1A1A1A4A4A4A4A4A4A4A4A4979797979797979797979797979797979797979797
+A5A5A5A5A5A5A5A5A5A7A7A7A7A7A7A7A7A7A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8ABABAB
+ABABABABABABABABABADADADADADADADADADABABABABABABABABABB2B2B2B2B2B2B2B2B2AFAFAF
+AFAFAFAFAFAFB2B2B2B2B2B2B2B2B2B2B2B2B1B1B1B1B1B1B1B1B1A4A4A4A4A4A4A4A4A4A5A5A5
+A5A5A5A5A5A59191919191919191919191916C6C6C6C6C6C6C6C6C4D4D4D4D4D4D4D4D4D3C3C3C
+3C3C3C3C3C3C4141414141414141414C4C4C4C4C4C4C4C4C4C4C4C505050505050505050515151
+5151515151515151515151515151515050505050505050504E4E4E4E4E4E4E4E4E4E4E4E484848
+4848484848484444444444444444444242424242424242424545454545454545454545454F4F4F
+4F4F4F4F4F4F5E5E5E5E5E5E5E5E5E6E6E6E6E6E6E6E6E6E7878787878787878787E7E7E7E7E7E
+7E7E7E7E7E7E838383838383838383818181818181818181818181818181818181828282828282
+8282828484848484848484848484848A8A8A8A8A8A8A8A8A909090909090909090949494949494
+9494949898989898989898989898989595959595959595958F8F8F8F8F8F8F8F8F8D8D8D8D8D8D
+8D8D8D8F8F8F8F8F8F8F8F8F7C7C7C7C7C7C7C7C7C7C7C7C4E4E4E4E4E4E4E4E4E4C4C4C4C4C4C
+4C4C4C626262626262626262727272727272727272797979797979797979797979808080808080
+808080ADADADADADADADADADE4E4E4E4E4E4E4E4E4EFEFEFEFEFEFEFEFEFEFEFEFF7F7F7F7F7F7
+F7F7F7FAFAFAFAFAFAFAFAFAFBFBFBFBFBFBFBFBFBFAFAFAFAFAFAFAFAFAF9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFA
+FAFAFAFAFAFAFAFAFAFAFAFAF9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FAFAFAFAFAFAFAFAFA
+FBFBFBFBFBFBFBFBFBFBFBFBF4F4F4F4F4F4F4F4F4B2B2B2B2B2B2B2B2B2CCCCCCCCCCCCCCCCCC
+CACACACACACACACACACBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBD0D0D0D0D0D0D0D0D0
+CFCFCFCFCFCFCFCFCFAEAEAEAEAEAEAEAEAE9D9D9D9D9D9D9D9D9DBABABABABABABABABABABABA
+CDCDCDCDCDCDCDCDCDC7C7C7C7C7C7C7C7C7BCBCBCBCBCBCBCBCBCA0A0A0A0A0A0A0A0A07C7C7C
+7C7C7C7C7C7C7C7C7C9E9E9E9E9E9E9E9E9ECDCDCDCDCDCDCDCDCDD5D5D5D5D5D5D5D5D5D2D2D2
+D2D2D2D2D2D2D2D2D2C6C6C6C6C6C6C6C6C6C0C0C0C0C0C0C0C0C0BFBFBFBFBFBFBFBFBFBABABA
+BABABABABABAA9A9A9A9A9A9A9A9A9A9A9A9A2A2A2A2A2A2A2A2A2ACACACACACACACACACA8A8A8
+A8A8A8A8A8A8A3A3A3A3A3A3A3A3A3AFAFAFAFAFAFAFAFAFAFAFAFB3B3B3B3B3B3B3B3B3ADADAD
+ADADADADADAD9797979797979797978888888888888888888888888F8F8F8F8F8F8F8F8FA0A0A0
+A0A0A0A0A0A09E9E9E9E9E9E9E9E9EA4A4A4A4A4A4A4A4A4A5A5A5A5A5A5A5A5A5A5A5A5A8A8A8
+A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A9A9A9A9A9A9A9A9A9AFAFAFAFAFAFAFAFAFAAAAAAAAAAAA
+AAAAAAAAAAAAB0B0B0B0B0B0B0B0B0ABABABABABABABABABA5A5A5A5A5A5A5A5A5A8A8A8A8A8A8
+A8A8A8A8A8A88E8E8E8E8E8E8E8E8E6D6D6D6D6D6D6D6D6D5151515151515151513B3B3B3B3B3B
+3B3B3B4040404040404040404040404C4C4C4C4C4C4C4C4C515151515151515151525252525252
+5252525252525252525252525252525252525252525252525050505050505050504E4E4E4E4E4E
+4E4E4E4D4D4D4D4D4D4D4D4D5555555555555555555555555F605F5F605F5F605F6E6E6E6E6E6E
+6E6E6E7A7A7A7A7A7A7A7A7A7D7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F
+7F7F7F7C7C7C7C7C7C7C7C7C7E7E7E7E7E7E7E7E7E808080808080808080828282828282828282
+8282828C8C8C8C8C8C8C8C8C949494949494949494989898989898989898949494949494949494
+9494948F8F8F8F8F8F8F8F8F8E8E8E8E8E8E8E8E8E8F8F8F8F8F8F8F8F8F909090909090909090
+7C7C7C7C7C7C7C7C7C7C7C7C4C4C4C4C4C4C4C4C4C484848484848484848636363636363636363
+757575757575757575797979797979797979797979888888888888888888B3B3B3B3B3B3B3B3B3
+ECECECECECECECECECF2F2F2F2F2F2F2F2F2F2F2F2F5F5F5F5F5F5F5F5F5F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9FAFAFAFAFAFAFAFAFAF9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FAFAFAFAFAFAFAFAFAF9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F4F4F4F4F4F4F4F4F4BFBFBFBFBFBFBFBFBFCCCCCCCCCCCCCCCCCCCACACACACACACACACACBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCC
+CCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBD0D0D0D0D0D0D0D0D0CFCFCFCFCFCFCFCFCFAEAEAE
+AEAEAEAEAEAE9D9D9D9D9D9D9D9D9DBABABABABABABABABABABABACDCDCDCDCDCDCDCDCDC7C7C7
+C7C7C7C7C7C7BCBCBCBCBCBCBCBCBCA0A0A0A0A0A0A0A0A07C7C7C7C7C7C7C7C7C7C7C7C9E9E9E
+9E9E9E9E9E9ECDCDCDCDCDCDCDCDCDD5D5D5D5D5D5D5D5D5D2D2D2D2D2D2D2D2D2D2D2D2C6C6C6
+C6C6C6C6C6C6C0C0C0C0C0C0C0C0C0BFBFBFBFBFBFBFBFBFBABABABABABABABABAA9A9A9A9A9A9
+A9A9A9A9A9A9A2A2A2A2A2A2A2A2A2ACACACACACACACACACA8A8A8A8A8A8A8A8A8A3A3A3A3A3A3
+A3A3A3AFAFAFAFAFAFAFAFAFAFAFAFB3B3B3B3B3B3B3B3B3ADADADADADADADADAD979797979797
+9797978888888888888888888888888F8F8F8F8F8F8F8F8FA0A0A0A0A0A0A0A0A09E9E9E9E9E9E
+9E9E9EA4A4A4A4A4A4A4A4A4A5A5A5A5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8
+A8A8A8A9A9A9A9A9A9A9A9A9AFAFAFAFAFAFAFAFAFAAAAAAAAAAAAAAAAAAAAAAAAB0B0B0B0B0B0
+B0B0B0ABABABABABABABABABA5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8A8A8A88E8E8E8E8E8E
+8E8E8E6D6D6D6D6D6D6D6D6D5151515151515151513B3B3B3B3B3B3B3B3B404040404040404040
+4040404C4C4C4C4C4C4C4C4C515151515151515151525252525252525252525252525252525252
+5252525252525252525252525050505050505050504E4E4E4E4E4E4E4E4E4D4D4D4D4D4D4D4D4D
+5555555555555555555555555F605F5F605F5F605F6E6E6E6E6E6E6E6E6E7A7A7A7A7A7A7A7A7A
+7D7D7D7D7D7D7D7D7D7E7E7E7E7E7E7E7E7E7E7E7E7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C
+7E7E7E7E7E7E7E7E7E8080808080808080808282828282828282828282828C8C8C8C8C8C8C8C8C
+9494949494949494949898989898989898989494949494949494949494948F8F8F8F8F8F8F8F8F
+8E8E8E8E8E8E8E8E8E8F8F8F8F8F8F8F8F8F9090909090909090907C7C7C7C7C7C7C7C7C7C7C7C
+4C4C4C4C4C4C4C4C4C484848484848484848636363636363636363757575757575757575797979
+797979797979797979888888888888888888B3B3B3B3B3B3B3B3B3ECECECECECECECECECF2F2F2
+F2F2F2F2F2F2F2F2F2F5F5F5F5F5F5F5F5F5F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9FAFAFA
+FAFAFAFAFAFAF9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9FAFAFAFAFAFAFAFAFAF9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F4F4F4F4F4F4F4F4F4BFBFBF
+BFBFBFBFBFBFCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCB
+CBCBCBCBCBCBCACACACACACACACACAC6C6C6C6C6C6C6C6C6C5C5C5C5C5C5C5C5C5C2C2C2C2C2C2
+C2C2C2C2C2C2D0D0D0D0D0D0D0D0D0CBCBCBCBCBCBCBCBCBA1A1A1A1A1A1A1A1A1A6A6A6A6A6A6
+A6A6A6C3C3C3C3C3C3C3C3C3C3C3C3C8C8C8C8C8C8C8C8C8C7C7C7C7C7C7C7C7C7BBBBBBBBBBBB
+BBBBBB9494949494949494945D5D5D5D5D5D5D5D5D5D5D5D838383838383838383CCCCCCCCCCCC
+CCCCCCDFDFDFDFDFDFDFDFDFD6D6D5D6D6D5D6D6D5D6D6D5C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8
+C8C8C8CACACACACACACACACAB9B9B9B9B9B9B9B9B9A4A4A4A4A4A4A4A4A4A4A4A4A9A9A9A9A9A9
+A9A9A9B0B1B0B0B1B0B0B1B0A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8B5B5B5B5B5B5B5B5B5
+B5B5B5B4B4B4B4B4B4B4B4B4A6A6A6A6A6A6A6A6A69A9A9A9A9A9A9A9A9A969696969696969696
+9696968D8D8D8D8D8D8D8D8D9191919191919191919999999999999999999B9B9B9B9B9B9B9B9B
+A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8
+A7A7A7A7A7A7A7A7A7AAAAAAAAAAAAAAAAAAAAAAAAA9A9A9A9A9A9A9A9A9AEAEAEAEAEAEAEAEAE
+A8A8A8A8A8A8A8A8A8ADADADADADADADADADADADADA9A9A9A9A9A9A9A9A9888888888888888888
+6969696969696969694444444444444444443535353535353535353535353E3E3E3E3E3E3E3E3E
+4949494949494949494F4F4F4F4F4F4F4F4F545454545454545454545454545454545454545454
+5555555555555555555757575757575757575B5B5B5B5B5B5B5B5B666666666666666666666666
+707070707070707070797979797979797979808080808080808080808080808080808080808080
+8080808080808080807E7E7E7E7E7E7E7E7E7D7D7D7D7D7D7D7D7D808080808080808080818181
+8181818181818383838383838383838383839090909090909090909999999999999999999C9C9C
+9C9C9C9C9C9C9393939393939393939393938E8E8E8E8E8E8E8E8E8F8F8F8F8F8F8F8F8F919191
+9191919191919191919191919191917E7E7E7E7E7E7E7E7E7E7E7E4D4D4D4D4D4D4D4D4D474747
+4747474747476565656565656565657979797979797979797E7E7E7E7E7E7E7E7E7E7E7E969696
+969696969696BABABABABABABABABAEBEBEBEBEBEBEBEBEBF5F5F5F5F5F5F5F5F5F5F5F5F1F1F1
+F1F1F1F1F1F1F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F8F8F8F8F8F8F8F8F8F8F8F8F5F5F5F5F5F5F5F5F5CECECECECECECECECECBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCACACACACACA
+CACACAC6C6C6C6C6C6C6C6C6C5C5C5C5C5C5C5C5C5C2C2C2C2C2C2C2C2C2C2C2C2D0D0D0D0D0D0
+D0D0D0CBCBCBCBCBCBCBCBCBA1A1A1A1A1A1A1A1A1A6A6A6A6A6A6A6A6A6C3C3C3C3C3C3C3C3C3
+C3C3C3C8C8C8C8C8C8C8C8C8C7C7C7C7C7C7C7C7C7BBBBBBBBBBBBBBBBBB949494949494949494
+5D5D5D5D5D5D5D5D5D5D5D5D838383838383838383CCCCCCCCCCCCCCCCCCDFDFDFDFDFDFDFDFDF
+D6D6D5D6D6D5D6D6D5D6D6D5C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8CACACACACACACACACA
+B9B9B9B9B9B9B9B9B9A4A4A4A4A4A4A4A4A4A4A4A4A9A9A9A9A9A9A9A9A9B0B1B0B0B1B0B0B1B0
+A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8B5B5B5B5B5B5B5B5B5B5B5B5B4B4B4B4B4B4B4B4B4
+A6A6A6A6A6A6A6A6A69A9A9A9A9A9A9A9A9A9696969696969696969696968D8D8D8D8D8D8D8D8D
+9191919191919191919999999999999999999B9B9B9B9B9B9B9B9BA0A0A0A0A0A0A0A0A0A0A0A0
+A0A0A0A0A0A0A0A0A0A5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8A7A7A7A7A7A7A7A7A7AAAAAA
+AAAAAAAAAAAAAAAAAAA9A9A9A9A9A9A9A9A9AEAEAEAEAEAEAEAEAEA8A8A8A8A8A8A8A8A8ADADAD
+ADADADADADADADADADA9A9A9A9A9A9A9A9A9888888888888888888696969696969696969444444
+4444444444443535353535353535353535353E3E3E3E3E3E3E3E3E4949494949494949494F4F4F
+4F4F4F4F4F4F545454545454545454545454545454545454545454555555555555555555575757
+5757575757575B5B5B5B5B5B5B5B5B666666666666666666666666707070707070707070797979
+7979797979798080808080808080808080808080808080808080808080808080808080807E7E7E
+7E7E7E7E7E7E7D7D7D7D7D7D7D7D7D808080808080808080818181818181818181838383838383
+8383838383839090909090909090909999999999999999999C9C9C9C9C9C9C9C9C939393939393
+9393939393938E8E8E8E8E8E8E8E8E8F8F8F8F8F8F8F8F8F919191919191919191919191919191
+9191917E7E7E7E7E7E7E7E7E7E7E7E4D4D4D4D4D4D4D4D4D474747474747474747656565656565
+6565657979797979797979797E7E7E7E7E7E7E7E7E7E7E7E969696969696969696BABABABABABA
+BABABAEBEBEBEBEBEBEBEBEBF5F5F5F5F5F5F5F5F5F5F5F5F1F1F1F1F1F1F1F1F1F7F7F7F7F7F7
+F7F7F7F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F8F8F8F8F8F8
+F8F8F8F8F8F8F8F8F8F8F8F8F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8
+F8F8F8F5F5F5F5F5F5F5F5F5CECECECECECECECECECBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CCCCCCCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCC
+CCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCACACACACACACACACAC6C6C6C6C6C6C6C6C6
+C5C5C5C5C5C5C5C5C5C2C2C2C2C2C2C2C2C2C2C2C2D0D0D0D0D0D0D0D0D0CBCBCBCBCBCBCBCBCB
+A1A1A1A1A1A1A1A1A1A6A6A6A6A6A6A6A6A6C3C3C3C3C3C3C3C3C3C3C3C3C8C8C8C8C8C8C8C8C8
+C7C7C7C7C7C7C7C7C7BBBBBBBBBBBBBBBBBB9494949494949494945D5D5D5D5D5D5D5D5D5D5D5D
+838383838383838383CCCCCCCCCCCCCCCCCCDFDFDFDFDFDFDFDFDFD6D6D5D6D6D5D6D6D5D6D6D5
+C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8C8CACACACACACACACACAB9B9B9B9B9B9B9B9B9A4A4A4
+A4A4A4A4A4A4A4A4A4A9A9A9A9A9A9A9A9A9B0B1B0B0B1B0B0B1B0A8A8A8A8A8A8A8A8A8A8A8A8
+A8A8A8A8A8A8B5B5B5B5B5B5B5B5B5B5B5B5B4B4B4B4B4B4B4B4B4A6A6A6A6A6A6A6A6A69A9A9A
+9A9A9A9A9A9A9696969696969696969696968D8D8D8D8D8D8D8D8D919191919191919191999999
+9999999999999B9B9B9B9B9B9B9B9BA0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A5A5A5
+A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8A7A7A7A7A7A7A7A7A7AAAAAAAAAAAAAAAAAAAAAAAAA9A9A9
+A9A9A9A9A9A9AEAEAEAEAEAEAEAEAEA8A8A8A8A8A8A8A8A8ADADADADADADADADADADADADA9A9A9
+A9A9A9A9A9A9888888888888888888696969696969696969444444444444444444353535353535
+3535353535353E3E3E3E3E3E3E3E3E4949494949494949494F4F4F4F4F4F4F4F4F545454545454
+5454545454545454545454545454545555555555555555555757575757575757575B5B5B5B5B5B
+5B5B5B666666666666666666666666707070707070707070797979797979797979808080808080
+8080808080808080808080808080808080808080808080807E7E7E7E7E7E7E7E7E7D7D7D7D7D7D
+7D7D7D808080808080808080818181818181818181838383838383838383838383909090909090
+9090909999999999999999999C9C9C9C9C9C9C9C9C9393939393939393939393938E8E8E8E8E8E
+8E8E8E8F8F8F8F8F8F8F8F8F9191919191919191919191919191919191917E7E7E7E7E7E7E7E7E
+7E7E7E4D4D4D4D4D4D4D4D4D474747474747474747656565656565656565797979797979797979
+7E7E7E7E7E7E7E7E7E7E7E7E969696969696969696BABABABABABABABABAEBEBEBEBEBEBEBEBEB
+F5F5F5F5F5F5F5F5F5F5F5F5F1F1F1F1F1F1F1F1F1F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8F8F8F8F5F5F5F5F5F5F5F5F5
+CECECECECECECECECECBCBCBCBCBCBCBCBCBCACACACACACACACACACBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBC5C5C5C5C5C5C5C5C5B6B6B6B6B6B6B6B6B6AEAEAEAEAEAEAEAEAEBCBCBC
+BCBCBCBCBCBCBCBCBCD6D6D6D6D6D6D6D6D6D8D8D8D8D8D8D8D8D8C3C3C3C3C3C3C3C3C3B7B7B7
+B7B7B7B7B7B7B0B0B0B0B0B0B0B0B0B0B0B0C0C0C0C0C0C0C0C0C0CDCDCDCDCDCDCDCDCDC9C9C9
+C9C9C9C9C9C9979797979797979797676767676767676767676767919191919191919191CACACA
+CACACACACACADFDFDFDFDFDFDFDFDFDCDCDCDCDCDCDCDCDCDCDCDCD3D3D3D3D3D3D3D3D3C5C5C5
+C5C5C5C5C5C5BEBEBEBEBEBEBEBEBEAFAFAFAFAFAFAFAFAFA3A3A3A3A3A3A3A3A3A3A3A3ABABAB
+ABABABABABABACACACACACACACACACA7A7A7A7A7A7A7A7A7B0B0B0B0B0B0B0B0B0B4B4B4B4B4B4
+B4B4B4B4B4B4ADADADADADADADADADA8A8A8A8A8A8A8A8A8A7A7A7A7A7A7A7A7A7A1A1A1A1A1A1
+A1A1A1A1A1A1999999999999999999888888888888888888878787878787878787949494949494
+9494949696969696969696969696969999999999999999999B9B9B9B9B9B9B9B9BA3A3A3A3A3A3
+A3A3A3A5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8A8A8A8ACACACACACACACACACABABABABABAB
+ABABABAFAFAFAFAFAFAFAFAFABABABABABABABABABABABABB2B2B2B2B2B2B2B2B29A9A9A9A9A9A
+9A9A9A686868686868686868424242424242424242313131313131313131313131313131313131
+3131313B3B3B3B3B3B3B3B3B474747474747474747525252525252525252565656565656565656
+5656565858585858585858585D5D5D5D5D5D5D5D5D6464646464646464646E6E6E6E6E6E6E6E6E
+6E6E6E7777777777777777777E7E7E7E7E7E7E7E7E8282828282828282827F7F7F7F7F7F7F7F7F
+7E7E7E7E7E7E7E7E7E7E7E7E7B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A818181818181818181
+8484848484848484848787878787878787878787879292929292929292929C9C9C9C9C9C9C9C9C
+9E9E9E9E9E9E9E9E9E999999999999999999999999939393939393939393919191919191919191
+9393939393939393939393939393939393938080808080808080808080804F4F4F4F4F4F4F4F4F
+4646464646464646466666666666666666667A7A7A7A7A7A7A7A7A868686868686868686868686
+A3A3A3A3A3A3A3A3A3C6C6C6C6C6C6C6C6C6E7E7E7E7E7E7E7E7E7F3F3F3F3F3F3F3F3F3F3F3F3
+E4E4E4E4E4E4E4E4E4EDEDEDEDEDEDEDEDEDF7F7F7F7F7F7F7F7F7F8F8F8F8F8F8F8F8F8F8F8F8
+F8F8F8F8F8F8F8F8F8F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F9F9F9
+F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8F7F7F7F7F7F7F7F7F7F8F8F8
+F8F8F8F8F8F8F7F7F7F7F7F7F7F7F7F7F7F7F4F4F4F4F4F4F4F4F4C8C8C8C8C8C8C8C8C8CBCBCB
+CBCBCBCBCBCBCACACACACACACACACACBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBC5C5C5
+C5C5C5C5C5C5B6B6B6B6B6B6B6B6B6AEAEAEAEAEAEAEAEAEBCBCBCBCBCBCBCBCBCBCBCBCD6D6D6
+D6D6D6D6D6D6D8D8D8D8D8D8D8D8D8C3C3C3C3C3C3C3C3C3B7B7B7B7B7B7B7B7B7B0B0B0B0B0B0
+B0B0B0B0B0B0C0C0C0C0C0C0C0C0C0CDCDCDCDCDCDCDCDCDC9C9C9C9C9C9C9C9C9979797979797
+979797676767676767676767676767919191919191919191CACACACACACACACACADFDFDFDFDFDF
+DFDFDFDCDCDCDCDCDCDCDCDCDCDCDCD3D3D3D3D3D3D3D3D3C5C5C5C5C5C5C5C5C5BEBEBEBEBEBE
+BEBEBEAFAFAFAFAFAFAFAFAFA3A3A3A3A3A3A3A3A3A3A3A3ABABABABABABABABABACACACACACAC
+ACACACA7A7A7A7A7A7A7A7A7B0B0B0B0B0B0B0B0B0B4B4B4B4B4B4B4B4B4B4B4B4ADADADADADAD
+ADADADA8A8A8A8A8A8A8A8A8A7A7A7A7A7A7A7A7A7A1A1A1A1A1A1A1A1A1A1A1A1999999999999
+999999888888888888888888878787878787878787949494949494949494969696969696969696
+9696969999999999999999999B9B9B9B9B9B9B9B9BA3A3A3A3A3A3A3A3A3A5A5A5A5A5A5A5A5A5
+A8A8A8A8A8A8A8A8A8A8A8A8ACACACACACACACACACABABABABABABABABABAFAFAFAFAFAFAFAFAF
+ABABABABABABABABABABABABB2B2B2B2B2B2B2B2B29A9A9A9A9A9A9A9A9A686868686868686868
+4242424242424242423131313131313131313131313131313131313131313B3B3B3B3B3B3B3B3B
+474747474747474747525252525252525252565656565656565656565656585858585858585858
+5D5D5D5D5D5D5D5D5D6464646464646464646E6E6E6E6E6E6E6E6E6E6E6E777777777777777777
+7E7E7E7E7E7E7E7E7E8282828282828282827F7F7F7F7F7F7F7F7F7E7E7E7E7E7E7E7E7E7E7E7E
+7B7B7B7B7B7B7B7B7B7A7A7A7A7A7A7A7A7A818181818181818181848484848484848484878787
+8787878787878787879292929292929292929C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E999999
+999999999999999999939393939393939393919191919191919191939393939393939393939393
+9393939393938080808080808080808080804F4F4F4F4F4F4F4F4F464646464646464646666666
+6666666666667A7A7A7A7A7A7A7A7A868686868686868686868686A3A3A3A3A3A3A3A3A3C6C6C6
+C6C6C6C6C6C6E7E7E7E7E7E7E7E7E7F3F3F3F3F3F3F3F3F3F3F3F3E4E4E4E4E4E4E4E4E4EDEDED
+EDEDEDEDEDEDF7F7F7F7F7F7F7F7F7F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F7F7F7
+F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9
+F9F9F9F9F9F9F8F8F8F8F8F8F8F8F8F7F7F7F7F7F7F7F7F7F8F8F8F8F8F8F8F8F8F7F7F7F7F7F7
+F7F7F7F7F7F7F4F4F4F4F4F4F4F4F4C8C8C8C8C8C8C8C8C8CBCBCBCBCBCBCBCBCBCACACACACACA
+CACACACBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCCCCCCCCCCCC
+CCCCCCCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBC5C5C5C5C5C5C5C5C5B6B6B6B6B6B6
+B6B6B6AEAEAEAEAEAEAEAEAEBCBCBCBCBCBCBCBCBCBCBCBCD6D6D6D6D6D6D6D6D6D8D8D8D8D8D8
+D8D8D8C3C3C3C3C3C3C3C3C3B7B7B7B7B7B7B7B7B7B0B0B0B0B0B0B0B0B0B0B0B0C0C0C0C0C0C0
+C0C0C0CDCDCDCDCDCDCDCDCDC9C9C9C9C9C9C9C9C9979797979797979797676767676767676767
+676767919191919191919191CACACACACACACACACADFDFDFDFDFDFDFDFDFDCDCDCDCDCDCDCDCDC
+DCDCDCD3D3D3D3D3D3D3D3D3C5C5C5C5C5C5C5C5C5BEBEBEBEBEBEBEBEBEAFAFAFAFAFAFAFAFAF
+A3A3A3A3A3A3A3A3A3A3A3A3ABABABABABABABABABACACACACACACACACACA7A7A7A7A7A7A7A7A7
+B0B0B0B0B0B0B0B0B0B4B4B4B4B4B4B4B4B4B4B4B4ADADADADADADADADADA8A8A8A8A8A8A8A8A8
+A7A7A7A7A7A7A7A7A7A1A1A1A1A1A1A1A1A1A1A1A1999999999999999999888888888888888888
+878787878787878787949494949494949494969696969696969696969696999999999999999999
+9B9B9B9B9B9B9B9B9BA3A3A3A3A3A3A3A3A3A5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8A8A8A8
+ACACACACACACACACACABABABABABABABABABAFAFAFAFAFAFAFAFAFABABABABABABABABABABABAB
+B2B2B2B2B2B2B2B2B29A9A9A9A9A9A9A9A9A686868686868686868424242424242424242313131
+3131313131313131313131313131313131313B3B3B3B3B3B3B3B3B474747474747474747525252
+5252525252525656565656565656565656565858585858585858585D5D5D5D5D5D5D5D5D646464
+6464646464646E6E6E6E6E6E6E6E6E6E6E6E7777777777777777777E7E7E7E7E7E7E7E7E828282
+8282828282827F7F7F7F7F7F7F7F7F7E7E7E7E7E7E7E7E7E7E7E7E7B7B7B7B7B7B7B7B7B7A7A7A
+7A7A7A7A7A7A818181818181818181848484848484848484878787878787878787878787929292
+9292929292929C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E999999999999999999999999939393
+939393939393919191919191919191939393939393939393939393939393939393808080808080
+8080808080804F4F4F4F4F4F4F4F4F4646464646464646466666666666666666667A7A7A7A7A7A
+7A7A7A868686868686868686868686A3A3A3A3A3A3A3A3A3C6C6C6C6C6C6C6C6C6E7E7E7E7E7E7
+E7E7E7F3F3F3F3F3F3F3F3F3F3F3F3E4E4E4E4E4E4E4E4E4EDEDEDEDEDEDEDEDEDF7F7F7F7F7F7
+F7F7F7F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7
+F7F7F7F7F7F7F7F7F7F7F7F7F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F9F8F8F8F8F8F8
+F8F8F8F7F7F7F7F7F7F7F7F7F8F8F8F8F8F8F8F8F8F7F7F7F7F7F7F7F7F7F7F7F7F4F4F4F4F4F4
+F4F4F4C8C8C8C8C8C8C8C8C8CACACACACACACACACACACACACACACACACACACACACACACACACACACA
+CACACACBCBCBCBCBCBCBCBCBCDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCB
+CECECECECECECECECECECECEC2C2C2C2C2C2C2C2C2A6A6A6A6A6A6A6A6A69C9C9C9C9C9C9C9C9C
+BBBBBBBBBBBBBBBBBBBBBBBBDBDBDBDBDBDBDBDBDBE4E4E4E4E4E4E4E4E4DADADADADADADADADA
+A9A9A9A9A9A9A9A9A9848484848484848484848484B0B1B0B0B1B0B0B1B0DEDEDEDEDEDEDEDEDE
+E1E1E1E1E1E1E1E1E1B3B3B3B3B3B3B3B3B3828282828282828282828282A8A8A8A8A8A8A8A8A8
+C7C7C7C7C7C7C7C7C7CDCDCDCDCDCDCDCDCDD1D1D1D1D1D1D1D1D1D1D1D1CCCCCCCCCCCCCCCCCC
+B7B7B7B7B7B7B7B7B7B1B1B1B1B1B1B1B1B1B4B4B4B4B4B4B4B4B4B0B1B0B0B1B0B0B1B0B0B1B0
+B0B0B0B0B0B0B0B0B0A7A7A7A7A7A7A7A7A79E9E9E9E9E9E9E9E9EA7A7A7A7A7A7A7A7A7A8A8A8
+A8A8A8A8A8A8A8A8A8A5A5A5A5A5A5A5A5A5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0A0A0
+A0A0A0A0A0A0A0A0A09292929292929292928383838383838383837C7C7C7C7C7C7C7C7C858585
+858585858585919191919191919191919191909090909090909090929292929292929292989898
+989898989898A2A2A2A2A2A2A2A2A2A7A7A7A7A7A7A7A7A7A7A7A7ABABABABABABABABABADADAD
+ADADADADADADAFAFAFAFAFAFAFAFAFB0B1B0B0B1B0B0B1B0B0B1B0ADADADADADADADADAD9B9B9B
+9B9B9B9B9B9B5A5A5A5A5A5A5A5A5A3C3C3C3C3C3C3C3C3C373737373737373737373737363636
+3636363636363636363636363636363C3C3C3C3C3C3C3C3C4C4C4C4C4C4C4C4C4C585858585858
+5858585858586161616161616161616565656565656565656868686868686868686F6F6F6F6F6F
+6F6F6F6F6F6F7878787878787878787E7E7E7E7E7E7E7E7E8080808080808080807B7B7B7B7B7B
+7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7979797979797979797A7A7A7A7A7A7A7A7A838383838383
+8383838888888888888888889090909090909090909090909898989898989898989C9C9C9C9C9C
+9C9C9C9C9C9C9C9C9C9C9C9C9B9B9B9B9B9B9B9B9B9B9B9B999999999999999999939393939393
+9393939696969696969696969595959595959595958080808080808080808080804E4E4E4E4E4E
+4E4E4E424242424242424242666666666666666666828282828282828282949494949494949494
+949494AAAAAAAAAAAAAAAAAACACACACACACACACACADADADADADADADADADAEDEDEDEDEDEDEDEDED
+EDEDEDDBDBDBDBDBDBDBDBDBD3D3D3D3D3D3D3D3D3EAEAEAEAEAEAEAEAEAF5F5F5F5F5F5F5F5F5
+F6F6F6F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6
+F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7
+F7F7F7F7F7F7F7F7F7F8F8F8F8F8F8F8F8F8F8F8F8F3F3F3F3F3F3F3F3F3BBBBBBBBBBBBBBBBBB
+CACACACACACACACACACACACACACACACACACACACACACACACACACACACACACACBCBCBCBCBCBCBCBCB
+CDCDCDCDCDCDCDCDCDCCCCCCCCCCCCCCCCCCCBCBCBCBCBCBCBCBCBCECECECECECECECECECECECE
+C2C2C2C2C2C2C2C2C2A6A6A6A6A6A6A6A6A69C9C9C9C9C9C9C9C9CBBBBBBBBBBBBBBBBBBBBBBBB
+DBDBDBDBDBDBDBDBDBE4E4E4E4E4E4E4E4E4DADADADADADADADADAA9A9A9A9A9A9A9A9A9848484
+848484848484848484B0B1B0B0B1B0B0B1B0DEDEDEDEDEDEDEDEDEE1E1E1E1E1E1E1E1E1B3B3B3
+B3B3B3B3B3B3828282828282828282828282A8A8A8A8A8A8A8A8A8C7C7C7C7C7C7C7C7C7CDCDCD
+CDCDCDCDCDCDD1D1D1D1D1D1D1D1D1D1D1D1CCCCCCCCCCCCCCCCCCB7B7B7B7B7B7B7B7B7B1B1B1
+B1B1B1B1B1B1B4B4B4B4B4B4B4B4B4B0B1B0B0B1B0B0B1B0B0B1B0B0B0B0B0B0B0B0B0B0A7A7A7
+A7A7A7A7A7A79E9E9E9E9E9E9E9E9EA7A7A7A7A7A7A7A7A7A8A8A8A8A8A8A8A8A8A8A8A8A5A5A5
+A5A5A5A5A5A5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0A0A0A0A0A0A0A0A0A0A0A0929292
+9292929292928383838383838383837C7C7C7C7C7C7C7C7C858585858585858585919191919191
+919191919191909090909090909090929292929292929292989898989898989898A2A2A2A2A2A2
+A2A2A2A7A7A7A7A7A7A7A7A7A7A7A7ABABABABABABABABABADADADADADADADADADAFAFAFAFAFAF
+AFAFAFB0B1B0B0B1B0B0B1B0B0B1B0ADADADADADADADADAD9B9B9B9B9B9B9B9B9B5A5A5A5A5A5A
+5A5A5A3C3C3C3C3C3C3C3C3C373737373737373737373737363636363636363636363636363636
+3636363C3C3C3C3C3C3C3C3C4C4C4C4C4C4C4C4C4C585858585858585858585858616161616161
+6161616565656565656565656868686868686868686F6F6F6F6F6F6F6F6F6F6F6F787878787878
+7878787E7E7E7E7E7E7E7E7E8080808080808080807B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B
+7B7B7B7979797979797979797A7A7A7A7A7A7A7A7A838383838383838383888888888888888888
+9090909090909090909090909898989898989898989C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
+9B9B9B9B9B9B9B9B9B9B9B9B999999999999999999939393939393939393969696969696969696
+9595959595959595958080808080808080808080804E4E4E4E4E4E4E4E4E424242424242424242
+666666666666666666828282828282828282949494949494949494949494AAAAAAAAAAAAAAAAAA
+CACACACACACACACACADADADADADADADADADAEDEDEDEDEDEDEDEDEDEDEDEDDBDBDBDBDBDBDBDBDB
+D3D3D3D3D3D3D3D3D3EAEAEAEAEAEAEAEAEAF5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6
+F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F8F8F8F8F8F8F8F8F8F8F8F8
+F8F8F8F8F8F8F8F8F8F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8F8F8
+F8F8F8F8F8F8F8F8F8F3F3F3F3F3F3F3F3F3BBBBBBBBBBBBBBBBBBC9C9C9C9C9C9C9C9C9CACACA
+CACACACACACACACACACACACACACACACACACACBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCFCFCF
+CFCFCFCFCFCFD6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6CBCBCBCBCBCBCBCBCBB5B5B5
+B5B5B5B5B5B5AFAFAFAFAFAFAFAFAFC3C3C3C3C3C3C3C3C3C3C3C3D7D7D7D7D7D7D7D7D7E1E1E1
+E1E1E1E1E1E1D3D3D3D3D3D3D3D3D39B9B9B9B9B9B9B9B9B717171717171717171717171A6A6A6
+A6A6A6A6A6A6DEDEDEDEDEDEDEDEDEEAEAEAEAEAEAEAEAEADDDDDDDDDDDDDDDDDDBABABABABABA
+BABABABABABAC5C5C5C5C5C5C5C5C5D6D6D5D6D6D5D6D6D5CBCBCBCBCBCBCBCBCBB7B7B7B7B7B7
+B7B7B7B7B7B7B1B1B1B1B1B1B1B1B1B5B5B5B5B5B5B5B5B5BBBBBBBBBBBBBBBBBBC4C4C4C4C4C4
+C4C4C4C7C7C7C7C7C7C7C7C7C7C7C7BDBDBDBDBDBDBDBDBDAAAAAAAAAAAAAAAAAAA6A6A6A6A6A6
+A6A6A6A1A1A1A1A1A1A1A1A19C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9CA8A8A8A8A8A8
+A8A8A8A7A7A7A7A7A7A7A7A79797979797979797979797978D8D8D8D8D8D8D8D8D888888888888
+8888888888888888888888887C7C7C7C7C7C7C7C7C8080808080808080808080808C8C8C8C8C8C
+8C8C8C919191919191919191929292929292929292999999999999999999A5A5A5A5A5A5A5A5A5
+A5A5A5A8A8A8A8A8A8A8A8A8ADADADADADADADADADAFAFAFAFAFAFAFAFAFB2B2B2B2B2B2B2B2B2
+B2B2B2A8A8A8A8A8A8A8A8A88484848484848484844B4B4B4B4B4B4B4B4B3C3C3C3C3C3C3C3C3C
+4646464646464646464646465757575757575757575252525252525252524B4B4B4B4B4B4B4B4B
+4F4F4F4F4F4F4F4F4F5959595959595959595959596565656565656565656A6A6A6A6A6A6A6A6A
+6A6A6A6A6A6A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C737373737373737373797979797979797979
+7B7B7B7B7B7B7B7B7B787878787878787878787878787878787878787878787878787878787878
+7D7D7D7D7D7D7D7D7D8686868686868686868E8E8E8E8E8E8E8E8E979797979797979797979797
+9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9A9A9A9A9A9A9A9A9A9D9D9D9D9D9D9D9D9D9D9D9D
+9A9A9A9A9A9A9A9A9A9696969696969696969999999999999999999696969696969696967D7D7D
+7D7D7D7D7D7D7D7D7D4B4B4B4B4B4B4B4B4B464646464646464646707070707070707070949494
+949494949494A5A5A5A5A5A5A5A5A5A5A5A5A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A6A6A6
+A6A6A6A6A6A6D0D0D0D0D0D0D0D0D0D0D0D0C6C6C6C6C6C6C6C6C6A8A8A8A8A8A8A8A8A8CBCBCB
+CBCBCBCBCBCBE8E8E8E8E8E8E8E8E8F1F1F1F1F1F1F1F1F1F1F1F1F3F3F3F3F3F3F3F3F3F4F4F4
+F4F4F4F4F4F4F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5
+F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F3F3F3
+F3F3F3F3F3F3C5C5C5C5C5C5C5C5C5C9C9C9C9C9C9C9C9C9CACACACACACACACACACACACACACACA
+CACACACACACACBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCFCFCFCFCFCFCFCFCFD6D6D5D6D6D5
+D6D6D5D6D6D6D6D6D6D6D6D6D6D6D6CBCBCBCBCBCBCBCBCBB5B5B5B5B5B5B5B5B5AFAFAFAFAFAF
+AFAFAFC3C3C3C3C3C3C3C3C3C3C3C3D7D7D7D7D7D7D7D7D7E1E1E1E1E1E1E1E1E1D3D3D3D3D3D3
+D3D3D39B9B9B9B9B9B9B9B9B717171717171717171717171A6A6A6A6A6A6A6A6A6DEDEDEDEDEDE
+DEDEDEEAEAEAEAEAEAEAEAEADDDDDDDDDDDDDDDDDDBABABABABABABABABABABABAC5C5C5C5C5C5
+C5C5C5D6D6D5D6D6D5D6D6D5CBCBCBCBCBCBCBCBCBB7B7B7B7B7B7B7B7B7B7B7B7B1B1B1B1B1B1
+B1B1B1B5B5B5B5B5B5B5B5B5BBBBBBBBBBBBBBBBBBC4C4C4C4C4C4C4C4C4C7C7C7C7C7C7C7C7C7
+C7C7C7BDBDBDBDBDBDBDBDBDAAAAAAAAAAAAAAAAAAA6A6A6A6A6A6A6A6A6A1A1A1A1A1A1A1A1A1
+9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9CA8A8A8A8A8A8A8A8A8A7A7A7A7A7A7A7A7A7
+9797979797979797979797978D8D8D8D8D8D8D8D8D888888888888888888888888888888888888
+7C7C7C7C7C7C7C7C7C8080808080808080808080808C8C8C8C8C8C8C8C8C919191919191919191
+929292929292929292999999999999999999A5A5A5A5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8
+ADADADADADADADADADAFAFAFAFAFAFAFAFAFB2B2B2B2B2B2B2B2B2B2B2B2A8A8A8A8A8A8A8A8A8
+8484848484848484844B4B4B4B4B4B4B4B4B3C3C3C3C3C3C3C3C3C464646464646464646464646
+5757575757575757575252525252525252524B4B4B4B4B4B4B4B4B4F4F4F4F4F4F4F4F4F595959
+5959595959595959596565656565656565656A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6C6C6C
+6C6C6C6C6C6C6C6C6C7373737373737373737979797979797979797B7B7B7B7B7B7B7B7B787878
+7878787878787878787878787878787878787878787878787878787D7D7D7D7D7D7D7D7D868686
+8686868686868E8E8E8E8E8E8E8E8E9797979797979797979797979B9B9B9B9B9B9B9B9B9B9B9B
+9B9B9B9B9B9B9A9A9A9A9A9A9A9A9A9D9D9D9D9D9D9D9D9D9D9D9D9A9A9A9A9A9A9A9A9A969696
+9696969696969999999999999999999696969696969696967D7D7D7D7D7D7D7D7D7D7D7D4B4B4B
+4B4B4B4B4B4B464646464646464646707070707070707070949494949494949494A5A5A5A5A5A5
+A5A5A5A5A5A5A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A6A6A6A6A6A6A6A6A6D0D0D0D0D0D0
+D0D0D0D0D0D0C6C6C6C6C6C6C6C6C6A8A8A8A8A8A8A8A8A8CBCBCBCBCBCBCBCBCBE8E8E8E8E8E8
+E8E8E8F1F1F1F1F1F1F1F1F1F1F1F1F3F3F3F3F3F3F3F3F3F4F4F4F4F4F4F4F4F4F5F5F5F5F5F5
+F5F5F5F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6
+F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F3F3F3F3F3F3F3F3F3C5C5C5C5C5C5
+C5C5C5C9C9C9C9C9C9C9C9C9CACACACACACACACACACACACACACACACACACACACACACBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCFCFCFCFCFCFCFCFCFD6D6D5D6D6D5D6D6D5D6D6D6D6D6D6D6D6D6
+D6D6D6CBCBCBCBCBCBCBCBCBB5B5B5B5B5B5B5B5B5AFAFAFAFAFAFAFAFAFC3C3C3C3C3C3C3C3C3
+C3C3C3D7D7D7D7D7D7D7D7D7E1E1E1E1E1E1E1E1E1D3D3D3D3D3D3D3D3D39B9B9B9B9B9B9B9B9B
+717171717171717171717171A6A6A6A6A6A6A6A6A6DEDEDEDEDEDEDEDEDEEAEAEAEAEAEAEAEAEA
+DDDDDDDDDDDDDDDDDDBABABABABABABABABABABABAC5C5C5C5C5C5C5C5C5D6D6D5D6D6D5D6D6D5
+CBCBCBCBCBCBCBCBCBB7B7B7B7B7B7B7B7B7B7B7B7B1B1B1B1B1B1B1B1B1B5B5B5B5B5B5B5B5B5
+BBBBBBBBBBBBBBBBBBC4C4C4C4C4C4C4C4C4C7C7C7C7C7C7C7C7C7C7C7C7BDBDBDBDBDBDBDBDBD
+AAAAAAAAAAAAAAAAAAA6A6A6A6A6A6A6A6A6A1A1A1A1A1A1A1A1A19C9C9C9C9C9C9C9C9C9C9C9C
+9C9C9C9C9C9C9C9C9CA8A8A8A8A8A8A8A8A8A7A7A7A7A7A7A7A7A7979797979797979797979797
+8D8D8D8D8D8D8D8D8D8888888888888888888888888888888888887C7C7C7C7C7C7C7C7C808080
+8080808080808080808C8C8C8C8C8C8C8C8C919191919191919191929292929292929292999999
+999999999999A5A5A5A5A5A5A5A5A5A5A5A5A8A8A8A8A8A8A8A8A8ADADADADADADADADADAFAFAF
+AFAFAFAFAFAFB2B2B2B2B2B2B2B2B2B2B2B2A8A8A8A8A8A8A8A8A88484848484848484844B4B4B
+4B4B4B4B4B4B3C3C3C3C3C3C3C3C3C464646464646464646464646575757575757575757525252
+5252525252524B4B4B4B4B4B4B4B4B4F4F4F4F4F4F4F4F4F595959595959595959595959656565
+6565656565656A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C737373
+7373737373737979797979797979797B7B7B7B7B7B7B7B7B787878787878787878787878787878
+7878787878787878787878787878787D7D7D7D7D7D7D7D7D8686868686868686868E8E8E8E8E8E
+8E8E8E9797979797979797979797979B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9A9A9A9A9A9A
+9A9A9A9D9D9D9D9D9D9D9D9D9D9D9D9A9A9A9A9A9A9A9A9A969696969696969696999999999999
+9999999696969696969696967D7D7D7D7D7D7D7D7D7D7D7D4B4B4B4B4B4B4B4B4B464646464646
+464646707070707070707070949494949494949494A5A5A5A5A5A5A5A5A5A5A5A5A2A2A2A2A2A2
+A2A2A2A2A2A2A2A2A2A2A2A2A6A6A6A6A6A6A6A6A6D0D0D0D0D0D0D0D0D0D0D0D0C6C6C6C6C6C6
+C6C6C6A8A8A8A8A8A8A8A8A8CBCBCBCBCBCBCBCBCBE8E8E8E8E8E8E8E8E8F1F1F1F1F1F1F1F1F1
+F1F1F1F3F3F3F3F3F3F3F3F3F4F4F4F4F4F4F4F4F4F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6
+F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6
+F6F6F6F6F6F6F6F6F6F6F6F6F3F3F3F3F3F3F3F3F3C5C5C5C5C5C5C5C5C5CBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBBFBFBFBFBFBFBFBFBFB7B7B7B7B7B7B7B7B7
+CACACACACACACACACADEDEDEDEDEDEDEDEDED7D7D7D7D7D7D7D7D7D7D7D7CECECECECECECECECE
+B8B8B8B8B8B8B8B8B89696969696969696969D9D9D9D9D9D9D9D9D9D9D9DCBCBCBCBCBCBCBCBCB
+DBDBDBDBDBDBDBDBDBBEBEBEBEBEBEBEBEBE8A8A8A8A8A8A8A8A8A7D7D7D7D7D7D7D7D7D7D7D7D
+ACACACACACACACACACCFCFCFCFCFCFCFCFCFDFDFDFDFDFDFDFDFDFE9E9E9E9E9E9E9E9E9D3D3D3
+D3D3D3D3D3D3D3D3D3D6D6D6D6D6D6D6D6D6E4E4E4E4E4E4E4E4E4C9C9C9C9C9C9C9C9C98B8B8B
+8B8B8B8B8B8B8B8B8B757575757575757575A7A7A7A7A7A7A7A7A7C5C5C5C5C5C5C5C5C5CBCBCB
+CBCBCBCBCBCBD0D0D0D0D0D0D0D0D0D0D0D0C2C2C2C2C2C2C2C2C2B5B5B5B5B5B5B5B5B5B6B6B6
+B6B6B6B6B6B6A5A5A5A5A5A5A5A5A59494949494949494949494949D9D9D9D9D9D9D9D9DA8A8A8
+A8A8A8A8A8A8A5A5A5A5A5A5A5A5A59999999999999999999999999C9C9C9C9C9C9C9C9C999999
+9999999999998D8D8D8D8D8D8D8D8D7C7C7C7C7C7C7C7C7C7979797979797979797979797E7E7E
+7E7E7E7E7E7E9090909090909090909292929292929292929696969696969696969F9F9F9F9F9F
+9F9F9F9F9F9FA7A7A7A7A7A7A7A7A7A9A9A9A9A9A9A9A9A9ADADADADADADADADADAFAFAFAFAFAF
+AFAFAFAFAFAFA8A8A8A8A8A8A8A8A8767676767676767676494949494949494949464646464646
+4646465858585858585858585858587D7D7D7D7D7D7D7D7D898989898989898989878787878787
+8787877E7E7E7E7E7E7E7E7E6B6B6B6B6B6B6B6B6B6B6B6B6969696969696969696C6C6C6C6C6C
+6C6C6C6969696969696969696767676767676767676767676868686868686868686D6D6D6D6D6D
+6D6D6D717171717171717171727272727272727272757575757575757575757575797979797979
+7979798181818181818181818D8D8D8D8D8D8D8D8D9696969696969696969D9D9D9D9D9D9D9D9D
+9D9D9D9E9E9E9E9E9E9E9E9E9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9E9E9E9E9E9E9E9E9E
+9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9B9B9B9B9B9B9B9B9B979797979797979797
+7D7D7D7D7D7D7D7D7D7D7D7D4C4C4C4C4C4C4C4C4C5050505050505050507F7F7F7F7F7F7F7F7F
+9E9E9E9E9E9E9E9E9EAAAAAAAAAAAAAAAAAAAAAAAA8989898989898989895E5E5E5E5E5E5E5E5E
+5F605F5F605F5F605F8A8A8A8A8A8A8A8A8A8A8A8A9C9C9C9C9C9C9C9C9C8A8A8A8A8A8A8A8A8A
+B5B5B5B5B5B5B5B5B5D5D5D5D5D5D5D5D5D5E4E4E4E4E4E4E4E4E4E4E4E4EEEEEEEEEEEEEEEEEE
+F3F3F3F3F3F3F3F3F3F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5
+F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6
+F5F5F5F5F5F5F5F5F5D6D6D5D6D6D5D6D6D5CBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCBCB
+CBCBCBCBCBCBCBCBCBBFBFBFBFBFBFBFBFBFB7B7B7B7B7B7B7B7B7CACACACACACACACACADEDEDE
+DEDEDEDEDEDED7D7D7D7D7D7D7D7D7D7D7D7CECECECECECECECECEB8B8B8B8B8B8B8B8B8969696
+9696969696969D9D9D9D9D9D9D9D9D9D9D9DCBCBCBCBCBCBCBCBCBDBDBDBDBDBDBDBDBDBBEBEBE
+BEBEBEBEBEBE8A8A8A8A8A8A8A8A8A7D7D7D7D7D7D7D7D7D7D7D7DACACACACACACACACACCFCFCF
+CFCFCFCFCFCFDFDFDFDFDFDFDFDFDFE9E9E9E9E9E9E9E9E9D3D3D3D3D3D3D3D3D3D3D3D3D6D6D6
+D6D6D6D6D6D6E4E4E4E4E4E4E4E4E4C9C9C9C9C9C9C9C9C98B8B8B8B8B8B8B8B8B8B8B8B757575
+757575757575A7A7A7A7A7A7A7A7A7C5C5C5C5C5C5C5C5C5CBCBCBCBCBCBCBCBCBD0D0D0D0D0D0
+D0D0D0D0D0D0C2C2C2C2C2C2C2C2C2B5B5B5B5B5B5B5B5B5B6B6B6B6B6B6B6B6B6A5A5A5A5A5A5
+A5A5A59494949494949494949494949D9D9D9D9D9D9D9D9DA8A8A8A8A8A8A8A8A8A5A5A5A5A5A5
+A5A5A59999999999999999999999999C9C9C9C9C9C9C9C9C9999999999999999998D8D8D8D8D8D
+8D8D8D7C7C7C7C7C7C7C7C7C7979797979797979797979797E7E7E7E7E7E7E7E7E909090909090
+9090909292929292929292929696969696969696969F9F9F9F9F9F9F9F9F9F9F9FA7A7A7A7A7A7
+A7A7A7A9A9A9A9A9A9A9A9A9ADADADADADADADADADAFAFAFAFAFAFAFAFAFAFAFAFA8A8A8A8A8A8
+A8A8A8767676767676767676494949494949494949464646464646464646585858585858585858
+5858587D7D7D7D7D7D7D7D7D8989898989898989898787878787878787877E7E7E7E7E7E7E7E7E
+6B6B6B6B6B6B6B6B6B6B6B6B6969696969696969696C6C6C6C6C6C6C6C6C696969696969696969
+6767676767676767676767676868686868686868686D6D6D6D6D6D6D6D6D717171717171717171
+727272727272727272757575757575757575757575797979797979797979818181818181818181
+8D8D8D8D8D8D8D8D8D9696969696969696969D9D9D9D9D9D9D9D9D9D9D9D9E9E9E9E9E9E9E9E9E
+9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C
+9A9A9A9A9A9A9A9A9A9B9B9B9B9B9B9B9B9B9797979797979797977D7D7D7D7D7D7D7D7D7D7D7D
+4C4C4C4C4C4C4C4C4C5050505050505050507F7F7F7F7F7F7F7F7F9E9E9E9E9E9E9E9E9EAAAAAA
+AAAAAAAAAAAAAAAAAA8989898989898989895E5E5E5E5E5E5E5E5E5F605F5F605F5F605F8A8A8A
+8A8A8A8A8A8A8A8A8A9C9C9C9C9C9C9C9C9C8A8A8A8A8A8A8A8A8AB5B5B5B5B5B5B5B5B5D5D5D5
+D5D5D5D5D5D5E4E4E4E4E4E4E4E4E4E4E4E4EEEEEEEEEEEEEEEEEEF3F3F3F3F3F3F3F3F3F5F5F5
+F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F5F5F5
+F5F5F5F5F5F5F5F5F5F5F5F5F5F5F5F6F6F6F6F6F6F6F6F6F6F6F6F5F5F5F5F5F5F5F5F5D6D6D5
+D6D6D5D6D6D5CECECECECECECECECED2D2D2D2D2D2D2D2D2D0D0D0D0D0D0D0D0D0D0D0D0B9B9B9
+B9B9B9B9B9B9AFAFAFAFAFAFAFAFAFC0C0C0C0C0C0C0C0C0D2D2D2D2D2D2D2D2D2D9D9D9D9D9D9
+D9D9D9D9D9D9D7D7D7D7D7D7D7D7D7B8B8B8B8B8B8B8B8B88484848484848484848E8E8E8E8E8E
+8E8E8E8E8E8ECECECECECECECECECEDFDFDFDFDFDFDFDFDFC8C8C8C8C8C8C8C8C8A8A8A8A8A8A8
+A8A8A89F9F9F9F9F9F9F9F9F9F9F9FB9B9B9B9B9B9B9B9B9C0C0C0C0C0C0C0C0C0C7C7C7C7C7C7
+C7C7C7CACACACACACACACACACACACACACACACACACACACACADDDDDDDDDDDDDDDDDDE3E3E3E3E3E3
+E3E3E3BABABABABABABABABA787878787878787878787878676767676767676767A2A2A2A2A2A2
+A2A2A2CCCCCCCCCCCCCCCCCCD0D0D0D0D0D0D0D0D0CDCDCDCDCDCDCDCDCDCDCDCDC5C5C5C5C5C5
+C5C5C5BABABABABABABABABAB2B2B2B2B2B2B2B2B29F9F9F9F9F9F9F9F9F959595959595959595
+9595959E9E9E9E9E9E9E9E9EA0A0A0A0A0A0A0A0A0A2A2A2A2A2A2A2A2A2ADADADADADADADADAD
+ADADADB2B2B2B2B2B2B2B2B2A2A2A2A2A2A2A2A2A28B8B8B8B8B8B8B8B8B858585858585858585
+898989898989898989898989818181818181818181818181818181818181878787878787878787
+9090909090909090909D9D9D9D9D9D9D9D9D9D9D9DA1A1A1A1A1A1A1A1A1A8A8A8A8A8A8A8A8A8
+A8A8A8A8A8A8A8A8A8AAAAAAAAAAAAAAAAAAAAAAAAA4A4A4A4A4A4A4A4A4767676767676767676
+4C4C4C4C4C4C4C4C4C505050505050505050717171717171717171717171A5A5A5A5A5A5A5A5A5
+BFBFBFBFBFBFBFBFBFC6C6C6C6C6C6C6C6C6BABABABABABABABABA9F9F9F9F9F9F9F9F9F9F9F9F

@@ Diff output truncated at 1234567 characters. @@


More information about the tex-live-commits mailing list