summaryrefslogtreecommitdiff
path: root/beta_old1
diff options
context:
space:
mode:
authorLudovic Pouzenc <ludovic@pouzenc.fr>2018-06-30 11:34:03 +0200
committerLudovic Pouzenc <ludovic@pouzenc.fr>2018-06-30 11:34:03 +0200
commit34795da1b6bd714df0d5dce93558e04b2bb8a287 (patch)
tree7f725370085c541f8e47f61ce629d8f8f270255f /beta_old1
parentf229ab3255f90f90924bf02fb27199247b87aa98 (diff)
download2007-AWOR-34795da1b6bd714df0d5dce93558e04b2bb8a287.tar.gz
2007-AWOR-34795da1b6bd714df0d5dce93558e04b2bb8a287.tar.bz2
2007-AWOR-34795da1b6bd714df0d5dce93558e04b2bb8a287.zip
Version beta_old1 (doc)
Diffstat (limited to 'beta_old1')
-rw-r--r--beta_old1/doc/READ_ME13
-rw-r--r--beta_old1/doc/READ_ME.dvibin0 -> 16892 bytes
-rw-r--r--beta_old1/doc/READ_ME.html183
-rw-r--r--beta_old1/doc/READ_ME.lyx61
-rw-r--r--beta_old1/doc/READ_ME.lyx~67
-rw-r--r--beta_old1/doc/READ_ME.pdfbin73334 -> 77548 bytes
-rw-r--r--beta_old1/doc/READ_ME.ps2744
-rw-r--r--beta_old1/doc/READ_ME.txt49
8 files changed, 1724 insertions, 1393 deletions
diff --git a/beta_old1/doc/READ_ME b/beta_old1/doc/READ_ME
deleted file mode 100644
index e2d1179..0000000
--- a/beta_old1/doc/READ_ME
+++ /dev/null
@@ -1,13 +0,0 @@
-AWOR - Fichier Lisez-moi destiné à l'installateur.
-
-I- Compatibilité
-Cette application peut-être utilisée sur un serveur fonctionnant avec Apache, MySQL(>=4) et PHP (>=4).
-L'application ne nécessite pas de configuration de php particulière.
-Elle fonctionne quelque soit la valeur du paramètre de configuration register_globals, utilise les sessions via les fonctions introduites en PHP4,
-Les scripts php ne modifient pas structurellement la base de donéne MySQL, il suffit donc d'un compte permettant les instructions SELECT, INSERT, UPDATE, DELETE sur les tables de l'application.
-Pour indiquer à l'application quel compte MySQL utiliser, veuillez vous reporter à la section
-
-Les scripts php n'accèdent pas en écriture au système de fichier, sauf pour l'upload de fichiers.
-TODO : voir pr la config des droits.
-
-II-Installation \ No newline at end of file
diff --git a/beta_old1/doc/READ_ME.dvi b/beta_old1/doc/READ_ME.dvi
new file mode 100644
index 0000000..836714e
--- /dev/null
+++ b/beta_old1/doc/READ_ME.dvi
Binary files differ
diff --git a/beta_old1/doc/READ_ME.html b/beta_old1/doc/READ_ME.html
index 476a176..fd0333a 100644
--- a/beta_old1/doc/READ_ME.html
+++ b/beta_old1/doc/READ_ME.html
@@ -6,9 +6,9 @@
<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/mn.html)">
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/mn.html)">
<!-- html -->
-<meta name="src" content="README.tex">
-<meta name="date" content="2007-03-11 15:56:00">
-<link rel="stylesheet" type="text/css" href="README.css">
+<meta name="src" content="READ_ME.tex">
+<meta name="date" content="2007-03-13 12:30:00">
+<link rel="stylesheet" type="text/css" href="READ_ME.css">
</head><body
>
<div class="maketitle">
@@ -18,16 +18,44 @@
<h2 class="titleHead">AWOR - Fichier Lisez-moi de l&#8217;administrateur</h2>
<div class="author" ></div><br />
<div class="date" ><span
-class="cmr-12">11 mars 2007</span></div>
+class="cmr-12">13 mars 2007</span></div>
</div>
+ <h3 class="likesectionHead"><a
+ id="x1-1000"></a>Table des matières</h3>
+ <div class="tableofcontents">
+ <span class="sectionToc">1 <a
+href="#x1-20001" id="QQ2-1-2">Compatibilité</a></span>
+<br /> <span class="sectionToc">2 <a
+href="#x1-50002" id="QQ2-1-5">Sécurité</a></span>
+<br /> <span class="sectionToc">3 <a
+href="#x1-60003" id="QQ2-1-6">Installation</a></span>
+<br /> &#x00A0;<span class="subsectionToc">3.1 <a
+href="#x1-70003.1" id="QQ2-1-7">Dépaquetage des pages PHP</a></span>
+<br /> &#x00A0;<span class="subsectionToc">3.2 <a
+href="#x1-80003.2" id="QQ2-1-8">Paramètres de configuration</a></span>
+<br /> &#x00A0;<span class="subsectionToc">3.3 <a
+href="#x1-90003.3" id="QQ2-1-9">Initialisation de la base</a></span>
+<br /> &#x00A0;<span class="subsectionToc">3.4 <a
+href="#x1-100003.4" id="QQ2-1-10">Configuration par défaut des comptes</a></span>
+<br /> <span class="sectionToc">4 <a
+href="#x1-110004" id="QQ2-1-11">Maintenance</a></span>
+<br /> &#x00A0;<span class="subsectionToc">4.1 <a
+href="#x1-120004.1" id="QQ2-1-12">Visualisation des objets et des fichiers</a></span>
+<br /> &#x00A0;<span class="subsectionToc">4.2 <a
+href="#x1-130004.2" id="QQ2-1-13">Nettoyage de la base</a></span>
+<br /> <span class="sectionToc">5 <a
+href="#x1-140005" id="QQ2-1-14">Authentification dédiée - Personnalisation</a></span>
+ </div>
+<!--l. 31--><p class="indent">
+
<h3 class="sectionHead"><span class="titlemark">1 </span> <a
- id="x1-10001"></a>Compatibilité</h3>
-<!--l. 32--><p class="noindent">Cette application peut-être utilisée sur un serveur fonctionnant avec Apache,
+ id="x1-20001"></a>Compatibilité</h3>
+<!--l. 36--><p class="noindent">Cette application peut-être utilisée sur un serveur fonctionnant avec Apache,
MySQL(<span
class="cmmi-10">&#x003E;</span>=4) et PHP (<span
class="cmmi-10">&#x003E;</span>=4).
-<!--l. 36--><p class="noindent"><span class="paragraphHead"><a
- id="x1-20001"></a><span
+<!--l. 40--><p class="noindent"><span class="paragraphHead"><a
+ id="x1-30001"></a><span
class="cmbx-10">PHP</span></span>
L&#8217;application ne nécessite pas de configuration de PHP particulière. Elle
fonctionne quelque soit la valeur du paramètre de configuration register_globals,
@@ -37,26 +65,25 @@ travaillé à éliminer tous les messages <span
class="lasy-10">&#xFE64;&#xFE64;</span> E_NOTICE <span
class="lasy-10">&#xFE65;&#xFE65;</span> PHP qui surviennent par
exemple lors d&#8217;une comparaison avec une variable non-initialisée.
-<!--l. 46--><p class="indent"> Les scripts PHP n&#8217;accèdent pas en écriture au système de fichier, sauf pour
+<!--l. 50--><p class="indent"> Les scripts PHP n&#8217;accèdent pas en écriture au système de fichier, sauf pour
l&#8217;upload de fichiers. Le dossier <span
class="lasy-10">&#xFE64;&#xFE64;</span> fichiers <span
class="lasy-10">&#xFE65;&#xFE65;</span> doit être accessible en écriture
par les scripts PHP sans quoi la fonctionnalité d&#8217;échange de fichier serait
inutilisable.
-<!--l. 52--><p class="noindent"><span class="paragraphHead"><a
- id="x1-30001"></a><span
+<!--l. 56--><p class="noindent"><span class="paragraphHead"><a
+ id="x1-40001"></a><span
class="cmbx-10">MySQL</span></span>
Les scripts PHP ne modifient pas structurellement la base de donnée
MySQL, il suffit donc d&#8217;un compte permettant les instructions SELECT,
INSERT, UPDATE, DELETE sur les tables de l&#8217;application. Pour indiquer à
l&#8217;application quel compte MySQL utiliser, veuillez vous reporter à la section
<a
-href="#x1-70003.2">3.2<!--tex4ht:ref: sub:Initialisation-de-la-bd --></a>.
-
-<!--l. 61--><p class="noindent">
+href="#x1-90003.3">3.3<!--tex4ht:ref: sub:Initialisation-de-la-bd --></a>.
+<!--l. 65--><p class="noindent">
<h3 class="sectionHead"><span class="titlemark">2 </span> <a
- id="x1-40002"></a>Sécurité</h3>
-<!--l. 63--><p class="noindent">Cette application a été développée en gardant toujours à l&#8217;esprit les problèmes de
+ id="x1-50002"></a>Sécurité</h3>
+<!--l. 67--><p class="noindent">Cette application a été développée en gardant toujours à l&#8217;esprit les problèmes de
sécurités. Nous ne pouvons évidemment pas la garantir failles ni bugs, mais nous
sommes fixé des règles de programmation pour éviter les failles les plus courantes.
Toutes les données issue de l&#8217;utilisateur lors des traitements des pages web sont
@@ -71,18 +98,27 @@ configuration de serveur Web spécifique. Considérez, pour résoudre ce problème,
l&#8217;emploi sur serveur web sécurisé (HTTPS) et l&#8217;utilisation d&#8217;une liaison entre
le serveur web et le serveur d&#8217;authentification au travers d&#8217;un réseau de
confiance.
-<!--l. 82--><p class="noindent">
+
+<!--l. 86--><p class="noindent">
<h3 class="sectionHead"><span class="titlemark">3 </span> <a
- id="x1-50003"></a>Installation</h3>
-<!--l. 87--><p class="noindent">
+ id="x1-60003"></a>Installation</h3>
+<!--l. 89--><p class="noindent">
<h4 class="subsectionHead"><span class="titlemark">3.1 </span> <a
- id="x1-60003.1"></a>Paramètres de configuration</h4>
-<!--l. 89--><p class="noindent">Cette application comporte deux fichiers de configuration qui sont dans le dossier
+ id="x1-70003.1"></a>Dépaquetage des pages PHP</h4>
+<!--l. 91--><p class="noindent">L&#8217;application est livrée dans une archive de type tarball compressée qui contient
+toute l&#8217;arborescence et les fichiers PHP nécessaires. Il suffit de décompresser cette
+archive en conservant l&#8217;arborescence dans un dossier publié par votre serveur Web.
+Les fichiers de configurations sont présent et contiennent des valeurs d&#8217;exemple que
+vous pourrez adapter à votre situation.
+<!--l. 101--><p class="noindent">
+ <h4 class="subsectionHead"><span class="titlemark">3.2 </span> <a
+ id="x1-80003.2"></a>Paramètres de configuration</h4>
+<!--l. 103--><p class="noindent">Cette application comporte deux fichiers de configuration qui sont dans le dossier
<span
class="lasy-10">&#xFE64;&#xFE64;</span>include <span
class="lasy-10">&#xFE65;&#xFE65;</span>. Les fichiers existent dans la version distribuée et ont pour but de servir
de modèle.
-<!--l. 93--><p class="indent">
+<!--l. 107--><p class="indent">
<dl class="description"><dt class="description">
<span
class="cmbx-10">connect.inc.php</span><span class="frenchb-nbsp">&nbsp;</span><span
@@ -98,14 +134,13 @@ class="description">ce fichier contient tout le reste de la configuratio
multi-dimentionnel. Ce choix à été fait par commodité, et pour permette
de bien hiérarchiser les information, en revanche, la syntaxe est fourbe...
N&#8217;oubliez pas de virgule<span class="frenchb-thinspace">&nbsp;</span>! Toutes les constantes sont décrites ci-dessous.
- <!--l. 103--><p class="noindent">
+ <!--l. 117--><p class="noindent">
<dl class="description"><dt class="description">
<span
class="cmbx-10">$adminMail</span><span class="frenchb-nbsp">&nbsp;</span><span
class="cmbx-10">:</span> </dt><dd
class="description">adresse e-mail de l&#8217;administrateur. Affichée à l&#8217;utilisateur
lorsque qu&#8217;une erreur interne à l&#8217;application s&#8217;est produite.
-
</dd><dt class="description">
<span
class="cmbx-10">$automatedMail</span><span class="frenchb-nbsp">&nbsp;</span><span
@@ -117,13 +152,14 @@ class="description">adresse e-mail de réponse des courriels envoyés
class="cmbx-10">AUTH</span><span class="frenchb-nbsp">&nbsp;</span><span
class="cmbx-10">:</span> </dt><dd
class="description">Paramètres d&#8217;authentification
- <!--l. 111--><p class="noindent">
+ <!--l. 125--><p class="noindent">
<dl class="description"><dt class="description">
<span
class="cmbx-10">POP</span><span class="frenchb-nbsp">&nbsp;</span><span
class="cmbx-10">:</span> </dt><dd
class="description">Paramètres pour les serveurs mail POP
- <!--l. 114--><p class="noindent">
+ <!--l. 128--><p class="noindent">
+
<dl class="description"><dt class="description">
<span
class="cmbx-10">SERVERS</span><span class="frenchb-nbsp">&nbsp;</span><span
@@ -132,7 +168,7 @@ class="description">Chaque élément de ce tableau à pour clef le nom
de domaine du fournisseur de service de courriel ( partie
suivant le @ dans une adresse e-mail) à pour valeur un
tableau associatif de la forme suivante
- <!--l. 120--><p class="noindent">
+ <!--l. 134--><p class="noindent">
<dl class="description"><dt class="description">
<span
class="cmbx-10">subdomain</span><span class="frenchb-nbsp">&nbsp;</span><span
@@ -173,7 +209,7 @@ class="description">Booléen indiquant si l&#8217;authentification doit
class="cmbx-10">CSS</span><span class="frenchb-nbsp">&nbsp;</span><span
class="cmbx-10">:</span> </dt><dd
class="description">Paramètres des styles de pages
- <!--l. 137--><p class="noindent">
+ <!--l. 151--><p class="noindent">
<dl class="description"><dt class="description">
<span
class="cmbx-10">CHOOSER</span><span
@@ -188,8 +224,7 @@ class="description">Ce tableau associatif contient la liste des
class="cmbx-10">MAIL</span><span class="frenchb-nbsp">&nbsp;</span><span
class="cmbx-10">:</span> </dt><dd
class="description">&#x00A0;
- <!--l. 145--><p class="noindent">
-
+ <!--l. 159--><p class="noindent">
<dl class="description"><dt class="description">
<span
class="cmbx-10">TEMPLATES</span><span class="frenchb-nbsp">&nbsp;</span><span
@@ -197,12 +232,13 @@ class="cmbx-10">:</span> </dt><dd
class="description">Ce tableau contient des tableaux associatifs dont
les clefs seront utilisées dans les passages de paramètres HTML,
et contiennent des sous-tableaux de la forme suivante<span class="frenchb-nbsp">&nbsp;</span>:
- <!--l. 150--><p class="noindent">
+ <!--l. 164--><p class="noindent">
<dl class="description"><dt class="description">
<span
class="cmbx-10">caption</span><span class="frenchb-nbsp">&nbsp;</span><span
class="cmbx-10">:</span> </dt><dd
class="description">Intitulé qui sera affiché à l&#8217;utilisateur
+
</dd><dt class="description">
<span
class="cmbx-10">tpl</span><span
@@ -223,7 +259,7 @@ class="cmbx-10">UPLOAD</span><span class="frenchb-nbsp">&nbsp;</span><span
class="cmbx-10">:</span> </dt><dd
class="description">Paramètres concernant l&#8217;attachement de fichiers aux
réunions
- <!--l. 161--><p class="noindent">
+ <!--l. 175--><p class="noindent">
<dl class="description"><dt class="description">
<span
class="cmbx-10">accepted</span><span
@@ -232,10 +268,10 @@ class="cmbx-10">:</span> </dt><dd
class="description">Tableau des extensions qui sont autorisées.</dd></dl>
</dd></dl>
</dd></dl>
-<!--l. 167--><p class="noindent">
- <h4 class="subsectionHead"><span class="titlemark">3.2 </span> <a
- id="x1-70003.2"></a>Initialisation de la base</h4>
-<!--l. 169--><p class="noindent">Tout les fichiers nécessaires sont rangés dans le dossier <span
+<!--l. 181--><p class="noindent">
+ <h4 class="subsectionHead"><span class="titlemark">3.3 </span> <a
+ id="x1-90003.3"></a>Initialisation de la base</h4>
+<!--l. 183--><p class="noindent">Tout les fichiers nécessaires sont rangés dans le dossier <span
class="lasy-10">&#xFE64;&#xFE64;</span> install <span
class="lasy-10">&#xFE65;&#xFE65;</span>. Vous utiliserez
principalement le fichier <span
@@ -251,32 +287,47 @@ class="lasy-10">&#xFE65;&#xFE65;</span> avec votre client SQL favori. Le jeu d&#
<span
class="lasy-10">&#xFE64;&#xFE64;</span> jeu_essai.sql <span
class="lasy-10">&#xFE65;&#xFE65;</span>.
-<!--l. 180--><p class="noindent">
+<!--l. 194--><p class="noindent">
+ <h4 class="subsectionHead"><span class="titlemark">3.4 </span> <a
+ id="x1-100003.4"></a>Configuration par défaut des comptes</h4>
+<!--l. 196--><p class="noindent">Dans le fichier de configuration modèle, un super-utilisateur est configuré<span class="frenchb-nbsp">&nbsp;</span>:
+inglebert@iut-blagnac.fr et le jeu d&#8217;essai proposé au paragraphe précédent permet de
+créer des utilisateurs, et en particulier inglebert@iut-blagnac.fr.
+<!--l. 201--><p class="indent"> Par défaut, vous pourrez donc vous connecter en tant qu&#8217;administrateur avec ce
+compte. Le jeu d&#8217;essai met ce compte avec comme mode d&#8217;authentification <span
+class="lasy-10">&#xFE64;&#xFE64;</span> bypass <span
+class="lasy-10">&#xFE65;&#xFE65;</span>,
+ce qui signifie qu&#8217;aucun mot de passe est nécessaire. Pour utiliser un vrai système
+d&#8217;authentification, connectez-vous avec ce compte et allez dans la page <span
+class="lasy-10">&#xFE64;&#xFE64;</span> Mon Profil <span
+class="lasy-10">&#xFE65;&#xFE65;</span>
+pour choisir une autre mode d&#8217;authentification.
+<!--l. 209--><p class="noindent">
<h3 class="sectionHead"><span class="titlemark">4 </span> <a
- id="x1-80004"></a>Maintenance</h3>
+ id="x1-110004"></a>Maintenance</h3>
-<!--l. 183--><p class="noindent">
+<!--l. 212--><p class="noindent">
<h4 class="subsectionHead"><span class="titlemark">4.1 </span> <a
- id="x1-90004.1"></a>Visualisation des objets et des fichiers</h4>
-<!--l. 185--><p class="noindent">Une page d&#8217;administration est prévue à cet effet, et elle n&#8217;est accessible que par un
+ id="x1-120004.1"></a>Visualisation des objets et des fichiers</h4>
+<!--l. 214--><p class="noindent">Une page d&#8217;administration est prévue à cet effet, et elle n&#8217;est accessible que par un
<span
class="lasy-10">&#xFE64;&#xFE64;</span> super-utilisateur <span
class="lasy-10">&#xFE65;&#xFE65;</span>, c&#8217;est à dire un utilisateur consigné dans le fichier de
configuration principal en tant que tel, confère <a
-href="#x1-60003.1">3.1<!--tex4ht:ref: sub:Configuration --></a>.
-<!--l. 191--><p class="noindent">
+href="#x1-80003.2">3.2<!--tex4ht:ref: sub:Configuration --></a>.
+<!--l. 220--><p class="noindent">
<h4 class="subsectionHead"><span class="titlemark">4.2 </span> <a
- id="x1-100004.2"></a>Nettoyage de la base</h4>
-<!--l. 193--><p class="noindent">À partir de la page d&#8217;administration décrite dans le paragraphe précédent, vous
+ id="x1-130004.2"></a>Nettoyage de la base</h4>
+<!--l. 222--><p class="noindent">À partir de la page d&#8217;administration décrite dans le paragraphe précédent, vous
pouvez aussi purger les fichiers attachés et les objets de la base de données devenus
obsolètes. L&#8217;aide contextuelle de cette page vous expliquera comment faire. Il est
vivement conseillé de faire une sauvegarde de la base de données et des fichiers joints
aux réunions avant d&#8217;utiliser cet outil car l&#8217;erreur de manipulation ou de
programmation est toujours possible...
-<!--l. 202--><p class="noindent">
+<!--l. 231--><p class="noindent">
<h3 class="sectionHead"><span class="titlemark">5 </span> <a
- id="x1-110005"></a>Authentification dédiée - Personnalisation</h3>
-<!--l. 204--><p class="noindent">AWOR utilise un système d&#8217;authentification dédiée de sorte qu&#8217;aucun mot de passe
+ id="x1-140005"></a>Authentification dédiée - Personnalisation</h3>
+<!--l. 233--><p class="noindent">AWOR utilise un système d&#8217;authentification dédiée de sorte qu&#8217;aucun mot de passe
ne soit stocké, et que l&#8217;utilisateur n&#8217;ait pas besoin d&#8217;en retenir un nouveau.
Le code d&#8217;authentification à été écrit de manière à être maléable et est
extensible. Le coeur du système d&#8217;authentification se trouve dans le fichier
@@ -284,20 +335,16 @@ extensible. Le coeur du système d&#8217;authentification se trouve dans le fichi
class="lasy-10">&#xFE64;&#xFE64;</span>auth_dialog.php <span
class="lasy-10">&#xFE65;&#xFE65;</span>. Vous y trouverez une section commençant par le commentaire
ci-dessous.
-<!--l. 212--><p class="noindent">
+<!--l. 241--><p class="noindent">
<dl class="list1"><dt class="list">
</dt><dd
class="list">
<span
-class="cmtt-10">/***************************************************************</span>
- <!--l. 215--><p class="noindent"><span
+class="cmtt-10">/***************************************************</span>
+ <!--l. 244--><p class="noindent"><span
class="cmtt-10">**</span><span
class="cmtt-10">&#x00A0;</span><span
-class="cmtt-10">Vous</span><span
-class="cmtt-10">&#x00A0;</span><span
-class="cmtt-10">pouvez</span><span
-class="cmtt-10">&#x00A0;</span><span
-class="cmtt-10">ajouter</span><span
+class="cmtt-10">Ajouter</span><span
class="cmtt-10">&#x00A0;</span><span
class="cmtt-10">d&#8217;autres</span><span
class="cmtt-10">&#x00A0;</span><span
@@ -310,12 +357,12 @@ class="cmtt-10">&#x00A0;</span><span
class="cmtt-10">!</span><span
class="cmtt-10">&#x00A0;</span><span
class="cmtt-10">**</span>
- <!--l. 217--><p class="noindent"><span
-class="cmtt-10">***************************************************************/</span></dd></dl>
-<!--l. 220--><p class="noindent">Comme l&#8217;indique ce commentaire, vous pourrez ajouter à cet endroit une portion
+ <!--l. 246--><p class="noindent"><span
+class="cmtt-10">***************************************************/</span></dd></dl>
+<!--l. 249--><p class="noindent">Comme l&#8217;indique ce commentaire, vous pourrez ajouter à cet endroit une portion
de code pour utiliser un autre service d&#8217;authentification. La syntaxe est la
suivante<span class="frenchb-nbsp">&nbsp;</span>:
-<!--l. 224--><p class="noindent">
+<!--l. 253--><p class="noindent">
<dl class="list1"><dt class="list">
</dt><dd
class="list">
@@ -325,7 +372,7 @@ class="cmtt-10">&#x00A0;</span><span
class="cmtt-10">&#8217;&#x003C;nom</span><span
class="cmtt-10">_auth&#x003E;&#8217;</span><span class="frenchb-nbsp">&nbsp;</span><span
class="cmtt-10">:</span>
- <!--l. 227--><p class="noindent"><span
+ <!--l. 256--><p class="noindent"><span
class="cmtt-10">/*</span><span
class="cmtt-10">&#x00A0;</span><span
class="cmtt-10">Eventuellement</span><span
@@ -339,14 +386,14 @@ class="cmtt-10">él</span><span
class="cmtt-10">éminaire</span><span
class="cmtt-10">&#x00A0;</span><span
class="cmtt-10">*/</span>
- <!--l. 230--><p class="noindent"><span
+ <!--l. 259--><p class="noindent"><span
class="cmtt-10">$auth</span><span
class="cmtt-10">_is</span><span
class="cmtt-10">_ok=&#x003C;fonction</span><span
class="cmtt-10">_ou</span><span
class="cmtt-10">_variable</span><span
class="cmtt-10">_authentification&#x003E;;</span>
- <!--l. 232--><p class="noindent"><span
+ <!--l. 261--><p class="noindent"><span
class="cmtt-10">if</span><span
class="cmtt-10">&#x00A0;</span><span
class="cmtt-10">(</span><span
@@ -359,7 +406,7 @@ class="cmtt-10">_ok</span><span
class="cmtt-10">&#x00A0;</span><span
class="cmtt-10">)</span>
- <!--l. 234--><p class="noindent"><span
+ <!--l. 263--><p class="noindent"><span
class="cmsy-10">{</span><span
class="cmtt-10">&#x00A0;</span><span
class="cmtt-10">//</span><span
@@ -385,7 +432,7 @@ class="cmtt-10">à</span><span
class="cmtt-10">&#x00A0;</span><span
class="cmtt-10">échou</span><span
class="cmtt-10">ée</span>
- <!--l. 236--><p class="noindent"><span
+ <!--l. 265--><p class="noindent"><span
class="cmtt-10">$errmsg=&#x003C;fonction</span><span
class="cmtt-10">_ou</span><span
class="cmtt-10">_chaine</span><span
@@ -394,11 +441,11 @@ class="cmtt-10">_l</span><span
class="cmtt-10">_erreur</span><span
class="cmtt-10">_d</span><span
class="cmtt-10">_authentification&#x003E;;</span>
- <!--l. 238--><p class="noindent"><span
+ <!--l. 267--><p class="noindent"><span
class="cmsy-10">}</span>
- <!--l. 240--><p class="noindent"><span
+ <!--l. 269--><p class="noindent"><span
class="cmtt-10">break;</span></dd></dl>
-<!--l. 242--><p class="noindent">Il vous suffit de remplacer les éléments entre chevrons dans le code ci-dessus et de le
+<!--l. 271--><p class="noindent">Il vous suffit de remplacer les éléments entre chevrons dans le code ci-dessus et de le
coller dans <span
class="lasy-10">&#xFE64;&#xFE64;</span>auth_dialog.inc.php<span
class="lasy-10">&#xFE65;&#xFE65;</span> pour pouvoir utiliser un nouveau mode
diff --git a/beta_old1/doc/READ_ME.lyx b/beta_old1/doc/READ_ME.lyx
index e1efc97..9c5e090 100644
--- a/beta_old1/doc/READ_ME.lyx
+++ b/beta_old1/doc/READ_ME.lyx
@@ -33,6 +33,20 @@
AWOR - Fichier Lisez-moi de l'administrateur
\end_layout
+\begin_layout Standard
+\begin_inset LatexCommand \tableofcontents{}
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+
+\newpage
+
+\end_layout
+
\begin_layout Section
Compatibilité
\end_layout
@@ -126,6 +140,19 @@ Cette application a été développée en gardant toujours à l'esprit les problèmes
Installation
\end_layout
+\begin_layout Subsection
+Dépaquetage des pages PHP
+\end_layout
+
+\begin_layout Standard
+L'application est livrée dans une archive de type tarball compressée qui
+ contient toute l'arborescence et les fichiers PHP nécessaires.
+ Il suffit de décompresser cette archive en conservant l'arborescence dans
+ un dossier publié par votre serveur Web.
+ Les fichiers de configurations sont présent et contiennent des valeurs
+ d'exemple que vous pourrez adapter à votre situation.
+\end_layout
+
\begin_layout Standard
\end_layout
@@ -342,6 +369,40 @@ jeu_essai.sql
.
\end_layout
+\begin_layout Subsection
+Configuration par défaut des comptes
+\end_layout
+
+\begin_layout Standard
+Dans le fichier de configuration modèle, un super-utilisateur est configuré
+ : inglebert@iut-blagnac.fr et le jeu d'essai proposé au paragraphe précédent
+ permet de créer des utilisateurs, et en particulier inglebert@iut-blagnac.fr.
+\end_layout
+
+\begin_layout Standard
+Par défaut, vous pourrez donc vous connecter en tant qu'administrateur avec
+ ce compte.
+ Le jeu d'essai met ce compte avec comme mode d'authentification
+\begin_inset Quotes fld
+\end_inset
+
+bypass
+\begin_inset Quotes frd
+\end_inset
+
+, ce qui signifie qu'aucun mot de passe est nécessaire.
+ Pour utiliser un vrai système d'authentification, connectez-vous avec ce
+ compte et allez dans la page
+\begin_inset Quotes fld
+\end_inset
+
+Mon Profil
+\begin_inset Quotes frd
+\end_inset
+
+ pour choisir une autre mode d'authentification.
+\end_layout
+
\begin_layout Section
Maintenance
\end_layout
diff --git a/beta_old1/doc/READ_ME.lyx~ b/beta_old1/doc/READ_ME.lyx~
index 16db7c9..af8e3a7 100644
--- a/beta_old1/doc/READ_ME.lyx~
+++ b/beta_old1/doc/READ_ME.lyx~
@@ -33,6 +33,20 @@
AWOR - Fichier Lisez-moi de l'administrateur
\end_layout
+\begin_layout Standard
+\begin_inset LatexCommand \tableofcontents{}
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+
+\newpage
+
+\end_layout
+
\begin_layout Section
Compatibilité
\end_layout
@@ -126,6 +140,19 @@ Cette application a été développée en gardant toujours à l'esprit les problèmes
Installation
\end_layout
+\begin_layout Subsection
+Dépaquetage des pages PHP
+\end_layout
+
+\begin_layout Standard
+L'application est livrée dans une archive de type tarball compressée qui
+ contient toute l'arborescence et les fichiers PHP nécessaires.
+ Il suffit de décompresser cette archive en conservant l'arborescence dans
+ un dossier publié par votre serveur Web.
+ Les fichiers de configurations sont présent et contiennent des valeurs
+ d'exemple que vous pourrez adapter à votre situation.
+\end_layout
+
\begin_layout Standard
\end_layout
@@ -342,6 +369,40 @@ jeu_essai.sql
.
\end_layout
+\begin_layout Subsection
+Configuration par défaut des comptes
+\end_layout
+
+\begin_layout Standard
+Dans le fichier de configuration modèle, un super-utilisateur est configuré
+ : inglebert@iut-blagnac.fr et le jeu d'essai proposé au paragraphe précédent
+ permet de créer des utilisateurs, et en particulier inglebert@iut-blagnac.fr.
+\end_layout
+
+\begin_layout Standard
+Par défaut, vous pourrez donc vous connecter en tant qu'administrateur avec
+ ce compte.
+ Le jeu d'essai met ce compte avec comme mode d'authentification
+\begin_inset Quotes fld
+\end_inset
+
+bypass
+\begin_inset Quotes frd
+\end_inset
+
+, ce qui signifie qu'aucun mot de passe est nécessaire.
+ Pour utiliser un vrai système d'authentification, connectez-vous avec ce
+ compte et allez dans la page
+\begin_inset Quotes fld
+\end_inset
+
+Mon Profil
+\begin_inset Quotes frd
+\end_inset
+
+ pour choisir une autre système.
+\end_layout
+
\begin_layout Section
Maintenance
\end_layout
@@ -409,19 +470,19 @@ auth_dialog.php
\begin_layout LyX-Code
\lang english
-/***************************************************************
+/***************************************************
\end_layout
\begin_layout LyX-Code
\lang english
-** Vous pouvez ajouter d'autres mode d'authentification ici ! **
+** Ajouter d'autres mode d'authentification ici ! **
\end_layout
\begin_layout LyX-Code
\lang english
-***************************************************************/
+***************************************************/
\end_layout
\begin_layout Standard
diff --git a/beta_old1/doc/READ_ME.pdf b/beta_old1/doc/READ_ME.pdf
index bb4e4db..7948fe2 100644
--- a/beta_old1/doc/READ_ME.pdf
+++ b/beta_old1/doc/READ_ME.pdf
Binary files differ
diff --git a/beta_old1/doc/READ_ME.ps b/beta_old1/doc/READ_ME.ps
index f8ed24a..9c293fc 100644
--- a/beta_old1/doc/READ_ME.ps
+++ b/beta_old1/doc/READ_ME.ps
@@ -1,17 +1,17 @@
%!PS-Adobe-2.0
%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
-%%Title: README.dvi
-%%Pages: 4
+%%Title: READ_ME.dvi
+%%Pages: 5
%%PageOrder: Ascend
%%BoundingBox: 0 0 612 792
-%%DocumentFonts: CMR17 CMR12 CMBX12 CMR10 CMMI10 CMBX10 LASY10 CMTT10
+%%DocumentFonts: CMR17 CMR12 CMBX12 CMBX10 CMR10 CMMI10 LASY10 CMTT10
%%+ CMSY10
%%DocumentPaperSizes: Letter
%%EndComments
%DVIPSWebPage: (www.radicaleye.com)
-%DVIPSCommandLine: dvips -t letter -o README.ps README.dvi
+%DVIPSCommandLine: dvips -t letter -o READ_ME.ps READ_ME.dvi
%DVIPSParameters: dpi=600
-%DVIPSSource: TeX output 2007.03.11:1556
+%DVIPSSource: TeX output 2007.03.13:1229
%%BeginProcSet: tex.pro 0 0
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -174,9 +174,9 @@ dup 59 /semicolon put
dup 60 /less put
dup 61 /equal put
dup 62 /greater put
+dup 65 /A put
dup 69 /E put
dup 79 /O put
-dup 86 /V put
dup 97 /a put
dup 98 /b put
dup 99 /c put
@@ -200,7 +200,6 @@ dup 116 /t put
dup 117 /u put
dup 118 /v put
dup 120 /x put
-dup 122 /z put
readonly def
/FontBBox{-4 -235 731 800}readonly def
currentdict end
@@ -254,189 +253,185 @@ E2934111D6B57CFA826DB114947DFA87EDCC6CCB33146C2742E7DF664A3BCDA5
8039D2C3F063EAAAE10516DDF3DBF97B5F87EE9EA959AC738AB6CDEA63DA8862
7F7EA32222690E7EDC6F4B3391E834977D476B19D9C14D92420122A733E735A5
EDED2F02D5A7F3347CB289CA2A440945544A7677C4BD7DA3000FDEA64A4A6E85
-4C1C6C4D16A91AFAB0B84A485CDFC5EDEB03E8E93218694C542734139DE38E11
-766E84C54DE44775FE2122F4869B5EBDD7AB21E471DE8A24D986D02EC56B863E
-CCEB528C545C0D9D3B138CBCEDB7CEC5A1D85F3A8EB65B7F96462F17DE646358
-3865CB5603A80ED1CB1FEF2BFDBBB5CB94E15B0903EC58CC9C8587B105E419E0
-486523D0CAEADCDAB2C4BC47AE55D14489BFE1AA36A5FCFE988D1D4398BD6303
-CADBF9FE64F5FEF8C0B4411289198ADCBCFDE42821865AA21049BA8E846CB7C5
-A60AE13DECEC0897A2F74E130F198AAA04993D5415463CAFEDCA47C6FC753A76
-B972140A3AF187A4BA658EEB077751EB20FE37BD952E7A3661F3F45E6FB25671
-554639A94C3F9F3B4E5C76785373A7CFEED3B6A3F44D98E9FFEF4BD8FA9B05CC
-4ED72D6388EC669D1AB81195022FDFF1F562294FE6AAB80EEF711396337D9DFD
-B24A97E88BC4B1F1D6E143E3820DE208E7DC16D757D36C7F7EE745DCB7E75D9B
-40FF7BC1A92347253C702CB3B177AD3FC273844A6A53D69934C824EF382DAD7F
-7627A918FE6E30505FE0C6641BB383D7C4D48DD560209E72BEA8502E0FA19BEF
-97B7989CB133B933BAF41CA678D19D8E354036604FAC1DA79420D4B4E656D06B
-7860AD8A60A11C29E85A3BED39C4D0C7FF116BD2186EFE54924FA8DF382CE00A
-336D74EED682D5C471B2D4F70D371C35CDE1CAACB731A332C2BB23CFADE102BF
-1EA484E64C7B2D59924E1D7E64A3A4BE9588B64300AAC5BBCB69E6ECB5E6ECC5
-CBD47621953AF08F2203D3069CA085B4EA8EF8223522F87289224C1AAE1176B9
-A8BEC8C453C2DCF385F88B0CA690DCCA7A8DA7DC92D16685E43478FC6CABCDBC
-6607DFC80EDDC91D4D7E13606C80C4FF49C34970E6483993C5D5F60465CF333A
-E1EDB4519FD099232BF13D0EBE839CE810AB85E580DBC0C2C19185790776EDEA
-942DE2CCC1993702C871E9E0231DD1E1386BE725947AD15CBB335C1E30E1AEC1
-02C09DFEA295D50C624A37A81F0C6002FA1D6D817514AB764C8835D816E28268
-49A8DDA1BE92836CB30B06DD60D358EF02DC12B8BACF1186DBF42C061F8BEBDC
-D4C08EE123C2A94B82FBF9896053B89A3B1AFF53F7AD2DBB8ADF42DCB51D9B6D
-5A5532BCFD5C6BCAF1CE50DD65DFDED6357D7E6B1EF7773EF3C53F56ED34AD2C
-0C2599B516127449786FDD74712FA8BD94D12295D434494127D0E26F5C352591
-796035484D0A6DA5211A83FD00D4B8735104482149878A8F1984682BE4B4E84F
-6189A1BF48F41E1D36F6CF56088EE1EF71AE62FE7877487DC24D0E0E6A412FB0
-4E231137873E0908727FCC0FDE2951A44779A412E20D6AE62A6A3FF71587020B
-786366886B6A9C4D266F7A471FD8CC263DCC36E8731BE1990CD9003F2A0FB459
-5CEC683722808363BAD930D2A2736AF1D1DC478F817921D596F2F8B77A845E1B
-C70B5E6ED150640E06628562410088D836D817FCD012359F5B54760ED0CA6ACC
-57F8D5FC28A13ECD31250859DC79884507AE7106A6ACB17694586ABDF5F2E881
-3DF040AA8FE65376FAADDD72B66B87E5DC173979B2029377D82BB3364EE53C0F
-B851F8609DA4F08C51E99AD9D6FEC018883D5472100AA60D8FAA3BD874394080
-439A1170B2F56997ED742B115F2A00A084E13BCC437F33B383C3A957D0E94836
-80DA0E817A579FB2615D3A35D6C615C8FACD4E6A3C3F4A4B86877FF01F596B23
-97286C45A58744EA0920D772C7591966EFAF3150BDA27BDFED893FFBBE1E25BF
-4F24B7CAF576CA719DC1BEA83276C42591D237D88EF92B0FB1E245308DCFBE65
-E525DC42018E19DE6B4099121D2D9F8A8054D277EE93E10F001BE74A5E665AF9
-E6D920A9EC6DFA1C24DCD95FE5883285EEAA44199AA9C7A61E21BB547E6A15C2
-6065CAB4132B201031531AAC77553B37D28E4F2FFA9AFD0F79693541EBAE608D
-72E4189BC22C9ABBA1EAF9F7F74BFD4557A981C9A8661309F1DA5E27C7FA13F1
-7F612A93195933A7AA7209ABA79B2B0E20253385EB95800F3629CAD1DD9D45C3
-2B1A990975F73FBE899C3E9965C40063C03DB3680886B97FB4A152B4BF81F17A
-E74277DC8CE3EF67A238EE399E7DFAB8A86AA4C9F087CDA4D55DF9F693043AD1
-68EEDE07DC51C7EFF41E5618F8CD6F0A8327394A8C1FC86D38BCEDB5EF130D6F
-203E94581CBEFF9A91D0D909E8BA443E17DD8FD09169C82CE111D4BE4C5D8C11
-BEC3221D877C7EBA283815627EDFF83695AFAAB90762E6DEC818D5305BED69C2
-0B8998E7BFFE3B21B4A50243FEB9B950A7F6435BD668764A2DDCF069ED7D7571
-A2E1A37EAA99ACC35B8157E057020BE9F1496337B20BBF77A9B0ABC65FF66C61
-EE059251456730B5DABA6F3B2E5ECC341D41CD38B38C76E246F50A691D5143F9
-2B55EEE2A3DF6E7E34F6378EF9F55F299954E22488168C2F125B0BDE9AB0C9AB
-E31CBB6732ED15844D8451E78BD81C3C8DE629DB6C7DD795AB1E48A36439EE58
-FA9793BC9802946BA90654B076E81F1C7ADB0F3DF78D9D4EACCA41F46AB1B655
-C65B85DEE426B8A97A93A2DE2D49C44705C14C8A4381F2A87055F6F31EA5074D
-0113DAA650A070F765B13180059FFE8157B48C705FF4E03B0371153A13CC95A1
-0ED751849EAFA6101988FAA7E86C488E840B0C939F7DB6656A79E8C31ED95239
-5D989E9DFF213A75A7D9162CC52868D54E1FDFACA503F564145150A00AC1DAF7
-C59C9706130DB9BD59EF3B4519F4A84065B043BEA579FE4AF5CA047EDA3BEBF4
-D61962D24182DA19F3D6DDBFC27252E31D3378CC7267899A82DACC41CA69FF18
-AF631AC3E8BB7404D85D9A703768081C6F148CB1459AFBA0A92A69B0D5C4A09E
-9321F8BD5CD235F1B2F0C98FC9EBDF6474AFB312070DC476011F4C8468E5D2FD
-8AF8FC915D01DA12AB7EC42FF979AEFEAA0B4610F64006E6FB6CC8F822FE165C
-5CD933EAC43457E2C7328FA4597C3BBB42398481DC182E01C84EA8738E192502
-AB36501A70D98F1876844D75EBAB5EA5EB2195EEDA3E10C5C8564E6F4733FC74
-C93047F5734DACA571AD76AFDE5512976EEDE1C895473FE418A0246407F3CFF2
-9EE0A86D106C8218AFA23D72945556702C9E9F107AE01148E80B9587AAC77065
-94ECFF8988BADF5814322DF6511133899687B4C4AE6ABC60F33C7CBA24796193
-EA996A190CBA728CF391EFC4789D502364484812DE5E88DF03DAEA997D6E16AD
-BEE4ADE655A7AA393ECCDCC8B7A1AA282F3128FA5AC613513AD0E648F5400A4F
-045DA5B9E469D0CE693259268E27C5505FD7EDC3CA266C010C04A240FB91C6F3
-EFA4D0AE5C2517976A2BBF9D0AA3A0D4590E582AD55E9768CA5C1DA4EF832E49
-31DC69440446B343B53EA25CA8240A630DE279AFD95499F089F0BBAD893D0DEC
-671807705CAB3EB26E8F202AC371A77E674AA606F6CC4B0A5D6BA25B93CB06C6
-A483E16B1F4FDD6FCB2BDFEB82C360F662BBFEB9F155830026FCB3E5CE1ABA98
-6037E5B6A62DEEDCD4FA42876858FF04589D92DDC785552CC8259F92D9B44A38
-24AE40CDE5A8E037292E6788535E104B4D6A4FB7BD61448CBB24B0CEEBC68A41
-BB1C0846C4D5E80F40FD941F2CC458D1304597E1296C26B2A056911D71AED927
-7970193557FBC86B6C473283B1A3B9309DFF8CC9735763A592220DDC332FDF93
-EDF55510B1BA3DBB9DFE462EB66607AC663A23471BC34C9BB446BF63C8A2FD14
-1F745C75033E4B598E8767316D91F66ADC9EBB00D410D3821E829606BD447E79
-D9D4FC6ABFB72A159BBB9C51671685E92F2ED99041318F1F88C810DB692A589E
-7395DF7E58739B67F45601EA052BED85A675D804FCAB33FC5444BC6587F8A456
-9A9B98EE91D41AC28C9178F4799E005B96C7BD483B16B0F7C21D0D38CF8DEF2A
-BEB5878FE24D1A460ED3CFA752A3775089F7A3144C13769CE6C5D9802ED4E8C7
-79E8694DCADADDCE259521E69C8CE3C708A7EDF968AEEB8D603F724251E0486A
-FE49852A38E46C506FBF8F484E0D3E33F5561E91967C9CA2B9243866A08275C9
-8382EAACCE5F8EA866768E091DFAEC42F3A4C7307D31CE34846A5ADCFE2C7358
-43BBB348165CFB17F821BF0768B2491E0C26FD78899BFC2708078C756920A128
-36E9602AB24BCB3BA61C3A0020CCAE3FF84943E86E85C89B0F8C24356ACA20FB
-A936D2FCB2D922F98B554098C16622A88E02C8933939110830421F3D16D0AB55
-5AD2DB5B22E4C9120523EE24E3DD782B2B1832EB7E08D9161B96681EB6E0CABE
-845421D578B04540B756B69011EC4BB358437D62FE7AE7038AF013655D016336
-E54F6052C923D0B3CFB58C5664A6C770E2611A4ACF3BB9682F565B9FEE5918E0
-02C14A79242CCB46E25C831FF080760B3F2485671F60A78F1500B2BA0685027A
-429DCC57D9E39AFE76F60C0E3C8219F2BC802B003C2C1BD0E1BF9FE9DA811E00
-4EA8ED75D1D67C17AC9DC133559E91D5302AA6B843A7C68529CF25828FF4ED5D
-50E86A01184487BA2F0365E7CC8204EF2ED735676E08282C49F0665786080AD8
-E837F9109F68D43057EA931BC75C1FDBEB26F0659535E405173118D6E81968DE
-56B6C6A5AFC4DE6A7198A23DA05EC21C8DAD0CFABC401FD31091472FB5D3F241
-6F4E9322B01C04EA8DD3DE99B19B5511509B3F1B027A677DB6DD02623B0614C7
-8D7048ED354E6DF42A544FE1098FA7205CC846CDF624AF43236D522CE9765C7E
-B471A5EA2C588768729E438AD0ECB16F1D4658187C97A15BE69631E2BBE68B8D
-05B043ECBE4A1D256F49E196B0081F7BB4650B9D8CCB6ABB5B76C30249B61FB8
-66D6E7F13ED40A1EA95CC8EFE3E73CDA353B71E515A1F6831A97A16F158774CB
-76E6B6C3BFA0D58EE768A9C3E8CEA3629B2895EE546C3D599EED9C7181BB58C8
-CF0560C4B873320526C719DC5E5CB0DA7D34B08D45A0B46689095361D0FDAD53
-503CD09FD15ADF51DEB30AAFD4E9D0E2D3E3A94B5C277215BEA08823041583E4
-6356BB4E9D1C03C1FC58C0EADBAC332531A72E07F2C015F376CFF8C36CC95788
-3122896B1334BEF9A6F535680D97565FC448E5566ACA5D48DAC4A11C7A28D548
-4C68BD482B8D208186D74198799CC6D640507B4B9112EA0767022C36707AB1A4
-4B9B2946E0924DDFB6FBF8A8B7F8EF5FF624C6A3297B1D3210D9F32BD28D9977
-FC83806674FF54EEF1705D03109DAF65ED5A3FF6ACFAB86CF8BABC61F051C383
-BF7ABCE2816A4A1A8C73C8D057F8A373376DAD761DED01FD82562779B5203D9F
-EFCF73F5D66283B56A19F0CAAFB21ACF480AB8257B5910075DCAADF5580992D8
-AE1F3A170947FB00323A0A4D607C2048D0F083D9AA8BB86A695E637DCC9D8DAD
-4E6A243ED811223304269DE54504D2D1B487155140C346CA7AB7C52E16AFE968
-EE576CAD9BB2C55DAD0A50DED6A6B654D5F4770DEDBAA52FBAE3839407A03F36
-E0526861B1AA35A1E88739545E6A2C6BC68DDB90C6918057FDF84D0E1BDBEBE1
-33AB2816CAEC9DE4042CED582E3650D639D1AA11B1FDC62B636E8E605974F5D5
-EA7E83E0BDF5DF6A44FE3BBB3E353FB3278A180A6364D5393F5F539338A3A138
-EE7967068BA1148D9F8B664E7B698913863817E72295990D6EC1090209FE7A3E
-5AB84C05629408226D4D5DC776CCD5D004C37B5FFDBB4535E4108292C7561746
-1D4053122E22F7CF038CFD5D4159B6B1903A50BBB95FAD50BF28CBC08D394289
-2EF2FD65A6237788C168768978B80C3A171EFD28242A90600B0B3CD661424D7B
-7A8013C2E758F437D5E216BAA8448B9BE20E495D295B7DE39BCC0A2D1BF14A8E
-319DC4B2A38E35AF69B82EB0CF189FAB2D391DB39253E5B8412A3AAC20BCD113
-373C9C550B02A642733AD122EF587543E1001A81BD311A3EF0E7225FFBFED342
-B96626DF3A4C08A8D9858EA4A18EC20805FA9927594E81ECC652324674F1B2E8
-FAD79F2108408B111734C6A7414B9EC3A2450146D14B5582D1C67CC7CE7FA085
-AA8E704C1D95EDD45753E9A9E26A5DA8315EA3C453318D242D6EC94721F709F0
-6B8B416731FDEFA6B856CFAD54942440C155F66493F4E2E0B8CFE7212B962BF8
-A2C2FF32082BA82701690DC2F2D1366C55A781455AEE353301458CFB90A5ECB5
-6BAD8F4CBCF39482D7BD07AC030C857D907B0C2676C8EFE41231CC5D6E57E03F
-77F71DC796BBBED55F0791B40FB81156067101D0102DCEF74C07EA6BDDACD90B
-C0D8289ABD58CCB1E86CD0FAD6C640E403881B6A5D6CB6678543ADF8BB5D1836
-5C52348CB645C36ACD07961762809B30582B497C56B0F250D3B49B5D7166ACAF
-7B01742408F8BA160DD9AE78B898EF24FBE6E124327875A853F23506B76E5BAF
-4F10BF4547C8D080CC78317B0599244EDD5654F62F1AC9C7228DE4326B1D2096
-375545F4849975221F7C7E397E826DBB579C385A2E21C372846A1F888280B060
-6F075B355A71D885CAC87EC87A5B0C8CA07C385AA52BBFB9690FC90695411F7E
-61665EC585010BEBA23C4F228BA46E6A063C4E6731CCBE862A7A5676DFA84FBD
-D7D8BE627550BD2D3BFCED3A33A02237B023D3BB06213D5243DAD0EFD8817EBC
-583F78E55A9EB6988B38C2C4A907CBB943DFF097195E25728A90B14A90951D0B
-FEF286550CA025EBB08B7B4873B33A2BDE68BAD37172088440259DDCDF2F4F08
-D5E4C89BDF9DF4A1D526761A0E6BE96B9F047FFDAA6F613EDC6A71015E290152
-CBFF6D04A60E5D2C67124E9277C81491857F4E8A91A8625B2D7F65389884203A
-A00807F0CB153218691E5242A2F1D426C71963CAAE3A8B66A98242CBC87A626B
-4E03360FF12372BEE3A18AF99BBDC5F9E56B318F7A4755465127D2BF12FAF1DF
-2524610CE3B661C7FD02F3F6F1D20A774663AA4202BB7557B3A588A015B8AAED
-18D7F333036044633515FFB6C170774284C41FBB81F92378E28278BFA6A5D462
-54B0184DA71562BF503200AEE12307C094E7ABE4B2B65C326D19AC9D3236D1D8
-575AF37A0895405AC8B69924479A2A9CA875A2A1F2CD60CAFF96801C6920510D
-E383DDE8B8978F439162E2831059FD24787A6FBD67643F518CBC03A4A19C587F
-892A9D779AE3EB49C5F49132082496FE5C51EE023058831DB014F05505A06BDA
-9FADFEF4728C77FB0EB4C53B092B814365B4EEFF64945717CA8F04C951570FDF
-9FFE78705B7D04F95F8B809F47542C5C146102EC25A4F3FE9BEDCC2E6B0D9F0B
-280922957C6FA08C5466426B21A463AC0A58ECF1FDCB614744958F587922D7C0
-FF6C9D064F0249F787B557C839209A1821FFC3C0148DC43A4007B3641CE7A81E
-BD84A3E7F1D833CC34ACAB53947438E6227668009CCECC37851C87CF92CFEF6D
-10538C2DA8332CCEB564A72DE4AC9556C96522BA72CA30E8F262D1FC3986BDF8
-A2271628EA21E84D65A5665481FD4794B87A33993C40CBFA59173640E89C7829
-99AEF9F0B5CEFE69848629192A5C4BFB2FCB328E575C4C523C649A4674F27EE8
-61AE251203A8A04A644F397CAF9D86E6D66C42847876FCDFF1136C5C9C032D13
-9F89B117E43970291073BCC5F53881A0F6584566D76FCEA6A3B11B29D62F2052
-E13F81005D2AFF12F6E4E51A5ADCFFE0ABA23EE2B5C9146EDE5AD5C1A12291BD
-273DCD88A6A1357BC40724B2D0EC5F09430999CE73CA0791142543079AD4A93F
-002F33012BBACAB4012E2A09C4851CD93613D02B3AE740153F8561170E48174C
-7B0B2467A62D0EDB13FD25D3DC9982551898B6165C50C7E305B38A7E7317636A
-DCBB266B44223632EBB9F3641A1CEAC90AEEC7D25B1689261C412D57063C4C0A
-C0085C852F22D60F86B39451B273E6C061389D23B4AE9E33C42B8B054EEA3D43
-409E6B879357996DF95438819CF168ADECA129D4CE1C804865F8E01D7B96CB50
-A48F4831AFB1B732CF04965F2DC5C04C531BB91B94DD37CD95A7D6953E102860
-9C4CC88BB318F9F3C42DFBB44424079639ED3FBB49CEAAE3080E0ADE6D6EDB52
-D8FAB18AD9F9B0303974584AE4DA03B105A5014AA49A54C46C0275B4639AE3D2
-0DF5BD3E1887F53F9452CB57A88800914FEB86C796E45B39CFC734B753C9DBBC
-5CE1FE38012784D2A12BB1427F9AC85954F76BA82D95C6994AE9916F4E27CCE0
-8014E12CD6429E5DD482679048EFFD5E4941BE451461C186FE241E7178F77977
-607237A951B62AB67D310CFC6996F6FF77D7599DC0148847B56CABAA543E452E
-C7A2C7B567C3E9CB86D6E899E9648D9EE3DDDC5C464EF17D286A4BC0C2FC75DF
-
+4C1C6C4D16A91AFAB0B84A485CDFC5EDEB03E8E93218694C5426650444AC9972
+98634CB73BF34252A72F838CFABD9F667EB050C113EB222A745B878098AD2C48
+7C6F0817AD96EDA15FB9061832CD91B4270098246BA8D5ADDA339A49DF0292AB
+6F7FE225D100F67F3DB412F4D95D464E27AEDB8B76FC8A0930E649E3EE380FC7
+6ECC654D9E901DD295F0A23A3CE88018A2ABA18977775D14695AC02F91E46549
+036939DCE6CFC8BB47CB297D9FF205F900A06DC9F65D2851C66443BE520954B9
+1C98471D8D7746AAFEB2A662A79DB89AC3B2DB327183ED0D4D52CEC819A49BB4
+7E7D4D8B871F85AD43A0441CA8EE86C209F3256BCBF4C4DDF209EFD7E70245FA
+E072B99F1F20D4D504AEAB512F477C9B998C466E01238F9E87B3FCC90CE1A90D
+4B1A422BA0C0293FD9F58DD4F18ACEA7029B88EB55A2FED83DEAE9F573E9FFCF
+05102DC9BD02E9F6D150F3E9D1DFBB8962048508B859CD190DA15732F8D210B1
+7665EED21506DBABBD0E2745D84542555C9FF9ECC3A8043E7EABD1ED5AC7B499
+CEFEDC3164C2C92F5D88C67C6545E9482E70E1DC2C32117ABF99FA7726A43956
+6414DA5B78F70D7A26A8937CB80A705C8048DB26F0CEBD5CCCEA416F19699DF4
+6443C056290A555F50D9BA984B4DA2A19B2BA12E39CAA1EB432E4DD6D2AB907B
+3F20B8A3D0FFDFF3258A7AF82A927CD4D54C2F56C1A2DE4C38F1ED186B7F0578
+33B918CB01EE5A839042AB0F740455F1E4DB53A21822CA65333855109335204B
+32B6C05D5BE9D260F4AC010996C7CD7C0FD3E5EEA9A66493ABC66E74CD096FED
+0175311C18C6F3B577E3C58BFB9A09FEF317B94AC7A1226DD67E2A3A3552CAFC
+4314CC03CF0B48320EDF3906F21621B2D7BEE3698299B70EE202F944CE2A903F
+6410E7C05A79809B5C875AAEC9A4205DDFC737B3241CD6FBA5327CBF30007B57
+4BFC1497DA3FDD05D8101438ED5BD186D5D8DABEFEA21EB2F25DCB60E2DA4BD3
+6E782FEECF9B0EBCB42E50FF504E8A40C0BE7C6A43DD5BFF2305518944270A32
+34C2D562F9B1A2ACF8C05E3FE0418FDDB10776C8F96B6DA2B554A966C76847D7
+194CF2085C9D9B729CF9DB043259B64A98F96ACDD926E7A27BD6C0A851B0FC76
+26B7C8BAB18706BBBBEEEEAD8B1475B1011A402EFACFA98B097B26A733529730
+FC03A63DB45273DF559D98450186FC0DE013CCAB58E0BF9B23858BC144AF4AAF
+584657853F1893F49595536AE79FE8576BFE7320100B1B84E4448B0399C4726F
+2783F9DAD23DFD164C8161702A2935C2588CF573F340DFD3DBE1E9B0D813AB8A
+C3B13323271662029F9CCD1FB0C45EF425FD4D993A79874B70E579EC97967FC3
+702A9C2F35B4429B48209F97693806A4D959E7831950E43972E39B38FF86AC27
+10822BAC05F1AE05177DB365E1AB065E26FA661FD8207A8FFA1813532E7EC30B
+D4E53E9A9ABD40680B88AFAF53FC0571E6AE27BC40A0F76388E5D0229E2E1595
+B503B126B7EEDCC999ECD51714D62F551A0B96EDAF1E79CC134782DB35684CAF
+6B740C64F3BD1C89C5AAB48948F52B2FFBC9B1DA9CF690795AB1A3BD7833E4C6
+C0D4086BCD203525410C86C67092B374C9C470E7945A283A16C13CEE9082F647
+3E2DFFFBAB9838FAAAAF0587D48409EB39FC15E666249FFE4A7F800FAE1F4283
+BFB8D88E617E66DB9EB13EA2D41D0BF78158FEB44337804CCB239322ADC61B91
+9419AEC7F3F21374969D91EF2B1A4B13E8588B4987D5C7969C53D292E11C2570
+7B0F5B31E54EA40288EEB3DCA236D122C5D18E8805091C8B443E7DA62C87BD16
+CB4701563393DD13E0C0E7D18B1B37A39837FE150D1A7EDFD2143C33B0EC4428
+2B80952D456CE5183432181468099E9C0B3445AFB24DE79A664BDA3F16B1EE4D
+D1DA546437D8569BD9EA0B561A0E7742A4055B8F921F02CE9A8DBB5442A9997D
+85626AC2847CBCC69FEE0FE0C50CD0063856A60581C78A9C06347A0F2DC39496
+81AD75A6B5E26D74EE09EE581063774F1831C26DDAF910BCAEC550975C0A7AEA
+F9954F1881DB9C496D2197ACAE6A8069ABC257C846BDEEB1D15943FC436B2DEB
+11A1D0982DBE0CFCBAB99F52FE5089AAF2D8E16D43D6D1023D4ED077B8C95BCD
+09C050584B5F1E65473083CD46C10294187FC277D8F655CE5586D6CBD8C2C145
+1F8DC42A4FBF99379C8FB8D8B5BF501BA6C77C4F7983C3F7F7AD4BB5CEB681D7
+A66EF51E3D222DD88437C16EA4CFD8B31C0644E36F0C968C76A7F2FF3C0462E9
+9497A8D6000A16BCD597E3000E9F85E10F0032708DA7B50FCC53D89BEDFDC56B
+7923D6130CF9DB95EF5CB83D01C07EE9B4A5EC5FEC0174DCAA262951747B6669
+D56F651E980237B5C7C558DC0807C3946DC1AA63F0630D5EFB998EDBEAED3900
+5FE4DE1A2AF923B42114D546F936387326B04626B0CD44A0DBFB8B083ED63200
+63AAA6B24E828A62F0E8CC307D1EFB42E738357138AFB63E60752E1ABE891828
+B55B19DC32FFFDA3C41DF9F05DF9239AAAB9F196BA68A763082440804C7B3AB8
+FABCD82C9F552F1AF2CFBFFA1585389CE5A2A5E984CE02F92A91869A5ED0E039
+5B3F9D7E1FC7A070FCC41F92031F5107470AA90D7B535221A748597CC188DFA7
+DA68616806D95752FB176FA137E23517467EAFCAD8FDE4E3733D64E6D9758DAD
+6217A2A3C08DA70DC64383B56260575183A08772A7B5657501ACDE1118C5BF44
+9CEEA3D86F0FD2B43EFA5B8F1F58F99168683B393A3F9E84EDAF1D4E92398812
+1A0D12AE549B3557D0150CD0ADC04DA4C5B2D40E7C64C36A26896D6B8401B48F
+779C3FB593C2A9A983B533A7C99C9E43BAFA1FC9AF5E65516D2DA32924D352E3
+8371D19559A6FF8C311332C473BE41E55113C711C6AEEFAC9AE3A7CF0011F531
+61C693860994A44793336AA158634D9D756B0F98FC5D3E6826C71F2A1C4E1175
+EFD1047D682263F253E64B0E6119C09CD02016FFE5D7D950C26829B6F41B8798
+37A467DBC484991D9B523BA441E405C395E5187B6264D74FE2E3E82910BE26E1
+5EAC9874C77B5EE2D354270ED47A774CA5674E18F25F4BE6755B7430DD7F39DA
+F96CB74DE9C91B00DCAB75876D4586721AAB696EE3290D9F05F39A01695B07E1
+7DBDBD379B9225C291549E5D3C4A3D95B1ED277AF176890E32B2DA66A4DEB9E3
+1DA246BC679C12E6E2ACA3404A185C10F21721E71D84601302776E36F444ECBD
+BDE861941397E6ECCAC4EBE71CC0005266E40AF949FC001CE132B71789E0F037
+FF3B56690BA309F623DEA80351B1E5800D809790EE7C96DE82F264BBE9AEA406
+577009EB689F8F9EC15641629C107D8986323703567B547110A99DAF7F16C623
+4F3029BC7E504B4C37B646F9C49CDDCF2DAAADB748686BD9F6D0B2EDAB2051F4
+DA20EB487266D9C55F9F5767EA899C0BCED7720BAE6362A7AD81F5D45F6A709D
+3A27E50491A46CE17E585FBF9EFC2A27FFB50F00E4B05138C7D4F45A40B39E7C
+2ABB5DC0DDEE77E4BDA3901A67BB93C52241384FCE35EC11F67D6C8677C9F889
+F0FC365893A10E11CEE5CA0155064D8D2E98699961D9B26BE86D4B9A5E2786C1
+3CF260A03857687EA6FBC83DEEF840ABCE7ADBDC897CE6B06F6DE55BF3B8AB6D
+777293FEFC61C6DAD78894C873E162A5510A036FFFD9A10977CD627AC3EA4715
+F25A263E6331EEB9BE68DF97C946840841EF83204D9D313202C4ACA7BAF94050
+3B420EBBE797566277CFD3A7FA1AC6CF81FC24E6F336913F4A183B93BEB308A8
+4AE0CEE98B45B2C2683CC06374113AC12F79F98BD19D67F78E2EA586B518FCC1
+4C8B5ED575DD4631BCEAADABE1E9742A364C0D149AF83FD9AEB49EE0E12B08E2
+C4FC73A08F572AA40B58B5B44151974DAFB1FAA29B4D74038519590ABC83B0A8
+A22BD5BD843FB4310EB1E6552B45A5C64F2046DC330559996E77FEF47B4F2062
+3DA41A9E030757F4957BE97725F1DB6FBD15F144F5EFE357FB74BF758AC56A58
+F0F76D03C776F4CB58D7F549F11374DB4E2DF6A8DCF76F0EB394EB110A0477BC
+65CEDE077AE2D013A8E46CC2E4F0BBBDE546801E24FD5B9A6A4935F4799DD803
+13FAB011EDBD4431C31C86C4D26C0E729A067C2DEC602A5D884F43BD62EBF59C
+F552152162E45D18414D77DB32069C5B3EA64F465D6516335F3D243235FA3524
+E88FA64170BAE32117A35A9C7629DB90066A13160727FCC45C0BC95145AD8913
+075D28ACA02AFBD18B1A659C1DC229D0A6196A308DF639A002EC3A2962B4DCF1
+E9766188B7FA2448F7E3851F896CCE35E5D8644BB33D6F7AA17B3D2E03E2BAC7
+98B122F7370B1322D0A0CA0213CD918EC84EA6FA5BD45EA3B0E1C8EC168D6AA9
+6F6D664531CC8960DB40327B224F12C487FDC6A1E7211D90612B36E02FB7BE85
+36480D2293549DCFD64BEA4DAF4E1281E4FBD4C006C5200BB489246A7EE375B2
+A10826BF9CB311EE708421044375DB5F2165E4E07601BF25A1BD569C31A44CE6
+7E92A0E99939283BD2205B28808FE42C97DDD2C5B6ECD0ABFC114A3244B06213
+21399570C91AD742C71818F58AEF56EC10F0ACC62A20B1F4B9EB01571548218A
+CA7D6F9AD9B97D5D03883B8E1194C5BCAA032BBDA9E71572C157D65AEFE2EAF6
+492E40826F692D743DDC26120F0AA543E72E5BB697EE138CABC3295CB819C08B
+91F4CC16F5D3FEB1E839682CE56588BFFD94869EF54E061340B5E72257C4901D
+BF10C71313A1B9CBC7F7B01C746E9E26E670CC7EC077ECE404425EADC54BCC2A
+5854CEDD7563502EC2FE222F66BA55070448D829E3ABBCD360036C0B615E36DA
+25911D22FEB2BF2C7D948AD56BF70822D30E4A4B1DEDCD6B531D195D6C7BBE0B
+201EC0D8B0D68CA66A79C6968BE0879183BC145413A31466957A467B898778AE
+DB9D8A1DE94A5D3FD3DCDA47E121F82F84BEA873A053AA9FAC7D9433C14BBDAB
+FDDF6B0A4C73259C8CD62527511025A0B09F14B9CBC0F61A2231A002F8A6B63F
+4BB27CC0E6B9CEBDB49561C8BFC5CFEABD91C3BFBA8BF3C0850668A6C55414FD
+E3C4D537DE8DEB01A71592FC464ED5C8F43161AFA5020345C1624580F54DFED8
+00F8BD0C0BD0D33D3EAAD0896415FB3F11B6B79FA68DAA3A7C4CED48F322292C
+F56F1D21FB55A1ED75AC0CE49334CC8476E08E2A7C3A44F09CB8F78ECA27C5FC
+8DE7AFDA8EA8CD255CB0A72130797AC2EF0F0EF4BB9EA369CD72C068EDD01480
+8D8D0B6292FEA04E936758B4852F58FCADD8F9577D77CDCC7DCD3C9F0FF70EAE
+E676F83CFC7E5124D4A3DC3A081A5AA9AE33A2B13B416E5E032719A388955CFC
+2A9BF6F6D8CAF1D17A86E0041ECF792C4AA3D7CC7A962632D7B4C922BD792BE8
+14C684F6ED9948D2E4291036E2C8A413968B23287A0420D9E141952401E4D1D4
+1CDFFBEB8A5FAEDF20F77FC0BCBFBC94AE4CE330E93EF85E70449F662A4C9C93
+415406EA2619735DDFD879E27F9F90A0950B5508F333C7137DB094F9C3E2A648
+AC37B7849B07DCA55D5FF6FB36481FC33D7568469542DECE246F3D48C812BD27
+4910E2B22CADC88C4137A9EE44CAC9ABE9BAD8C73B3C6FCE1D91C6D4AAC76057
+076A88787D0025778E825B17D74D11C8FFEDFFDABB17E2825EC0FB52BDC32F05
+78E1C412CAB1C4D808C5B49D121E5B63914EE3766C2DDB8093EF9DD5269642CD
+E5EE962EE1636E905E62D4D538B595849D14E9EDC126029E2130FC68F1A9EBF2
+F48AC67C7125770DB92090A1E41BC52F6EE7AABD4750767E392C6BA0D751FE90
+AD495954AC54FC1FF8A10F1554DC479404264922F0364071118A9FD48B261653
+65B441634D4CACBC1BCCBD456F9C581EE3437C57039DD63E073E0D2167501081
+485856B43837F64A06A9FB01716D2A175F87E084957416CA9AF22F5B203BFC99
+AAE8C49988502160C91B026E2CD029A8F4B22328FAE0D7D31B11523FC275E7D6
+7DD48755D43734110A4EFFC4423545022E59FE75186D4A7164377C6454F8AA41
+23D5B97851E6FC0921AB5DA9B5F8B2C5835C2B6BCD8A0D02A020D7CCA97FE4C2
+E6DD5823BB7E113D31A8DD39E0BD931C56FB6DD818404B7B65B6056FF4D9754B
+5F70C9A2C6FF8AF493C037DCFEF55E8952E50E2617D9A49C9E7AC63F944C9517
+62A46F6BB0964E04C361A567B8ACBF9CFC369A7080A009EE679C25613953BEDB
+F96973E3A1DD1497C6E376E1029F3FE570E42F977C36C94F5FD338F243C66D22
+F2AF9FAFBB04047A789EC6043C2EB96C21450B11D25A59EDE8825F10AFB2ED99
+55FB7FC704D7B19B43329EE34919221EBB323A3F7AA7EFA10AB170F84BA486A5
+B14A49211F5D83510E318CA55344C80749364D0C523C8B65DE96C6CD673C3D79
+47F428C0C783810BB54CDDC6A4409CC57C9B627E4AF6B44EE83E516AF8FC51DA
+370D4FB0A41B35E868862A183B20114A8D8B577A4E1C274E4CD44875403AB236
+9AA6BBAAC8165DE9EF789151A96E8EADF67AC76E073F9E6BFECCA0BF75A4EDD6
+17D553C3AABCB5C5764405AD3C94D8A54517313C35624CAF96E813947DD0B1E3
+6B76D7F2D089940304D378255DACF0F0CEE0446C7158BCBA554B3B105B3A80E4
+DFDD9A41DA6D6BC69A6BAE21C37C4B25FD255DAB45BA1D5512FAB359C6459E1C
+665A7BF9E073977A0918339C1F8AC3C30D4D74EC97C66DADC47C9012C3781609
+F850CD086B04A1DDD9AA28AED8122A02C24823234FD31F396A192D221E3D378C
+E44B2200B24CEBD1682E9C26D45A9323A37E48EFF65424B85846D64D563A2AD9
+E63292B1485F5ABAE4ADBF54EA065C5048441FF0A0CBB10D480936D364CC5654
+BFFECF0C2A38489557A84C5667C5DCAD5A4E3B85F3AC770D81103ABC1965F3F5
+C9C887FB3D7FEBECF64315D2EC133B7469263ED10BFB9B4950E3AED113DC74EB
+9F381FAD3560B5BFA876AFB34E9BFEE12949063943EEA5F65A4AF4749B0E15E7
+010CAA9C7C6CA9EC2E33D2569D7F62B1FB528C5B5BE1CC6BCF217FA4E1006A0C
+ABE037E82F10FA4734FCF14FB4E03FC40CB23CB5F0A0E9654B10A54A131ABD54
+F610C986E1D94AB28BED44BB9ECCE0AE22EE9380B07B01E785A5292EAF8FFD39
+622A7A8EAB9236422239A0BA57ED81D4E2072A299A8D7CB76848606C90B9C06C
+4E5E54E967A77E2EC1E3694370311320FBBA2B2B9379F3021D5A99EF9A7C419C
+2AADE194C437EDB906B2205F0A412103DC40FBF93579E699A67BDA18858C35A3
+72F73E90D030C6456B59C339069F144783EFCFAB14E7159A8ECB9B0C80999B5B
+32E6F3D330DA167BA5DC3558012C0A32521904EA86E0503773D1DC35D512E77F
+E96C604769A529E4F66CF17B3612A687BEFA09347A37A4B595FCBD63187138C5
+FAE7BA4EFD0F605652D6658D699049DD525D682721775FEE095C45F52E0193B2
+F5DFF39F9F1CED442CE7D351FE3DBEF0019F65343EEBCFC149CC82030D45DB3E
+9FB5F426A5DCCCAF9AB592D7A5A793F99E259E3220A58F9C901E103D7CD721C7
+8333F4519F3926D9056ECDB3E84C6870447ABC0A2BF1A32A5CEEEB042C7553B7
+90A130CE5EE0289EDBBAC28B8F11D3481815AC6EAC746F45F7D72A262448DDFC
+F1F4B5206D5C331AD195E7BA74036C74C5B84576603E380AEC07062FE1063C59
+3942E6D9F19C93F90B1DFA3EE57E4D5D527995EFA611D32EE1E483B81056D3B9
+30F1D2DF8AD13A88431539774BA5B148E4EFBB9F2113C54E2831ABD036663D0B
+6B75B19BB681CEA9C64DF48805EB4AE8D8CF7D102BFABD9D99BA8574FB1000A2
+586F547090315593FC6F3B2775770DBB7882425AC88A106B9B04832A215FD0F8
+874F46559EE9834EEE8CF349C7A2720E27E52C56DFAA696EB697B5C0D105DCF2
+CCA41D62200CEAA609E9412A57E84C43AD67D30CC5AE207552B3A5173A90E50D
+9C7B16886BF6C07B49451530665C8684A9684D17FC0D6434DB503BD770FCFBC8
+06B8AF060E05C9111375699E6D898C00BFC9AE0DE977F13A23763CC5814A1ECB
+9CA65D863E26885FE22EBFC256918090E0D8EB3267B8DDD9F03F1469E97A0DE6
+9A6A296137DBE9E3BA094A4372AA30EE525BA638DB2DE2BC600175CD87B3421C
+2B60FF41FB2D3CCBEB7C1D12D7A618C2781155DE1407F5F5
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -479,17 +474,21 @@ dup 52 /four put
dup 53 /five put
dup 65 /A put
dup 67 /C put
+dup 68 /D put
+dup 72 /H put
dup 73 /I put
dup 77 /M put
dup 78 /N put
dup 80 /P put
dup 83 /S put
+dup 84 /T put
dup 86 /V put
dup 97 /a put
dup 98 /b put
dup 99 /c put
dup 100 /d put
dup 101 /e put
+dup 102 /f put
dup 103 /g put
dup 104 /h put
dup 105 /i put
@@ -499,6 +498,7 @@ dup 109 /m put
dup 110 /n put
dup 111 /o put
dup 112 /p put
+dup 113 /q put
dup 114 /r put
dup 115 /s put
dup 116 /t put
@@ -532,177 +532,198 @@ E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7B00AD58FAF645
1297991B5D01701E82228D0313FC7C66B263BC79ACDDF9AAC48A3CBF42B96E38
583E1D059953076D68148DC8B6C9527B3A74CE7DEF788A11531F44120BDF0F61
0B2F3ED94EEBCDE4ACD23834C242AA4314B9EF98E4BE72DB76EBDD0A028CEA9D
-B4C38C1F2D24B8FDE686832FE96204552C820E45B6BAF0C3308742AE2915A09B
-A12788A5A1902F494BFA6D3D8E7D3F247857FBDC4540F34844BC65D4B95BA35A
-4F0AFA9C4CE96EE03CCFCF9CA4EBC6C562E1F3E255BC13F242304D2019088305
-B61DBF492E6D6136384D2A6E5DB9977CA255A5144EEDCC88DB8C4F8A962CEBCB
-8820C4B2BA034431339586A00D582DE8E623C227E39AA7455861809AFB5B6725
-214F6A31E583060D29126B4BEB7F3E9DB88F3B7568BCC18761BA1995D31088E7
-6B633C76E872625E262C1B5EC1B86824596D3E7B73D46524F2C64F624B37672F
-B98FE7BF6BA0771A5C45AE6C8B95156132401A6005F05C5AF331FB7FB21649BA
-77D2A2B3D0AB4205C9BB313FD4F95323B347952D94CCF1455BB06C97E45C7A14
-4424312D5A29CFDBF5640BF975F750FD315CAFC2518F8D1B96D06085AEAE3AA5
-A0836EB2981DC185509E92259B803EAE354CEC33CF5EE258D0F22DEA8CFDF2A4
-41435BEC5495D7E9295DCEE136F8A69518F66E7E1220047737F4ECFE88A89D43
-1FD914A871426CE539F372F47A12DAA25B5C8ACB0B1CA9E3E47DB88EEA3AB3F9
-533244271F81F4E45908DE031CB50E876DEE5751471D88CD1117384D518F9A6A
-67C2E9306984D25A0D808FA9E308BE3BE429AE3CF6BBC013C121C9EE4597E836
-9A62BBE57CEE474B996DB26A0A35D7CD339EE00273CF12C6666384DEA793707E
-94DB72AF6A07AB8E0C047618C79180FBFF1A7C7C84EF3D56E8B7D521D2615AC0
-9A558E1746A8A1C375A87CA6F8F529B46CD515341310406DC41929FE41837A8E
-22602E4B7BCF7421AC4D329121FBAB7F802E0D40270AD04120D48986BC2A8FA9
-15FBAC42FB99905C97867957692ED4E90822F6EF13756835F75B37125AFBDDC1
-A8ED6F1710462DCF7D87D6D1F84AD9FCF790BC0E47621CFECD1C91EF82CF4986
-034D260D2ACF63B68925EBE936A9BAB8F4DA734EBBF0ACAAA1B9EC036FF90A6D
-807A3610D99985AD47F2BD5646F00A28351DFFD538228A168732413F4608A1A8
-931CB80EF0302C85F15608C6F40E53CABCEC3B8CA324C8E24765A6990A9BF834
-30D641CF15910972C77FE46E152B3E7B1C9485C7FC675AE7D1D90C49002E2DED
-CB340E0BB0F0184DE82E5956F51A3FF7CA41874340C84D1225D96967AAEE443C
-A34F5BD186ABB1394B72EED0F74366DFFAFFA5F19BE3F94031E9169B3371EF31
-DBE3200B562C3F12BC36E5E9DB16104C392F99BA4650A218F0CFCA1C90121937
-BD17ACDCC2B6C55F2F6F549B9B0DC360DFC3D5F794824B5F26B7F2F6CD718C34
-7F118DE9CAD13828CAB630D352FBB4BCE0C225E1A3D42CBE0DA8518324142F9B
-B0CA9EFECBE9EA815FC28149955306A47042C0AA318519B1EED1C7B01454A6FE
-CD773F7BAF3F51AF9F13B3782818CA3A5C2804DD50614C6EB270F5A5C0DDF367
-C41858958DF6CCCCB7CE8A81CFD93EFC0784BF65FB7D1E55B1526F38C1E9ED39
-CC17F6C201ACB98EC46671087268C47DC7772A439F8D5206E3B0E80935E67976
-5402CBC80E1A5DC8B6A421CE93586B43B5CC29715CD61978F1CF6FE34B0DFE9A
-B51BB37D78EC728B1E3173F530B569D2847ADB7208DAD920A59FD8668E62054E
-393A34FE7E2A06C0566773D831C87344D0A541BBDBDD53006A029C6A4815254E
-F8111D5317278FFACF32C4712B1924241E2BDBBB8EE0F1995DE94D5C4A5856D2
-FF3C00D0DB758842D4A7581B17AC15BD99A7EF1C69E043FE4AED459DF1FC8A76
-EE42FED525A75C0C05C94B72056988BF0652931EBFDFF7538EACB751238BA690
-99D37517F55E7B51A8372AFBEEC7465B40847FC294BCDBACE9A84C9F64F3F304
-79128F04FE2F0C6B45C89322957F508732FECB82A71C5BA228235B321C1C26D2
-098EA9A9E80D69CB5320673B4C42E117904B6BCE2314E2013F0DA105952C4B55
-5E9A559D3B20B2BA8F10C648A921F12BD4D847F2C917980666523A7985BB4076
-1DD934E6D8592E778801CB4FA60633895B0FC107FC84DD7BC14D361EF3D685A3
-BFD5CC49728D51558998A83D8E44E4023F67F22C38AE900A240FA3AECFB61B25
-48F0F63829B80DCE6F2CD8CB511379A51B07D7B4C3DE6645D2AD0087BAAD264F
-C5D813919F643CBA8BBF5B4C1D8E7383C1D8226FDD7470DB44B3DF510E150D50
-F17355FDB0EFED27C75CCCA0AE8D0A551DAE084DF67217BD5ABC1CE98F932C57
-83C9013D5DDAF5D68D1C38B486127790B6A8F2AF539680A96C7EF31656A149D6
-05842DE224F392B0E0E3B7841157BE75C1F35EF3D32F8B8324DDB7D77DFA33FA
-C9F3142382E0049F932CE7C7C601906CE81FBF81973E95BE2B6E26C067661047
-74CF8CEADFBB3BBC1FAD686062A0EBC3676EBE907778F70F9CAC563DD0218CA4
-D26416F847843A394284F6C5810887881B438226E0E60F9A792CF2F8943DAB78
-132321ABE20FFB45DC1632BDF5CF396F3885D512A407F74C8010CDFB0F61FFFD
-24F18110B1B3D99E76065AEE72E1D98A350E5F1C482F102F140FAE73BA1CA62F
-5BAC010827EFF14EC650FC2D4DBCAECCB7E034A7F1015AFD84874A48330110E1
-57CEC833C6502AB566E33EEAB696E669F175EF05D7C405C2E2767B6017BB33AC
-61AD4E0F520FF68B59DBB52201C26989667705F88189969D7903669FC291BFFA
-8D84D0F466538B4F5CD9AF03D028A464C6914F6F7B5C1D4959A91681F7A6EF90
-D8A6AFE10597EF38BA4EB58D0E77DEBD51E823AD0FD477CDBAF3B6499B47391B
-CA8AA2474E50DF4F2D5A5028467B39014A99B772651D8447A7AC2EF09E795C34
-1218701D8596E694B1F46CB61BF48FF611D80FA69F930ACEE5FA73595546EF83
-052FA26CAA646687EF28872EC6A2EAC7BF2359BDB3B6BAD945E4E370021EDACF
-4E746D19650B669899E489798343584B16CF0C8477561B4F5F3B8D4743A88150
-0445F3282C196F965362E9F4E0EE4E7ADC0CF17369560B8E436AEEA7DD429EEC
-ED5230B964B94EBEA505D6F6B7AA52F51CADF6CA6A8AFAD10B85C9D76C2CC4C4
-A844C84C10670C6E4A4D0B70A638936799FFBD9B5888A4E308A0F20027FEB3FB
-7293B0CCE62B601FAB1B0922641F79F615B57F8721D1BAC5C50EB0AE4418DF37
-2AA06A808F0384859E6910113BA86FF93A40388DF2E705A466358E5B08C685F9
-2418A2FE3168219D257D481758181ACDEBF81F74536C2C154112755E38F5D401
-8ED8CF8FEBECEE22B1DD66C5DD28B455294D978BE941534146C470EE5FB45DA1
-64E33C317D0810287C37C72C3E317D2BA1C385EA76ACB98E37913E3D26E7BD54
-0A52424B9B595A9D093EF089BB9726A72DC6E1B8EED84A1BDF9DD0947B2AE2AB
-37794E6CF24A69C0B77251163F3A21C77E9EA774E9E7CA702AE8187B7CFE6D30
-3947050FF3CCCFD25B8BF14748694B20B8536527D1596167F965200AB78F9C09
-1C944D90F2C470AF23AC6BC055FA1348E7AAC9F0B624E3FE53439F2061A367F4
-61029331EDD288320882A76BB5C661945010557C36DBFBF54C1048350C0EA4EE
-B4B8D8EE4CC7B2D06ADEAF453BAAC7D7D2FA41ED42C83D1ADE2DA521BDAAA26F
-2510B7B33804538A29476DAA100888B1638AD23AFABBDAC2BA37E6AF18005C55
-4AA3C6677DF16E98B5850DED745DA7E5E17761F70D82C781D56B218C1AD1510F
-A9E184124A013FB245CAEFB3CA3D57196A0D908E74AC47DA641FE5A6331E4F3F
-6720587E1F9C959E6C1B7A8AED923539A9CEA010CD4559C138373AB1E9C9CA3B
-E5297FA4370B5094AA3CEA1107BAA8577E3591EE397452E4B14F42FF4FFF8A7B
-9018095BDAF9BDD70E85F64C8AF18B03803D09B9FFD8CBE81E4EA0E002B50762
-E79EDD86B0A6F94F6BBE0743BE11ECE0B201DE5D6B8FA55DE07FBB31B6DC2BAD
-35B10D25F3171FB55DEF60146F05ED67DC68E8D330A1813016B6B86356367152
-3ED8700B1850017301F455C98F35DF1B671E298EFF48C41F99ACE3B38610B5FF
-3BF9E565F58E253677CE3548F44E4B172F09091031FDE1F15144DFA5B73D381D
-593CA2F5EAF3865D0441A0834CE4876529E987431B97D8106A7E142539915A97
-E3C4B7FFD8E875412FDEFA2C5DF87992579065382C37979F7EA82E49436E2B67
-ADD4399B151745044E954C65ACD562C2B4B5BFE82346E12FBBD51433B5352C6B
-5DFB7F60DEEBB2ABB4A0F83EA50D7521AEFDE06DBA97949EEFD82783437D8185
-F1BF6DD4B1A304309AEC183B3F489464078F5DCB7E2E10950D9569AD61E48431
-BDCBFA4F5C3E4BEC92B897FC608CF5D0CC9EB4DA20B3955B6515D0FCB5B9A14B
-BBD0BA78933FF2F7CA45742D3E4A737129B07D07BB75E5935D590FC2305D0E24
-56E127D3698E7E5707CF3F889ED2F4FD8B0F4BEE722D5471EF33502933994B0C
-38EF96AF355C867C1134971964287C35D6C6DEC091D41941897805A4BD640DA8
-5A1EE0EBCA306FA06F7DF297F56C5B762D65C64F3E09FFCC7AC6AC1FCC45ABE1
-5696161E1525386190A694FD8FF3A314F15F3EE1204444B405051DEC330F06DA
-B6C430719F9089EDBF3B7B87C9A79ADE69387A210CD2F25DEC73B69E0E98D440
-177BF4C1F7D95C1DAA65C143A3B50F532960A711552B3B3A664E85ED5EE769BE
-E27198F0866B6B97341C3569E9EFB810F3460B10D01CF84798A004F3B169C5FA
-03C5A9AAD13BE27C78FA481A8539822E3B97E1EAFCB098C7C131CCB7E3B8DC7B
-40D0600AFF86D35501AF857C5F2BFFEF9F8CC5E70B478635BA62CF41D7081522
-A1956B8E1AF4CF2CCCB1BADCA9C2B656791198D25C2249BAFEA85D3178F545F7
-5782FE14CE478EEBBEE829A1B73E157A57BAACDA1185E40569B9A5F82C29F998
-4B4FE9E1EDF618A714355CF947298BCD5F4162DDF08905E8A27863D324F7B598
-3DA6C24269C1B9F5E1B1049CC5B86E55C8F7E6A816EC019BFF3B6A4870E5C776
-B26ACE6D4DC00ED3B51486E69457320275E5155B689E951C23A544416546E11C
-580D88B0B8F9CC0B712825CCAD512E24B590DC3A327FC4624637EF4DF869F53A
-D7B781E7D3807966291528E3A447D43A4ACF73F2C475011EC8C43E99677EFABE
-3A902171662C985E3D21175B7A01E0620C76285EA215ABD06DDFA202B4FB56C5
-7CD837A0FCC7BFDBF44435598E69135FAE21889D2351E1BE014BCBCC2A24E50E
-21E1D6B5757A897E4DE82499F0B5073F4F0F0598107F153E50CA26D4445C63E5
-6CDD64EBCA3404CECC59039F2CD88898590ECF67D522000F1690A07A940DB07E
-2EC618050E3B923BEDFFE2761D02B1A047E664D316875D687C0ABCAC419D5492
-6BF9EAE9B9EA86EA63C7C566FA4B34B534F57DF58C2D83E78A1BD15169B15F27
-7C58BE99675311AC1D8930027CC7DDE0D4301A40872C56F2ABD153CB90730190
-8655ADF7ECB69CD863DC5F1B27A9F54A24C478E574CD45C4443957215161CB05
-300F59ADB4760F996FC9C0A62E4E9E58C5AD2FB5622C53F2F9E8285F777F82CB
-916D9CD0CED2A1169D16D06ACA8B1C55208E0204C79A0AE24F6B0CCFF61BFC1E
-783EDFFD4F9DF7330A516FF2D29C05340C6A3379B0A2C649C30DDFA43FCFCCBC
-44F53A5E50B6F4413263987D70008811E2BAECD443C2D05322F7EE9042E96FCD
-F4CF95D4242CB77B053A6AE89C25B4B08C2F9C89A11E887A7019C0454F27E491
-0DA1DB2D069FD3D879D1E6421F3A25912B7690BB66BF72150467399B05AE12AA
-B4828FF7632A49F67C079511711DCF4DCCC3EE292D5EDDDEBE2EC1C1502EF58A
-BEE3A1D443722E5E86930EF72183C9C4B0CAF547FC31209DB9DCEFD48165E7CF
-0E2816DA8D5B35F642805DBC1641BFD6A1E09DE581B6B76994BFB99F1EF25AEC
-1C38E9C80F840503ED1FC4657A8BEDF3BEC6540494FC58B07CD67FD8F4BA8827
-6614F630937C98EAA03A91A98BF5EE4DD7724E6984BF91BA75E54D706134EA71
-398066671600EBAF3DCA89742D0B4C9689B796C0B9884067AF329E44AF3AED93
-3C7B9F59DB76BAC6B4850322D8C159E6AEB1DB9FD3EA7273C6850A33F4FD2782
-86D7EB96B6D3AAF6A9DB4E9DF8331A728AEA9D3B2AF914D2FA3DD6DAA70B741F
-3420D88B36B94B92EA17DB0799A50025188B163FAE205713E738E1B50A33F3E8
-0F232F9E31308C032468024246ED7322E2E44E127479981B71A289E7A1B2110F
-A13E49E97CE3EAF20ABD1797F23D4A6F236EEE5DDF150F9F8B01FA044B8F95B1
-3EA5A8670917D86885E8D4FE191703A715BAA4BDFB42E6FC96F76E11A5DC5103
-1F04FDF57376FB321C08363D23CD59A436159ECCB2D90238D534D94D0AB51538
-A114390A7B0B9219B0A25ACED84E6AF2DD2615E2A227A2AA0C1ADF3892B04FD6
-52A7398644884CD1A0470FE426D477321622AF78F9489A88FBB451F6750B5ADB
-F730B99397666FBFBBB1551653A7DD2726213C063FB229149BEEC49504BBA968
-8FEE705C67AC73DDCA678946A63AF615BA989DCD2D1CEC0B73D93AF362CF3259
-69B6E3F7B77BA7143E529B5A4565A8490497B59286A7F3BD3349AEF709756891
-1F6BA1F9F1E106BB4006E0D6CD39B34C3363B2AE9FB73C47C34B5338770987A0
-55F7145AB5ADB4C4B3E4E73910CB6AD490077E0C4D2B9B9DFDC74949F73FCC33
-4E3FE1ADC9AEC94FA920EE6A879DABBE3550BFD30DE58DF1FA30DAC830056882
-B255051AF1C48F34CFFB643E8D6C1EC37008762C6A193B70EEA3E157F2301148
-D3AF66127B7149BF9B08F45FA0EA52A62CF727076DD48C6022ECBC3DF62B903D
-2CDF07A03190E6A5F22D6775591679A3DF86AAD0D3C847C5B61BCF1DABF43D7F
-F03588B7522B74003A5238D41B64BF814025AF0A23625054E9B3089D4E6154DD
-41BF0C1D68B02302949B41FE36077CAA9B00893767FD86AA96ECFA637E43197D
-FC8745EEED535D6FA2EF28B88183E7F2199ED48A6F61D922FAC699D3A2D7A5D4
-153ED07AF6AE9C8142CE930D8578128953FF64A171701C1CFB85A9407746CF1E
-883752EEE13C4EBC089C9F1101EF883F83038E0E102CA5930DA73319CCE2278E
-7AE0399D0CA7CD2E90DB774ED85CD90E6291E76FACE0348D29E04D9F4F3D010B
-3605BDC8C24EDB205AC2E9B5EDBB05EDA1C1349CFDB709094995F159CE103D6D
-D62440C81EC82860482CF929BF782C689C51EF2A4AB3A9A8F8C5D25B6500C45A
-3F7FDB6A1F654F5E87620B3C5AA54FFB94FED800F40D228ABEB4EC38730E44C6
-E463FEAFD08917CC8DBD5B364B5147D54A2A16C1786CEAE1618FEF9574486DA5
-D2D56D77DA346D7CEB1C219BFA3AAF3BDF6443AA22D0E7C8D307753FDB189AB6
-FBC22A2B3DE149ED2C200BBC62EB7871FAD5D86CE4E82633E588CD6568E686FC
-EDE89B1FD804D16B537BC4D282B0DF790A04047C1480C8E05DFA4BFC3B3859E8
-64910523F14519019999516DE6A9F872C8CA3A340357BE6E87F8889BB1303511
-74F0E0349DB0645E09DFE2AFB71E4C73479B3E7B8A9BE47E0D9F944E613FE840
-34D9D5EE3C64EAD2C233035917F914DD93C94DD4462ADD7D03671C573CB07A5D
-45234780D20EDF94911951355AB2800B42E87C84712311FAEA48DB70202C8AD0
-2A7663903F9830C25009E48B6E558FE68ED56BA54F93570A14C1706A47AE798D
-4613A9CDA2CC28C7631A1DF4F5276CE1B274C9860C6C076298C38C9798D5D35A
-D1A7887B490FDEFA656CF8B6626346173050A75D207DDE3F51C7B8F95639D7EA
-05DFF8
+B4C38C1F2D24B8FDE686832FE96204552C820E45B6BAF0C3308742AE2E064C03
+13C2E5064E4FB036548B136509EAD0CE1430E8DEB4A519BA4D453CF1A9D08C0A
+1370543107E6ACFD6B0EA546D6AE20957BBBD632AEA43F0D35195DD85E1FE38D
+9232D3F01B25A601E60C7C08210899521C600251D5A7DE2EC34DEB235CF6D122
+C41907F1D0A9B6E6AA98A95BA8A978B7D3F0275FA21137935B1BA53E81AF302E
+909F22939F91C57C2348E8E085DF39BFC1EA7921A5EFCE7C6ED845006548ABAC
+3B1C34CEFF31F0CA695352CF3B5E0972F82341178F42A34B85D8F66DFE822759
+EC1CA1BF94BEC645BC4D21B32EB2ED15D19EE2856D554D227313294DB0B2D9A8
+C76A7C0D9591F95741D80B45E803788990332DC2353166D899AB085729208770
+74483B0FA3C2C60B3423B162044839B6FAB217AC35C6387DAECDFBF8A8A737FE
+185F2FB4C1541B89B9FF8B93E6CEF5BB0F9B9952AACE0ED10928DE45435C4B4E
+E447F1AD61592F900C77FB7C72E64A28403AAE2F4520310EEC70C446537DFDEA
+DF4359CA2CE513D87589CC631973179DD6E1AE23E53921FD1A841A90D38F47DC
+30F66556F7BF1E05CE14DED5C7089DA72C40B4C44FAB4605F96FD152371B93BB
+49C5AC1285CECD661945459A5EB53015D07E10BA67911019F8C84A8823A7F4DC
+A995D8B1E661483BF883F7463BD941D5FD7C350291CF305C9B2CC35131C324D8
+CAA9C155DFBC1150D23EA3AFFACA3FAC5D71CC3F076836DF36FA334FD94D06F5
+4AABC54D16F3AA97F6A164A3CEE5F8028F740300097018E3462AB81577E2497F
+3BDDD1A974FE984B721DE8C6FB5D2831876A1C8E1AD143451765E99EAEE82DD9
+67B5489546BA5CEB4CEE8171F3964A746699FA3054F85511B71AFCFB8A6A143A
+A9F126C167EB2C93D0CA1A648DAE70979CFF590AE1417400B66E1FEAF388613F
+9451F520BBBFEEC6E50BBBA0177FD5430AB47BE66761F490537C03FF333C7821
+61AD6FCC384F6A5F4F07B2B1DA50B3EF8FEB9A0C73FBA743BE8695F0331F361F
+F43A511C8FEB2274FF1AB3713A60DED4EB43A25435F5519000D68C78FB844EDF
+952ED6152D650A91A64F870374834119B28233715E228D2E9EFDD1571DEEC597
+8795250D17E2796A3013E9E1BBB5ECFE2CE29F387C860B87DD499BCD15666004
+FD6008BC8D1A8D3F84B2D5F1AF0A1EA4D05385F36AF908DD66227BEF7BFF6BE3
+FAC8FC06C52CC3DDD060A4CEE689E2CB3E47D6C0575B6F3C73EBE28E98191F73
+8C8ADF27453B58DC94CD68437FF99F02A78B6A277304AC26AA9DC21511F7CBC1
+6A6DB6759FA5CFF28F7B1C3569C8284FF42C63C5CF0155AE7F42199E5A3715EA
+BF65A939F173618C61AAEE1C35C4EC4BC15B29EB6A3799A2EC26E4B9D4A24C99
+0531D99928636146EEC0475A746D7079EEF6EA939ADC9AAC19C28116D2BC80ED
+7E2F58792DA34AC8E65083ADA7D70F4D019C1769ED665A42305FD10CD718A27E
+6679D78234729B44D86FBAAABB4F4E5A13189962B37D602AB9DBAC45621B3F6C
+E6CFB15861F3BCA2F089D635C3040B582C0D5D25C361F7841DF3904B5BDFB23D
+E0FEC3D7B55C5FF5CF4E90EE20744CA89D5A8B837F61DC175585F452BCC96A0D
+FAD5B210F6C783C6F986B1B8273DCA5AA059251C37E68A3450DCE010B9348CCE
+916F08B2FF702B996A7B965756A23EEBB57BF02F6D8784186A1009C6FAF71E59
+64F282E70158CD4C9AF483FAC971B3981B3C7CB27F6DD5444D7D451CF8617FC5
+2C3770567A2913E7362BC1B09B1CD05D47D31173195D01BCDB6D2FE2322F8A66
+E54B6C93DE29D1EE67341F40C0EBF6DAC95E0B626A0708B31FF688B35EAFCE3C
+6FDF759FDEEC357DDF44028217547D0271C587B373462AD9069BF54117A17405
+A6B495B9C406B64F6652B7E0E40EB9526DFD4CF86DF6C294439A0F1F7EEFE9DF
+352ED2FC1DBD2280A18BA536AE3091E02192801AF43EB47C1941C4B0609DE405
+163A8840C553CCBD5198EFC7843119AF94C14B24946DC1C0132B33A02D24CB61
+07FC4F69BB1EC6A1EF2C95FAF2BC3FFE6328F7DD5001257181D5692B7A342B60
+733C6AD92B7176EF777EDFBB0116DDB11D6314D92DF13611E2904DE148F8A1B2
+D85D274A7B0100BA1A2F1D18CA404F0268DED666AB2BBA006560209C1593E563
+1EBF2A9A26B2810804806AEDF9CA1C16E468DEA1AADC36BD103B004EB1BA1F8E
+95DCACFAC47162CF34219106CC03D4D36ED72C85AD91971AA16B55F60CE62A37
+320CC49BE3D563BD479994EE19D79EEC05678D93181F4BCA9D5FAD21DDE1F9DB
+AF0329CEED9E6C52DB5B43BBF32D54A8D517CBE7C531C3B7193D5C002B14E8D1
+9663E6ECD455F8F1F3A6EDD072ACA0B3AFD9EB7AD8BBBBDCB92BBBC9FA180941
+0C09795F34B71A0851B3063B5F1520D89EF0C4C8B19DD6B4C84D13AB03D65633
+28B6F1129D38D2F0751591ED06311D473B859DB02A515F431979E2FF958861E3
+22C40B1C707761E6C0DE45311C0EB08C39FD68D07F8D484FF6EEA6FCF937B713
+927AB4DF31A781184F1A05672452CAF150D26D6267369A4F704AA369D6ED09AA
+B0D816A6B8DD82DF713EC1018029873D980DDD4908A943C8BFF6317E05B21DF1
+1967F084B0E38B58B03FF81FBB9918BEBC8BBD6090123216D9EC57FCC13D0848
+08F6F13155012058161FBE407900624CA6A52E4DABD28D10DA950A9F7BF9D3E1
+8DC09F3C2809B037154AAB286036D3496F3A0E09804ABDB0ECC63EB1E8C6CC47
+AB0750EAB7DD4FDB835C13754C5FE781FE2E80A0E59D439A0EB124AF87E12A60
+C761BE135F2AA7700EEC3ACA40CD473EF2C29CFD4FAC16BB8C33AD44821BE014
+0B3DAC12B8D652177DA038C0807D2FB91F7C200FCEAD90C54A6BAF411A3F0D03
+FDDE2CE9CF3FA21B738C217C159DFA68DA642FEE62F81BF4BD6669CD19C64E1C
+A9762DBC3CE34CB63F927B1B97487D91A4734FE956A25FF52E890649681094EA
+33B65342017CA48001BCFB6553E76BF33D486C2F1AC58385E34F5F9CD17CBBA9
+18DCF8A07CE105E3C8E2F68CAD80973CEB6DD6A3FF621A0C497DD4DF5196088E
+733440AC2225592C85419F50B8D9EFBF003CAA40B351ABCC8FDA09C672EBC90D
+5454021DE4E83F88117E12B84F944EE30AF7188428621B9271731346928DD626
+A270543570ECC7381DDB6F141272A319024773908C7ADD9A6A150A419EC46907
+6B9A698E94EC5FBFC60AF0C05F680C9B31A148136496DAE7E06A8D41AE456D48
+2C9A892F0A84D6F5181F097ACE07A931C95003A88774CF0C75E57F3CC7A734E3
+D1D8E68218BB49ECB1228F36C54240F77F68BE47651D92FB90854F7C2B0BC424
+301DCBDABB1C1FF1087A123C085291CFDBE744BB6B9E4F8A820777639487502F
+CE9777BE51B8744B00BDD43C323848D0EDADFE493FA998B9C64B9A386FA56361
+D29C95CF34F98A7B5C5D5EE6677147E2A6065636D4614582EBE08B549C3E7011
+8302A5C55F198F793FEB51260A86FCAEBB4A6F12053A64E91FB8FE2127335043
+F56BC57BD9B7A218ECBC579694F22E154CB708806AC19D8A352F2032F924327C
+E6E85466E9DDE0BA73A253F08CA279D247BE984CAD4F99AC5115E803A5F9A65D
+C978FA3746431F7DE3E7603489A44A582AD05A715AABB7E2F510B7554E487E2F
+039F4757BB77AD428C8541D11AE29287344C04B9382C41CE0E848BEE3557AC54
+05150D36FD87986612C5C7C563124004EA1AD708708FDE5DCAF3E196D6CF668B
+6E97DD480EE5516C7537760D8D63DF777276E73F2703040CE8FCF7AC2946E929
+2F1F8FE8C6423C49CA41B0476ECA2FA84C7CE4B7CD68B4E232FE98DCC13A9749
+5CE172E850958BBEC4B9571950C359EA9BFF6D45E6158F8AC04829E87D485319
+02A6E7F7A25BE0A9C9FE1AD207AD692269B85343AE3A4356B5A3489683573FB2
+C3A09BE61A6922A8525C30B098F5C1A6A6828B7DF472A651DDC28F2CE8418BF5
+FC6EA6EEE84D345ABB8299A1621B19A457847BEE09FC71D9BE3013D8651F4CD7
+39486C39D7B050BAF21A3F7079190885EBF54CC0C60069458115BDF081E18C25
+D9B7267530E5F6D6EB77C81140B5A824BF1B5DFE96521106F3219205A6A446BE
+D03B70C432FF3F25D6C8958989AD94F14FC06880D039EE0BFAB7EF746C48D448
+C7FDC91826DBA6A3756F12B9F7BE5AFAF2541CCC069402766D6D331014119053
+73E4FF09272389AAA61E9E99E2694B09BABB59E0D5A4F8F71B870A1AC9D8BA3B
+170EB81339F3B3EC3C5133AB34B13695F42065E55DF4EDD8312F78A44D088342
+E31A30C6E4719931EBA51F917F60ED594F0F590D4BF6C99A74B0CDD3947C7176
+326FF92DE1351CBB50B88FE3194DB20ABC366AD79480259FB7F6AB11CDA44C5A
+3FBD301396CE1A2C030843D69A9D32A1A008B3B66AE82941E620A9E7B962C7EF
+59E5B3CEA2618E69D265CA5716C0770C081590CFFC044FCF02D37B592FB7F0CF
+3A70884DA16D0DFA619908C729184959F84522BA144543350C44E5673CDC23DF
+3D2704CE4ED07C1E5D810E0B18861A7ABA52634597EBB9492C9C9889F642B835
+9D4789E637CD54B9F91811CF3496B3457368EEE9A9A6DE2008576A1F935F63DC
+2AF34F2859BA1239814B4687E454F4134833EA638EA5A20996991541EDEF8753
+A7EDA763C56C4FD440F3D54B9F57E2CDA2999646BCF2CE002E9DB075F5B45081
+E698CF67A55690310A70F49DDD8A0F0944A48F16AB60C990C346EF863C84441A
+347DC73FBF7F46EB6D6C047B222033E2C47A5105203D702EBC91A344D0FC67A3
+E33EED60E68E8ACE6700F33167F971473B5302C529248F4F9A9AD263AAF1DF32
+38C21AAED0DF94B087128237BD41AB40F3662B541932A2E9E851B2262A6CF354
+4DB8993F250FE4533FC2C8D52CD66CEE480D2136F2F1D6E98E0A85597F84418A
+3748365A6AF37CBC624166F801379AC1C8543E3E741239EA92D4539BC5B31F03
+0BA0887FE98E8116D143C6C17A83B834FBB55E881AAAE75EB3C3C2DDB2D5DB7E
+7AB1C00F8FF392EB7E676B64B9EEFA774F6AF239FF876BE158906764A5AF6480
+B0DF4C5553F8FF1AE094E8C5CB48476EE34B1D3CD20D7F502BC49E03C4FAD6C2
+D4F79A61DA5340F401707AD0005CA2A0022D2AA21F651E9B9EABC388D553A23B
+D7CC2E8F192668C93A134D3EB8686F297290C51C56F192AEB20CBA4B6A05E51B
+74FE6DEF2E6308F2E8CFD0C38B01D362362205824535E826E154DC0D7B6F4ED5
+7FE86772AC3A8B6C69E2D7155F972EE2FD49580EB15337301E04694E34C2A63B
+1C3E3F108B90C7728978E159D5B215E5C0F48EFF93A57BCCFA02737085CA2467
+849195BEC7831A4813EA85E69E6FE5B2D6955876560182899AB2131BBA579D0F
+5A82372E80CADCB4760CA9806A6502DE1726EA06E8D2637499215BCA41A4CBE2
+6957947C43991A4F96026B3D3AC9D7DA0F62E8E7CFB78F3755CD7251E45FD8C2
+DC940C5567A0BBAA40720933E02096CFF49A78096EC19EC8A871C119039B5690
+8028E8DA9683BF7DE0CE57DD65DCDA5AA5F4CEEC77A41EB5E58B44A23B54035B
+FD9CBCB225A01FA468FAC2BC73211D8BA007D4B503C4F9162656E8302396D3D0
+E4A8102DA684FB5987A8D757539ADC071989A25FB66401FA47034C44581DFF55
+4D3DB44CC54B1284491DBD523520ED0E9D0F6D21FAD634A588BDAB15E8B62C34
+36010545D8732BB30511CEA387ABD636516732CAD9B8F5AB971F489FA9501A04
+482E9A241E1F1922093C7001DDB2EFD42A5AA2826DFCE05830EDD3E7BD069885
+53E46E4F9F6EC01AB0A20BBFE033CC8105E6558D4996F13894E3999C25AEBF26
+0A47BCE971583673197E22F249BF7B3EADE4EDDECB5A8ECB86F50D47F78A8592
+9F2C43682A03170D47B91584D0800AADBE346C3D08CCE6FF70ABCE7D646FC56C
+28B95711560A3F4B3803C18C315CBDA5BD44D69F8973F6D6A4F27C174DACAAC7
+BEFE1E513B08116AA34D0C167F2DBC897066A2113241DE5FE997548CE28B7216
+2C6B9896642EAE972A72829FBFF750B6DAF34547BA8A54412C7C53E50EFA2E78
+1C072AAF6B7FDFC2FD19BF07959962C8D09A463B762554843A34EACC39B6E021
+9F5B586B9395074DF8572FEFE494AF7933E125011B9D4265F521D0AA2D37F7A6
+AB040E4C00B86DAD62FA6929320A07D4ABA5691E094680A22E2156337C62E15E
+121BFCAF14427AF48D8CB538436C833CCF2635393E5D2C8CD666D2F188231D93
+F75682D8FF364381AF8CEB55476FAD7D14A1B3A86921A5A850012BBA93218464
+B44A46E74D32EC3ED17B1BE5F41D74E614B41D50E6A8F08D4926823B0C889363
+2BE97270358E195A3E1AE699C7A797B850DACB10AC57BFB41D882298AAAAD47B
+BC676BBF662C072E08C34A9A0344ACD6C36EF6367091DB6E4134201A0D0A7C0A
+7117C901573DD3B4BC619D81CF149FDD408E98E5FA17AC582CE6495EFB58E929
+6B38BA324A22ADD8F039901126DA7C567DCE65530F29379FDE5DAB90B7AF8EAA
+93D2CD1D6B93D8036305FA2A27B34EE19694190FB26C4F0466B705BB6CFDC04A
+58649C536AA431B4D3BE8708C632362B41F8328F465C79EB988C2487FB850B23
+B6CB90FA4AC671378123F1310A3CB8A744F0C52ABB552C29C5EBC855147D6648
+11F7E33DD8D16A0297DD44AA096CB4AF525C159799FA63A6DFCA438217F4AF62
+4C0FAA45A57E4B64186419F0CE002BA8AC5C92920B78213B159BFC9E884D6C8F
+C86A77F1E8041E90D196EA521B6BEAF9F5B24B407E08FAC327EC2BF29C6D553A
+1909847CE6F3B5CE06CEE18D8D5C067DECE9539BB0F4E31429F2E022505DFB8A
+54443690523A0D3501F699529EFC9C7E24BF7A4438D11CF94174EC0973BAC945
+32E3E36F6EE62078A54CD1D170BD414900BB960ABC4AEDD0F7F59F7BFB1685FE
+A8ECCC7C37E078B8BC539B7E936325A14A0EFABFAA5EEF0D45C7FF71B05DC281
+09089CE64CC30754345B006924CA02A837BA1CDBFA960009787D42D1E41BCFB3
+CCEBA95672396D78EC51042E0C4625F6598633F600F261A80235BEB56C58A3EB
+ED205E020B4EA27E94D2A9F8B285858640437FD59ECA9702356554B4AE732682
+5CC791971D3022D6603F1B74130D445B5F3E5506E4A43F32F53AD8CB8B804443
+87417A6AC7BB699DDE7A7A1DFA2718C9E15846F0B2F93E0167E6FAD982A27B7A
+321775ECAC4F754CA1B31B301BC04B9B6ADBC8BEE1B6E9A6E9E8A757409D383B
+16DE94701AA9FB5ABA8F4AAF2E837264C03C404A82C7325EBD039F84BC1D26B1
+B8CE48355D8CB477C3258967584B6F96874145650C67A02CDC9B8E6A650CF202
+BFEA60F42AB20CD4D5186E538496CB286A5B1214C6091D9F3578793B2E92C70E
+5A8AEE69B0E231B4DB103B55A09E9EB23CDB972FC4523CC2E308D5414A41D7AA
+D474204A26058BA8EE73EB67BC853B9054F281E6502C0C7974D2B2B62FCE2783
+AC2333F9F368978F6A176226B8DFC549E39408BCDA00546B8C722A872A055485
+B15A54C4B85DD07CB35B73A2C0E737B5B2A1FF3552E6343155EDBC8A99BE7E68
+F7F1D6D7C6ABAD3362058555D65C4297B5C3A413E2E0CBF52C7AD06D2D09F7EB
+3F168C29D302A80C12733DE283EEC15C1627EDC01E27919E5AE0DD8F3B1BE62A
+6F5D87B84E9FDD5E9FB8CBB4F11EEF7AF43D9FC2BAC32E036692586E597B27D4
+D185FBD9FEA7D046B74AFB4196CF5076780651A505A0B919104CDAE6A1EC9C85
+92BA6F1446FFABC3D296A9DB02827E29B4C92F334DB756EE76360EB21AF99FCB
+A20A4BBDA16D64E16C5169936ADDB2FBADE60B77A2CAF1BEC80B1AABC9955128
+EA4BB285DD06F40ED0D0AA7E78C4939556395ACB463057BFCAEE217F45BEA317
+09568F6AB7745F4843FF77667960C9FB70C93ED996E32863C21AD727953749A8
+CFE1E148260E000C4BD9CFFC417C564DBFFFF052842D55FCA7D7583F26154F68
+608FE787F89AD663E9BC56B2D99F822DA2D7159D9D2EAEB104AD3632EB9372D5
+7B5B52EE3456C394D713CE8576CF00CBFD5CD6E36FCC2D4CAEF4FFA2327786EA
+A52DEFF2282F0910D3DCB80564B33BE82A9CDCF7830F3FCD26DA16434E875B2D
+EBBA68588F1FB3051DF91E2A472B22435F9485E47970F530C09D6F80834EC05F
+919B2BC0AC81354A9714D4E0D86B98C788673E66CF8FDE6E71DB02E84992BBF0
+015B844D82089A445BE246CBC4F594DCCCD9A061F06DF82D6032B6766C3CA618
+737A4B2B77E02B6676EC1FAE5B581EC6041B203EB29E5C283714FAB41CAB5FB2
+F7EE493F5C340E3F9DD75D55206C380E29AEA710700220570409411E26AFEE04
+5AEAF8C66DE51744E4F0E68756813B1D83C784D8C75B66EDA5496C344DBD8458
+CE4C3A4BF330C67D3E07A40610917D7033A9D4A95EE0CBF09D9A7BF34B766886
+2A8AFEC912FB362355DCCC05FE08EB6C777C52714B5E762CAED332D44CBD2398
+CE9501E630E08692B0F80E10A7B9C6210C94DA7D37244823C08D954DEB16922A
+076AB888FBBE54D762AF975A1ADC5BA78AB6403621C368A37E1C3607978BFD0B
+C758ED01EBCB6B64CDC7044981DC7868C9B784A94A6CC8B046A79712773CCE41
+361785FCD1834E16D4FDBC7B2107C298C988C8540398740631EC15CDFA8BFB07
+1013096885A529
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -789,331 +810,6 @@ CABFDC5B460D9CD7C3D0A7422E6268DC3CB573DFF7304841C3557355B620DEA6
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
-%%BeginFont: CMBX10
-%!PS-AdobeFont-1.1: CMBX10 1.00B
-%%CreationDate: 1992 Feb 19 19:54:06
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMBX10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Bold) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMBX10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 12 /fi put
-dup 36 /dollar put
-dup 46 /period put
-dup 58 /colon put
-dup 65 /A put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 72 /H put
-dup 73 /I put
-dup 76 /L put
-dup 77 /M put
-dup 79 /O put
-dup 80 /P put
-dup 81 /Q put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 121 /y put
-readonly def
-/FontBBox{-301 -250 1164 946}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8B731A88D7740B0DDAED1B3F82
-7DB9DFB4372D3935C286E39EE7AC9FB6A9B5CE4D2FAE1BC0E55AE02BFC464378
-77B9F65C23E3BAB41EFAE344DDC9AB1B3CCBC0618290D83DC756F9D5BEFECB18
-2DB0E39997F264D408BD076F65A50E7E94C9C88D849AB2E92005CFA316ACCD91
-FF524AAD7262B10351C50EBAD08FB4CD55D2E369F6E836C82C591606E1E5C73F
-DE3FA3CAD272C67C6CBF43B66FE4B8677DAFEEA19288428D07FEB1F4001BAA68
-7AAD6DDBE432714E799CFA49D8A1A128F32E8B280524BC8041F1E64ECE4053C4
-9F0AEC699A75B827002E9F95826DB3F643338F858011008E338A899020962176
-CF66A62E3AEF046D91C88C87DEB03CE6CCDF4FB651990F0E86D17409F121773D
-6877DF0085DFB269A3C07AA6660419BD0F0EF3C53DA2318BA1860AB34E28BAC6
-E82DDB1C43E5203AC9DF9277098F2E42C0F7BD03C6D90B629DE97730245B8E8E
-8903B9225098079C55A37E4E59AE2A9E36B6349FA2C09BB1F5F4433E4EEFC75E
-3F9830EB085E7E6FBE2666AC5A398C2DF228062ACF9FCA5656390A15837C4A99
-EC3740D873CFEF2E248B44CA134693A782594DD0692B4DBF1F16C4CDECA692C4
-0E44FDBEF704101118BC53575BF22731E7F7717934AD715AC33B5D3679B784C9
-4046E6CD3C0AD80ED1F65626B14E33CFDA6EB2825DC444FA6209615BC08173FF
-1805BDFCCA4B11F50D6BD483FD8639F9E8D0245B463D65A0F12C26C8A8EE2910
-757696C3F13144D8EA5649816AAD61A949C3A723ABB585990593F20A35CD6B7E
-0FA0AD8551CEE41F61924DC36A464A10A1B14C33FAFB04862E30C66C1BC55665
-6D07D93B8C0D596E109EE2B1AAB479F7FAA35279ADB468A624BE26D527BFF5ED
-E067598E1B8B78188FA4BCFB0B51692D07B0BEBB930C6F0997B437E2C51B876B
-61A563A2673932C2045833FAA35DB22ADE12102335D5DC734AE3AC5EEE6658D7
-92EB62131E1DFBA441F53EFF9021D9D4C491F26BE8F54C61165CAD778CE8695C
-EEAF70E3B20C64D4C2B34A084B5770BAB2A8B7069E84EE1039A2E43E0DECBBEF
-93189055A49EE66B5906996FBA7A2F052D44A9EAAB6DED6ACACBD4742887E4A8
-FA3D14EC60A2413277027F80FC9B4384EE6F9A1528F7E58A9CB23E3EDE43B06F
-E978B03C604B50A5F91C47346DE482B3A922A5D023699143C3BB3C7475E21AAF
-22AD06FB556EA67882BF7E09FD39B4341967F54537ECCBC61816D57CA02D3721
-03FD8A2DEFB6371422CDD07263005CD5709ABE6361D35B0C05E68E1C0C205185
-33DA77B3495C34113FDD00FF97794144F0343368A9170BECE87FD515FED53CDA
-1FAE1447375F693D07ED4187C7F90629FE600B76A496FE37B34D462E79BDFB28
-B4401DD4CF533DE72C290E08134D763B15BB6B2B3B7C1EA96FA423682A006518
-B19A9E449DCE9F35C080A6A41AA59ED6A73BFA521DBAADF012C68280A43BF6D0
-E1D56EA24BEFB30348BE3994AD63F818EC48457C142D79A8E0B2D8D6EC9CE363
-CD98AE70BBAB4919B9E3FD3AD2CF2505562E9266599011ACD271B08EF4CC245B
-70A1C0236E87BF8813ED77E39EBAC800021211373CD1ACCDAF0ADF0456F8154C
-88C8BB1CE471AA743211D39A473077CDD7AB4FFFC5D63A904286C91F41CD1B73
-300A2D57BD822D1438E9C13C2BDE2D7D3C230552B8AB14077C4B93E1596739F6
-484CAA91AE0BA8DB3BCB2AC045DDC37ED4A84360DCF4A788781D875889E8CC7F
-020F5F419E8F5DD79DC04D6E6CB4E71366876EBCC64A3ABDC7D1A287726A74F7
-59F2F692B3FBCBC9354645E04B6ABA1D1823DE92973C7F961425A18051A0C0C2
-C77403BD905A86E2A312F1BF8EE0E06D03632FD5E0247818D5573F2EC7426BCC
-8FB3ECA20BCA3573AEC93796E5100CDEFA0040F776E812B87AAAFC527E95F61E
-7262234242D97A55876D9A11C215FD0D0C1948BA56753A28051AD4903EE13166
-34E9A38524F1A20EB8920CD7E56C7EA017699BE97BAC3B8BB13E562E510D407D
-BAE644AC025A9B1EE04B9F0458912B40D54F7E84B46119AD70E23350C13A50F6
-D110323B8E2494088827CDF940B9A3340076DB808C7271EE371421D4030E63DA
-D2D02E8631CF771F1419BF36A9CBBBDD5685B90E6962680A24293B20347AE197
-C8B0533F16D0CC5D6385CBA38074ADFAD3428690834D631572F7BFF77118548C
-081DACC62F58E2CBE7AC0BE6E08EC0AF56994F988674395494B7CE670CFE23D7
-F4545734DFD39315573A9888A0522A1F918A31C5763521E97396B3FF1862AB6E
-47DFB91F6E49A4F2308C1E7410318F78CF70D54A92B53C0EFB353FA8C5861B6A
-C6DC1E4E4F88B19DF6D6A2C61A43F2299891CFDEFFCE88D878A409AD0AFD1B21
-6DB53F96806A1D2BEB11899420C5D6E99E439CE37E4DE9E2A599557B611D82A3
-45483ED82A0C6EA24E6F69E35B397A2E759F76F8F73527AA263D71FC3D00F0E4
-364DD00275DA95E570FAA8469439A383896CAB73A29DA7965D6810EF2F97B2BD
-F29DD4D36A48E842E5D5150B43A29F4999A5EE9F3B4DEE1849CC23EECB3F91D5
-67DDED516610E42BFD8D227EF20CFAE80523F0BD658F5D3E4E2969B6D071989E
-888E32C06DB2A8D3F92A9C00C7EBE83486CCF417EB1F5A416BECA83BE1F04321
-BABEF6F43CEE6C0068DDD2A2CD576E1693A1EE14BD77F2D383820AA15EA44881
-630870A2977C3C44775E9091C2F90BAA22E29A7270ADEFCE463FA8B935072124
-FFC64528F8BF616BFD50DF9413C593B31B7F5636910F7C70B4C48ED36C17C0B9
-A0B6AE128ACFBF7DC23781BCB90D599170F10BC045416C60D0DB534BFE209981
-BC922AB68E3591F0EFAD6EEB011414E7EBEBC1A6D71231E415E116F0CA1466CD
-D040E31EF2C5FA38EFA99E597A6F542C22DBE0851791DE0B3EDA8D1348A17214
-87B8F1593183F57834BB8A18FB09CFDBCD0A898FD3A735F742B343112D319716
-0FF6EB60212791632F8BCA0858C7E3A55921B8EA31232604BEB6002A51BDF990
-1419D5C994BA50DB2A638F35D92CDA93CD7F9A405216A0EB54950551A2A9938E
-B6EF5BB7AD1A9369C1784563A18FBBA11E6A6BF4626ABBF3A7B172A5DD1600B5
-A92EFF6873ACF25CE5531AC34E74EE5A1EEB4B4939A6F5C1C928A23489F1CD49
-ACF3EDE2939C342C7018F81C04796AF103510C91BD138CBFB37245593D359F10
-7D7A08CB4C4EF6D3364DCB5CBD4E67F922A1C1FECD5A5115F14A8A70F3A08D2D
-99CAB51B532031BA07CC10BCAFF83F102FA24F92DC970A8AB83ABF01F90ADC2B
-6C67F40E135A3AD0E0661518931B4473F3A5D393FD1698BFABA66B0EE81ECE9E
-44267CF05891117ED4C091F63A46837BF99F3CECD196C1952E20928FABE90164
-7E4BEDCBF8CB2C7E6205DD29EDDD74531DD1ECD7EDF10D8A164FB3801526B3E1
-5C19E9A67E46C154CC58CD2EE92E06CB93ED6C42495BC36DB813D4AAEB30AF58
-D61197741E24358A775C6FDF636658E019B879FD9CF2C00963332DC9B2B6DDFC
-CC4F97D5960B58F75492D9BF2FD2F3F7D177CF19D070607813CF6ED9FF33DB42
-96BCC24502B9E858C17BAB99D9C51203AA36C346A968DCA6C8E891206E447358
-ECE715A9BA4D63FEC6F13266F92C1A6E8F3B4E4914E02C67F09C334A2C39DFD4
-5E0EC2D074171EAA6FE216BE2ED18395DA9D3090F421F6E08355ADAC2B6DAAD3
-343FF6263E568BCF2EE6FAA8D0F773071DC3D7C9691972E98DEE3458FA233250
-6DE04405E13C04E6C962DB3552272F1547BFD1FBAFF5160309A53D89E24E4418
-2C3841B0584D28D6559CD44DC5AEBE1D73FAAEDA61910496FB38EF731BDF5841
-C60CBA2F9422B742AAF5DEA61C3EC6F8269DD30D5D4B455616BFA5FFF9B70EB0
-C1C92ECB229358509E236D002AEFA1C29557B79B89ED0368F3A3915BBDDFAA4C
-673BDD8BCD1FC6D7D2F68FA00F48C52D8F49E72D64BF2C63B544A174AD99C542
-C94631A1095F8101878EB5598B120CD4A4ADA0B4FCCE73B65FA94BDE49C6D11A
-10E89D9DA9DA26C4FAB2A66B74B9DDA9DCF1A4C8E58CF651A750F628ACAE3964
-774AFE1CC82686674A73CA529FBF88D463081B1D7DF308B4D0417382D69EFB5F
-B89407992E234CB9633268F3C3AFD53D53AE3FE08DF5C859D276D9FDAEAC7395
-5D0B9371B6EF609AA5D71AAB79279CDC2DD9EE2F48801BCA6CBE3B1ABCF3C997
-3687DB032EF72C32F8E796908B43641B3B0AB18AD16555CB0736D8C755929CE1
-D55586C55F3CC8B2CB9A9938D37FAD90D90E8D59DC9A77DEBD7688F31EC31570
-ADD09AFAAE39FE25410233E77333CE74A2B4DC55C09CB9146EF1A43CEF309619
-60762205D62F44B68CA6CA2DBD8078881E2F50330F9F262C5DA9D0850148DF56
-F5668ED9D5379AE5BF02F1DBA996064B804366F0F7353600142F509477C0B95B
-798C17AF05FB2FC28F00D2C8C616F1B98DCEB8FD44AACB9762BC8ED555447AB0
-3A29D755EA73E269DC600943750E1E75C83FC95F2015EE57FC7A229701E91F13
-BB5CFF46BD5570B3B935731CAB104E12532D6FE82C3F8E79C82D0623AB8BD2A2
-4BC8A76DC133A0646981139C393DFBF1FE8E5E775FFF63508CD6465DB2C30546
-982A36D5DE59BC827233754EB60D23FA34787DB3E2BF4C34E463824ED62137CA
-B49A97DAE0E51537C8C481C063B1DE6147C8179BC5F57A41FDC4F254F2A4525C
-D2CD7C30779054B37FE2FECDE27217EA1F8E652011E32455719187BC6D3F94BF
-53E08A4470BFCD5E90A647412701DAF792A40496EEF7D6432854B1985F7A7A2F
-1EA5DD74CF778374939A2962BF45AC733FC0D69C5EE1DD920BCCB1ACC3BA4C2D
-5BE417F1386D95A1E878F7B905365F8016B86EC36C340899D24D4DBAE6A7B866
-EEB0BF2BD69C0317BD6CA70542E3DF6F1F4B1AD924A68AECD55B77E20FDC3100
-900733D5AED2F0AEB47382B1631E1F53DD4BDCC520FAE30F5DB7C470AAAF50D6
-EB7393EF82522917DD5925B3D0D6038EBDED758DC54C6FBD5C9CF8ECAF2EA45A
-5C87434A564F16FA969C5AB409CAF09DBDAA324D8830CD9823B8D2AEC26AA0BA
-F7D7AEEB9FB9FDCE0DC8B1462F703E54A18BD357A376BBFE57B5AEB78B6EB84E
-EDBCB404144D9B750F8AED7FB59FA3EB1D0BF99713341A9AD822C22DC8981562
-8105155E9814C558B31BD2D3E11A6C4D74D630F8DAE7BDFAC860A561721EFA8B
-8C99B2324DFCB40C24C26DF34070F308F24B4E67715382F1BD32B0B2BD845749
-6D67A5D4BAA65806A87D035E68318D3E81A5A95087C587057B41CED663A9BF0B
-BC37B8708FDAA0AEE135A314CB0E41EFCEC9D6495213958CB8C9EB7C25B1CF64
-C95740AA8306B56D73C3CE2E802DEACA6899BAF436FBBB3FE3933E5290178F13
-0300C2081174570B47DD9E3E96A9D4D04849FAAB51EB2DCAEC70F6AB6E1403F4
-4286A04AD2CB3F588894419B9C377DCF9C80E65C7ABB70B95088A747B68D2FA5
-DCE8E16703C14ED1CFE479B061A3B5307B174A01EC460C9E6D0FF2A4BE291A53
-B08F79E41E70CC397DD35250B49C56C76288C6B71CF4468917A6922C13E2FE10
-3A4489BC2483B10DAC76053EFE6125031A762C89251EA10658A92C0C16847F94
-A3F6A7163BB5CF9C0546F079017245C749B9B8C8F810F4DB7296FD748B88811E
-93FC2A5565FBB48F2C28A8C3DB4FDAF0B0B7A845CBF77092C382E0D0F37DB976
-CE6F4B985C27A2F2AE9F6A81C4FE89537EC000FAEA98BE85261E90E0CE7E292D
-0D163ABF2941A28239E7DE6912BB928E8E31FC16BBFA5D31E8BE7C1E85017C01
-9704AAB90ECFDFDD73B56949C2CE080D6A1320415FCB548B9517C816AEF9396B
-39D931AC3B5771E22DDA4F484814B65FC2956B74214BA806674A7F2CDDE8B7CF
-CEA95B6D7B57DE0E5D0E0B720FE5FEBC04B26985AE0B0DF94ABE40069193895D
-8F401ACE9CE936F4AC53BB5DDD29DF175FB4A20393C943E40F2F7692E92DEB2A
-A1749A8C06E4CA1AAEC04CD64A20AA676C52DB7950DD736421D87B6E15C7F7F9
-CD2E6EF4121148AD105CAC70B1F0E4854DB563E015B01274197C14C910BAEEA5
-A09697E505F45E56726C2C503AAAC0EAE62C10689310E9B06E73A8D9BFE67C0D
-E61559D75A6CBA951046852983C54D38684786BED94307D8386E31FDE2C7C95F
-69449A6A77F90057BE6450F10E23538EA4997075157F1B7CC255E0B28E32E1E7
-D225DCE3CE3B996E7ED8AAACB3AE638F9B21A502F1230E5CC6AA0005FBD926BC
-37634DD38E9F3A01ACC0FEF1A85225C2D9465998CC02C0399BCC4F49F32A0482
-081CF34309F27B7A14685205D8033B4E0E7010C9B861329150A2D743A4BE4583
-733E3D5CE76C82797D98620A5DA2DBAD5252C0B9AE16291D3C6B93F4C24ABD22
-4F57BDF81CAC04F4E20CC7B67A87292FBD821DD372E6DFD12B7EFDC9C1763D1D
-7B98CAAA1BAB4BFFB68E2943A68B03D0CA4A187556E3EB89DFF5FAC9925CAA9E
-2DF3F099B772EC1CFF33A032B9107247BF62EC8724327EFE75CC97F4C08C1EF9
-FD9C199148C520433F107485752FB07C1619C0BEF98AFD9EE3D29F2A1B3F5753
-B90FAD5A155473E7A7BF8FADEB7C80306529BB9D92526B6D878AA280454F6579
-30959BAB8C35EFC33F0E67C7E7C6828E2225F1717A62D16C18F0D3BA52D4D809
-A9F7B7D65F522735CB562DBD9111AEFDE0823503F01259EE4741D6D3AC51E0AE
-F7723EAB411B9E48CFC510D1316247A28E116CF8181C691B9F066EBFFA7B162E
-64D6151BFC74B9B9A0EE89D161B76E876903E58C7C57681ED07FE1835BFF15A6
-260C704239ACC0FAFB0F42FE11E97BE29E743E6DC8800559EDC9887440B25AA2
-399D4C38631B0D5521C5BD060C67A561CB84122BC4353D8E8F788F1CD3E431C2
-71E14C995F5BD51ADB63FEB1F1ED33CE3821DCCEC8E64948DB9AF9E7CB556E37
-AFDE3DF114CF431F75DF3A84FB9D817EA37060F051A4DF349BA10658D840BCE2
-09020B8324419F00303FED63901656AF761805C5632902F78D0CAED5989090AB
-6665BBE4F4FDFBC17F1421D424B306A748C646A37A11B9C27A772B3A385B0174
-BCAFEBFBEB7C86ABBF4C49F09AA878A82DF51178131A0DB7C7ED82DD376CB796
-98DE4116CAC8C622490839FA9C783FC68D1A131B635073ED01C48229A954A6D7
-26B4571B9915DE5D3B04FA025FA591A3A59CF058718D20497C9DCA98E513EAF0
-E4D2AB2DD7146647EDBA8C0376B42513A0A3AA31691EA408B83EB26BE3EAC433
-12BCA857EB94BCE7EBD4853D789E15602FFBB710C72C957FBEB2F744F66AD54E
-6A51BE63315C7B6E36B54DBD88CF60251D31C73EBB69DE180A61116052C4B12F
-6B5E2F45155F46463DB324FE30BC02CEC38EA8207C64852DEF649347211FE3ED
-09DB60C6C2E6F168B9F5C9F4420C6FEFBDC43FB2E479794D5553EA2D557B37AD
-91909C0B86BEDCA02F321D6EADE046834C2EF251A794C429DD02C4777393E7C9
-D9516E1B6CA1694FF3C390AF6280C53D9B03BAA2BEF6B4BAA03DDBF73215A47F
-371982F180409C3B96C4FEE85AF97BC78AC8D2049040D7E74B34DB182BC4BB3B
-8CBAB49F43DF21A55C4CAFB7BC02C858DCDE59B8E081ED3A0232B914FB1B434F
-7DB098CA425029E9169F8CCFD1FD65403BC68CA09C2171C494B65B95FF5DB88B
-C4DC6CE1C39E7286FD2AEEB64427EDCE67628FD124B0322ED931CDC132A4217C
-733A542A0EF05A7D9685AD7E0E0660A43C08EF58CB54143A668A0BC87B774C2A
-D612D29E0C904A9707D6D692178E8064C9CE8868722AB9EA2EA6291F143F2767
-5FFA9347FF969C9266476B79F21FC21CDF91E833BA6514092B78DFA65947B8A0
-5A25BE84B7732136F912EC7329D6A4694450A9796493693B9E9CB85C72616427
-B5A095655418C333BDC00A8C0A0B9E8D9A76076C59139D3E75C6C6AA85280476
-A4D25792320AD2BBADF70A60A220F9F786B53757CF0451F69240B2CD299E66B2
-BA06C58597BD7973C4EDEC64870E8DF1599D0407EB1831C2569ECE659D7880F8
-A55E82383CA333BF0800810E5544E70914F58AEFA80926A6B777836211501B22
-480E5BE73E8D4C3FD8B86B106F9018E9C3C8246FD869D2DA613500CDB24FCF47
-3AA23A4440B4E6E5416A7294B8ADDD4CFA8E10551978FC369FEB60B2CD86D88F
-B9AABB5C64E1149495C2ECDF609A830DF130546476FAD5E5E88374F46B92C9AF
-CAB1115EBA8224F193D66B118DFCAA5F543E1CC7859EFC4DAA0684814ECD89EF
-2C14ED98756A6E03E89E7DCF6D07A4DF1CDF4606ACAC07D9FACD5289E0EA925D
-729D9BE998D4E708D33789A63268DE0B59768A00CE3EA14E5EC46DDD913C1A8E
-A9E9BCE0205B8EF9A761CE3578C8A745BC114BD0EC87A07E882B9BBB27906544
-03214FEC51DF4ACC70F1DE54DE4CF537D00E3C4D7C3F98D397382EEBC3A40428
-DBF36AC39DBAAE6B7FF2B3964B60176F1D469EC7A7B470DC7569E6ABC3D3B844
-358F1389461470C43EF9A07C89A5DA3A51BE944D5C51C4D335417E8F1D335E43
-84F34695C912E5FF7D9465E1087223CDA7D837AC7FB65DA0B76160319F07911B
-57EF0DD8F9E434B604645E18E42C6C4E3BB9CB5BD13E40BB210DE1759594F860
-592F26A1AB9271F9688A95C92D8834BF964EA3AB8339A2A217A334BC0503A63D
-EE898C2BCC6D2E6A38CDA086BF574E95A4FCCA2A435E1BE85D2C915562B479F8
-BB8275A08399EF31C6A7F39745D263A100BB47950B4769D030C14B547FD5DC24
-493E2DC0151E675F6E94D5AF02C091E4586C19103087CE6DCE8FCB5B31BEECC4
-49A9D9855B9EEE2D27AEAA989137F3BDFB29EA61BD654D6C51914EE74A1CA5C5
-E5A9A1F233CBFE0957F4ACD55672D07DECEE7F52DCC0E1624D385519FF20EFE4
-CC2BDF40CBCFFD4A9482CBCD041283016AD3A95AD728DCD1D7B696A92050BDF6
-873CCA452DE82877DCBACF560887623806B838AFE8FE0D6ABF646D5637424126
-FCF9C2852EF6B4F30E3725CA234FC62D325E5889090F6E1C73C0731F955389B1
-9113533BE0819AAB39072DC6C20874232EFAC3CC73154F480CC6F734F499045B
-7333DDA2C655169EA6D076473DC9354651C067D3F7F7CFE8AF1350281A85D0D4
-735BA48507C70818DD7E4358F7CDF64FD6763257900042E150A8396673524C7D
-EB9B5A1763D3A6854C38AC16113BA40E3D449857981D81039A5A8AD7E386229B
-26B94A5945A24B8A3DBACAE1DFB6673137EF9239AABFBA56C6209563C1476F0F
-4A7BD6C225E19D7B302D21E5ED7120FFF4ADFB042504ACAEA618EDE8A6FDE8BC
-2E92D8E792B2DCE59657E03E65A0F04746B73EFFEB2A7FDA06D8AD08E488855F
-1C635F937EFCBE6A9904C9645A5E093EEB86ED4857E12D7F5E00FF2E7EE5DC8C
-80D3F510BADF414E6FC7C27D076F8F9C441C1D0AD179D37D5329F27E898B5512
-D873EFED0C5D61C75C19496D8594E841D5D54104EA2F744A8B3E226951FE99B7
-1A53CE2BB351E6811684A94BDE0934AA259BF230B65A77EF50B90CE8E9845C89
-3BE5D9A6DC85203B3C76EAC4F4ED9F969EFF7DF9985D82BD584A8B20AFB0EC95
-7EA54C3C1EEEAEA845C2F849F81D9ED4651D33FCDBFDFC7C7A83157C7F3F7865
-47B381A2BB91977A08D1995522143D443AF9430A17B0D375BA63CA7CB38E7B17
-761CCC1D56EF50BA4507DD42E21C4E683BBF59A99BA135293FB4A506D55B56FD
-EFE50D3106B07600FFFE53B95E0568279DE9EB6E4BF49D7887D292BB8A74CCA2
-F884E74F81B23255BA33CF5444AE3D00EF734ADD14F7AFD9F25CA2C35A5621CB
-1121F4B1FC731056806A37D49D115D31043DBF96D262E2BE0755071C6834BC75
-086575A8AAB3355E35A49324CC907BC1A57F7C0802499695779447E3F4FD37A8
-C9A83AB61C36D50802548A5B0F1CE0CF99F6DF279DED96D79F1797793F52F265
-97A4BEEA564246DAAC13EEABD348DA6963ADBAB7B11AEAA66BF4C4A672E42C7C
-46D104FCA17BDEF0A804B9CE1E76054228BBC2BD6A6E03E810ADCE686553C452
-74141366ADCED5D920BC6B86225D789AFE810938C5EBAEFD706C2923F16540BA
-0D09CD92FA02DCF62223774692B41DACFD0FA2222A426B4BCD6AF33E7FACFE25
-F669775FA66484D12C964BE8B48711C21FCB5B59172082B025BE518908A4DD72
-AD1B3992CC3303A571FD85F1B13CE256B1A57C9A087B49B0ECD784E0591822A9
-5E4CC856D13B2F94071DB52494C41C43C15F8B16D99A3387F57EE69395A44407
-FEA7EFFE45FC1ECDB3BFDA88D21211769495C64A709EEBEE779D236CB8D6551E
-5E7F438D4564482C1D5F9C36DF4349DFBE95E0082AA6EC100A8C3C189238B2F7
-DD5593A08C9C0CA806D242019023A72CF20318CF171092F27908C13BF8A5A2C6
-40D94284156C20B19F3CC326EACE632621D5DD881AF2D47CE92724D350F0AF8D
-FB59E827633191DAC18BA809DEEB78A0C541C620045D7DE6D556C105B24A4D4F
-165870BD0F3AAEAA78467E81640122592BE598FAA39A64E246357F347B6E2068
-2F29809FF9BD2765965439BF57CB040CC06FFF858E85A893EAF1D64DCD6399C2
-EA596568D197B009996CA4743F0CD9D46E3516966ADD8476BCEB2678AFB03DB2
-8905F1D769976A0A762044F3D95F1B26E2F8C2459CC85D1F1F0E7F0FE46EDE24
-6B176B60589345D8FC6D29AF6D7197938E08FEADCF6ACF287B44364E23CD2D12
-74C209C344ECC847FFEE64B40FB259926CC4F57340EE7F7C5FCEA60BB1E758CD
-65DF473A0BB14B53E61743D3EB4EB8C4F37BA892999F8F56B8E33488057F438E
-A4B585A46A147AE5A37F410EAABA7555D3E9BE148562FF765243FE76559C1D0B
-5DE2CFC71B108B2DD9027D1E369CCB15D908DA552E90BA0639B8F87AD4B5EFE5
-0599493640AF291D4A779F124724530A7A3FF333393C4195B32B5CC3E2B9A8BE
-4E6DDECE14103BBB3F1A8ACCCEA07FFCC30EBA556F9ADD56443DC2D460178A77
-1FFCE92F43A8792A64634ED6C6C726E29083AB5A919A4BCDAFD6CB40ED45B080
-0129F0EC679E1C0769A4D3925CCC1F3CD8CA38D578CB34CD636C0BC6B378BCB5
-8B47F2E20709D1B4A119D064B0477DB95664123C0C8AD271661936026431BC86
-EA7298EA8873FED181F00A4369E798FAEEEE2818B1A8A19665535E338FF2FF69
-268435C505C6A1A60F6F1C13976588499C9AE069FD9D785EFD89CC7E
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont
%%BeginFont: CMMI10
%!PS-AdobeFont-1.1: CMMI10 1.100
%%CreationDate: 1996 Jul 23 07:53:57
@@ -1224,6 +920,7 @@ dup 49 /one put
dup 50 /two put
dup 51 /three put
dup 52 /four put
+dup 53 /five put
dup 58 /colon put
dup 61 /equal put
dup 64 /at put
@@ -1313,363 +1010,733 @@ E265322DF0823E9990F966A842ED69BADFAC2CD1754FC84C0FF6750D2373F997
0775F760C4EE10819388782A2CC2E9C000DCBA76E4EFC7B390E50611F3D4F6A9
CE60FC3B742F046E84B4A302F5DB51092CD59F103DEE2910757696C3F131517C
416687E6DF671911BFEFE08D1C5D0B16F9302960E29760EE101C5BDFBA4176A0
-260ED46500FF41D25635F195218A804B2651A54079CF48019C52E1B551EEC3CE
-13B1FE4864981041B247F3F1908DE3728E345F81A6863581C22A349B8AB7B3BD
-BC554FA3598B2B5C7AC6112CF380D176DD6BC6658BB55A615171C47A257EBC1F
-A6B40E10B77C81889061E668BA620C0868AFD6C9916FF4F83185A2B9793C0F5F
-F3E17D3ED954973E9F56DDBF1DE17DD04305A12EA09DCCC0A60A0BCBEF431F94
-4137FD5767DDE33F5A1641C15D5756CC52CA9EDD64727BD3BE976D4963BC8914
-C448D479677BF9AA55FBA3A41F58110C9B8420352BA0B2436A376A27B6027974
-FE6FDBB94FB71BD2E1BBB9D55661B82D646CFEB57B912F0A57F6FB10DEFE768C
-5A7AAAB7D150E334E0251B505F9F5A82ABADF6327A8658074080DEDF1E292A36
-27891B03A0969B23946281FE83B4F4609183F350B8C3E79631499FB05BB37006
-6E9E270B7563D383180E0A1D8485D23C1B0DB41D42CF465441B90C34D846428C
-5D5CA1F39BCD7458C8AF0F1CC7E1EB1D322A72ADCD01ECEF84DEA2278EFDAC11
-A39100F9C88EB358DDA188EE1CA33F521F7AAFFD7E2B2507510DDA91CDCF7E1F
-023C2EB7D3C25C6C9207D0D77244846CD0658DF5373AC68A0B8A89888B75E5E0
-0B01FAB9CC0D5FB3F26BEF1C0B6A40B2B3A7F5E3CA59A6CE6EB31F175724D2E0
-7D69EF2A0BEFE3E68ECCFC2BEFE3CDC2D36D065282D8F478F489C6690EAE6278
-B147AC6F902CD400D1F79C0E8D61ED58957B2F2CB019B0651BCF74F140C38188
-C9A741BD6B3659CA3A921EAE6A1500B64835A7EBFC4F8B1D7979A5013C0A3ED5
-821ABCFEE54487D57FBD698E6E623BB250CF43C301B4F4FD944C03723A5D49BF
-75966554CF683AF12CB764C32F46F603E0C4F46F83F3AD5E1B2A9E8032747535
-3971119EF01BFD1B185C706737255D4E3719E1382E40E90378EB306059166A29
-39FAFB6C30A398C8F9A1FBCEACF4064D4062966C72B3C2A665BA410D7C6C5810
-6F07D90B96ED207BDDE151636732DB403FDE31DDF0D0626B2DB07FCD5BE25598
-22B2D448F0A4B680A50E700B9A05B72AB8207F86A25CF40DB3BB4FD5B2A6A963
-D285BFF60296D237712E51536AD6B5F54E2A68D914ED54E3897BFF6A8B91A96C
-68167CDDE161FA909D6A1974CE568F9062C2F142BFFC9AC6DE1FE0EE7EE535EF
-C38A2930AF1BD3A9AFC0839B59C344918F5C526E7638E08877181532449F8E9C
-E2E3A607C522926CA62EF1CC898583D9781AF9FD951CCFA7410BDE4C7001D53A
-4800D3A1D296CC7B5D8CEF51C870B89526A483638B9B43889800A62D474E10E1
-98EA6B74F316F10B553C2D65D2C8193B9ADC64848B5237A11EA8EEEABB005CDB
-31BB0FA75E296F38EEC76E07A677A5CDF523E2C028B5956F7D682569959FEACF
-2335A745C4C9DD37CEE54C6C609F27CEAA2D648B1A266196984A755D5E26E10A
-BDCD2559A73B0C0CD7FB779889AE33F5A123EBC8A7FE95A3F2FF2237BD2993E7
-9BF498EF402B0AE48D9608C1480176C3454C8BDEB2470B5A0323DB0B84DDBF1F
-B893C4A1A924DD55C69973C1EF3EBC03C9C51D2A2AE58C410BA387DCAAAE745B
-5220C7060B30BD3229ACD296094DB265627B4F4AFEECDB930814BBE7CA1BE5C0
-17DF1057C731AAC5ACFDCAF6DEA1291DF3D44F06FA7A23C7A1254F6F695C52D7
-E0B5B811A9BAC206DAD4E028208486E71BD80A3E0AC6E5BC540977B6DCCB80A7
-984A3395C6ECFD5070DE23607EB6331BC8B675427BFF4D732E756A91809E8F21
-A911399DEE24327E42F298FDC68762CCFD879BFFA9BBB1DD932369A66C1F0198
-9B60DD9221F472CA460FEC66B6A473DB45DD1A6AA4BDBCEF9EBDBD360DD84A56
-31FBFA2BF803C059337F321D5919AF28841FF796105C25B453BDB3B9CF2EC269
-A588699159AE9ED7E29CD0458D7F1612E77F26B19240F365FA3CF830D4868274
-CAE404E49C944DAF661E64370F7D3F99742910D80D7B2975F9973241EC9CD74D
-D0B9191E0A9838D3DD635B8C69EB4BAF18092D0553E9F45F1F91488B4E449737
-58F5DB3DFF20FF80E8D041A7FA1E634F0CCC946B5BFE52CB1A936402D803F13A
-EA31DF116DEB2853AA8791943033104826661A7050683B66E72AFC0338A12D93
-0A0074BB567373234399D3C99311F4EC1236811F6EAFDBCF8FCEDEB70F7D315D
-5B6C254B56D8B294209E1200A76F256148FEFDA0F5A988658DC6C9FD408319AF
-C77B6CF5DA78AB85C34E902DE729B06DD8786F929BF083E5933ED344F2669CF7
-17ADA411F0217701A1BD93FDFDA5C69BB1CF687624168E01134E1851ED698E0A
-467053C3C283E3241D7F0E707D90DD9D54E3C66FFB0E79C48999B1930966D603
-51561F40D29B6E5DDA09F75765DF2B0D953C0AC131D0109A33E31DF9A5B0B873
-4E8752DB4FB7FFC310F7844A2497E417E8D1F1909D6A361F19DDACD28BFF4180
-7D36980562CA659E88423B3734879FFDC728851299C95977199607A1AF16AC63
-D003D13C8D3B889D75D920CF8B8E04F21A1AC402A7936402F9B04B9CD14851A1
-3B9ED3958AF1A5D70D5E308C2E198D925161C9D2FEB0CBB3A0946AD0C1D87096
-438FC24D8C2C40C4977F36C9048B22300C0015B4995DA2ADC97C8E20C960E9D8
-5F388C2625B0211B4E171AD161E510D0231B5FAB5F8D188F8AB71430C946D7CA
-C79211B83B0779594FCC762B026722DEF1A1B4311FA2C643CC1FC9871EDB794E
-8E665FAD639DA045327E32B38235235A4FE93730E7B681E139D40B74AC18B80D
-49DB6CA0A8E52F4181D519E77A178A07FF29BA92A5D0E9AE3BDB75581EF4D3F2
-9CD1B37AA9AFA600434C238C7DA7CB8A183254BC6A1AFC52CE880CFB2F1A1B29
-635DA29819A6FAFFDA3DE2AE553EB01E70AC15A8030B818D7D393E31AE420521
-AE30EDCB66C4BB5DDA715D319C12E26F665FC6F55E76E51E7CD64F1355A261EE
-442A6006B938CE9898D305907240C3B59FE6FADDEDC5CBC2DE6C992BDCD568C3
-1CEF46370B9D17A8598285F88386302C062B0B47C352E9D04E0261ECA86A4D59
-452D3237C64C3D629961467437E9AB1A945F1A8B1B34986004897659D926766A
-F8D2433321C082E4E0A6FC4EC0D7E33B85DD18BC3624FA19189E5846A6C4604D
-CA4BF27338599771F469ADA89E61F28804D6DC4619C59254091BC374F3E078AD
-26BA14C29BEFEBFBB9031D799875374DB8F74CF329476E6F415D73B94D732C3E
-AAB918678EC02CA47DD11B9E1802FEB787D0B321CC006CD27D990C0DC889E3EB
-62CD383471C7D5549B730310A7819BD176691797575D1B38418117459FD11DE6
-3892DDE104B7DA869CF882EE66C26CE74C3A31B221E81FEED91157D11EE9CF05
-97BEDE45592DC77355E0B2D44AF2E7E07B294695303A2502A4E0C81395976037
-B0DF04F5488DF33199303874F62F01EFC12C6360FE2FD26EB062F5D087B32E3E
-877287AE8C5E2F25A53471F2CEE59F1593D73933C13C1EDF4E79369D6469D83A
-6A792E581D20D06D8FEACDEE2782EB331ECCE6C5D643BA3528C1831BC39CCE04
-40924BD7F6F03C48F6A6B8CAC01906C2B020EBA3441F65D9248309A7EBF85DCF
-6ABDFD5134A0B6C2BEC8E9851179DEFBCD1F1B96142BA9FE539C20FB1AAF46B7
-403E6B9928156D5802463B3E9AE55D6DCDFED232FC21A9B38CAF57E481F52CB5
-0284F7DC147313FE4C3F8B4D2C679D1B09F8E21E9CAA5BD118D6E70B7D2B3795
-8CAAF346A46B4532C3C1F7B4A8740A69193174570C138493E205C057E3AF7DCC
-86A40E640E79A86D1E23AF82F55D6CDE762336373A4C269EA5104135430ADAED
-842A1C2ED6307047B537BE46039DEF7CF0EA805B557E73DA6928F94D760A4D47
-E3891CE22DEE0036C651BD271561FE3FC7C3D715C14F3526459B9C54481254FF
-E621291F9F142E3CE0D43A36A5464D6AB248B9E43BAB65E943D5C1E2F8F36D53
-612227D65CDD63AF4C60F01E39E3005A1723405B0E3E5852F24E5B2BE95AA85E
-C92E355186F4196CF84F05592814741BE423F34CBDFB64A741E8F23F9E6AB6D4
-89E0CAF347179B3DC8CB655DDCBFE9546EC62E7009332F56BF5935AB27D4594E
-85371E69437782901D4480CE2451A227DF5174ADB0BE36F3E209A02E32B9A008
-02C2D29553F6CA5783B4C26DBF98B32D59A62320A78169BD4D59B9E5164A933C
-CEA5C6F90E68748C9FD9D8A3F361CD2940EC7AC579FA47153C577221330AA92C
-A11CAE469C804352F61A481E9D310837CBE28ED52360C40C797332D4E8F3698B
-6E0ABFC483ABB844FA9EB69EBA970A30135A852BC2C09A432F152732CC8D8979
-2F514804F9103970D096ED53752DBA15F0C8D49B27A259B6FEE0AF098A4BEDB9
-D5F2EA043F4A3C8B78A64F58EA0FA6CDBA92683DCC4BB0E492E21885F7EF5995
-409CC1F4D762114A078A015312A0D0B1118AD4D0294E78F70A51669CC4663802
-0DD0F83EB9F1439B7BD169AF910558149E179F4119281B6488AC3FDA295BEB04
-D9FE0E7918F39B11D51A0FAD137591B57E17289AD965EF40C6350D53246A2F56
-04740DCB5C609AA0D67693A1B8F5B1A33ADD9591D00810179740F78342C663FB
-75D027DCF5EAD828DD867226E05B52EE436EB7063CD803EBAC7D83F84D4845E1
-284D2FB6BF594C6E4127ABBA5A2E7165A7E677B0E077DCE038CE862437799912
-FB7F5CFAAF0517DF5F48984443C3D568F2C2095A2046B7763CC16931F1C0E97E
-E96BBC9F32EDD56CA92355941F4FF6380F03F382840DB606587F39C8A53643BE
-1693D61D6783A0D7ACF2E96F03D9178263ADA8E0C32E01961A319E96C81451D6
-14762928E3B47B0259049E5A00C582B8E0F4EFAC2BA34494F1BD2EAFB5B0E1F8
-42F062BA35B374B6873481E3C9AE60DDA2A1675A40E783E594D0B2516270BFEE
-D10912B52FAA4BBE90B077E6878A0F11ADAE5F246A847C460DBCDFD52683AB90
-4C3129F23DCE2E64CAB2BE2FBF28DB9E736568D4A809F6FDC4AF772965FF380D
-9973F8B9FA0A6A759F4E2FC5CD06B2430A8E854D3B044178AC5A3F93D2D212CD
-53C7FE0CA19D4A87420E0B4A7F5F99783C2A1404957915B044CAFA04A6AEBA2E
-449A0200DE050029B73691001FA28C48888C0C7D5A4F00A2EE9370818144892B
-A6EA1FE7B0294659784C6101F8A47EAE21B3BEA35EAC76ED117FD039006429F7
-A03AF3B240A50D215FD374FBBE77BA23080228772C2949C9F13F708741EF9F3C
-AF7BC6680BDF553E0E15C223870D021B078BD0CB44E31329997AC8A473DFABC3
-66CBC0AC6DFC0D108F71B5846D16D76C91D2E56005C3CA3E6BF53CC29A5D1439
-30AA6E470E7B106A97BE43146F0A0634D638484CC89228A98A9C03B58116EB85
-C2D1C0B95761EFB4A594CC60BC184209A5F83A713CC2A0FA014341F457E53636
-52CED805B4ADE0A9258F0104115EEFF94D33B4480FE217106E90131AF1BA07F1
-AC80CD4F55D4267FEE393446DF4BF277BC37AABD16CFCC471BA00DB24B27E92B
-1C9687480441D46C4BDC4DEEA8D678DBE0B573D490925818558578D3A831012B
-1993CE36F1457FB418C623221AC45118277BCCFDF7FF0B3905BFE61819CE672B
-C792D34AD29716B217E3F6BDED6EF77AC9DB96453D8DE7A7AE06ACBF3BD2752C
-9A1DE0BF84BD44FB2757F8E00681F546E3FE2B32DF86E17052D3C7C76329284E
-D56F4F8AE46EB1466F4EAF300540F8A013AEDABCB8BD822A2C0E0B95AB1BE8A0
-5A3E833F971763009A60B792E42B40E18A686BD080D939C8FC03990B72AD71F2
-EBC4E9D4D06FC3D49B5B9E74F2DD2A59C244DF087DFBD51C34244A22892D5F52
-5C472583621F8F75A0DE923F2E2260B70043E36AF68A8A847A0A1091AE6AB8F6
-39C743BDCD2BE890D64FD4E106E2D67D5F102AB381829804B03FF121CC6EF02A
-A2B5AC9485D298889701D95ED06B05B91EC99A343B3DB94D10E927CC1F1628B0
-15EFCD5F926AAFFC8E9FE4398B765A4A453B1CB23583D705FEC30A5C6C591BF2
-405B5CA556F1CAAB0ABDA1585510FDDC8F4BFC256EE10AF26BFE8DB5FE6FA800
-171A5BF5CDB87DFF501AA965EAD557F7DE57E8F33B01A58D6DAC6111FAED279D
-DE7E11D29A6CAEE07E60C3A8AB3EAAFAF873B92E69B33E4DE1F03804CE577957
-62B885BABF1D593564914C1AA53F689E5F287A320DBCC2150CE37834849514BE
-E6B38CD33827EC438A2EEC0E977FF07A8CB421CC075F93F542684D448216C261
-F9EF8FE81E4BE0E56B77718EB055B7BDF776815ADCD582904556795B2FAF3FE6
-070004954190BF55D08BCC8466FF30C35C9FE1A612DED643538C22BF2D121F05
-FEDE386E5F554CEA94E6F04C6984A46030EED8198E1BD6655158F4A52B0B7CF6
-0AE52299350AB52268DA0EC274296F8039386DF6413FC06D06144457E6C433EC
-49DF9C5F5A30CCE109718634F2E148450BE0A3535977F3009F6533E268F9084C
-03071DF54E0BCED1A7D4AD5FA2695DC03982BE6064A52A75C17955725D1EDCDE
-4184D8395CFA91FAAAA2458D1B6505C703DE4800128BF9EA91CC214E61867A23
-65202DA3C9A1782FED243AC6995AA76EA7229E27B3B38895BC27A339398244DB
-14D1D69402444608FACF8FC6FE709F2EAF2769B04437A1E6EBDFC6783A44BA05
-F810E179AA3C1D54F208919214424F3F3171AEA189E8B973340E516489F45EBF
-B91D03A510D5022DB0BA8726073C388483D68B466A909FEAEF5DE111F636328F
-3B121A23C6AD7BE58C604970952F2DE35C5B4B8852556C59C8151A4C59029C43
-ECB30141D0748EC3CC3F9F33BAF904A86D20C771C4488149D6DA989C03D9ADE8
-CA5628A984BF2F7B9578A06B177A44D824DFF9DDBB977E6251BC4BBDF2951E21
-7AD34002703BB976C2DD8CDC95FA53D880207F26BCFC82789745DA803DD0242B
-FA369232379C4AB733B2A6F70E3DA29EE22C7BCD56108BEFB0060C6DCB50A16B
-E8694DE9A114BB04A3BB5C004F9BBB01CEA952A672C15C7AAD6E87CC3C454E9D
-06F996DDECC3E125BBA32F39E01609E7CDFD278A27511D6EC225401A6DECF2BA
-5A4DF0487B87A5E6B3A9163B847068679AF34FCC291F14F4245EFCF31DE9C0DC
-7291308253816224FC938D3B5FA077F220616D4574425959CBB4E0A0F1D80EE0
-D2CB9D4841160614AD10A413B4976A4117169E04D32164B3D311D99395706888
-241F80FDBB463C5BB9FDBAB1CA938F98F1B65EFEE23E42504E3629D68F7A6F78
-211CE4A077550AA1254F7841B21790F14B47EC67380AC6E18F5FA87EA47E9C87
-5EEF447A5CBA979D0F1A23595E11AF7494827D028BE9CB68E931E3B02DB8FE21
-F23BC1F084DE604B43A9AAF0F12DA6B945EBEA75341D2393C67FC123CF662DE9
-68A11E61C62A18B947077D68D056833803ADD4BC765C2720060469197C58EED6
-C4DAF07D473376A2135A2A3D2978099297A519F4D2295F21E3CDAFF0117481E8
-1CB03E01D6C932A44A674EFB92707E4791D6A3296AC587737C068821CCF69209
-FACAC062319208BF7FA643966317E102B306947D8068FEF15591B227ACA560E1
-1DA2FB5869305CCCD940FC64D9781F35DF55D1DE305242DFE17E749F0B96FBA7
-A0BCC035B7BDB0991F94F715415B09B3DCB4025892DF625F9388D1F08B1C6920
-4F3F6F2D70DF9C4AE3CB0444667C853C5F120FFFA8A9A659974E92734A463705
-48A7E62BBF70CF0E45280174C1D32CE977EA7B40ECBFD780C063AE67FB6DC1FB
-B0ADC9B29460225A39A7FD5FF12A3154C8EFE20375ED4106C8303303CB9BD9DB
-62367963B5C2B5B21B6ACD9269A5257A398BA07BE63C5D8F0825C3D78A3CDD00
-EE7667D8978F819936E360432C5FC022E99CC2768BB27B6DF31CFE6502CD34F3
-5063946A08F1BA5C2CE8EA9AD55BF49D2D96F41C84DD116099C79EBB3AFF2CF6
-20029DE233BD50EDD5660007B67F45D4363527570EB08146E74256B51513ED0D
-7E5F7C63577E8589956CA7962E7505479D4CC9A05A953F63EC9833D48158489F
-1DED6FE3D107EBAC35490AE9F005EADE97FE49FB07F2DE996C055419454F0D51
-BA55DBA4B6F3EB5490D517AB69A6AA50F2AD90707B5EA4228B74ED72CA7D534F
-B390BC960B0A7C1AF6555FA5BB45AE867464DC13CFB9817DF771BEFD34DA9E2B
-C9D840B40A121AA85F88E2976E120847CC18F6C81F6EC0F0B836294963A26ED3
-E7873D0E643968C30FA6492B6FDFEBC685A0A5F2131920AF6EA2BA9C9B0B2223
-F7C1C61F0D03CB05FBB25B14B6680260A0B9A33FBF7AB00129B0CE4C1544DDC3
-BC14969A0A337839A0F964DE7B6EEF173F5B29EB29733F77466585941A1F5F1D
-3522FECB8BA325F39E0A6538A9CE35E768FFEB7B86EED633328B2F718AE45999
-15DE6E114CBB05C7DEBF42D04A4A3EA5E881EAAB51C41F579821542C867D84C5
-04ACC29A2AE9D72D931B4CD007654CA7D9634ABBF44C0E91F6D1162A876B0AFC
-37A269A209F2A79583B87657BA9273AF35897F0E4297FD568154680AC2280A17
-D3E303FDC5A2BB00EC5FDCBD438723C16E0315FA5AAD2EA9E2EEFA83AEBF4EFD
-88B98616FC613A07B9A40770776A8A21076F95E22DA972178FD3C16F96B38F02
-55799901E67483F02C32895F4DF3523D770F373305B4622A3DA717496EA7E211
-707EABB98B076A465356C52970A113EACA114DA4F8ADE9B8BD6F1F836778A7D4
-CB1710A7B06183C4923ECAFF807F2F1A871F7701F260E1EA5AC5CE1045E53996
-5BC19C646393F1996B21F3674426988FA5BD65FE0984CC303664EF9BB133C186
-EEE4D3C35A938F81501422AE76414552A05E917CB15B7E4F531E33C0CC21234C
-6D6E0038476FA8D50B8033A4816F5F0F0791A6D2392A133E7E58AFD3C054DDDE
-081E1BB0C75B1329FCA4384D1D8C055D909DDFB8D608652A29FD0D7677A419EC
-34D296EEFFF2EBBE660C719AC4DB51BFF57F891D5F8566CBB32C4D1FEF4A4815
-AE11953608B6A6E27F239CFE40F705A3EDF9995A19D211C19974232D5732CC92
-21D3B13A9D9A1B2EE8F1EF939CBD88FE1C89E0F6F74D1EEC5A5627B309149A86
-2847232869871FBAB1F13845694335792D4F297AAF10E4459FA0697057CA9244
-43C9E84B0E40AEC89E4B5391A637E0D83AAD93E44FD388725F5755F0757E1F76
-3F61684632E01A151EEFB5366948D1B540799DEB2A733F2C8B402A691810A071
-E045CEBAADCD48C9D73D87E07643E790DDE1FF3046645EBD2839147784540851
-4BE9DD7A8313920AA09262AE90E598572BC776794BFA3DD1CEF3F8D87D8523BF
-55FB5DA33E2E33DF3828AD100485721AF814EBF0A353A4DEDF3D2C6F56052C1C
-A6884DA940039F2ACEE9F2844D376C53A4BFAC8CABF05D2AD85A8FC3A68CF53C
-B68BDEDA7A0DC381D6162F684D5EAF44C2F52F6813D4F7C1EC873BED0ED0DC5C
-129CBCBE89561F84EF73AFBCBF37A38293332D7A444F34F68815B8E17ACC121B
-38D268216987B994E4C97F79CB025BFFED741F274E9D5DBC4A4BF7B91BBC9505
-8FA085D64E720F752D79684FE7EDB105DAD9D6384497815E0370BDEA559D7395
-E1F3C0E81D488E026AAF841B57E7548F408B851741A3E37DBACC7D509987744C
-E675FD8E781E7FDFC523E48A13C6DF88CC593B9ECC40FF138647E40F220687B3
-59F8E2E0D51A2F30AE2332C2593570A4821D99185B9D23688D94C5AB8396F346
-733B36D6398315CBF044E5005A82815D67B2ACE67419E994B97FBB9CF1C26B07
-EFE03E38B9F5F24AEFEF4A2008418892101FFADA6EF06A100664D8F388B72E8C
-30EE94F9A769D962C76442935FDD6312D001582A21C2DFFF7B8B11D55B28D113
-B98727B1C485DC9959CC5CB0F07A4640D7024EAECF335B22F907FD1E969CEC0A
-785CE260AA8B9D1104CFF3859D9255C00A77995AA8005065B6DA3DABACD56108
-452B517990C8FADDB70B20A136FF47FE428A7D67FF41CBC8425B45A8E30DEBF9
-E64AC7BF133CCE6FC1BC0F6D1FBB0C2515C1DF2D472ACB2A42017BB35FEEC968
-894F1B4166DC8A23E99108664D86D921B30AB994A70AC291F77DEC511B1FBD6B
-45D9CECCDD32000D82FCF1FA75B9578C33F50ED94823C2FBFD33085F971791CA
-40BF66EDDBA24554FE99B2F02249F00B8D6EC74A26CB8557FA663ED522A5A42C
-65DC855C2BBA8BD7B7043E1C9965E04297E9970C76CC0707611FC6ECF103B8C9
-70372BDD73D9135DEAF52E80B5C73A39A6A52698E2359C00A6B600EC5CA1338E
-A8BAF91B6ABF307EBA71A5662503D254D68411F1A96B5E762E6FE75692D21DED
-08118F7F8E2867F818921FE2A10EE3BA25B707086C93C14A752961EFBB2B8C64
-65529E24CB3AAE449F63572A97160B6A942E277BAA82250C4018901FB86FFE98
-CA1BCAE75B306DBE2DE8FD396CF82CADFD2A8EDB9B686207A3FBF4E53BE1B823
-34C4D916ED2BD1073B25A562C705E0027A59D69EC8AC64E68649836BCBC8343E
-DBEF37D4FC202E06A021E2C2550532AF82BCEAABB88A00C53C7F0F9DA6E9381C
-D80F2D57B4B60B4685AD6C0C2A3A9DF2245B296F20730798C32AD4F2A2F7CBDE
-5AC918F90C7EF9C186A34BEA17308DAE2DAF6BA716695AE4C85CC379D696D945
-FA48F2C681F444666A33BDCD48331292F86C8AC1239AC7C9DD282AEEBE502604
-AA5996885D68A4448BF6E926DD5A36C865B456A2226F6F120180C43A28A48F46
-71BEDFE3BC3AB3EDF325B265093996C4D7269A82AA923B1FE8DFB925BB3ED613
-6FDCE863EDAD90B171CEA83A87717143B6CA181EAFE46C4AE9F7BF4E0743E4A8
-0631FFAD194B78B24240A032F3CA5A5472A4E9C6A23E10A3A0565E9B7F8D1A2A
-3148D05335533D156FC52950BD2BC6DA91F2D95E4C440847A6606651EAC4C7C1
-FF63F2D3EEA189085A032D9CF72B3120418DEAAF11F0ECAB64F7784B2AB0913B
-E56383E7B9B70C41BB479BC36CFEC7ADA6CE67F4A28A50DFD0A69F615D5EF2AC
-7D3F5CA3B43F1D4A19216917722E1E53BCA3D4169C390EE8FD55842EA2C639EF
-280F97DDE120895CE226BB9AD12098CE9F70DD3AB52D62F1CB2360D2613E808E
-032B2DD16D8D5A4A0571145BD5E8273A0A35CB32D7B3824A61528C76164BE944
-147073DA37FEBAB102D0F1F2A1669AD9626C6E6396F2574F9E3A2369BF327733
-2FC8D58C7DDD0A7DFC6D125389BE4FADC7886F3F9F01DB3DE5DCB7C07D4B95F6
-0E1E5381AE62A0873CADFF1871D34A79D6DA883D15C2519259AB444703635898
-0738E3EA96E47A0A3C9F18F33A5E6B143FDFD26248F7BE5230FCE42A1BF41B0A
-EECD8FF8E98A4B527F4A2E20608DBA82C75F88E52A50BE6D44AADAD6F1A7C599
-F9E22AE54C45AC17D4A22E88E063268AC226A8C56C8853F5DD421F5705FE0A4D
-38D3160AF85978C947CFE0B73FA8B565F2AE8EA9905F2E1CDB4B6D0E9C11F455
-AE02273309E462F812B56A7273471642408C61E384EBAA0B6F1E1A5EA99890BB
-D96B77166DEA7FCA102D92BBF06306F20C230032E5898245F3FB140C8503CC52
-60F8F349EAF7D25A3DFB85BF940E63AC82702FE8CAE5B89114D2FCC0A4A04E80
-38F34203AC08D96D9C06B656DF48BA3ECAEC92DC77F7291DEA3BBC7A0DEB34A3
-0D950D80EECEBD97B9B03143A3E28FC1A8B0C90CC17680CF74A389CD4959F1C1
-BF4FD5413F53D7B138C998C2EC950C0706943B0D29450D06E0163047098C8A6A
-D7099957C42B4AD136869E6733BF10F713DEA2FB82FB0D1C3EAC501DBA2FA1C1
-16898D977C31C9865EC7F84A32BA2B261E5235F879CBB5C89A003A084E649678
-9D96607335689D31A6A2C584EB4E254E4D1E68D14C2CF64D6EBCD60E00F2BFF8
-78B2BEB54D817225B2C4DEB38EA95C505215400FA3F3C504A5C0A06AA9B1D4DF
-E3DB71D5DCD12F8DEEC8490A6660C8450563B8EB37692B5F2A0C23B0E0D83E93
-BF9AC290C4B5185A8A25AEE6117EF0E73926DFB4910DC288CCDE8C5AEBA9CE59
-9249FC3FADC7E65F0A7403B7D87EA2D1F716E28AB5FE50B309A251CD26D8AE9E
-B88994B4BEE92BC0675D93E1DF95778EC16A7C2044878B7FD9AA12DAB04A36D4
-CA4BB44B3754580F62A6058532B20C71D79BD3E1F26CF72B5D59CF3E09E360B3
-8B734B073D7679ACA54DEB8B3AC4414EE6C4A89221D5CAE95A07933069CF3519
-32BDD4EAD871610DD53821723FF1FF111D8E7FE75BE43966541FD43F12FF6C39
-AE98DC831809DD6F31DF88B35A1771B9B9088E804020F6467C2754A3E107ABE8
-56B23F934D6553A9FACF2DF1842CEA8F2C332D90DF6A4E7BA24000615986547C
-21CCBAFFE73A7A26CA02B6C739003CF2D5215156449BB3B21B220DA460749393
-7E3B1C06A75B065407098BF4A31116C581454D139970E8CD80EE3137CA4DDA9C
-80FAF0408756CD533B6B98A588210D8BB18E65EEEEC24D439CFB70411F0FBCA8
-D2274A3E44E926597DD473AD960B8555F7812FEC429D13AC39BCE9C4971E1760
-3879026CE0EE2E247155CC83981829602F9675887E16AF1BD4E90798CC26B4BF
-01563E938634B3E8E0B4BB573AA0DE6F88D043952B9AAD2D6142A29EC87CA60E
-7D8EE5CBCBCE359CAEF888F4FB74F7D8CF8FB344E9B9AF2A2968B81C23C28343
-7C5CFF58150CE6E192DD86056766677CD72A500995C9D6ECB99A3E007F007D7D
-2F747698989112DECD3E4E065FE363ABE8AC16407D41236D8BE271BF538832E0
-2DB056F0A43882675EAE6748EDCF075F7245B152307E2A545342D0757722482D
-F70EBEBCDDD7B4A55556917E3CEE954FAEC5A1893377B62921F8FEC13FCC5977
-91DE2907BEADC05713BDE68C4FC17ABC5AF421D29CAA33770FB9CB1A41971DA7
-19D3E5CCFF60F2EEBC91F61D42EF19179EAA35CDD768E5B799A9CD35C4A44189
-905DDB9878E31EFBB4AD310B0CD1079FBBF0D1D43DF170EDEA5E7487E9079770
-6F6313314761201D5086B954A4D7C5EFB3C18202D7A2491E1EEED2969204E8CF
-317A9DC45EBAE21444C664A83066D15C09AD161964631E387FDA3BFB75F82D9F
-F83F32438A5E1AE1B93EB82A4AD67271933BD6D82565F46DC7F7E87199A9B777
-C869C3913A82550BBCA535B88E30D6C74392F2614F6B2AFB754E441AE235DD20
-E5C6CB20AA857F29E611DA9AA8F01DD449034750FD287F01E7898BCD8313DE08
-FBA363691CB3779B2FA3833A4290A2B05B11293E7AC6F148419BE63BF1964EE4
-CFAC7C3E782A1F6CFD9D540E6CF732B1423730745C5916742D23A4433B928C07
-3A1C7EB92154520387B59DFE36691F2066FD2114FBE8DA298BBAF1AAEA3671B3
-F018055DF8FB9DAC318EE729A009BE2065CCE3F6E89D3B0C54ABE5CE66E914B2
-01112CC7D23B7D32F42CA430B396B131FF952DB8EA8399974E659422A2B20F8F
-A36FD62FB4A3EF7ED88D3196CD3BC2902E18BC23904DAD080812D22E0182A111
-7C451F2E699AFCFDB3FC5169B450DB272C15F07425BE15096BF2E5F84D5C6594
-A5AE02F2452142FA0E8B10A4D7BA40C7A17DB2E4DEA1E487FE13B3F11A240B08
-25BCFFBE935EECA88585F625B3EF5AC1633F5BCB914809054D2A91D9FF33ADDD
-8C2C1E16A067E9E877BB55FC24A23A4F072994E05D7FABE0C96F540242CA11A8
-F9BF0BA5353711B9AC20E7FB1CC8257DB334E686872CDDBAB3621399D9D80D38
-C9CE4FA35C3DFBD7E35939F8D1E152A17628DAC7D8CE4F0C7FA5F6ED0209585A
-486B55779BAF5D7DA969D64097B70C04E48E88A5B37D9744CAE562E7DB44C7D9
-C18382D2CEB3E18E8D13154687F3C48E264E86E552D8AD9B26E2BA59EAF53CE1
-9DEB35B38B1836A9777973F45940F7451B0140649FFDF7A139B97FE350FD8930
-573A3075C69AA77A3BD6CE95DE87A3E6D25BFD27E8D0E719EE6A1E4E0A2B3F03
-B49DC4B4B118BE0CC01B838F758EB7695C01134216A43A0061D1347D939128C7
-DEFC8E77E12F583082E52259D015B6C484DBF304275769565A4043F57741E8B8
-FB539C1FBE5DA3CBECF75573CA6B1B73FB55C59CA1D1862DA94E78545E7EC442
-3E71BBC472AA58622161266D014AA648FDCA0B2CC820797C972F8C49B9F0D60D
-61011F5EAE816192D1B46525FFD4FEBFCA202A5F299704882D9465DDE13C111D
-BCFB333E9C4342C6853564F5541AD5D032D2F4A6D6799D351EE94A03D59C862C
-0C8F89115B433367BA0496E31763991C388070050195EE5CB8A48DD6A897927A
-EF7DBBE723EC9DF21BE34558B9359D2A157548701DD41F85D50B807CCE212443
-2E1559A35D4F6354D09382342761B912CAB01973A01B27362CC88B0CF8068DB0
-9FB3CB57DE4F41E9FA491D86DB25D4ABFD43FE9257E7987F74EC25D7554C81AD
-2C03240D43BD35485F190BEA535DAB2DFB4C46811C158C55899CD939BD8D86C3
-249793FDB058CB1A08FE4D7EA058E9EFC499C7B6B8200BFDAF348194FE31A7D6
-3A25E37CAA086ACB1274C501ABD2E8413C631F4A4E0E7A89C71F31AA8308316B
-10E95153432034738B17B13628926A5D3EF2E3B0C4E66C907E8EE06FB6026CE1
-D5A6C06724E375C5A9AB0F8FDA51A5DEA40EECF446E96A23AD805C411392AE90
-07415F9CF5164B0D870DA8551BDDFE1C7ACF66DDFCF5CD5C885C608F9AE87ED3
-8376AEE904EEFCC0A11D78E8E0FC77C30AFB4C3F31A37333025F7F0E0A367BA1
-2D286CAFC428E84F63419F780C08264041161AC8709C4771C8C365BADD96BF62
-2AB25A322F48E04970546C6DDFCEDFB42673B6B88FAA60D19CF86F04ED4069DF
-535232AEFB85703EB6AE984FF2F8F1113AE08EA4FFD2681B0F8564C411E6E3E6
-222AB81C89A145142125129CCE9A47CE8F2691E5FCD5C1B1EAC5B7C9F8826ADD
-75A7BCA447BB38E9290426A79A7FB93CFCBC8B1D53A7281260DCF4C90E101D35
-ECA0E5B0DF00268D899419BD8FA490733F80858A7CA2BDFD40128A81B1A35217
-D80AD2D065C75DB7CC3819FA33D5F3FD0D27EAE7B23A1795552FC1162CF981A5
-6D53A285799070AE45EC14BDA455BD987165955451C07A19352631A1908373B4
-8A8BA52F80D4E5F13F93652791F7163C71C59CCA4B62D5224B38B003488513C6
-8C93AE7CE3B4636DDE0D008B3194A9C4AEC78C0800B08E46C1EF0DE9881E6BF1
-415FCECD02C22B1AA4D11B30AA66730E8FA833C4CCE8ED814E077EB71AD4B835
-F6CB797109700852450D7E9FBF3102AA56EF817267EE1AA7EC1A6A573BF08570
-380E2B3921FF9A6BC5AE23362BE1C6ABDF998AFB767AE1CAF9388B88A110C79E
-034A92F696D49BB5EAA1E6B0BCF07EEDC09D8CFB378FEBD7B83232F4F0AAAB40
-89D834886CC59BDE5A205A325FEB86729317D1B50C856302625054DCB22083E2
-C09F24D2703D9B5832B073C3EEDBF800759917E4CB6F53F234C8E180212A1463
-9C64F47805EA79E0563BA9EF48E4B7C73BF0BF4983D8F9B6A71C8E977D57155D
-3A48F9150A7BECEFDA07D7AEC66A5BE014237E91ABAE9DC0DE0C7A967B33AB83
-73223B33F7AF8B139B3AB187D4FBC8A7AD8FC07CD5DEE0A9E528D8B58FBDC618
-57D8076FFFAC60529EB33BD2AC9762834C4172D626325F8D419C0B19B8DE53BC
-C8CE92A58053AFE26ECAA764978E7309727C518917E8321106385E70FF8903E0
-1F760625C26B174A192E2D83C7FEE0ED596E3DD50098A9EAE1C6CDF9522CB6F6
-3F27E9EF5854B2398821E0773F45812E8750DEB95C38A50023B7E9DE639760A6
-1DAB5D3F80AD1A965D3764FD17ADF258C928A2381951B60E1EA76FC8DF583963
-4B0B44E0A310F7D14ADF64A245BC3C2226F2A8C5AE02CBBABB28ADD50265CC61
-0852E653F072F69E0DF0905A8777480B3546C09A95B695BEF79565698E27EFA2
-17B00C30A1E50D8DC3A03077FC7F4B2B390910BC60BCE5C8D25EAF3C61AF2B70
-7EC02EAF0316C0E14D71B67B568D00CA92F6DBBD85ACF8D776B34B516D8A472A
-F193FC6584CDF4466B3A77ECE231E2BBFB333A7F304F075D25B432103264E69F
-83726C57559AD27B77433B4BC55855FD9753889533B79E633842690D020FE86B
-A5929133FBF5A7B87BF1E3F6C4136B8023EDDB373DB2EF080182C8441A993E85
-78E764B96F40DE9A6F87F2FD0607548860F238384B160E4232332E07F52818D7
-43789E4CEBBF087C5ADC9A015B98042B2B2F8F69B5BBC78C95551C185B73C27F
-EF4E6F40506C79E28CDF0C870911FB271CEF1D903D2538B3C29A8C3AAAB19CAA
-
+260ED46500F88BD388506DA361B0E9FD796196E66B332C82CFFEB7974F9E4428
+B82C64ACBDF865B4356C4E2C8E6ED840AD52C326F7D4869F5BFCDA189FE81641
+832D1FDAA78EEEA4F41976945501F32BB383455467D217777DB74219F49EE8C7
+89A9BC7F63500C8A735DF316A6823E6ABD3D815E7369EBCB3C06B404819E48BF
+00F1A4AC2AA9ED69D6A974D6BA21C4923B7B93F52AEB5D7015E7FC8611A4E0F2
+A5242C167F9F3A9DE6EB0786EB41F72EC2051BE8C69BC1B1B47F21FA1BEBF913
+0D7EC2A3169AC17909A5BBAC615E64359C00C372BEFA892491D23712AF8C81CC
+E4FA41958C4AC483487725FEFD17514840A8DAED5656D30F6676EE5B168F047E
+593111CCAD76A790BE700F40845719C742C604416C9BEF74E50B7FB02CE92C8F
+5E0304486FF092FDEBC48FE92F1F52FAE037C4B1732069467138960FC946CEC9
+B00FD964782929B9AD606B2AAEDF7500359B651D48580BD33330FCB2407ABE56
+D006C8BD1BDE90C70ABCC7D3B6186DA6BBED163DF48D7A8B32CA1902B754E7D9
+FC214E64D31D5AD5AE0B3173DF92DCAE433F2CDE165599A1C215236AC9534751
+86BB44083AEADAEA87780CADC3AEBF28597D3577B2DFCC3322B4A0C8FB994DDD
+A42FC7D1E078FC6226E7E00E79197F001EEFE43DACE61835F9F2B68009B65D20
+582467F445293736BE2E3E2C0CF247224ECF9FFD37BCC76EDFD31368D2F26B8B
+5EB0322B44FF635A73A6936F73859582F33AC1160F6616E30499ED3896F2C687
+4D6C2CC91C1BB8DB13F27E1CB8F68A2E38A842C7467137A3435F71A463998130
+CD5836CA448E139EF8FFD2E4F5F8D7C0250D45A42B2419EC7A7B3B0BC09305F7
+CF0967E85B2F51339FAD5776CBFAC932048FDB039C9EF6E90A79019FA9622A92
+3A5E8EF2336DD18F1B504E989A98F4F9501DCF69FCD920AE53740A9F9D70195E
+C25A9858529B445A93E3A2E9C542485F86983F69F2D314B33AAFF216180EADEA
+AADB62FDC1625F363D784CB1E372FE3BBACA8E9942D43400E1CD716E472C288E
+DF4AB8FF861F2635E835B3EB01BA56E16A9A50BFBB44CA544C1F8E8B4937809E
+EFC33FCDBF9B0380605BB91032980A58E8451B04C9C5771E2A2E80F0F0980DD9
+505F6C8B216B39CBA66474ACDA857B80BD701F6AA093E2330D2F7D6CA6A129AD
+911EAD4E5FC1818F6A4EEDAAB5FCB6CFD6582C82A5328A129014399BE8217004
+EF372A4976AB13089DDC03C0061932C2954E3B3365E4FC98747CE4E05779D38D
+BC544D15C2C0ABBAF5D0374F4751EC5A6CD6D7B0A67E51EC762805E5587BF103
+3F9B3443959F5A9C1CD11891DC55FA47FE954C1FEA592BEFC735A2318BEC285D
+14F4C4EBACB91CA7C4C3E0F076C5E0310C357657628032E94584B384B19FE322
+5EDAC73733EC192187F028F3F6D9AB27140D799D45924A38683D5F92C8C6285C
+9DE66A0A9ECBC9F59054D9D03CB913E899CDD5DDD755566EECD5180DB6BA4510
+FC244A395EDB3DC1AA44F88E7AD74983B06C93F19ACA5D48572EE12B23BBB1AD
+6A6FEA136FB1294B0E12F6DF56A9A0276990E3E4E7027D41DE471FFAF8117FE5
+3DD9941E02B6750797BA878A153265967EB0B29244729949C39522311BA05F38
+A0AACC9E8978BAA786C7F85D3C869707364D7FEDC5737126406895456839A067
+CEF34760D0ADB87D95FD034D026683B786E131486360D8FA0E9573C21990A666
+CEA3085429F1D569FEBA7F02CA32B3A8A65885FC25ADFFA3165CB97DF5E00730
+8F32E045C7B2A5F96DC270F846FF246662864F0EC43AAABD94006F5355AB2C1F
+68A8284D6CB8974514BE0DCB823A943D67D4ECA2C3DB223341C9CB09AD81DF89
+1D8158CD2563121708A43560AFA3396D61285D2BD9043CBFABDF2A75B91DAC3B
+FA2276677EE444C08EF8F25EB68F625252C73B6E57B1823F0B7E3B0539DFDE67
+92D7A8B391B01B53497D4A5ADC5DC56D6CE71E37D93D1F246A7544A19B266593
+43898136491179CF62265CEE84A98984C40FE94BADC196EEE5C2988321E8AEB5
+5E6D5AF54AFD6B1147E4950F9D6BF4D732DDFA4EC5867EDE061E3CAF13DF2021
+96D14A9BB98A6EE506D001069DAE8F592CD7B85564B435F0B1084C1CE10D88EC
+88A74BA11029B60A80FF7A0C3D56C1C17707DFC270837C6C6D85DE9D83994D17
+3976A7E98C34A11CEF234FE9EEF6DAD47997596841AC39AE5E18BAB55972A5B7
+0DDB5BCB504035380E2296270A47D69D7A31911CC590F71C776DD313684831F7
+7221CBC90AC921247C320A48A90B387924D9FD599049C421032EC95E9482B010
+944BDE291FE248231FAF0B13E5139646142216E116C57F5F3496D7718651E19C
+57EB0BF3C8F0CE8B4E10D5EE6BF9B36B9DC87420973E17B3A05B82CABD297239
+80D7C6EC0C13AB1B1FA48BC6F119C99C90C725677AE4015900AF6B1F634E461D
+C00C07AA2B22CDA45C159A79DA4168112FAC556353A31259F413649F77B45ED6
+4189237119A17374C20CA37F477EEA80922E6E22E2A575C481A8129AC41F4654
+0AAF818B4CAAE9DA11DCCF531C7C9ED757C33FB40363BDDD80057795E259DC14
+5FA1BB9A5090B21C92782C688D6628BAB06C516EFF0DC3FE6347146667868672
+415B8A6A89172FFF885E5C9A2F01D8BFFD5F057945D2C3D9A6AAD62735739AB6
+A340BBADD7C15833B367957AF8F44DDFD6FB691F0F1E4D85F84D80BF2EB42066
+0B67031382586543D505599808B1D46132BFA5B77FBFE9BC7B689ABB6E899B1A
+00D56C8AA184A7C734911F19DB34E935E2087BBC0D15BB529036BD73C24AF691
+BD3242631C7541421DDF84AC7E9B7349DFFB2DD5AA11C917520DA78470C46542
+1E9E0011C970C7DC4E65861747B9C12B1631B157A0704B91A02DB671EBB5E386
+940A6F5939F20CBF99163DE8BA963BEB22161F612B314CDBB6334213489B96AA
+621444217A5D1435C143479B47FC5FCE3AB0788D729A4A1F029DBC94AF166731
+B20673550A5C9489DE639CDFF1AFEC92CD5BCB00A0406230263BFF12FF2E0157
+C27B3C331D859E29EC39BFBE3076D9B159B269C71C110901CEAFE0B3BD833029
+2A4692ECC37ABC5F3805E7CA3653C677C95E59456724F6562A24624DAB7C57D5
+7A34BE46181B52DE1D01E2A2DA8222E2D31BB40AFB3924D79354973F7A67BF38
+BC4391960D23D0F317FCA92F0191E51ABE703BDF07DCD28E2FB77494F6EA15ED
+38032FAF4E90CB4F75F7BD02E2A8E79530F76B4F0F02CA602F31D7E5031A8953
+C6F3C38D25AD19EE77A0F4D3CDC17BBA141E72DB6EB331A3B0B50A4FFF737D8B
+455F934A56F51A5A4D19ABA0C3CEB3B574AB1A9ED80F40BEA61B2AEFF7EB98CD
+4B6A7F2E414E89EFBA4CF541C1BD3C0697C39C7338B6873D4146013AD76D03B0
+6586C68D4FB8E60B7A4C3A40AA6FC93C39CD37577B72DC97A150674BD92349E3
+30EB87559E38082463B3ED0203AC8873F113BB08F681DEB4870075F46B620343
+6A1953AC9EC496BE435CE6DC593152EEEA6331CB9945AA4FE008937E16A9F570
+3E2A309C5171F683CFE26DF6836EE5FE3A4DD04C4BDB109D56832915B9B32F97
+F3B44A5D327125246A5BEB3FD21BE265ED7B5B1674922F26DE19C9F7F6495444
+9DC6F6D13F371C756A2B862AA499032BDD961BE5B4527B45C3C4D74E23260CC2
+944798F5AD2DA5DF397047D040940B8C916E7F272B21734BE30CB5E59FF211E3
+7EC389FFF7D3EA7358DECFC374280D67495C695C6EACD289C9E7B735D5DCCFF0
+36A614F61465ACD63DA0D2FFDFD4FC801E1C93EE257A04DC26AB406B149815F6
+21870221DF60CA8ADF2311C293B41CCD15E75A0433F057070C25F0D2EF94E4F4
+ECDF23A7D617EF72B213A03730ADBE66A54B1BF76049CBC3A3F035D31BAC2898
+63F269297D946552549A259B9C9601FA72E45AD8F5D0A7FD4DE2D32211C92A41
+7E764DB6EFF62D7CAC71DC4E92BAB291585199A4CD51431DA91429CE4127E30E
+EE8FCF90605AEF343296596357A978DFC772DEC9439BABD866E794CBA07FD9B4
+F64283A6EE91E42266FDFF7CD69847A940FE7C0181F77D55A07A16ECD9AE83ED
+91435DC75F6D7C5AFF4DD7A3C20EE0DA4BA99FE2036A7B7456AF936659D9FED4
+FD1939EE0AD25B550E8A655AFDA23EF4DA39777AC2A04890F29C0BC97DDBAE9D
+D6347B5469A0EA8721773CC685F7066FBC2E8A1574559E8F2955397CE23839A5
+7E99457317916D57AA5B35FECB0706FCE9914535A0F487831925E4AC4335EF33
+66890184550188AE57854F3ADD15A0991E45EDA27974C06E74FE12FA49A5C2A3
+F276B5C2489FB288F49D072C468FCD9037E4D99E1C40F18D80D1E63FDFDC427B
+660E4E36851A5D4A90F0E5F2D5FCBD2EC830242703F36BFFE66D61E50067A882
+A10E0CB20C81B0792A5B8EFE9302969644803E04D7DE8A7C24DDACB4563B604F
+2FAE7D6F5112DF03C1F462E4154EF4BF0D8C09416E3805B036ACA990D432DC7C
+7C8261DC2118E6E9921AADB908048076A12EA72E4A09C1C0916C88BB39677A04
+4563356556730E59164F949D62257E34B3036B22D454A3A61409F21CAC5544B6
+D3A94ED495AF043EED3EA880BFE5382B6C6D0B2A84B07F4DDBFF7B9A9F06A305
+A5227333C1A529E5C968E0E82E02622EED266332A6E033839A194FFB188B1947
+67AF109D37A85041C61A185E5A1023CCCF3D15BED794D8EA7666D35169031B0A
+83A96D05B5E7D059BFB292452EAEE5EA78201B3A698086B3DFDDC56D59C0895C
+7414F9CB0FFF74536B9E2EDDBD8D56357CC66EB7BF793C2CDFCD84B573378D4B
+7D2F6E7E9E4890714FCC9FE519D33171DDC13689CCB9C6E08D6D4ED46EB6794B
+D77251233A6FC717E811D800480690DAA62C8ACC2B5AD4958DDA02408288147C
+19D919C3496BE7B150C321791081AB9EBEFF8FF49D2F51728FB366309CDFD835
+D0EE508C80D162DD9D64028FFBC05E8F98CE0253A8BB2A4C5D3EF860372B08C9
+10D9C2976E41B0DF1BE7A40B82078414AB72F44BE8D34347E10CC21A9A960FDE
+9F8BA277A737A8B18F92D066911803886463A96BECABC509FBED1F053F58DF79
+27CF6A1BB379DF14784B2EC04A4E7D8DF6C3036697CD6285F02F23F61B3EB6C9
+2AEAAE6ECD0DC3FB6BF56ECA9678770446858BE8533EDAFE2D4CCB5FA1DD1B8A
+7C4957E1FDC355445D79897FF7CC04DF352E6D87B8C72AE9635507B10B626EAE
+FE63366EC0F60767E0FC4DD0C209C37E82D0FC40C3B36A2F5FF778176884A376
+5B8EC65A935F3326A9B2C27D8F27EF544D823E864AFE7CC3E399FA2F2E563097
+3D9BBF566FD818EA4305647A74A874712471D15108027C8881D9795177530DB8
+94D463FEAF96809727837C8CD9696E0D2BF53DE8D57A07F6D85A9E750B157CA4
+F4AA6426346ED5B82001E647B58614E1E76D57EAF6455617C43942D4B05DEBE7
+B6C682F9F567ED835EE288D289751F359AF7BE222268A6A3992699DF1C91C0DC
+A04CB2840C4DA5AE2CD0A12EB0CE03735640EAF0AD9228EDD2215831550B6D33
+C4CDE9DC1A15CCFEDBFEF5CDF6114D99E3C558C01FF803B4C21805A4525E18CF
+238164756D0F1BCCE87DD8077C8FA13C6AD8C761B5D76A8295806E530E5BB17C
+8786E0C335371447342AAA37FF1B887958B720AECEF39D3DFB0FBADB7C9131F7
+A960B7BAAC9E37B76A85ADAE8B9261355A27DBAD91E00C301064C9883FD76985
+F58AE44E71A981FF35256D93B68260DCC27BED91A7C28C804784A04EFCC8A934
+A4B30BECBD9AE562F6EB682BE9F98BF17FE8BD62A64053EF0A0F211D4E7C9F8D
+F31E5DF5FED9C2ED9F3B975C8B8026CC85B94EC649D76538B2757E08277600FA
+0EB1607EDCEC8CA2634C58D4DB7F1A1233D3321E19097C8E93295876C0D5EE44
+5EC69BF603205FC7A32EC71382D6BB7D119D593EA158DF5BAD228CDB66C6F6B8
+2FB03F1DDC1B3FE3FC644E7C6072993BF25FD5DE26A114A1E9145D638C8A95C6
+AF48BBEF411D550085F04BAD83701B754C8B7FA377A00A59611D042732997CE2
+913727947DE68DA049D61363519AAE1F608EF8B06DD1E4E5EB9DF23219A98D56
+8D5C93AF071CE20E738255E965D39CC1821CF05928A21D66E662BDB1E6089A8E
+D4F32DAB2AABCAF118C85FF17E8AB3B735E91E90FC07F84842C1467501B623C6
+4297CDC14D3D6F311C1B03C3E89CF6C02126BDEA141075AE10C7A6FE9164837B
+ECDB43216E61AFE41F28D9A2FFF96412AA7DD7D621BB96A834676EE18BD6D6CC
+1279613EDDF8191641AD1E5D65C77530A1C553C54C272FB12D34C6767FB8981F
+C39A3588D4A3BB12CE53AA32B141493F49D23105F94365BEE1F5AE81B91504CE
+5324CD2081E72CCB8FF5D9A0EE95A4A44EB358437D2CFFEDAA7E2022BE555810
+BCB2F1F321D87BF06F840C73FC6FAC2C8116ED530556C0CF5DA5595E10229A58
+C89DC8ED385A0A64FFDB5AECEB502354D9FF152C047371A96C4800CEEBEFF331
+BD0E4F7BFA507C6676B0FC809283DC4F2CD14C6490916D07FB2BD35C784C0AAB
+A786064E65B87DF2F71FEB03ADC4750633F8493E16152BE1A3127F16AFACBA96
+32B71CE871E3C7AC466EE601B4119AF454B7819E06D400A017EBD36DDB4CFE93
+9CFA6D66C95F88AC649D468FF4528652949C049CC93C681D5F4D79501C664FED
+4FF3CCF1033BFD65F94222F45235A0606524CCC728EF38906DDBF57FFAC469E4
+DD554A5407C8169C47E954FBA8EC7CCF65278F833AF690F191608E507417CBC0
+7E938578EAD15C2745526608B71829E327C9A841B9AF6CFC373E070BB6D45E6A
+9CF939CA5B6704D3581DA8D0125B07CFCB1D3C3420242D77B98DD728A263F898
+C89FE77D8D6A60DD6A56486721EFB4C19A44829DF70DAB6EACE3CBE46EE6DA76
+2D6C5C6A8978AB1EDBE79B3654A1F45D1F5D28E7E28D631F1A1ACE0B065C1B6A
+906F3335A11759333FBFB454DC2D4ED0E1E2DC6CD4F2400DC384A059FC3C9E05
+279154B5456FFE9AF248C5B9B3FF3B051DE80C0EF51F70D48A7518D5954F90A7
+18E633478D4AB1758BA882F9027A3AE05A61BFA2FCB1EC5108E416033E78166B
+F5CEB7FA00B24FB99D6A8F4D1554F9B36D2E65B1C13FEDA184C21962C81C9AB8
+53312F75AC7DA7BCDA2749B5C4CC6BB13F259A8148E3DB5F54821C3FC7D201E7
+3C9FDC0D4D174B7BA121E3FA4FCD2F7BF0572C9C02CEC4567F13FC51E191EA2C
+DCEA62F78EBAF4A6253ABE48B0FFACECD1EBD686556D37482A5264E10FC183D4
+318C62D02F83B6365968350625FE1AF810BEFD57A19CCFBFB98BEB52FF1D937C
+821A47DEB8E32047A92D9B687E147BCF7574CA5C6986450213E09152818F5311
+451EFB7C35AE79B8796BB8044839FCB5CFBA818C685DFB969EC60CFEA7D89045
+78FBCB9FB388FCE88F6DDF752DED634A4695B7CFAE70BA244373E63F6BC966A2
+6CFE08A09400E99E5ADAC8E6E11AA2DC438A37CF2D6A76C264B0744734D9A333
+BC478007283D9E995C163066C9AB0AF0DF2E87E44D71FFFF528817E48D75B615
+DAF8B8077A2B89192FE3FE3562D2DB1BC90BF21817153D68F47FF99FC59E888D
+E96F639852110E20E51AA0D38E6B6EF7E52709073A1543EF3F90DB8A3BCAFD25
+94253612B08220345B015060AEDDFA5C04723F2F404D2BC4FC05CB5B050CC48A
+E0103205372BB9C2340EA48EE063E19F3FEDB608A88000CE31BAFE3B46C70E9F
+D12E73A31F2F2C619791EA73EA25416E21832E3013B0D2E41EDB25BECDFD59F1
+C2B25AF3442F6A5932EDEC77444C98802C0CAEF592452EB8AE26CBC4287C4920
+2F2301F3325DC2436C820D00C3AC29A1D7C0E7C8AD36EF205E3E01A61E2EBA56
+9BD79E674AA28AEBE93512EC76BFC9050524FD0170EF7AD9AE841F23054D7D4E
+C201CD6C410DE13B7E6FE62385D647EBF0E725C098215DB60E8B01C8A5199CEA
+BC6BBD05B3438EEF8F078E49758AC7F89C56509ED0873F89A811BEAF4FD29391
+0CC11DE414B07372559A27496C5F6DC4E9C36BF610E62FA696015FA98E8FF19C
+C9CDB89CAFADC73493EE09CA6C1A632D8FA74CCBE0665655592F74B3472A7FA7
+2F577472D31923EF5B522C0CD76B81FCDA5F29659381EB7CB7631643298D2DF2
+F0B4B52E16551CDB0A0C1568ACFD00AAA39AAF18A2ECCE85CD763A5A7D792ABC
+96C3DC5E42103389D88A50B54B300AAC071CEF2D354BC2E0CC6311EAFB22D0A2
+B71D16408EE497CB67C78796D1E9C294B88632957ABADB2B0B2BFCDED25819A5
+93FCB13ACF15BBF42234B27AE9ABC68573CA90DFCBC40F6463BA4C68AEAC13F7
+76093C87BE8778E48C7226B1DAF7412972FA7B5DE9A4312EF26B6453850BD2C3
+F0323DC1C655CEDACCB4E87213F82BEDF619BA12AB5A40129BC9E179579937DB
+DC0C8FAFE50906850AE32D086DCADE33248C3381345A6474EDADFDDE24E0DA67
+05F03E822CDAD8A958ADFA7FC1EFC7D03BD31582FE4EED7A768EF13550937C1C
+3478C937ADB7FD2776D75797B8748C5DA78C097A114ACF556037F86C5382B33E
+8307CFC43B5571B5CD5EA192263B287397EEB9C277B0FCC88E140F58569B3255
+60DE9D1916480549168EE6E23E2DC616602E8F0E14FE938408EAFF0C8DAC948A
+666477512E5375B85B3AB5B5254B948CA04CD71562E5AD6493534C0A47C060D7
+4FC6632A43E59050751751B5FB9EFB71D259A7D4FE08CAB2DE97DF71FBB24156
+4CFF70E87AA9AAB3C5A00198E6B9D12E7BE079B1CBABBD4FBF5A297EE121A18F
+7F154782F76055C3F9742F4C193E0F958D04D1CCC929DE24F56FF2AB17D05DF7
+418F0E0000E5521A9F3E03D6C1E8A1C6BA04AFC719C418C8BF41F2F489EBC2DF
+7AC5C115938B085F94C4A5AAFEC2694F360BC2E509E8967426D8BB92C3B46E81
+5D23FBB6F8654BB103565967C9671B0D0CCC30406E729EAF5447AC65B9BD0AEC
+E68BC9CCC4F58051A993BBBEF40145FC3E85D3AD817AE74C95C2F777F5DA2814
+6CEB79BFD601EBD0A1C72FBB67B73266D6A0ED656F93ED61C44EC7DE891D28A8
+4B25729F58DD478932367018AE6C63FA5C5FC7EB2EA175CDE388750897A798A8
+03A92331596419241961FE5DC38DCEA02AE7962D68C5D6667DA0BFAEF3E816EA
+D3DC17F8B1708D1ED52C3F4A0244C63A3B639C393C735F0FB332AB0B7848D0A0
+C94FF616B38BE032BBD0A450E101E8592C804219F62A5A675365A56265B93881
+D66BFC01FA08FF58C502A7D3CA28BF0DAD846E836A1E520E60C2C1ABABDD2DF0
+6FB012B947E376BB0064CD07691A26CC0F5D1AC3F48FEF04BADC4DA29B4412F5
+5FAD7FE00E477B22FDDE54F922BFC45029EF69BACEE71A9DF13C0508095FE617
+9CCBD486080DD2650490CAD32D201A05E71F43FAC32C97C07A74DE38CC390040
+141F33F809E3407FE2880F0F6763247A3E245527113676B8DA900777A79B21C0
+C891D196420C52833150FC6EFC62387AFB1E402DA2E556AA19359D0BE0A75593
+7C66F47D6DAC7CA25957CDAFD550AD5E2A33F5021F4D81988A2A4D90FA11C9A9
+45E2B57705A81D89F0160705E0FB4CB4EF5793704A3EE8C6491CF3C6F44242EC
+42836E7125E349053B034C181E9AD0C71C56E316133E58EBC1751862B9302994
+351FA8A4FBBD3E681A6D9BD40C0B415B1E6E17917D229ABCA18BB2B0825D8BDF
+C69AB3D2CDF0C9E3FB6500C9D58A6ECD17E882DA0A0B150482D1EB95FD491D59
+7F82C6051BCEE0AC84C2A85AFE67B83D71D2769E8FE0C5ADACB7DB9AE25926E4
+8D80B9A1B949C4443F271983D0DD52EFD327AC4283B7FDB6957BC7EC2D335619
+9A78A6CCD89454970CE1DA66B35AE8573100B338DF0C8C5476A6B78418BF9E20
+8A33D3D7D725BA7A23C1273ED7F731BD7392D8AC0194D67C61B8C334CCFC38B7
+FF9F3118B5C2751EAFF59A191C2E0A8AE8364CC560BE42D88C6F4DDE4B61D02F
+6C10C010B55F27AD5DBFEA393202663EAD9D3DF5825E5CC91C43DA4CF1AEC0C6
+DF07F1642005687C63BAEAB5EE6744CCD0E6FC73C1FC22E0B5888063E3120618
+F788F234AE16821CF04E5791335C82225921712DBE75C540AFC913A501F72E0E
+7BE4ED1B412C91329B707D61F2650EBC2FDD72B3930ED5F1C886737C0D6956C8
+F1C2765A9533919FEBB984527C7821CB5B1297C5963EF29F19F8DDAB7BE15B76
+9FCA6313E60D34D8369880F9526242FC937FE3425324AA3A9714809B142CC61F
+39831558321DE167C4DABD38F10E880FBB15623E8296350C84510473A6008DA4
+24CC989D0ABB7A8DD597ED36A171812D48849BAF64F6F441BAF818933D3F9986
+E8C4EB771A96921349DBE1E92CE009CC5C67D7BF9132D569F645D0ECD44BAEB1
+590FCBCD3706FA20D1872A1ED643503A3966676DD0A816056CFBAF9151B7D841
+335F94557872EC441BA4505C65A7F1477431805C7DFED9CEBDBEC7EE49E87D2E
+1084BD0DA9B891BC23F3840FB44CDAE8E7DFE6C06A92A11FD13FA19C78F38B6D
+605D03A4A6C62EED344B590BBF935F4D51BF641FE8D2D10529D7A7EFEFC2F0B7
+B8D42B6A17A6D3A87AC8AB15BADFD2BF2839AB869D3EA978DEA0044AD7BC0E9B
+B6CC856AD362AEE4673D9C1DA8AEE8F084EBE1857A22EFFCFD8EA111D073C6E6
+CA63E3A78EFA85F24FE4BC1F382A48B8922D09D6231CC3AEB3412E8040ABBE80
+0BC85CEB792A99115DF49286848704B00BB1A8D25148FFDA511FDA7D9B3C527C
+2277FBBB031CEC10E41E416875FCB893C94588B0FC2C2F2C734068F500C5BC78
+485A960F3C7ACF3DB22810D5257CD74EAC2AA6A30E870A38241084DA09FAA76D
+2F00C09474A4B5070ACD2B027A0718F0B8E8BA85089C2D63EF04B6CBA6F22D3C
+BD0701F7E05EDDC1C54220CB8AEECB99581B77062FD897731CD4481FF512C4C1
+23C2F7442A2A6E21EC05B2C9874627A1B4C552286F91D172BC5B47ACDAEDBAE8
+F001525DBD896E2C07E98DE32057A257590868DF95715577B69169DF9637B00E
+A708AD09933515D26944A373FE442F64D488A91AED5C8F8EDD54A554EAD49218
+CB22C6196D32FF0EE679CD0259036452AA245BFF051359A8A2F3A9D06BE188E0
+7421CA5E3D070C565AE3A70AFF0ADC3A517330CFECD29FF5B3940FA54F187639
+D37091DF4BEE09D29F2E52A32AB5AB9AAC098E0BFAB4B7B706726038E1CFE2CD
+D83B1FAEFE1F4234182DBD5BE8E9AC7B2B887E01CD374A825C3D764C3157CD92
+64DA53FB9A596AF2E9C3F3D86A5D73850EBFF025A4D2D1A4BC97407AE88ACEA7
+DE8ABA009D7359F2620B4DFEADA09CB8EB68104E65B22F054EE6FE649F72FAD1
+B2F00BC4435D55EBF44035F5934A35A2A0621A5FB4F93C9615C2421A5AFB510D
+D1260BD366D5CED0073ABA8B7E3D0C59C63F5C48C2E3C77553B91AAFADE691D8
+D8ACE45C20166C35503CF73B48434A90A516B24C9F38700652A96F41E4AE95A0
+2E5D31470F2ECEBC3D75C6AD794F66494ABE216CC25A1E385D5B9398CF4ACF5F
+3705DB2A8FAA799803538AB3F81E1F798EE3EC152DE1CEAE132555D3F55F7F90
+B94FBD0889CA3B0BA1AAC8DD6C3B0CDAD21B799F5478A789F9A74EC7127E4259
+FD98E4EBBE489F471E799ADEEB0613E92EBAE7E0F9E09AC03B342ED5141D5774
+5AC364916D8116EB103E6C9E1819E19832ABD66F6452753F7F6795F274D82D83
+7FE689CF8A181CB425833B97F2DA9764732AA0717F0CE55DE70F938A37689301
+6F1A1586AF803C0AE64645D97B1A9AA141A24A9B997040714330351792616442
+70C8BA50FA4DD5238E2D7D6A16C9B5DE3F8A7FAB2F4E5655DA00481EC4B15B48
+E047AC737F5C380DA17F57A835FFA2D01B8EB20C0F3CCE270E208514915B8058
+CE3C9C8888F53CD8952492A00674F53D94C4B8A68EA98E34D37CE574C3F312D5
+D302E1F5218CC62C9C8D75092D00AE3F603E568E95CE6DD81931B352C8D8BB15
+AC9F11BE312D2729F0BDDBA215A8A0CDFFAE68BDB49F696DA0C3EBBF349B5273
+3D4A7A36CCA0446F7D16A668D51B5165D70625E3E96758387E40A330BF5787DF
+73C781B1F15EF16055DAB842029CE24A9677CC6E981A57A0209DE6EB62328DA5
+A05486E785AB73C5302172A5730586EEA3706801D39C02AF42B3C37F918AF5A1
+EDE8CBB0ACE44EC34B1BACFCFBE962549D05B30B572658B677C4B7D56E5FB7EB
+D2F632888454FDDD3B8A4DD6C226284B56FBFDEEAF915D6BC129939729AA95F1
+B0AAEE02C119EEA3756BB7AB638DC15185D7D1BC5442E4E2037786DFC19E06F9
+5758344DCACFF12EA0D465A4F1AFCBCCA6B22B07A96E5433CC81475570A793E3
+6899A1F9BC3750C9EDA5A5010D7CBA24970D19555A6613E1C0A20B2CA1A2305C
+6C59C11DE0E8DC0F51FE5F58EFF84F2DE7F18ED0EE7EC3C508951BAA11816F45
+53ECCE80B0D09AB23E189B890F3C9A4CEDCB7F0AC07E1B52B2CF8B6ECD6174BF
+D5E66D5EF94326CA6BEBEB2D04A2F5C87A0DF0CDB072318F0329C49E799458DE
+A2B772A5CE622C262F6294A8F691D83A188A377A8D78BAF59F08790BFAE3053B
+85DC75CD7AD0E641F0C41202EA3CB49848C5269DFDDBE3EB5C9764FDCADF7E6A
+2762909FA8C166070F69E0AEBCB03C8F97AE8DE40C7802FBD751A030425BD053
+161DEEB4A6FB85FFB9CE609F06D425C05EBAB2D4820FEBC450A3144341C0F597
+88B4917D4F9FE6D4CAF30D06E1129488AE8EE622325F21789B1CD274094CC311
+19819EAA3DE9703A5002BE9DE1BCA7D769A3069EACAB8261900A2A9E8A9444DA
+D7A922A26CD7BB9CC9942DB574AFF1411F44208538967F4249A3BF4BBFE81B81
+92840607C3F4C8E804FD630403D6C6DE60A3F0D0BEB9635A28BF4BB3A789D090
+E754F4367E29F13DF28304F2178275A71938185F6E680782AFC6BC35C9FD842D
+73EB566DEAF118649070090E43FA7E572036A606FD3FF47578B9594FBFE2C56D
+35AC38CBE303AC04F36D889113D9CD423FDCAE23D8A63AA3C6CC2F6CEAC37032
+B1AA79C500AE5DF39CBC57BB4C8492B1EF276BC4D2864F67CB09C14E6E811F33
+46DD35E4899A072C788BD80D5476648416FE383B9FFA64BD69D5948A5E10C8DB
+6774A701585216700E825306A23996B549A865255DE7A565840CF8F86EA30177
+E1CE3B1866D2F94AC553A0D4DB307A7D633D8CFB67D621294C32E8D4D5F48459
+994EC4BD53794F2FAB1B95431B0F40690CE80ACFBF249249FE6A070914080BB4
+8D56F73210F053B4DFA0403A2A30E4CB0DCD0E721E4143FC1EB918E6B7C2D977
+26D86B1B7F1D652166F169A3B058551A8BBA687A391FCBAEF337B3964CEFA7F1
+0A030C097F440A1D16FC14D9AC1243ABF8FE0C4572C14296FEF8B8EC6E859392
+96EB8291718357C6EC7422D8ADA872CB672AF4637086BBE35951C61789A335FF
+5B904F17DFFE9F4E60523D427DF645C22377E1DE1407A41DA9748FABB258B3A0
+14E168C2A2373900246A6BD88F25D3FDCFD2A91A5197B63C1CF59AC4F26C42CA
+B1958989A1B36641B51A0E91FE03E90BDAF96A7504EE3193728FA8F86B1F0665
+39A56B4283E9C789309ACD9445483EC16BCB5331571D67F2E6135234A855C65D
+2702310B488CA8FDBEE958C382E40B96C543F58E2065D5385558D2DC2AF550A6
+DBC437EBC53BB1B3B8563195B5D1198FD906DAC9D906CBF59B7BBEB92BD29131
+B42F42B6B0B4656E0FD8D18BFE640FB479447BF606F361108FF3C9A9499038EB
+87A370E44E8AA019689A900F20992619915ECE3FB679F5834F1B0EFE293595CA
+0D37BDC0ECFC4D8528D52A14E40F8D3B0FB3AE69ED29FC7EF377F6C48A5E8ED5
+9EAD17923AA47F3A6FD58A19889C31DF0B8FEDEE49EBBE4749746C54362547BD
+678CF0153BBE1A8BABAE7046182A542A9E91572F980E33B2D8AEAF2945E0693B
+870787BF000663167C0084EDF0C35E055F3208A331F34CE8112D63EC8A71D129
+2EA41C7079AA2CE261F2C3E47E051635E5177AEA3626D7A4D7B5E42F66986E4A
+BFB5FCF022A6DAB4DE877AC2DE05D1BAAE32B6D5CE1F24E570D1A123F8D27C53
+7E166783BC7A9437F9C3B6968C5386E9240DCF5EDA0BD2B2D91BCE2DADBE00B7
+20C262DDED733040979E62454C5303F01DF1CA7EDDF9E158E62251914918CD4C
+88CB370FB1F68866CA2370CD9926A54BE41E1363236189AEF679E6560EA9765D
+E5B44C035CF0378A4D684516387CDE0FADC607F86962DB50E2C82126391A8E87
+DB03285E829D39FAC94FFAF70123C3AD7F083D93A066B6E73186EFFF1CB951B7
+E746E52F54B0EB268EF21109CECBDBDCC99C59F5B545A8E93C6CEE6EA416D3D5
+5073DEEC1C4501BA4CCE7AF100C9F0ABFA5563B61F0DF4A1FDD5484B49D13032
+BBA269116BEEF5EC05650610408544C375DB8C4DA370941BF2AAA1ECA9BD4AF9
+783F2B651A22B51DE953BE94FB5A296E6EA54E9FDADC818BE4743EB53913172B
+2C2411BF4D60D5ECFB84906F4ABFDBD4B70327EF53F465BDEC2506FC278CCEC6
+8A89151EE4616DBFAD66CF4422DC9F0E15D9639E54E1B47BE6648059084D58CA
+110F38D77EF76775570E085F2F9496A4F2646EEEC6C269EE35DE9F756117850A
+8E722DA4B8C26B836B428520A904EB109F4EA09F47FF99CA22F86C951D24B873
+83B9403DDB0720DC3FC4BA6C33478C13370509EF5C7CD49C10CD5FFD25043AD8
+1DD09529FF9C91157E9006A017B2DAEE542B39AB665EA760F6D24A9460FC0A6B
+5C3964882F4471BF38E858EBA3BCE70230CEA3B511DADE4E892451711E4C41A9
+679CD4D9067575783774FCD8BF7F20B53D8B19AEFD81F44ACB4704352BF0D25F
+F8B14D5D0477925D6792B93E3395089540C5BD082D7A718304B12AC0B99EF0D4
+4588EDE56AD2CDC1A23AF9D2B50FA87319D0A0610D04B69D9CE7DEEEAB2B7B88
+45097DDC86E8F91875F259B8D033C44D1C966262A5E9A2DF0C9C16858E97D4D9
+3DBC278F765AE2DFF9191DFAD87577F7AE031045AB54BC67FB0C54199738DC50
+D761374A1F6CD36067A595D5D052EE1048CD4F6C3C1A093B04FBA24FBA7144E5
+BCB6438235EFC35F222EDCEFF7940C1F91FBD93525F8B9D3CBC3BA58DCB29043
+E720B4C7300FD78BA24C70BFBDE3398AA91F00BAE8A4C04A04C9ADB9EDAE27EF
+6C6CB5DB6FF0E4FB3127901F0CC575A8D8A492EE03AE4E8ECEA6E55D60563015
+4A157433C362D46B61908BE9445CBC25E50EB1F664072ACC5FD11B24449E6C29
+296E9AE446A63956BEE6A25607E2EBBE7F4F4D4FD4C98FA3A22AC043441F3140
+5ED2C4F32A54F05F1C3CC03B638FE8744F2C053FDDF6F0F87861298971C972D0
+EF6429BD3C44D3606D6A10AEE77E32B88B0648519D6F2FB2380290F7C873451A
+C378B78290346C03047129A7F529018AF6B56057FB08B40B13AF74C7257C15CE
+38810F7D912FBC3AB457B7018C985F31EEB76FDA63B95BBEB1F8950E5BA5926E
+876F0FE954AC8D5A7E5778B3598D4661783645DEE64AD6CE7B7D027D2DC61298
+27C56100FCDBF2ABA512AFA2DB1EAEEC0DC39551C5EF23334FA516B9C10A6FBB
+34A23712A73876EF7C71AF2A581B68F618C32DFF596CE1069B3EC5DA24451225
+A8522AC59A84EDB613A4B00D2AE058FDC9E1AF8DDA2F29C9D4954DD815FB4372
+D7C07781E7AAAEB3DA9FA9CC3721C870076F01787F31B455E68082BCD1F1C3E3
+84126C4B5668492DFCA2531A2DE135C588F328470497CE27EEE7FCC2B74C1BA0
+30EF399E8BA5C616A4D45BEBF2DA0BE55E96936CA2B9BDFA632A9725B3147B59
+C74FDB36D91C92B60DF2F7111CD4C7F59A47E43C0DB5A440C727BFCD133EA099
+7B8A5B801ECD69A1201134DE7C6B6EB80FAE9C8DABFC970F6DC03AED9A383C73
+A463FD3CF42EF5873F9639D55050FEB92D5C74BCB69536D645D763BA62BA4771
+9830AABE85B84CD6ECC2B2CFB4501480B5DF833C836804A0B463F57CE5AC08E2
+15480D47EC254D02391279E72A146A0834988FB0F8EF95573A359A4FD262E44E
+79FA3F29C27CF9934B03881A8561C3943B2928967097613921B68E014BC60C93
+012446D334D3C539383A01371CF0CB6D3FE6E15955ACDA7F74C8E0F1DF3A2FB8
+D741248FCFD64378DF4DC90DE0256840826A6E0892A17E7E90AB1851A26D3D05
+F4C4DDCCC2A0B758B90C236C0BA05FDA098BA199228AFE1DBBCAFA7DA390E07D
+61250CDE484356AF8B6A29E4595A98D0FEC0770B2A4ED9E5566C7FEE4E9409CA
+99DB69F7353F599AA573A251F8BAE3D6A6ECFACF07CADBE1B63A5E55568C903D
+0EF6B59B3484B13321C3ADD862A135F4305F3F2F21D188D7F1CFEDAE964AC4D2
+0250A68B5F36419E41AC852BC8E3FEE7259BDFFE250AA71009240C138C546574
+340F7C6395E904AAB07C05032FCA7BB333A9F95ED35B115E8449C26E8C6D8CA2
+99C1C38D652A5E14BD7E8F4B4F89D0EDEB082BBF8A0058E95934FBFEAF63A99E
+076DF6A6259389002B0F4D44BC0D54FCAF8874606138F4DB1C39DE366938F12B
+0018E1586F0284619962950D8A17343E
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMBX10
+%!PS-AdobeFont-1.1: CMBX10 1.00B
+%%CreationDate: 1992 Feb 19 19:54:06
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMBX10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMBX10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 12 /fi put
+dup 19 /acute put
+dup 36 /dollar put
+dup 45 /hyphen put
+dup 46 /period put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 58 /colon put
+dup 65 /A put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 72 /H put
+dup 73 /I put
+dup 76 /L put
+dup 77 /M put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 121 /y put
+readonly def
+/FontBBox{-301 -250 1164 946}readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F00F963068B8B731A88D7740B0DDAED1B3F82
+7DB9DFB4372D3935C286E39EE7AC9FB6A9B5CE4D2FAE1BC0E55AE02BFC464378
+77B9F65C23E3BAB41EFAE344DDC9AB1B3CCBC0618290D83DC756F9D5BEFECB18
+2DB0E39997F264D408BD076F65A50E7E94C9C88D849AB2E92005CFA316ACCD91
+FF524AAD7262B10351C50EBAD08FB4CD55D2E369F6E836C82C591606E1E5C73F
+DE3FA3CAD272C67C6CBF43B66FE4B8677DAFEEA19288428D07FEB1F4001BAA68
+7AAD6DDBE432714E799CFA49D8A1A128F32E8B280524BC8041F1E64ECE4053C4
+9F0AEC699A75B827002E9F95826DB3F643338F858011008E338A899020962176
+CF66A62E3AEF046D91C88C87DEB03CE6CCDF4FB651990F0E86D17409F121773D
+6877DF0085DFB269A3C07AA6660419BD0F0EF3C53DA2318BA1860AB34E28BAC6
+E82DDB1C43E5203AC9DF9277098F2E42C0F7BD03C6D90B629DE97730245B8E8E
+8903B9225098079C55A37E4E59AE2A9E36B6349FA2C09BB1F5F4433E4EEFC75E
+3F9830EB085E7E6FBE2666AC5A398C2DF228062ACF9FCA5656390A15837C4A99
+EC3740D873CFEF2E248B44CA134693A782594DD0692B4DBF1F16C4CDECA692C4
+0E44FDBEF704101118BC53575BF22731E7F7717934AD715AC33B5D3679B784C9
+4046E6CD3C0AD80ED1F65626B14E33CFDA6EB2825DC444FA6209615BC08173FF
+1805BDFCCA4B11F50D6BD483FD8639F9E8D0245B463D65A0F12C26C8A8EE2910
+757696C3F13144D8EA5649816AAD61A949C3A723ABB585990593F20A35CD6B7E
+0FA0AD8551CEE41F61924DC36A464A10A1B14C33FAFB04862E30C66C1BC55665
+6D07D93B8C0D596E109EE2B1AAB479F7FAA35279ADB468A624BE26D527BFF5ED
+E067598E1B8B78188FA4BCFB0B51692D07B0BEBB930C6F0997B437E2C51B876B
+61A563A2673932C2045833FAA35DB22ADE12102335D5DC734AE3AC5EEE6658D7
+92EB62131E1DFBA441F53EFF9021D9D4C491F26BE8F54C61165CAD778CE8695C
+EEAF70E3B20C64D4C2B34A084B5770BAB2A8B7069E84EE1039A2E43E0DECBBEF
+93189055A49EE66B5906996FBA7A2F052D44A9EAAB6DED6ACACBD4742887E4A8
+FA3D14EC60A2413277027F80FC9B4384EE6F9A1528F7E58A9CB23E3EDE43B06F
+E978B03C604B50A5F91C47346DE482B3A922A5D0236FBC7C8B46BB2355A1E805
+C6E30E5B2156F4C26F2C5BEE2DB03051D5824E81313B77E67A9C745F9F696E81
+3BE9158CE6330EFB07FC15E8618153D1E4D5E46141140D9ED2D64A1706E81687
+7BFF07DA3877D7DAEFFD70643D1A32AEE36CC2C0B376F888AF34291450DCA410
+6A49A4D5E8C2D1CF884B6A975FCC00E143C634C2CAAD10F354EA13055C6C7F35
+65B4A26C6C28C08567BF5860D0930D7CCE02B8A16F7DB74AF6D8B7A401DF26D9
+B605F7DA453F60E8E89DF07C2A11C0E1F89B02D061B7C9EE6274B3669D367C6F
+F13C336537B67F235795800CA8EF1EA8591DB59BDAECC087BD360B3B50F5CAEA
+8BD4F3EE074773D8C969DDB7B64C6A7BE3956ADBECF9836714BC6E754FC09E57
+DFDD95F1A01A3106AC80DB85CE663658EE74C714E6297496EC70890CD6EA37F6
+148CE94413F1D6CE5A3592EF3F99297874E13A7829B3C18BA66F9D093C3DAAEA
+AFEB3F714A5449DEB7DE2F19851B4E65DE0679B74D83F1ECA1FEE76D0AA42B5F
+5DF085720F44508D5782551D7A7978F3681929E6EC093D73DDE8DE8A938C149E
+7E436F574115EB02F9CBA61AB32B9F27625CBFF17E3AEDB5195B493A149B1449
+5EEE848F16BB2EA1457FB44A45453D9990FA4F9FB258AB55FBAA37CE0AF7AB18
+8C46E921805055944A406128C21CC380EDD623BC1FC5523E9FE0F860F4D5E543
+1E9615777533FF7F92D1F1233151D7EACC678C1448D79712A58F2ED9C68137DF
+777A3403B563AA12F66BFFC69A9213D8E0990F3D44409A0F041E1F33662D0E2A
+7ED134E654ACEF0B5F8C6FB271BBC84A300794A6EA89E6058A07F4A84C33DAE7
+967153F4C4E65357C34143980E9EF1C04FFDB7A683287B101AC4D7EF91B7D648
+141E4DB0E49806215706B1F4A5174C9EC19AE3C55E3191A9D7EAD3294E77818C
+EC06549E92C90D62BF85EAEAE51E4D7B7D66B4481823B60F897D0DF74FA1B72C
+6FC4C10EEEE3A3B686AEAF763059525C69BDE039B398A8115F5C53217FFA8280
+DD9A35A85E0DF9D40780E0E6D62E9AC1BF6BA810B780AD3D79CFE274CEFE48B0
+40F7B2369A722FFC2D5292C5B5CC8D29CB56B98AB182463EE08956A36219A079
+7E92BC33856ED2F4DD53ED0809CA4F368E41C1210E655BDB2E58BC91D520289A
+07B72F3DA93330C41876A4F13ABD480EDCD34370F71F9BFE330C32D011AD62C7
+16DC3E93BF9AE378B09A0C3AA2A43A1C61B02ACBC9061C116C0AB42EB60BE12F
+F80FC95C5C51CE79794C620B420C9DD83667150F6EAA923D0CB79A60CEC8B9F8
+3E7C0F58421A0C349525E14A369FC591BA86A3748B4618EA8BE788D5227FDA5F
+AB37F8302DFCE43E3800BC945E9A96108301AA65DB2DFE6E371F1D24AA406458
+C3838FBFCF37E7F1B589D820F6D54818D2A0224D8A76A420DA12C56C7856BBC8
+3A3AE827418D1F3561CE924B03E75EC9E1318767385C09EEDD5152CD0932818E
+5B5D087D070E53435F5A3A63FC5C25CF064F69AD37837C7808597FF974708DC1
+7ED44F6CED31A17EE951B7D86A1728BDD8B0D862601489A7140F932EFB90BD98
+4FC42505AE9F6CE40DCD06ACEC02DF178935876CB42DA115A08F9BD7DA700CCE
+3B11AA257116B2E1FCCDCD7D6D692D3912D23DD521AA0CAD0A040ADDF0E27259
+40F6A9FB2F302732594F8ACF5369209B553ED9DDEA20CA52E42FF30569D80212
+01A544C966EF2F1EA5559CF516784B964A5C4668FBDD158DE9FC0E8C8F5A66EA
+1CD364F124CE3569AD8CB4BAC0A9B9758AC7A9ADE015CCF6BEF9ACEF00F0DB2F
+A9A7C2E5FD498FC0033CE4B5764D0B2B6BBA47D9927FB015152AE37802E598F3
+5CA408DBDBEAD7A02FB943460B80F02AF30FE483134DE7A89A70569E590BC20D
+493B2EDDADE1CB532D51C268CAA0F98CAD9DCF4CD3F5FBBBDB16A2D65B415CC0
+59EDF3602478BCC8F7D2313203FBE416AFFB93D61871F5A9F10A6549DCAC851A
+4FFDD7F922D1EE32F6F67E53967D7C12178F5AD3B8B483AF98E6A8959607562F
+22CB9FB8EA545F007C34F3A1C7D3D560545E145A8E57FF58BFB486B844037C09
+1C219D212F4C13A1736AD7D55100BEB709D110C4B95D589B1471CF7E074CB3A4
+72C0E75E5CB831D092D7D872A34E373415A1D7DF6C0B52D9F1535A852874B282
+9BB014AFA74EA7A091E2FB1F3B3EF01D6F86C3F46AA79FA519489CEBB95AB5D8
+BDE011394DDAD57A318199FFF087A8C495D3D93025285FD85947D5297DB85333
+575E25F03FD37F8F85AC0A082B8E62CD160D93840EF8AA09F90D0BAE848C08D6
+DE2FB5F5DE2D6C4462B82C19868CE9E969EA4DFB9EDD2AE3F83EC0F238FBC1F8
+89192A00EA10936B77EC8A9E64109FA7EE534C395D415A106F65E09F512D7A56
+F4FBF94178527775519FC4B96E8EFE5F4F3AF95502B02DE37A065B438653FD0D
+E4EA28180CF2C3C166070F69FFFAE746DD8E57B302DA740B4340222F597ADD7A
+E49E33AD526598C818E5886EE0EA7263871585DCE480770E3D8B4B8B13EEDD0F
+962C92E58088CAAC81A6A9BF7912485EF079D2DAED54A01635A4C16EAFC60FD2
+DE6F2EEB2DA95829A7028DB2F58983F4AFE39B58BE62A2A73B300B6732A981B1
+DEF8B09C43F22767946F11BCF1FCD38E32320B412D0BAF7E679ADAA54B28DE94
+9D78C58B0D4BC1CE211E395CD560A49D0F9A7A4329C9FCAAC6B6B84C46510657
+1ACB0238DFC93E208D389647E379A2636A640C00DD91CF5B4751817DE2958735
+F9E0EE7EF7115008A55EB83DC993CBA141888F4A2C9C51E888EE2F9D605DE520
+0CC0CAC86ED519F766C6A74EBA418A22647CD8D933F3BF23B75C96D445E57402
+BBF9E0302C546C094DD18372E64D85C42E6AC4D4AD13290BE6161314A56144AE
+02DE38A0019173F1AAD039B9B3E7F1E7D123A10677A7B3E38465CC6EC3D64BBC
+145275796055097F7176178F8872C20BB4CA7FF78D90090DBEC1FA708FAB9C8A
+94376FAEEE7FAD0CC8B47D82AC78BFE2C2E2CAAF47D7CBF1912708D4FFBCD602
+09779152E0A031921640B5E13A02857653E84718155DF220E0B92385FEC5B006
+D22F936A6B604B241769E52A7028089163507B81D5B6AF5E55B991789F2FCD0E
+60AA72063105ADCA6746EE997E9417A457EC9C9AFF9D1F82AF16F26051289374
+29340F530E3FEE1A93663D60BE0F64E58A669ADFD3259BC9C4CCE5825EA5C335
+133CC9CB740B6980FE711F77FEAF776CF5ABAFBAE54853F94E8F2356574555F0
+AB8DE9FB57768BB67C13D58DD33E2F176161164A48F628427EFC3B5F0A8F2427
+D58A7E8BFE8C7031EA69317676012924C3AFA986C3062BA67BE5A71359851EC1
+23D529291F51D4B9616C906D9E5EB72406D037B35AB82F5FA32068CE1B0DDB5E
+FA5DED13B4AC002FCAFEBA0DE4F6B9CDD9CA7BDED2B894DF5F381CCDEF003B16
+55B99D680DC6C885B2B33FC8F3BA106B0902EEBBD3237D18FABDE44FF2EB163B
+131578EBC15CE149894C5EE6578DF9D6708839A032490BCECD052E20A7C94367
+DB0F920AE0DD15372FD44423C4600A289060B39BB34FB0EA116788F9EE088D46
+172424C79482F2DD7F66FA5B01C9F5D0BE92456BFB89156BD93AED6EF1D7D891
+949962B3CB8D7D6273BE685CA811CC28B230782EAD939009D7DFC00E9285B108
+CCC7D9D6A43DCE13FF2059CBD423FBF87A40E694AED1CF6E0D9A12972C904EEC
+C425AE9234F026393CF082E3BA95FB9FCEB37C35DA6FE24EF295CCE723C55FC7
+F6F9EC01A8D464A390E891C572293A15D6DCDDB56EE751524F7F19975E9FEC92
+43313C65E41D8561551EDAAC6D5AE5EBFB7DF225A6646B9A185DD7955B87F880
+F919BEC708EE9B5D386D8BD82745AA3F03DACBA1F58A70E4C30096FA18ACB48D
+557FBD3763536FD5C19E75E150DAFBA4BBC3690D677FF20886F8836D53EC801E
+AAE0AABFE8903DFA95AE1E27962CD337BB39A91CC69BCA07C1B0C0A7F93244A0
+63C454846DE0FCD53DF32ECACAAA5589B06D218597CF2076D59B7CA9EB78A67D
+28B42DF3C1E286700D4AFD82A63D9BCEB2CAB1F1602DABAF1684328249F7B787
+1DB3A707CAA7C9EC158CA3574DA91F049A888053D64D393F20C52C30C15B3EFE
+6E87A1351D0839826E0195AD8A334607649AA0A9847EF013757971E9461EB47B
+289F74DFD982DF89019E0265FDD4A10AD14CD3EDD5D6555A9A6338C1CC83EA08
+CE3FDF7393CF854A9788CC31C30FF76918B9D694D00E746276EDA71AA2AF30CB
+82CC3931F250AEE451E196ABA1FAD6F21D2628F7B1D80CC88FAAD65B515C3FEC
+7C55048257F947F1D0F1FAE362D23BC9FA2FEEF3722744FABB62FC4AFBEEAD5A
+CB2E2CE2A38529E30CE60A3A5872C24CCE96A5D55E5094ABA181B7A0F847D72A
+BA111318B5DEF40B30BE6195CE55EF9DA4EF2823A58540951EF7F707DEE0E6C2
+993E63470DC417F365EA6BE16611E03CD04BDFFADEF0BD7F91BE48AD0E0E8B7A
+2A0A6EF99328287344684F5AFC534E01730826B6B80C511ED31F3D3B8D17841B
+468452FBB53F059624C5746659552EA69A4EDAFA627AC8EF574D996A421E4D39
+C62690AEEDF4775F150447EBC3FF6FBFFD853CA384864F2B73302B3CB72F3E2E
+7B7855C7A9B106238946B75C3A5807A597C4FAB43E624093C6AD508D3F105C77
+25D7C76F35DDCB1C01E4212D90A7AEDC5F1F2DE963113967B512D4DF995312F4
+9981987A4CC089BE75D34EE2DEE750C346D8D8ECAB28CC25D871B62AF82D2C1F
+0040F9D102F166E25C649E69F9D7CD31F2FD018956E6038692C57D849887F52A
+F06D991D0A889A07D3793A055A887E8E12C61AC168C80591F6789D8D1D68B395
+27219CC88670B013DCAD7EF948A7C1F7085621A397D35C3AED7C8C3B0D3AE829
+253310A9DDF1ED9F0A724091BA58E7B287BCBBB0542896EE6984BD224F413057
+1CDFF59B22C30E04E8C2F1521C01E3922819AB0D2812545688EFA078F31DD367
+C1F4E7730B4D1B6DD06E13AA4EF98FCC3FE27B38151DFAAB1D0246A90F19A551
+D098EBDBA701C465052C13AAF120CD03A3207383EF6CBF2475FB4DEBB47CE59E
+68E915611C92CB85904EDA1E5B9F221025C6C5156FEABC2D361DDAE74424C730
+9E5BD34D77784928BFB53D163BD1C7DDE31F5A1E391DA1218D99287B95A1732B
+316BF5FD63B237A3B1B7AC39522C41BCC109020DE6A8F683D856EF2E6D2F3158
+8A978267A0DCCDB9E6C4E4A793FBF2FC49647DBD6601FB7F59D77FF18DCEEBC9
+456A9F46AF2C3B5A4FE0ADFE49BD1CC6434B59415E6B783B079C94DB69005148
+1BC9897FE8E1196F41DA53F2261ED3CAB21D0EA3B3E85EE4BDB280F8740D2AC9
+85B0799AB4586E3B8B8D693B5975943D9D217B8B331E9DDEDB482BAA1121174E
+C0F93158A672DA9AFC520CFB4BBF7A8ACA2FAAB5714C7D182D09367304A6E0D7
+BEA0D00E7204FA4AD608B12E0A2C3708DA6E3BE762BF189FDD8781B6E647F8CA
+2E745B58CD65B2DEA153A707697216B6C1E3E44AC6FD29E71901D8E45E92AED3
+259A0434957ADAF00C28C3F1F7E31B25C5E248BE9659F0DC71FBB71057871848
+8872954943AECD35C954CD5C45A3E8AADCD16F28CCC7F06EBE7C54348A2D57A0
+1FEF1F7C6FF89001BFD7E90C17695BFD89EF9E1E4EF27DDCAA3DB1405CAD5D3F
+D93E8C76596EA4B5F3AE567D9EFA1F8A166D0EB66010FE8298DF313D55786E77
+7E249978C56096C200D53A255B0EC5C4BF9B9C1BBF40D114E8742BC16041A5F1
+CAEA142873E106E3972E6DB3044A5A0BD5C5F729991EB7F0CD2615F7526144A0
+CAF82F826610D30824A5A20A9020ECF95742E79F4EAB6DC0DA8B8C0CB0823A46
+14C71EFA8722F7E1B8983DA273F676080C3B37E9EBDCCF0FCCC552C0BC7DAB1C
+CACED3ED8A6E4F579B0CC2D6E83CF63BDF068E3750DCB74EB1B1D09A2D0AC2CE
+E5DE1E51A328687B1D40B7C011A0DF846C330CE4F038727C3BF4DE1CD061B5A7
+E5DE34583149FA8AE50EF5D016F5EF062B32CA4DDB1A33CAA9E8DF666E2475F1
+512A72EE0DF61AD226368A33F85E419E50A8E032293EB3925BAF909A2AE0E647
+81C9A413D670CFFF4F93E3F6F4775CE58E982B945329C30481ADB922C6E17274
+F7636E1789B101662F5689519334046F48BBC27479522BDE80BD9C5EE6D1BE08
+1995B10936BD8AC9D7EA990F51D9A96A1A5D7718B2A64117C88CAEFF73F60112
+993CB70B0FEE7DAAE9F6CFBA9F991DA740C041DCCCC4AE132DED46A45A4552C1
+808CC0FFB9A3AC893EF4EA85DDDA4E7651B617BC79088376B1D15F3F1B9154D2
+3AB2AE51D7E654F95E87070909087AE6B716D37A4ED3D8D359EA9BC211736C08
+6EE76436477578E23BC81CBE87D326D57EE33A172BCA70856877970E80114F30
+8E5F85A908352425B2CCDB5697CFE2EF90465642FF498CCF0FD7A6A77068172D
+9AEFBF70F58A3FB26C0CDB83C83255B6506F3012EA903F8E89B75CBE99BC3713
+E1FD46ABF2850ACA11561F9BBEFD0B851F953DBE273D2736D1F370768C89825B
+2994D3DE37E086813FC462F696902455A1A1A947DFB91629FB1C62531F01A4CC
+2A74FCD447F3EA20EF0418941C251190EBECBC87DDEB852EE693CEEE2B89E2DC
+237416451ECB9291D7F2C0E68F3447B72392438B7C42A1B921A742BCF5DA0B58
+836BED4BF5B234325AA1EB97ED9A8E6CD13ADD33DE2C9283CF46DACEDE73A35A
+1675EEAAC0D8F8FC0CF023581ACB1D0241B477390395DBADAC3C3815CC55B6D1
+DB62D7AD5AE09BA334CCAC1323802CA544A75CE8E324CDA9787255CB60566D6B
+6DC410F02C1357DDF54910FA24E6B8B53E4DDEC2028D357B0A51C0CE6A073EE4
+638C2C756E43D59269E67879CC7848C63ADD63412AB0EB9246DF01C8F85ADB37
+FEF0C7D637D6F40FCD92C4CE62B6F0D62292F84CDE1A70F596142B16F7E76407
+7A6ECA2F8A49CC56ED141963EFC7EFB72C02D04DD52CB6E865E94AA41238C971
+3F76D94EE30ACEED4321E70110E7F3A1595244FE7A9669C948A048D598AC0E65
+F6C7B52A5D7742C1B105F9C86C68E592F65D541CFAD7FA0085DA65F7F9B566B7
+9298CADC6B3921FC9029C5213F8834866A752E938D2DB8FFBB071A3F24CBB7CC
+99F5E3CD857A74D8974A443071B4E4C86CD7E700B6219C2ECF568CEA17A9DF39
+3B4FF618889CD94B59239C3F4F7C7658DE5421DF18CDA1F5854B73782651023A
+5F474AA8D6181E37C60C95F19A6990C4E4432D2336CB8EB361F9E5AAD3B7E2D5
+350959A1F309BF66A1A1569247407D9979F99BC85AFD41D44D8B8982F7071B27
+B31A8FDFA4D4484F6E3EDC218904D7B11D4EF38204AE27DC669F35F7CBCCB01E
+4B79845D084998E34B830F5600AF514E58D154557F13737AF20D5432BDDF5936
+D07F72C83FB5AE846BD8B083E0AAA5FDC73F4EF305ADD1C03CCA924CBB35C252
+352A845DF3D2159EED08E9EAB16647515E5930DAEBEDE91EF946787ACBA4BFA2
+BA898C60FFC0696A9764A51D01E31B6B39F22D289B4DD78D02D85D7FFFB3C3C4
+52CA50C8874F3C5557C22D7EC19236B0C25D89A6A9C64B2ED30932DF1D7D16FB
+278EE0F2F86B4F0130B5FA464C8257465F18F72FF723F67A438014D1823EB70F
+008077C1E6BC7D4E64D257E57A9891E052A5C2E0E8F03AEAE1FDCEE4D340F104
+583391A709680C96EA751B85951C99CBDD2D7CDEEFF6E4D747CE5D0D18599327
+AC37FE3AB145C19B76A511C0B440C98323B4F5941CE43979523DCC9640B346C2
+9C17C7C0D83D8ECE3D08E45267D3B4E2AFD78535ECD8CD65931D8E402A024C76
+6B5FADC434AD3D70E3538008BB3088EA45D7973E559581740258CC81E56F96E4
+E396A070BCD36CCF68623F05A817634D7C20BBD4313E36ADAFA35B412DD114A3
+87D0D92B6FA2EEB56779CF5A8038BBAF6C22A516C5D4CD09BBE9CD6F292C4F30
+0D078EE1EBD47EC7AF11EAEF72555F940B59942CE640BB461D529B3DD7DC59DE
+83B869FD97A69A92D01166B47DAEC3BA68DC8E314D8988F0A313FB0E971E20D1
+5C30A9225E2F537B23FFF0D9CE204B87A96E5B4E502BFBC67DBCA89E8C938F4C
+0F1712B956A6CE28D508359914E634DF70994A9430D90E9358BDE2800A05AD21
+3DA296BEA7E9C501908BD0DEA98436FE603B787FCB265AF2F69D0AF42A3F8D98
+AF22321E0CEEDDFAC5223B86E5E7E04FD4EED7ECE93255C2D546F8B423FF8DE6
+C7A6915AC6357A5FCD42D4262C9B06FAC29BC958CB7000F61B03C3C373295DE1
+92DB914B0FCC9D774E357A8B3AA97594D86484E056BCCE7C875ABDC6E04BFA6C
+F23CD3C39F7A5E652F9E7B1825258B791E840911685C5DB9EE0317229CAB1FAC
+BD966C2C1C947E84B9721A9C098AFE5C67EC3C0CD18E249D172E8F353896D153
+ECC2085BF67478C1A62C186283ECDD8F8ED860D88C72B3D84F116DB67AA63274
+302BBEAF09C4F5D04F2407BF9A43403B97FFB4672569B5E4A018CA9F412A7456
+728F70A0CC6A14E0EF7DA545D530BDB37CE47E65D836E211DFD18A0099356A35
+B68245F0ABB1D3653FCEB198083485B91F33C5C3D2AA2C5B3F07DBE2901FF1B3
+CEB2BEF981FE56D8554758720B4B984A509F8AEF743949ECB64310F87DA5B522
+A5BA72E3A5E1DB9EE74F912F1E70398D7D6699F670B0E1DC4C2F76D7B9D5CFFE
+E70B75564D3E930077DD78FCC47C55FB783B1E48901324CB5CF178B8583CB540
+BF03FC20E649F1C4BE64F1EE83B9722EF6E1447AD95F821378DEBBC0D846BDFB
+4D6F42800C967E6CBF3ACFE43A0A634F2F74DF741419344E838721FE98FF6C04
+79C8D8B5929D6D3F73E856F2085AE5C5CB4B028B091B211BFE3E9629B1C37772
+749960BFC86C941A4B3FFC4552D15B4CF9F2C9D44767CD34D134469FD2BADCC6
+77E651AD7C0E31DBAAA712A08080FE248AC5E592F8049A07FA1114A75C481DE4
+CD775562068C95B2B1D4B3242E5C43C5E5B7D6F5F57E1FF4134F8DB69F825F47
+0548185608CFE84477ABA83256F6B8BBBE668E8C525387D8D2448976E28BA5B1
+342148FFAF5903756F07F8F71DC9F323CB7448ED6C1FBF7CB916BACE2BCF1C71
+2C5DCDF9E344BF509AFAC07A0A48E819708927B36AB4EDA1D85782DF76D20280
+ECFCFC7003E60DE083654CB094F0216D7D8028DEB3C1F622EF341272FAFD9449
+3424D8428F4C8A51353F494C1E14534174F3F901C36E7743FBB03A665732D738
+4F78FB4AEB235F68CFD835818268C099317D49B8F794399CF8265ADF1120CD66
+75B2F9A5BAF86F4087CD1D18B168F3C555FC5C2FF0DC84CC14E6E4D92A366B66
+83C4E672E166ED8CEC9754EFC094AFDD263355A5FC1A81AD06ACA951CFF941C1
+93B4B036933CA8CE859C8073AD96CA9D2B706A0B17368F350F0BB90303766D59
+1D7551ADB6C952F499864B2B48790665243350A1294CA9FAE96DE3B4E160DDFF
+86E47810B8F00E46BA2008532C238525273C1EE87D706901EE95B73A6EF33DAF
+1DB033BAEC49324F2F4A26F510FDDF44F3F1884CD4D56751C144A2106EF7C63A
+C6D5CB11307FAB4C66D83D3E347DB503E3C98A49763B748B8EC5DA1C42167F5F
+D215865D84D7E2B01F94F62400F1FD81EB194CB80A4B33C1A5C5808164D8AAAE
+D261DDBFE916BE95BCE0D1B9936A36CC6E75DB412D4291EEFEB509053453FF14
+8D5F081E5FE7225C94D9627878D66BA4B4965DB12C1EB17ABB0A2D87A948292D
+D051934F33CCC97CC09548282BD24F04E37B724719138C0269DE4EC3E056FA2F
+CBCE254B977F1EA5B6CF56D590F5066911300AE3632E97B4807BD7947530D2D5
+1DE251686C5FEF4A851FE9AEA61BE752E37E5F5501B878BDBE054CA1516D0DB7
+54CEF32EAD3D936315C8702E5048B9109A6036FF5159FA3A0675A469CAA1959B
+A33B6322D0CC76A5B30546D41C3CF17B67B8E7FAD383D16F14620698749EC178
+80048C97D029E229BDF6227E4FC6666606FBF3673FB8205D5DCF3F5A83313227
+D1295134EE8C71E00DEC1487994483E9B81A642C53A8198EF57DDA9274FBCE4C
+6628EEC75C302F7ED41D10CB5F1B2AA4B12A5415E4510D25B1F576CC16C8F9A6
+5ADEE2248A1B46DDB499D779F8A63E09F674E27F74D53AB4642FBE6615094FF7
+B8040EBA84D850675C55AED0C9E1C4153428E1FC7AA8D9335B42BBB41C1C779B
+8717A00E96D2B9B4138DA60D818A8A303367CEEFB73A9DC01E24A7F160CD9AD9
+D375A71CAE6115FF29A61796418CC67255735BA3471D6542ACE20572B5E2C9A7
+494AB3EF0C728D7EFB42FE593A7F39821061B599A0772181D74438C5C7766CBB
+18D035AAA6A54F9922972E44D7AEF4AEC40CB0301FCEE83E1FE18196114EA8A0
+F7C91BC4339F87CD35A68ACDA8FC9F10E1386A040D910BAD5767C8DB06F5CC53
+35FA824C791B0870312C89048EA85093F0BE8FB4FD778BA03C048209D29BB315
+D601635271F36B8D38F83E8069482FDAE6C74249BF1CA70058C2BC8CDFB7C7D0
+9D19E903961561A4DE07D412030BB1748DD16F9DF7EE1CD8673B5DDC9CBB4DDA
+81716505A58E2C6E7EAEB44F7BC67FFA1A8C0583A92AB1710B618FE04312C778
+878DE8282AF5EE543222716741000EFD5267AD23DBB8D17B354AD4255D1625D8
+FE10341752CA2896F2E8A045B179A083595332706A62C34035AAF0D54F529A87
+AC9D67975E894EB72C5F15CAF1EA10B500CA39AFB32E3CF8A3332DBE41B41EBE
+3E0C9D2D68EADEC7F175885AFAF975DF62225114CCC3030D6D93F0C7FBBB2D43
+B4137595D7337DB70A5C763B9CBF597668A5BF3181473785A20D959750642B32
+04709F214C67F2E84943B39CBE069E84EE7514EEA255F5919750DB4A2D497AD5
+BCE3E4836DBF351BCC9AE7B05F8562B3411D3B29B807882AFDD951AB1987C040
+B21B661F8F9F37B724648CCE293CEBC503E812D03B366E18BD8E20F91AD432CC
+3A569F63867572311E492AD3A72B67B9DCE970CC21DF69492F2B60BF59AE176B
+24118C7A1350A243143600FF6E83C7762581746ED1D1FD64BA1A1E8DDB4888AC
+F2A2A33A81730F2E26DFE89631EE000C0D99EE8E8BB0E3A37614A4F8631ED982
+002CCC4DB0A2AAC85688A56D48D701C99321CFC5CE97BD3193A8925F3A4E19E9
+A34E7F53D9535359FCC9599BD30466D5EF6A64DD80F981BE451A3E34EDC1C278
+BB9305EFB756371853152D313CBE01808F60CAF2D894BF5D5905A54DA745D2D4
+29E3876D1E7A187BAE9D6207AA1F70222B7272A863F05EC0D29EA4562B7DEDCF
+66B369DA7FE7C7CF8D433A75D45486F864CC7BD0FBE940FEE9068C9F7B41ABF5
+97BE7ED06EBBE935C5135967A89EB2182457374C83C0D795D50A6ADC0384DB46
+BBADE8D2CE0A37FEB55F28425C25F26049590EECE560D135C8C7F5A4BFFA0AC2
+3ED2FF71A36867C426D8B9C9
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1703,6 +1770,7 @@ end readonly def
dup 48 /zero put
dup 49 /one put
dup 50 /two put
+dup 51 /three put
dup 55 /seven put
dup 97 /a put
dup 109 /m put
@@ -1736,53 +1804,59 @@ AA078CE16247A1335AD332DAA950D20395A7384C33FF72EAA31A5B89766E635F
0733B90E7835C0AAF32BA04F1566D8161EA89CD4D14DDB953F8B910BFC8A7F03
5020F55EF8FC2640ADADA156F6CF8F2EB6610F7EE8874A26CBE7CD154469B9F4
ED76886B3FB679FFDEB59BB6C55AF7087BA48B75EE2FB374B19BCC421A963E15
-FE05ECAAF9EECDF4B2715010A320102E6F8CCAA342FA11532671C636C0D2E2CE
-D8649DBDBE8A697B6746DC731A91B8D0EB5A738C70E467C0CCE8051B8D0FAEDB
-16A277575E9AF40B3F2CD2E528C6A8121E0BAB76D2AA4844EC6D435C068019EA
-E1A61E204568F5F96B669B9720D2BEAC18810BCB07995F3AAC92FC49E6C8DCC0
-BBEDA5AFB0F58F7A0980130FCC5BF0ABCB5DB7D1CBC26DDD74A856D4E1679719
-5E80E567B56E43FA24494B908C6CFCDACBF7203DF96953E71E66F5EBADEA32D5
-0F35E49CD70429D5843A1158BF4C69057CF8BA43FC73A2A0D7B97F2BCEBA4281
-292DBC362571A6E3026C5D39C67C56F0A996E87929D62C165B0664C052113829
-B903754CC74A4E06A9A2F7E2FCC6F5B4BDE5CC9677B98362D731424E3905B8F1
-203212ED1EF2F5B9304B1C72674DFB75825CD777C265DD47BE521B46B9B08DEB
-E68DA4D3BBD0D36D2558FC85FCCF89CE81E653BB8F1303D626F4DC76E85C1DD5
-C2767CB24E4A1BAAFF97186BCD08B8EB133DEE8EF02A1351DEDEE652E04BC6FC
-25F9C78FDDF0D46D7B8511316619484D90C078BDDBAE75FB1E374AF96F8781C9
-6AB062C3B2F438E82AD90D455163EC1CDB961008DF06F8B7D188AAD13A8EF9A8
-FC4321B04A2EED0E036F81381304E2EBB5C9E5D10A28F73E906A3EED9FCC6634
-143CCA16428FD4CF2FB4A647659FF37B9092894F35239C0F282C9ACB2F1B58B3
-3CE9BCBA609B2738A68CCA19788C8DA40EE9327666BCCC8454148482BEC38ED5
-5F8F493D348FF96EAF8D7B815E24EEDE103D8F5A408D2A763EE6E5A4FCF6FCA3
-EC727794EE07356102A5F285201C085911A3C69164EBF2F9F85333A85BB3AF24
-4D1C505E4566728F218397B6C28C55ED9E89E273868E607A86FA3A1E474138B3
-1C3388B1386EB0C9ED48AF81D6F8C531CE2CFCFB140AACA9A454DF56B4761592
-ED64E92C716195AC083FE20E34D82D2B485A892019C8570574F73FD50E34201E
-4ED48F3115D8A4549081B646F5D5EB199AB0A6DE9A726826DC6DF57E5BD25782
-6AE41F632ABD892A11BEBB2688F4AF13F69E265A9D19A0BB0CD1A551B830AE12
-43CBD3B63E8ECB56D2571377906D8E2FDDBA145F7DC03E1CC886611A004DB730
-9CB365C8094E0A933FD700B24A107097D8F406F69A74BB9350881102A0A8B1E7
-CF2C750F8EBE2B1D5EE1673026CA0AED34122460A745B702D212D659D3254465
-C785A5F7FBFA09D533C4BD330A8A6237133BC72F59FE37FB76990C81C25CD70D
-DAF70C4D170B03DF71D35400338B727EF42D73980E3843809841F4C2FAE102A1
-8ED8E8A1C85638F350FBB1BA1100A102F957172D76C00650CCD42FC0B3750E49
-BE3E46C449043515647BB65C6D3FA952A6BA1721860355E0007283E6A9FDEB10
-F18BFF0F34C0F3941CC3839E598B2D8F2C75CC7784E9FB3C33BE312976CE2BFE
-F30229BEED1571DA9B6C896A02E64BD376FD9CEC8195B6C43A3292F171E9EB99
-39D9208529761E0669C4ECFF19EB710AF73F117F0509AB594083CD61F27EC6DB
-72B5D55F7CB0E389CF6D721649263F1B4160F1C1FCCA8119179518720F5BF614
-01E8A29E5B8131BC4BE6B84488F6A0E96BDFEDE3CF92D65BF31D29AD50132EC0
-5ECB43077F5956A05E78638F84A252DD37B188BC6146EB9EE605C97021E6EAAE
-5243720E4CCBFBD8D5869315A833FF70153C0F037AEE5213EBD9E4FDD02676F8
-1DA373549D550994B47532ACD72CFE200B8849D0E0B645B6EF0F967ADB58D849
-893B39D218E8BA2C6B55351B251733F4E0FEB66FA5937424D1E96CCEBA118D4A
-44D369AD3F534C118E86A203E7E9F78687551E346D290812B0992DBC24D189EE
-2CAB0E1B88A5A4D245EFBA40735B73DF82344481EA20549434C2A560DAE8D06C
-A72E6C05AE5D6791A7370151F9BD37DC2C10EBD1FCA765AB75207C66D0D9480D
-F019351F63440D46F829E0690CC58574ABF7A5A2F05B449067DC15836A5D824D
-DE6EA54E3AE1E8F817ADEC548F52EBFC8B4BB80CACF664B3D4369F76143EC455
-4F12FA19A399EB7175D02168EB8225A66A5A9421CF2C5557946FCFEF43D9E6A7
-B7503A014FC9968054AD95FCE95046C85228
+FE05ECAAF9EECDF4B2715010A320102E6F8CCAA342FA11532671CEB939AD2EEB
+4370BA2C96960CE9E6882316268ABAF1023ED9D2D13969EF9E53F52BC143383C
+AFC14F27A7530C1EF399707711B3AD971D9F57DE244315EED5A16F9CB6AC1524
+65C8C8458FB03FB8619B8A925DCA3AB2518F044DA696A4D6F8DAD182E1C15D7B
+C108C9538896A23A043EE66E18808902D215E82AEBA183D813D46B89A3FC847B
+A7F6E0082DE9AD8C0A83F521219955FE964A660826FE921E1EA12D7B34D65EAB
+B5E40E74A9666CBEBBFCB9A26A0526B72AF9F31F6A04305FA0284816DDEA6D1A
+5786756F613EF9040290DD2D2B27B88ECC0A1FE0DCC2035211919CBCD2DD7A8F
+35EF236D4E0749256874CDF5BA703F0C7B49EC0C9EB5C65AE1E7F7288452C619
+E013FCD5D5D5F8A517DA7305F04B4EE61B12A1A2A26C08A46982A7D1EEA07D01
+809552DB4B07FB6EE5A798324C57FC6C2A7D31D102E1BD5F296E9051464CA3CD
+F37695EB0EB77BB83F258039FCA21B8252F70CE5D3D9D74E452617B055E19B5B
+600B421C921B026BC7356AF63F2690C62B1CD9E479D62EF8F964D9BC29AE1447
+F096FA9ECF5E52F1F7E2FB34B02BDDE6C210D3A43AAADC40636AE8271DF2174A
+A63236C4BEA8FD7A6E841B4AEC2CADAA7FC481A16322BEBF01A31E4CD5A577C7
+EEA43211AC7C2C40A6EEEEE7BEEFA146BC3322E6A9E157641A67823CB2661C97
+07C1DE919CF5D1EB4550B08A8452972330B08C87A6AC91BB519667CF32F2885E
+71D69B398E7C59F815FA730BAFDD7F54260EEE5BBF6219A7A39D65B0624C9555
+CD34EAE5E7E9AA681B06C1EA575A6C41DD490E0FA258A93766707B6C8A35638A
+653E9244B25045CC2381F4998278F9844FF704AC420696AA6E18C8EA78D98163
+52ED5CDADE35979C4CEFDCA0B7C1A26211F04907D036016EE8A1F40BC4143093
+19D3F937DD6D6328882E40141CA000D42EDCD4D47A5516E5FD5205CB31F88D21
+8E855C79000D919BBFDBB843C29FE353B33833A36A6C76581DA65B8037DB5DD5
+1BA21BF81BFABEE02759C35002E9A0DDC78D460989B8948527120ECBCF5881F9
+F035B80F9269B0A846780272A15B14204B8C03A1A135092E31F162EE4BAF20BE
+D3C1EDC193FFDA52128313E51CD76189A911E82207A822DDF92F6E821A75BC5F
+762E99FD94B1148E71E873C01B46C0158170047A0E6BF5962863113893C71AF0
+FA1BB71520E364053B404B3D912E011D226A95C7ACFB4A1E7166F4B9BA67B4F7
+908FFA34D2C2199F7E5309E6DC0C76FC502D88752F6BEA537262DEC294E3CB05
+E511CA14CDF663D8745BF6703AC16FD61B43F7C3C6A903AE586FA783EA4515FD
+B3CC71B68757A66338CD91E4A09DAFEF053737D76A1A9B32BAC308021E7720A7
+8E0A341A4BA2DCAD4E0112DE60DE99539FA7B0EE73CE05BB245A1F5CFE242333
+8BFA62C67C95F0843B7369BD117C489DE934BB69D927069C072920398CC2DAB8
+62101720901D3DA6465303ABB9C19525DBBA151D0F1D8BAF70121CD368934EFB
+A68A210B8FD29391D25ACF6D77969768CF3C008DDDE81E2869083F86463FBE15
+E43370010EF7B374F3CBE74E86E80985B498014ABB6D28188DC087973B2AF56B
+71C3D7A500949D5950E745C3718317BD7E22F54D169EE7C702EA4C37AAFC853B
+2B6575BF17C3B0A910E47AB0F85C0F296B161F77E2D7E7967BE4951510732D40
+96F8C2B6D322DC5709576DC8F2E270822AE3A0C38DC54AE36A1D612D356C1347
+6E4A9C592787048C21E2D833263B65C8E4427B64AADD32C311361B018994ACC2
+ED31DE81A87D2944190F1EC792E28663DBDA732BBB7C1B39E0C9B652BC2519A9
+78AE3F205990732DB91653B03D317CEBACAB797FDFF3F01BB33C5B78B86D8783
+7AFF1ED5B3163983678D361A2B3CBD4CA1EEFDFC587E6FE91F62506F235109B6
+8E51CB8295F64F6C7E69CAE94466DE4B186B50D5551D51316DF9AB44EE853071
+B6FB652DB8B5C09EC2F4FFF2E231955CB58224DD864AB8D71468EEB44D967276
+7F048872912A3B92B0F54D5ABD5AD013B4BF2706D53FE5ADE3882F71C296F3E1
+35F4AF44A0B84D7840BFD29D466FC2D2F4E8C81B2B69C8EE5C2DAD4C1678F026
+144B7FE3A72CFAB5E1950EE2F8EAD198EED539DDCAB4840FB8ADB9ECCF6B31B7
+39B70FEE5F3BA9E758DFD9ECE3A627FB99495BCCEF3475FB360F235ED73DC910
+A787A5C59AE1AB0777ED3D08E5202A63E090D88B13C4752DC4D95113A259787E
+4C42D6C564AC849D5F9780D8EF59CE68268D052563C19581B06F7789AB1DEC3F
+EAC624CF6DDD2A821ED46B01F14A668F7ABE74A5529C94F086DB03C71EF817CA
+AD815C4D3588F99AB3A90B53EC855DDA69D299CA7C6EFCD2
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1985,29 +2059,30 @@ B9503AD86BFE89B4FF5B6F49618C835B82C0380F
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
-TeXDict begin 40258431 52099146 1000 600 600 (README.dvi)
-@start /Fa 152[42 42 102[{}2 83.022 /CMSY10 rf /Fb 133[44
-1[44 1[44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44
-44 44 44 44 44 44 10[44 6[44 9[44 6[44 44 44 44 44 10[44
-1[44 2[44 44 44 44 2[44 2[44 13[44 44 18[{}42 83.022
-/CMTT10 rf /Fc 134[59 3[62 44 44 46 2[56 62 93 31 1[34
-31 62 56 1[51 62 50 62 54 10[85 5[77 1[88 4[42 20[56
-56 56 56 2[31 27[56 5[62 12[{}29 99.6264 /CMBX12 rf /Fd
-214[28 28 40[{}2 83.022 /LASY10 rf /Fe 134[50 3[53 37
-38 39 1[53 48 53 80 27 2[27 53 48 29 44 53 42 53 46 10[72
-73 66 53 72 72 65 72 1[91 57 2[36 75 2[63 73 69 1[72
-6[27 11[27 9[48 23[53 12[{}39 83.022 /CMBX10 rf /Ff 193[65
-1[65 60[{}2 83.022 /CMMI10 rf /Fg 133[37 44 44 60 44
-46 32 33 33 44 46 42 46 69 23 44 25 23 46 42 25 37 46
-37 46 42 2[42 3[51 2[85 62 62 60 46 61 65 57 65 62 76
-52 2[30 62 2[57 63 60 59 62 65 2[65 2[23 5[42 42 42 42
-1[42 23 28 23 2[32 32 23 5[23 8[37 4[42 42 3[69 1[46
-48 11[{}68 83.022 /CMR10 rf /Fh 138[75 52 53 55 1[75
-67 75 112 37 2[37 75 2[61 75 60 75 65 13[75 2[92 2[128
-3[50 5[97 1[102 11[67 67 67 67 67 3[45 25[67 6[75 12[{}30
-119.552 /CMBX12 rf /Fi 140[38 38 4[81 11[49 41[49 4[49
-49 49 48[{}8 99.6264 /CMR12 rf /Fj 133[58 4[73 51 52
-51 2[66 73 111 36 2[36 73 2[58 73 58 1[66 9[137 4[98
+TeXDict begin 40258431 52099146 1000 600 600 (READ_ME.dvi)
+@start /Fa 152[42 42 102[{}2 83.022 /CMSY10 rf /Fb 135[44
+1[44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44
+44 44 44 44 44 17[44 9[44 3[44 2[44 44 44 44 44 10[44
+1[44 2[44 44 44 44 2[44 2[44 13[44 44 18[{}41 83.022
+/CMTT10 rf /Fc 134[59 3[62 44 44 46 59 62 56 62 93 31
+1[34 31 62 56 34 51 62 50 62 54 10[85 5[77 1[88 4[42
+88 3[86 81 14[56 56 56 56 2[31 26[56 56 5[62 12[{}36
+99.6264 /CMBX12 rf /Fd 214[28 28 40[{}2 83.022 /LASY10
+rf /Fe 193[65 1[65 60[{}2 83.022 /CMMI10 rf /Ff 133[37
+44 44 60 44 46 32 33 33 44 46 42 46 69 23 44 25 23 46
+42 25 37 46 37 46 42 2[42 3[51 2[85 62 62 60 46 61 65
+57 65 62 76 52 2[30 62 2[57 63 60 59 62 65 2[65 2[23
+4[42 42 42 42 42 1[42 23 28 23 2[32 32 23 5[23 8[37 4[42
+42 3[69 1[46 48 11[{}69 83.022 /CMR10 rf /Fg 134[50 3[53
+37 38 39 1[53 48 53 80 27 2[27 53 48 29 44 53 42 53 46
+10[72 73 66 53 72 72 65 72 1[91 57 2[36 75 2[63 73 69
+1[72 6[27 4[48 48 48 48 48 2[27 32 8[48 16[48 6[53 12[{}46
+83.022 /CMBX10 rf /Fh 138[75 52 53 55 1[75 67 75 112
+37 2[37 75 2[61 75 60 75 65 12[94 75 2[92 2[128 3[50
+5[97 1[102 11[67 67 67 67 67 3[45 25[67 67 5[75 12[{}32
+119.552 /CMBX12 rf /Fi 140[38 38 4[81 11[49 41[49 3[49
+49 49 49 48[{}9 99.6264 /CMR12 rf /Fj 133[58 4[73 51
+52 51 2[66 73 111 36 2[36 73 2[58 73 58 1[66 9[137 4[98
2[103 2[83 5[86 4[99 19[43 5[36 39[{}23 143.462 /CMR17
rf end
%%EndProlog
@@ -2022,284 +2097,339 @@ letter
%%Page: 1 1
TeXDict begin 1 0 bop 614 872 a Fj(A)-15 b(W)l(OR)44
b(-)f(Fic)l(hier)i(Lisez-moi)d(de)i(l'administrateur)1665
-1295 y Fi(11)32 b(mars)h(2007)515 1647 y Fh(1)134 b(Compatibilit)m
-(\023)-64 b(e)639 1829 y Fg(Cette)22 b(application)e(p)r(eut-)n(^)-39
+1295 y Fi(13)32 b(mars)h(2007)515 1653 y Fh(T)-11 b(able)45
+b(des)g(mati)m(\022)-64 b(eres)515 1835 y Fg(1)76 b(Compatibilit)n
+(\023)-46 b(e)2117 b(2)515 2018 y(2)76 b(S)n(\023)-46
+b(ecurit)n(\023)g(e)2353 b(2)515 2201 y(3)76 b(Installation)2217
+b(2)639 2300 y Ff(3.1)84 b(D)n(\023)-39 b(epaquetage)26
+b(des)h(pages)g(PHP)20 b(.)42 b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)131 b(2)639 2400
+y(3.2)84 b(P)n(aram)n(\022)-39 b(etres)24 b(de)k(con\014guration)35
+b(.)42 b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)131 b(3)639 2500 y(3.3)84 b(Initialisation)27
+b(de)h(la)f(base)84 b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)
+f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)131 b(4)639
+2599 y(3.4)84 b(Con\014guration)26 b(par)h(d)n(\023)-39
+b(efaut)27 b(des)h(comptes)79 b(.)41 b(.)h(.)g(.)f(.)h(.)f(.)h(.)g(.)f
+(.)h(.)f(.)h(.)f(.)h(.)131 b(4)515 2782 y Fg(4)76 b(Main)m(tenance)2159
+b(4)639 2881 y Ff(4.1)84 b(Visualisation)27 b(des)g(ob)5
+b(jets)28 b(et)f(des)h(\014c)n(hiers)68 b(.)41 b(.)h(.)g(.)f(.)h(.)f(.)
+h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)131 b(4)639 2981 y(4.2)84
+b(Netto)n(y)n(age)26 b(de)i(la)f(base)50 b(.)42 b(.)f(.)h(.)f(.)h(.)g
+(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)
+h(.)131 b(5)515 3164 y Fg(5)76 b(Authen)m(ti\014cation)33
+b(d)n(\023)-46 b(edi)n(\023)g(ee)30 b(-)i(P)m(ersonnalisation)935
+b(5)1926 5255 y Ff(1)p eop end
+%%Page: 2 2
+TeXDict begin 2 1 bop 515 523 a Fh(1)134 b(Compatibilit)m(\023)-64
+b(e)639 705 y Ff(Cette)22 b(application)e(p)r(eut-)n(^)-39
b(etre)21 b(utilis)n(\023)-39 b(ee)20 b(sur)h(un)g(serv)n(eur)f
-(fonctionnan)n(t)h(a)n(v)n(ec)e(Apac)n(he,)515 1929 y(MySQL\()p
-Ff(>)p Fg(=4\))26 b(et)i(PHP)f(\()p Ff(>)p Fg(=4\).)515
-2144 y Fe(PHP)83 b Fg(L'application)21 b(ne)g(n)n(\023)-39
+(fonctionnan)n(t)h(a)n(v)n(ec)e(Apac)n(he,)515 805 y(MySQL\()p
+Fe(>)p Ff(=4\))26 b(et)i(PHP)f(\()p Fe(>)p Ff(=4\).)515
+1020 y Fg(PHP)83 b Ff(L'application)21 b(ne)g(n)n(\023)-39
b(ecessite)20 b(pas)g(de)i(con\014guration)d(de)j(PHP)e(particuli)n
-(\022)-39 b(ere.)19 b(Elle)515 2243 y(fonctionne)k(quelque)f(soit)h(la)
+(\022)-39 b(ere.)19 b(Elle)515 1120 y(fonctionne)k(quelque)f(soit)h(la)
g(v)-5 b(aleur)22 b(du)h(param)n(\022)-39 b(etre)21 b(de)i
-(con\014guration)e(register)p 3083 2243 25 4 v 28 w(globals,)515
-2343 y(utilise)38 b(les)g(sessions)e(via)h(les)h(fonctions)g(in)n(tro)r
-(duites)f(en)h(PHP4.)f(L'application)g(fonc-)515 2443
+(con\014guration)e(register)p 3083 1120 25 4 v 28 w(globals,)515
+1220 y(utilise)38 b(les)g(sessions)e(via)h(les)h(fonctions)g(in)n(tro)r
+(duites)f(en)h(PHP4.)f(L'application)g(fonc-)515 1319
y(tionne)29 b(quelque)g(soit)g(la)g(v)n(erb)r(osit)n(\023)-39
b(e)27 b(des)i(a\016c)n(hages)f(d'erreur)g(et)h(de)h(w)n(arning)d(PHP)
--7 b(,)29 b(car)515 2542 y(nous)h(a)n(v)n(ons)e(tra)n(v)-5
+-7 b(,)29 b(car)515 1419 y(nous)h(a)n(v)n(ons)e(tra)n(v)-5
b(aill)n(\023)-39 b(e)28 b(\022)-42 b(a)28 b(\023)-39
b(eliminer)29 b(tous)h(les)g(messages)f Fd(\()-17 b(\()22
-b Fg(E)p 2441 2542 V 30 w(NOTICE)g Fd(\))-17 b(\))30
-b Fg(PHP)g(qui)g(sur-)515 2642 y(viennen)n(t)d(par)g(exemple)h(lors)e
+b Ff(E)p 2441 1419 V 30 w(NOTICE)g Fd(\))-17 b(\))30
+b Ff(PHP)g(qui)g(sur-)515 1518 y(viennen)n(t)d(par)g(exemple)h(lors)e
(d'une)i(comparaison)e(a)n(v)n(ec)g(une)i(v)-5 b(ariable)26
-b(non-initialis)n(\023)-39 b(ee.)639 2742 y(Les)28 b(scripts)f(PHP)g
+b(non-initialis)n(\023)-39 b(ee.)639 1618 y(Les)28 b(scripts)f(PHP)g
(n'acc)n(\022)-39 b(eden)n(t)26 b(pas)h(en)f(\023)-39
b(ecriture)26 b(au)i(syst)n(\022)-39 b(eme)26 b(de)i(\014c)n(hier,)f
-(sauf)g(p)r(our)515 2841 y(l'upload)e(de)h(\014c)n(hiers.)f(Le)g
-(dossier)g Fd(\()-17 b(\()20 b Fg(\014c)n(hiers)g Fd(\))-17
-b(\))25 b Fg(doit)e(^)-39 b(etre)25 b(accessible)g(en)e(\023)-39
-b(ecriture)24 b(par)h(les)515 2941 y(scripts)i(PHP)g(sans)g(quoi)g(la)g
+(sauf)g(p)r(our)515 1718 y(l'upload)e(de)h(\014c)n(hiers.)f(Le)g
+(dossier)g Fd(\()-17 b(\()20 b Ff(\014c)n(hiers)g Fd(\))-17
+b(\))25 b Ff(doit)e(^)-39 b(etre)25 b(accessible)g(en)e(\023)-39
+b(ecriture)24 b(par)h(les)515 1817 y(scripts)i(PHP)g(sans)g(quoi)g(la)g
(fonctionnalit)n(\023)-39 b(e)26 b(d')n(\023)-39 b(ec)n(hange)26
-b(de)i(\014c)n(hier)f(serait)f(in)n(utilisable.)515 3156
-y Fe(MySQL)83 b Fg(Les)22 b(scripts)g(PHP)h(ne)f(mo)r(di\014en)n(t)h
+b(de)i(\014c)n(hier)f(serait)f(in)n(utilisable.)515 2033
+y Fg(MySQL)83 b Ff(Les)22 b(scripts)g(PHP)h(ne)f(mo)r(di\014en)n(t)h
(pas)g(structurellemen)n(t)f(la)g(base)g(de)h(donn)n(\023)-39
-b(ee)515 3255 y(MySQL,)33 b(il)h(su\016t)g(donc)g(d'un)g(compte)g(p)r
+b(ee)515 2133 y(MySQL,)33 b(il)h(su\016t)g(donc)g(d'un)g(compte)g(p)r
(ermettan)n(t)g(les)g(instructions)f(SELECT,)g(IN-)515
-3355 y(SER)-7 b(T,)23 b(UPD)n(A)-7 b(TE,)24 b(DELETE)e(sur)h(les)g
+2232 y(SER)-7 b(T,)23 b(UPD)n(A)-7 b(TE,)24 b(DELETE)e(sur)h(les)g
(tables)g(de)h(l'application.)f(P)n(our)f(indiquer)h(\022)-42
-b(a)24 b(l'ap-)515 3455 y(plication)j(quel)h(compte)f(MySQL)g
+b(a)24 b(l'ap-)515 2332 y(plication)j(quel)h(compte)f(MySQL)g
(utiliser,)h(v)n(euillez)f(v)n(ous)g(rep)r(orter)f(\022)-42
-b(a)27 b(la)g(section)h(3.2.)515 3728 y Fh(2)134 b(S)m(\023)-64
-b(ecurit)m(\023)g(e)639 3910 y Fg(Cette)19 b(application)f(a)d(\023)-39
+b(a)27 b(la)g(section)h(3.3.)515 2607 y Fh(2)134 b(S)m(\023)-64
+b(ecurit)m(\023)g(e)639 2788 y Ff(Cette)19 b(application)f(a)d(\023)-39
b(et)n(\023)g(e)17 b(d)n(\023)-39 b(ev)n(elopp)n(\023)g(ee)16
b(en)i(gardan)n(t)f(toujours)h(\022)-42 b(a)18 b(l'esprit)g(les)g
-(probl)n(\022)-39 b(emes)515 4010 y(de)28 b(s)n(\023)-39
+(probl)n(\022)-39 b(emes)515 2888 y(de)28 b(s)n(\023)-39
b(ecurit)n(\023)g(es.)26 b(Nous)i(ne)h(p)r(ouv)n(ons)c(\023)-39
b(evidemmen)n(t)28 b(pas)f(la)h(garan)n(tir)f(failles)h(ni)g(bugs,)g
-(mais)515 4110 y(nous)34 b(sommes)g(\014x)n(\023)-39
+(mais)515 2988 y(nous)34 b(sommes)g(\014x)n(\023)-39
b(e)33 b(des)h(r)n(\022)-39 b(egles)32 b(de)j(programmation)d(p)r(our)g
(\023)-39 b(eviter)33 b(les)h(failles)h(les)f(plus)515
-4209 y(couran)n(tes.)19 b(T)-7 b(outes)21 b(les)f(donn)n(\023)-39
+3087 y(couran)n(tes.)19 b(T)-7 b(outes)21 b(les)f(donn)n(\023)-39
b(ees)20 b(issue)g(de)h(l'utilisateur)g(lors)f(des)h(traitemen)n(ts)f
-(des)h(pages)515 4309 y(w)n(eb)g(son)n(t)h(trait)n(\023)-39
+(des)h(pages)515 3187 y(w)n(eb)g(son)n(t)h(trait)n(\023)-39
b(ees)20 b(p)r(our)f(\023)-39 b(eviter)20 b(des)i(probl)n(\022)-39
b(emes)20 b(d'insertion)h(de)h(co)r(de)g(dans)f(les)h(requetes)515
-4408 y(SQL.)g(L'authen)n(ti\014cation)h(des)g(utilisateurs)f(est)h
+3287 y(SQL.)g(L'authen)n(ti\014cation)h(des)g(utilisateurs)f(est)h
(syst)n(\023)-39 b(ematique,)21 b(v)n(\023)-39 b(eri\014)n(\023)g(ee)20
-b(\022)-42 b(a)23 b(c)n(haque)f(page)515 4508 y(et)k(rep)r(ose)f(sur)g
+b(\022)-42 b(a)23 b(c)n(haque)f(page)515 3386 y(et)k(rep)r(ose)f(sur)g
(le)h(syst)n(\022)-39 b(eme)25 b(des)h(sessions)e(PHP)-7
b(.)26 b(En)f(rev)-5 b(anc)n(he,)25 b(il)h(faut)h(noter)e(que)h(le)g
-(for-)515 4608 y(m)n(ulaire)19 b(d'authen)n(ti\014cation)i(n'est)g(pas)
+(for-)515 3486 y(m)n(ulaire)19 b(d'authen)n(ti\014cation)i(n'est)g(pas)
f(prot)n(\023)-39 b(eg)n(\023)g(e)17 b(con)n(tre)i(l'usurpation)h(de)h
-(mots)f(de)h(passe)515 4707 y(car)27 b(les)i(con)n(train)n(tes)d(donn)n
+(mots)f(de)h(passe)515 3585 y(car)27 b(les)i(con)n(train)n(tes)d(donn)n
(\023)-39 b(ees)27 b(dans)i(le)f(cahier)g(des)g(c)n(harges)f(ne)h(le)h
-(p)r(ermetten)n(t)g(pas,)f(d)r(^)-44 b(u)515 4807 y(moins,)33
+(p)r(ermetten)n(t)g(pas,)f(d)r(^)-44 b(u)515 3685 y(moins,)33
b(il)h(n'est)f(pas)g(p)r(ossible)h(d'utiliser)f(un)h(cryptage)e
(e\016cace)h(\(assym)n(\023)-39 b(etrique\))32 b(sans)515
-4907 y(mo)r(di\014er)22 b(le)g(syst)n(\022)-39 b(eme)21
+3785 y(mo)r(di\014er)22 b(le)g(syst)n(\022)-39 b(eme)21
b(d'authen)n(ti\014cation)i(d)n(\023)-39 b(el)n(\023)g(egu)n(\023)g(ee)
19 b(et)j(sans)g(utiliser)g(une)h(con\014guration)515
-5006 y(de)k(serv)n(eur)e(W)-7 b(eb)28 b(sp)n(\023)-39
+3884 y(de)k(serv)n(eur)e(W)-7 b(eb)28 b(sp)n(\023)-39
b(eci\014que.)26 b(Consid)n(\023)-39 b(erez,)25 b(p)r(our)i(r)n(\023)
--39 b(esoudre)25 b(ce)i(probl)n(\022)-39 b(eme,)25 b(l'emploi)j(sur)
-1926 5255 y(1)p eop end
-%%Page: 2 2
-TeXDict begin 2 1 bop 515 523 a Fg(serv)n(eur)24 b(w)n(eb)h(s)n(\023)
--39 b(ecuris)n(\023)g(e)23 b(\(HTTPS\))k(et)f(l'utilisation)g(d'une)g
-(liaison)f(en)n(tre)g(le)h(serv)n(eur)e(w)n(eb)515 623
-y(et)k(le)f(serv)n(eur)f(d'authen)n(ti\014cation)i(au)f(tra)n(v)n(ers)e
-(d'un)j(r)n(\023)-39 b(eseau)26 b(de)h(con\014ance.)515
-897 y Fh(3)134 b(Installation)515 1096 y Fc(3.1)112 b(P)m(aram)n(\022)
--54 b(etres)38 b(de)g(con\014guration)639 1249 y Fg(Cette)33
+-39 b(esoudre)25 b(ce)i(probl)n(\022)-39 b(eme,)25 b(l'emploi)j(sur)515
+3984 y(serv)n(eur)c(w)n(eb)h(s)n(\023)-39 b(ecuris)n(\023)g(e)23
+b(\(HTTPS\))k(et)f(l'utilisation)g(d'une)g(liaison)f(en)n(tre)g(le)h
+(serv)n(eur)e(w)n(eb)515 4084 y(et)k(le)f(serv)n(eur)f(d'authen)n
+(ti\014cation)i(au)f(tra)n(v)n(ers)e(d'un)j(r)n(\023)-39
+b(eseau)26 b(de)h(con\014ance.)515 4358 y Fh(3)134 b(Installation)515
+4557 y Fc(3.1)112 b(D)n(\023)-54 b(epaquetage)39 b(des)f(pages)g(PHP)
+639 4710 y Ff(L'application)j(est)h(livr)n(\023)-39 b(ee)39
+b(dans)j(une)f(arc)n(hiv)n(e)f(de)i(t)n(yp)r(e)f(tarball)g(compress)n
+(\023)-39 b(ee)39 b(qui)515 4809 y(con)n(tien)n(t)18
+b(toute)g(l'arb)r(orescence)f(et)h(les)h(\014c)n(hiers)e(PHP)h(n)n
+(\023)-39 b(ecessaires.)15 b(Il)k(su\016t)g(de)f(d)n(\023)-39
+b(ecompresser)1926 5255 y(2)p eop end
+%%Page: 3 3
+TeXDict begin 3 2 bop 515 523 a Ff(cette)27 b(arc)n(hiv)n(e)f(en)h
+(conserv)-5 b(an)n(t)26 b(l'arb)r(orescence)f(dans)i(un)g(dossier)f
+(publi)n(\023)-39 b(e)27 b(par)f(v)n(otre)g(ser-)515
+623 y(v)n(eur)f(W)-7 b(eb.)27 b(Les)f(\014c)n(hiers)f(de)i
+(con\014gurations)d(son)n(t)i(pr)n(\023)-39 b(esen)n(t)24
+b(et)j(con)n(tiennen)n(t)f(des)g(v)-5 b(aleurs)515 722
+y(d'exemple)27 b(que)h(v)n(ous)f(p)r(ourrez)f(adapter)h(\022)-42
+b(a)27 b(v)n(otre)f(situation.)515 951 y Fc(3.2)112 b(P)m(aram)n(\022)
+-54 b(etres)38 b(de)g(con\014guration)639 1104 y Ff(Cette)33
b(application)f(comp)r(orte)g(deux)h(\014c)n(hiers)f(de)h
-(con\014guration)e(qui)i(son)n(t)f(dans)g(le)515 1349
-y(dossier)f Fd(\()-17 b(\()24 b Fg(include)f Fd(\))-17
-b(\))p Fg(.)33 b(Les)f(\014c)n(hiers)g(existen)n(t)h(dans)f(la)g(v)n
+(con\014guration)e(qui)i(son)n(t)f(dans)g(le)515 1203
+y(dossier)f Fd(\()-17 b(\()24 b Ff(include)f Fd(\))-17
+b(\))p Ff(.)33 b(Les)f(\014c)n(hiers)g(existen)n(t)h(dans)f(la)g(v)n
(ersion)f(distribu)n(\023)-39 b(ee)32 b(et)h(on)n(t)f(p)r(our)515
-1448 y(but)c(de)g(servir)e(de)i(mo)r(d)n(\022)-39 b(ele.)515
-1591 y Fe(connect.inc.php)31 b(:)41 b Fg(ce)32 b(\014c)n(hier)f(con)n
+1303 y(but)c(de)g(servir)e(de)i(mo)r(d)n(\022)-39 b(ele.)515
+1433 y Fg(connect.inc.php)31 b(:)41 b Ff(ce)32 b(\014c)n(hier)f(con)n
(tien)n(t)g(les)g(co)r(ordonn)n(\023)-39 b(ees)29 b(du)j(serv)n(eur)e
-(MySQL,)h(de)722 1690 y(l'utilisateur)d(SQL)f(et)h(de)g(la)f(base)g
-(que)g(l'application)g(utilisera.)515 1819 y Fe(con\014g.inc.php)k(:)41
-b Fg(ce)35 b(\014c)n(hier)f(con)n(tien)n(t)h(tout)g(le)g(reste)g(de)g
-(la)g(con\014guration)e(de)j(l'ap-)722 1918 y(plication.)k(Le)g(\014c)n
+(MySQL,)h(de)722 1533 y(l'utilisateur)d(SQL)f(et)h(de)g(la)f(base)g
+(que)g(l'application)g(utilisera.)515 1653 y Fg(con\014g.inc.php)k(:)41
+b Ff(ce)35 b(\014c)n(hier)f(con)n(tien)n(t)h(tout)g(le)g(reste)g(de)g
+(la)g(con\014guration)e(de)j(l'ap-)722 1752 y(plication.)k(Le)g(\014c)n
(hier)g(est)g(un)g(script)g(PHP)g(qui)g(initialise)g(un)g(tableau)g(m)n
-(ulti-)722 2018 y(dimen)n(tionnel.)f(Ce)f(c)n(hoix)f(\022)-42
+(ulti-)722 1852 y(dimen)n(tionnel.)f(Ce)f(c)n(hoix)f(\022)-42
b(a)36 b(\023)-39 b(et)n(\023)g(e)37 b(fait)h(par)g(commo)r(dit)n(\023)
--39 b(e,)37 b(et)h(p)r(our)g(p)r(ermette)h(de)722 2117
+-39 b(e,)37 b(et)h(p)r(our)g(p)r(ermette)h(de)722 1951
y(bien)h(hi)n(\023)-39 b(erarc)n(hiser)37 b(les)i(information,)h(en)f
(rev)-5 b(anc)n(he,)39 b(la)h(syn)n(taxe)e(est)i(fourb)r(e.)14
-b(.)g(.)722 2217 y(N'oubliez)28 b(pas)f(de)h(virgule)13
+b(.)g(.)722 2051 y(N'oubliez)28 b(pas)f(de)h(virgule)13
b(!)27 b(T)-7 b(outes)28 b(les)f(constan)n(tes)f(son)n(t)h(d)n(\023)-39
-b(ecrites)27 b(ci-dessous.)722 2374 y Fe($adminMail)k(:)41
-b Fg(adresse)23 b(e-mail)h(de)g(l'administrateur.)g(A\016c)n(h)n(\023)
--39 b(ee)24 b(\022)-42 b(a)24 b(l'utilisateur)905 2473
+b(ecrites)27 b(ci-dessous.)722 2191 y Fg($adminMail)k(:)41
+b Ff(adresse)23 b(e-mail)h(de)g(l'administrateur.)g(A\016c)n(h)n(\023)
+-39 b(ee)24 b(\022)-42 b(a)24 b(l'utilisateur)905 2291
y(lorsque)i(qu'une)i(erreur)e(in)n(terne)i(\022)-42 b(a)27
-b(l'application)g(s'est)g(pro)r(duite.)722 2602 y Fe($automatedMail)k
-(:)41 b Fg(adresse)31 b(e-mail)g(de)h(r)n(\023)-39 b(ep)r(onse)30
+b(l'application)g(s'est)g(pro)r(duite.)722 2411 y Fg($automatedMail)k
+(:)41 b Ff(adresse)31 b(e-mail)g(de)h(r)n(\023)-39 b(ep)r(onse)30
b(des)i(courriels)f(en)n(v)n(o)n(y)n(\023)-39 b(es)29
-b(au-)905 2701 y(tomatiquemen)n(t)e(par)g(l'application.)722
-2830 y Fe(A)m(UTH)33 b(:)41 b Fg(P)n(aram)n(\022)-39
-b(etres)24 b(d'authen)n(ti\014cation)905 2986 y Fe(POP)32
-b(:)41 b Fg(P)n(aram)n(\022)-39 b(etres)24 b(p)r(our)j(les)h(serv)n
-(eurs)d(mail)j(POP)1060 3143 y Fe(SER)-11 b(VERS)31 b(:)41
-b Fg(Chaque)26 b(\023)-39 b(el)n(\023)g(emen)n(t)27 b(de)h(ce)g
+b(au-)905 2510 y(tomatiquemen)n(t)e(par)g(l'application.)722
+2630 y Fg(A)m(UTH)33 b(:)41 b Ff(P)n(aram)n(\022)-39
+b(etres)24 b(d'authen)n(ti\014cation)905 2770 y Fg(POP)32
+b(:)41 b Ff(P)n(aram)n(\022)-39 b(etres)24 b(p)r(our)j(les)h(serv)n
+(eurs)d(mail)j(POP)1060 2911 y Fg(SER)-11 b(VERS)31 b(:)41
+b Ff(Chaque)26 b(\023)-39 b(el)n(\023)g(emen)n(t)27 b(de)h(ce)g
(tableau)g(\022)-42 b(a)28 b(p)r(our)g(clef)h(le)f(nom)1201
-3243 y(de)d(domaine)f(du)h(fournisseur)e(de)i(service)f(de)g(courriel)f
-(\()i(partie)f(sui-)1201 3342 y(v)-5 b(an)n(t)27 b(le)g(@)g(dans)g(une)
+3010 y(de)d(domaine)f(du)h(fournisseur)e(de)i(service)f(de)g(courriel)f
+(\()i(partie)f(sui-)1201 3110 y(v)-5 b(an)n(t)27 b(le)g(@)g(dans)g(une)
g(adresse)f(e-mail\))g(\022)-42 b(a)27 b(p)r(our)g(v)-5
-b(aleur)26 b(un)h(tableau)1201 3442 y(asso)r(ciatif)g(de)h(la)f(forme)g
-(suiv)-5 b(an)n(te)1201 3599 y Fe(sub)s(domain)31 b(:)41
-b Fg(adresse)23 b(complete)i(du)g(serv)n(eur)e(o\013ran)n(t)g(le)i
-(service)1284 3699 y(POP)1201 3827 y Fe(p)s(ort)32 b(:)41
-b Fg(n)n(um)n(\023)-39 b(ero)39 b(de)h(p)r(ort)h(TCP)f(utilis)n(\023)
--39 b(e)39 b(p)r(our)h(se)h(connecter)e(au)1284 3926
-y(service)27 b(POP)1201 4055 y Fe(username)p 1604 4055
-29 4 v 34 w(is)p 1703 4055 V 34 w(full)p 1873 4055 V
-33 w(mail)k(:)41 b Fg(Bo)r(ol)n(\023)-39 b(een)38 b(\(true)j(ou)e
-(false\))h(indican)n(t)1284 4154 y(si)k(le)g(nom)g(d'utilisateur)g
+b(aleur)26 b(un)h(tableau)1201 3210 y(asso)r(ciatif)g(de)h(la)f(forme)g
+(suiv)-5 b(an)n(te)1201 3350 y Fg(sub)s(domain)31 b(:)41
+b Ff(adresse)23 b(complete)i(du)g(serv)n(eur)e(o\013ran)n(t)g(le)i
+(service)1284 3449 y(POP)1201 3569 y Fg(p)s(ort)32 b(:)41
+b Ff(n)n(um)n(\023)-39 b(ero)39 b(de)h(p)r(ort)h(TCP)f(utilis)n(\023)
+-39 b(e)39 b(p)r(our)h(se)h(connecter)e(au)1284 3669
+y(service)27 b(POP)1201 3789 y Fg(username)p 1604 3789
+29 4 v 34 w(is)p 1703 3789 V 34 w(full)p 1873 3789 V
+33 w(mail)k(:)41 b Ff(Bo)r(ol)n(\023)-39 b(een)38 b(\(true)j(ou)e
+(false\))h(indican)n(t)1284 3888 y(si)k(le)g(nom)g(d'utilisateur)g
(\022)-42 b(a)43 b(utiliser)h(p)r(our)f(l'authen)n(ti\014cation)1284
-4254 y(est)28 b(l'adresse)e(e-mail)h(compl)n(\022)-39
+3988 y(est)28 b(l'adresse)e(e-mail)h(compl)n(\022)-39
b(ete.)26 b(C'est)i(utile)g(p)r(our)f(les)g(serv)n(eurs)1284
-4353 y(POP)17 b(g)n(\023)-39 b(eran)n(t)16 b(des)j(adresses)d(email)i
-(sur)g(plusieurs)g(domaines)g(\(comme)1284 4453 y(w)n(anado)r(o)26
+4088 y(POP)17 b(g)n(\023)-39 b(eran)n(t)16 b(des)j(adresses)d(email)i
+(sur)g(plusieurs)g(domaines)g(\(comme)1284 4187 y(w)n(anado)r(o)26
b(/)h(orange)f(au)i(momen)n(t)f(o)r(\022)-44 b(u)27 b(j')n(\023)-39
-b(ecris)27 b(ce)g(do)r(cumen)n(t\))905 4610 y Fe(b)m(ypass)p
-1186 4610 V 35 w(if)p 1277 4610 V 34 w(lo)s(cal)k(:)41
-b Fg(Bo)r(ol)n(\023)-39 b(een)37 b(indiquan)n(t)i(si)g(l'authen)n
-(ti\014cation)g(doit)e(^)-39 b(etre)1060 4710 y(outrepass)n(\023)g(ee)
+b(ecris)27 b(ce)g(do)r(cumen)n(t\))905 4327 y Fg(b)m(ypass)p
+1186 4327 V 35 w(if)p 1277 4327 V 34 w(lo)s(cal)k(:)41
+b Ff(Bo)r(ol)n(\023)-39 b(een)37 b(indiquan)n(t)i(si)g(l'authen)n
+(ti\014cation)g(doit)e(^)-39 b(etre)1060 4427 y(outrepass)n(\023)g(ee)
21 b(si)h(la)h(connexion)f(s'e\013ectue)h(depuis)h(le)f(serv)n(eur)e
-(lui-m)n(^)-39 b(eme.)722 4866 y Fe(CSS)32 b(:)41 b Fg(P)n(aram)n(\022)
--39 b(etres)24 b(des)k(st)n(yles)e(de)i(pages)1926 5255
-y(2)p eop end
-%%Page: 3 3
-TeXDict begin 3 2 bop 905 523 a Fe(CHOOSER)p 1387 523
-29 4 v 33 w(LIST)33 b(:)41 b Fg(Ce)19 b(tableau)g(asso)r(ciatif)g(con)n
-(tien)n(t)g(la)g(liste)g(des)h(st)n(yles)1060 623 y(CSS)29
-b(\022)-42 b(a)28 b(utiliser.)h(Les)f(clefs)h(son)n(t)f(les)g(lib)r
-(ell)n(\023)-39 b(es)28 b(des)g(th)n(\022)-39 b(emes)28
-b(\022)-42 b(a)28 b(a\016c)n(her)g(et)1060 722 y(les)33
-b(v)-5 b(aleurs)33 b(son)n(t)f(les)h(noms)g(des)g(\014c)n(hiers)f(CSS)i
-(corresp)r(ondan)n(ts,)d(sans)1060 822 y(c)n(hemin,)d(ni)g(extension.)
-722 972 y Fe(MAIL)33 b(:)905 1122 y(TEMPLA)-8 b(TES)33
-b(:)41 b Fg(Ce)28 b(tableau)h(con)n(tien)n(t)g(des)f(tableaux)h(asso)r
-(ciatifs)e(don)n(t)1060 1221 y(les)g(clefs)f(seron)n(t)g(utilis)n(\023)
--39 b(ees)26 b(dans)g(les)g(passages)f(de)i(param)n(\022)-39
-b(etres)24 b(HTML,)1060 1321 y(et)k(con)n(tiennen)n(t)f(des)h
-(sous-tableaux)e(de)h(la)h(forme)f(suiv)-5 b(an)n(te)27
-b(:)1060 1471 y Fe(caption)32 b(:)41 b Fg(In)n(titul)n(\023)-39
+(lui-m)n(^)-39 b(eme.)722 4567 y Fg(CSS)32 b(:)41 b Ff(P)n(aram)n(\022)
+-39 b(etres)24 b(des)k(st)n(yles)e(de)i(pages)905 4707
+y Fg(CHOOSER)p 1387 4707 V 33 w(LIST)33 b(:)41 b Ff(Ce)19
+b(tableau)g(asso)r(ciatif)g(con)n(tien)n(t)g(la)g(liste)g(des)h(st)n
+(yles)1060 4807 y(CSS)29 b(\022)-42 b(a)28 b(utiliser.)h(Les)f(clefs)h
+(son)n(t)f(les)g(lib)r(ell)n(\023)-39 b(es)28 b(des)g(th)n(\022)-39
+b(emes)28 b(\022)-42 b(a)28 b(a\016c)n(her)g(et)1060
+4907 y(les)33 b(v)-5 b(aleurs)33 b(son)n(t)f(les)h(noms)g(des)g(\014c)n
+(hiers)f(CSS)i(corresp)r(ondan)n(ts,)d(sans)1060 5006
+y(c)n(hemin,)d(ni)g(extension.)1926 5255 y(3)p eop end
+%%Page: 4 4
+TeXDict begin 4 3 bop 722 523 a Fg(MAIL)33 b(:)905 680
+y(TEMPLA)-8 b(TES)33 b(:)41 b Ff(Ce)28 b(tableau)h(con)n(tien)n(t)g
+(des)f(tableaux)h(asso)r(ciatifs)e(don)n(t)1060 779 y(les)g(clefs)f
+(seron)n(t)g(utilis)n(\023)-39 b(ees)26 b(dans)g(les)g(passages)f(de)i
+(param)n(\022)-39 b(etres)24 b(HTML,)1060 879 y(et)k(con)n(tiennen)n(t)
+f(des)h(sous-tableaux)e(de)h(la)h(forme)f(suiv)-5 b(an)n(te)27
+b(:)1060 1036 y Fg(caption)32 b(:)41 b Ff(In)n(titul)n(\023)-39
b(e)28 b(qui)f(sera)g(a\016c)n(h)n(\023)-39 b(e)26 b(\022)-42
-b(a)27 b(l'utilisateur)1060 1595 y Fe(tpl)p 1183 1595
-V 34 w(\014le)k(:)41 b Fg(Nom)d(du)g(\014c)n(hier)g(\(a)n(v)n(ec)e
-(l'extension)i(PHP\))f(con)n(tenan)n(t)g(le)1201 1695
-y(mo)r(d)n(\022)-39 b(ele.)722 1845 y Fe(SUPER)m(USERS)32
-b(:)41 b Fg(Ce)19 b(tableau)f(con)n(tien)n(t)g(la)g(liste)g(des)h
-(login)e(des)h(sup)r(er-utilisateurs)905 1945 y(\(ceux)28
+b(a)27 b(l'utilisateur)1060 1164 y Fg(tpl)p 1183 1164
+29 4 v 34 w(\014le)k(:)41 b Ff(Nom)d(du)g(\014c)n(hier)g(\(a)n(v)n(ec)e
+(l'extension)i(PHP\))f(con)n(tenan)n(t)g(le)1201 1264
+y(mo)r(d)n(\022)-39 b(ele.)722 1421 y Fg(SUPER)m(USERS)32
+b(:)41 b Ff(Ce)19 b(tableau)f(con)n(tien)n(t)g(la)g(liste)g(des)h
+(login)e(des)h(sup)r(er-utilisateurs)905 1520 y(\(ceux)28
b(qui)f(on)n(t)h(le)f(droit)g(de)h(supprimer)f(des)h(r)n(\023)-39
-b(eunions\))722 2069 y Fe(UPLO)m(AD)34 b(:)41 b Fg(P)n(aram)n(\022)-39
+b(eunions\))722 1648 y Fg(UPLO)m(AD)34 b(:)41 b Ff(P)n(aram)n(\022)-39
b(etres)14 b(concernan)n(t)k(l'attac)n(hemen)n(t)f(de)i(\014c)n(hiers)e
-(aux)h(r)n(\023)-39 b(eunions)905 2219 y Fe(accepted)p
-1272 2219 V 35 w(\014les)31 b(:)41 b Fg(T)-7 b(ableau)27
+(aux)h(r)n(\023)-39 b(eunions)905 1805 y Fg(accepted)p
+1272 1805 V 35 w(\014les)31 b(:)41 b Ff(T)-7 b(ableau)27
b(des)h(extensions)e(qui)i(son)n(t)f(autoris)n(\023)-39
-b(ees.)515 2450 y Fc(3.2)112 b(Initialisation)39 b(de)e(la)h(base)639
-2603 y Fg(T)-7 b(out)28 b(les)g(\014c)n(hiers)f(n)n(\023)-39
+b(ees.)515 2038 y Fc(3.3)112 b(Initialisation)39 b(de)e(la)h(base)639
+2191 y Ff(T)-7 b(out)28 b(les)g(\014c)n(hiers)f(n)n(\023)-39
b(ecessaires)25 b(son)n(t)i(rang)n(\023)-39 b(es)25 b(dans)j(le)g
-(dossier)e Fd(\()-17 b(\()22 b Fg(install)g Fd(\))-17
-b(\))p Fg(.)28 b(V)-7 b(ous)28 b(uti-)515 2703 y(liserez)d
+(dossier)e Fd(\()-17 b(\()22 b Ff(install)g Fd(\))-17
+b(\))p Ff(.)28 b(V)-7 b(ous)28 b(uti-)515 2291 y(liserez)d
(principalemen)n(t)h(le)g(\014c)n(hier)g Fd(\()-17 b(\()21
-b Fg(RAZBase.php)f Fd(\))-17 b(\))p Fg(.)26 b(App)r(el)n(\023)-39
-b(e)26 b(au)g(tra)n(v)n(ers)e(du)j(serv)n(eur)515 2802
+b Ff(RAZBase.php)f Fd(\))-17 b(\))p Ff(.)26 b(App)r(el)n(\023)-39
+b(e)26 b(au)g(tra)n(v)n(ers)e(du)j(serv)n(eur)515 2390
y(w)n(eb,)j(il)g(v)n(ous)f(p)r(ermettra)h(automatiquemen)n(t)f(de)i
-(mettre)f(en)g(place)g(la)g(structure)f(de)h(la)515 2902
+(mettre)f(en)g(place)g(la)g(structure)f(de)h(la)515 2490
y(base)24 b(de)g(donn)n(\023)-39 b(ees,)23 b(et)i(optionnellemen)n(t,)g
(d'ins)n(\023)-39 b(erer)22 b(un)j(jeu)g(d'essai)f(p)r(our)g(tester)g
-(l'appli-)515 3002 y(cation)h(sur)g(v)n(otre)g(serv)n(eur.)f(Si)i(v)n
+(l'appli-)515 2589 y(cation)h(sur)g(v)n(otre)g(serv)n(eur.)f(Si)i(v)n
(ous)f(ne)h(souhaitez)f(pas)g(utiliser)h(de)f(compte)h(SQL)g(a)n(y)n
-(an)n(t)515 3101 y(le)k(droit)g(d'alt)n(\023)-39 b(erer)28
+(an)n(t)515 2689 y(le)k(droit)g(d'alt)n(\023)-39 b(erer)28
b(la)h(structure)h(des)g(tables)g(de)g(v)n(otre)f(base)g(a)n(v)n(ec)g
-(ce)h(script)g(php,)g(v)n(ous)515 3201 y(p)r(ouv)n(ez)24
+(ce)h(script)g(php,)g(v)n(ous)515 2789 y(p)r(ouv)n(ez)24
b(ex)n(\023)-39 b(ecuter)22 b(le)j(script)f Fd(\()-17
-b(\()19 b Fg(base.sql)f Fd(\))-17 b(\))25 b Fg(a)n(v)n(ec)e(v)n(otre)g
+b(\()19 b Ff(base.sql)f Fd(\))-17 b(\))25 b Ff(a)n(v)n(ec)e(v)n(otre)g
(clien)n(t)h(SQL)g(fa)n(v)n(ori.)f(Le)h(jeu)h(d'essai)515
-3300 y(se)i(trouv)n(e)g(dans)g(le)g(\014c)n(hier)g Fd(\()-17
-b(\()22 b Fg(jeu)p 1573 3300 25 4 v 31 w(essai.sql)e
-Fd(\))-17 b(\))p Fg(.)515 3573 y Fh(4)134 b(Main)l(tenance)515
-3772 y Fc(4.1)112 b(Visualisation)39 b(des)f(ob)6 b(jets)38
-b(et)f(des)h(\014c)m(hiers)639 3925 y Fg(Une)28 b(page)e
+2888 y(se)i(trouv)n(e)g(dans)g(le)g(\014c)n(hier)g Fd(\()-17
+b(\()22 b Ff(jeu)p 1573 2888 25 4 v 31 w(essai.sql)e
+Fd(\))-17 b(\))p Ff(.)515 3121 y Fc(3.4)112 b(Con\014guration)39
+b(par)e(d)n(\023)-54 b(efaut)39 b(des)f(comptes)639 3274
+y Ff(Dans)30 b(le)g(\014c)n(hier)f(de)h(con\014guration)f(mo)r(d)n
+(\022)-39 b(ele,)29 b(un)h(sup)r(er-utilisateur)f(est)h(con\014gur)n
+(\023)-39 b(e)28 b(:)515 3374 y(ingleb)r(ert@iut-blagnac.fr)e(et)i(le)g
+(jeu)g(d'essai)f(prop)r(os)n(\023)-39 b(e)25 b(au)j(paragraphe)d(pr)n
+(\023)-39 b(ec)n(\023)g(eden)n(t)25 b(p)r(er-)515 3473
+y(met)j(de)f(cr)n(\023)-39 b(eer)26 b(des)h(utilisateurs,)g(et)h(en)g
+(particulier)f(ingleb)r(ert@iut-blagnac.fr.)639 3573
+y(P)n(ar)19 b(d)n(\023)-39 b(efaut,)21 b(v)n(ous)e(p)r(ourrez)h(donc)g
+(v)n(ous)g(connecter)g(en)h(tan)n(t)g(qu'administrateur)e(a)n(v)n(ec)
+515 3672 y(ce)32 b(compte.)g(Le)g(jeu)g(d'essai)f(met)i(ce)f(compte)g
+(a)n(v)n(ec)e(comme)i(mo)r(de)g(d'authen)n(ti\014cation)515
+3772 y Fd(\()-17 b(\()20 b Ff(b)n(ypass)f Fd(\))-17 b(\))o
+Ff(,)26 b(ce)f(qui)g(signi\014e)g(qu'aucun)g(mot)g(de)g(passe)f(est)i
+(n)n(\023)-39 b(ecessaire.)22 b(P)n(our)i(utiliser)h(un)515
+3872 y(vrai)i(syst)n(\022)-39 b(eme)27 b(d'authen)n(ti\014cation,)h
+(connectez-v)n(ous)f(a)n(v)n(ec)g(ce)h(compte)g(et)h(allez)f(dans)f(la)
+515 3971 y(page)f Fd(\()-17 b(\()22 b Ff(Mon)28 b(Pro\014l)21
+b Fd(\))-17 b(\))27 b Ff(p)r(our)g(c)n(hoisir)g(une)g(autre)g(mo)r(de)h
+(d'authen)n(ti\014cation.)515 4246 y Fh(4)134 b(Main)l(tenance)515
+4444 y Fc(4.1)112 b(Visualisation)39 b(des)f(ob)6 b(jets)38
+b(et)f(des)h(\014c)m(hiers)639 4598 y Ff(Une)28 b(page)e
(d'administration)g(est)h(pr)n(\023)-39 b(evue)26 b(\022)-42
b(a)26 b(cet)h(e\013et,)h(et)f(elle)g(n'est)g(accessible)f(que)515
-4025 y(par)31 b(un)i Fd(\()-17 b(\()23 b Fg(sup)r(er-utilisateur)g
-Fd(\))-17 b(\))o Fg(,)33 b(c'est)f(\022)-42 b(a)32 b(dire)g(un)g
+4697 y(par)31 b(un)i Fd(\()-17 b(\()23 b Ff(sup)r(er-utilisateur)g
+Fd(\))-17 b(\))o Ff(,)33 b(c'est)f(\022)-42 b(a)32 b(dire)g(un)g
(utilisateur)g(consign)n(\023)-39 b(e)31 b(dans)g(le)i(\014c)n(hier)515
-4124 y(de)27 b(con\014guration)f(principal)i(en)f(tan)n(t)h(que)f(tel,)
-h(conf)n(\022)-39 b(ere)26 b(3.1.)515 4355 y Fc(4.2)112
-b(Netto)m(y)m(age)37 b(de)h(la)g(base)650 4487 y Fg(\022)639
-4508 y(A)31 b(partir)f(de)h(la)f(page)f(d'administration)h(d)n(\023)-39
-b(ecrite)30 b(dans)g(le)g(paragraphe)e(pr)n(\023)-39
-b(ec)n(\023)g(eden)n(t,)515 4608 y(v)n(ous)23 b(p)r(ouv)n(ez)h(aussi)f
-(purger)g(les)h(\014c)n(hiers)g(attac)n(h)n(\023)-39
-b(es)22 b(et)i(les)g(ob)5 b(jets)24 b(de)h(la)f(base)f(de)i(donn)n
-(\023)-39 b(ees)515 4707 y(dev)n(en)n(us)31 b(obsol)n(\022)-39
-b(etes.)30 b(L'aide)h(con)n(textuelle)h(de)f(cette)i(page)e(v)n(ous)f
-(expliquera)h(commen)n(t)515 4807 y(faire.)c(Il)g(est)h(viv)n(emen)n(t)
-f(conseill)n(\023)-39 b(e)26 b(de)i(faire)f(une)g(sauv)n(egarde)e(de)j
-(la)f(base)g(de)h(donn)n(\023)-39 b(ees)26 b(et)515 4907
-y(des)g(\014c)n(hiers)f(join)n(ts)i(aux)e(r)n(\023)-39
-b(eunions)25 b(a)n(v)-5 b(an)n(t)25 b(d'utiliser)i(cet)f(outil)g(car)g
-(l'erreur)f(de)h(manipu-)515 5006 y(lation)h(ou)g(de)h(programmation)d
-(est)j(toujours)f(p)r(ossible.)13 b(.)h(.)1926 5255 y(3)p
-eop end
-%%Page: 4 4
-TeXDict begin 4 3 bop 515 523 a Fh(5)134 b(Authen)l(ti\014cation)46
+4797 y(de)27 b(con\014guration)f(principal)i(en)f(tan)n(t)h(que)f(tel,)
+h(conf)n(\022)-39 b(ere)26 b(3.2.)1926 5255 y(4)p eop
+end
+%%Page: 5 5
+TeXDict begin 5 4 bop 515 523 a Fc(4.2)112 b(Netto)m(y)m(age)37
+b(de)h(la)g(base)650 655 y Ff(\022)639 676 y(A)31 b(partir)f(de)h(la)f
+(page)f(d'administration)h(d)n(\023)-39 b(ecrite)30 b(dans)g(le)g
+(paragraphe)e(pr)n(\023)-39 b(ec)n(\023)g(eden)n(t,)515
+776 y(v)n(ous)23 b(p)r(ouv)n(ez)h(aussi)f(purger)g(les)h(\014c)n(hiers)
+g(attac)n(h)n(\023)-39 b(es)22 b(et)i(les)g(ob)5 b(jets)24
+b(de)h(la)f(base)f(de)i(donn)n(\023)-39 b(ees)515 876
+y(dev)n(en)n(us)31 b(obsol)n(\022)-39 b(etes.)30 b(L'aide)h(con)n
+(textuelle)h(de)f(cette)i(page)e(v)n(ous)f(expliquera)h(commen)n(t)515
+975 y(faire.)c(Il)g(est)h(viv)n(emen)n(t)f(conseill)n(\023)-39
+b(e)26 b(de)i(faire)f(une)g(sauv)n(egarde)e(de)j(la)f(base)g(de)h(donn)
+n(\023)-39 b(ees)26 b(et)515 1075 y(des)g(\014c)n(hiers)f(join)n(ts)i
+(aux)e(r)n(\023)-39 b(eunions)25 b(a)n(v)-5 b(an)n(t)25
+b(d'utiliser)i(cet)f(outil)g(car)g(l'erreur)f(de)h(manipu-)515
+1174 y(lation)h(ou)g(de)h(programmation)d(est)j(toujours)f(p)r
+(ossible.)13 b(.)h(.)515 1449 y Fh(5)134 b(Authen)l(ti\014cation)46
b(d)m(\023)-64 b(edi)m(\023)g(ee)46 b(-)f(P)l(ersonnalisation)639
-705 y Fg(A)-9 b(W)n(OR)32 b(utilise)g(un)g(syst)n(\022)-39
+1631 y Ff(A)-9 b(W)n(OR)32 b(utilise)g(un)g(syst)n(\022)-39
b(eme)31 b(d'authen)n(ti\014cation)h(d)n(\023)-39 b(edi)n(\023)g(ee)29
-b(de)j(sorte)f(qu'aucun)h(mot)515 805 y(de)40 b(passe)f(ne)h(soit)f
+b(de)j(sorte)f(qu'aucun)h(mot)515 1730 y(de)40 b(passe)f(ne)h(soit)f
(sto)r(c)n(k)n(\023)-39 b(e,)38 b(et)j(que)e(l'utilisateur)h(n'ait)g
-(pas)g(b)r(esoin)f(d'en)h(retenir)g(un)515 904 y(nouv)n(eau.)32
+(pas)g(b)r(esoin)f(d'en)h(retenir)g(un)515 1830 y(nouv)n(eau.)32
b(Le)i(co)r(de)f(d'authen)n(ti\014cation)h(\022)-42 b(a)30
b(\023)-39 b(et)n(\023)g(e)30 b(\023)-39 b(ecrit)33 b(de)h(mani)n(\022)
-39 b(ere)31 b(\022)-42 b(a)31 b(^)-39 b(etre)33 b(mal)n(\023)-39
-b(eable)32 b(et)515 1004 y(est)e(extensible.)g(Le)h(co)r(eur)e(du)i
+b(eable)32 b(et)515 1930 y(est)e(extensible.)g(Le)h(co)r(eur)e(du)i
(syst)n(\022)-39 b(eme)29 b(d'authen)n(ti\014cation)h(se)g(trouv)n(e)f
-(dans)h(le)h(\014c)n(hier)515 1103 y Fd(\()-17 b(\()22
-b Fg(auth)p 747 1103 25 4 v 29 w(dialog.php)g Fd(\))-17
-b(\))o Fg(.)28 b(V)-7 b(ous)27 b(y)h(trouv)n(erez)e(une)h(section)g
+(dans)h(le)h(\014c)n(hier)515 2029 y Fd(\()-17 b(\()22
+b Ff(auth)p 747 2029 25 4 v 29 w(dialog.php)g Fd(\))-17
+b(\))o Ff(.)28 b(V)-7 b(ous)27 b(y)h(trouv)n(erez)e(une)h(section)g
(commen\030)-37 b(can)n(t)27 b(par)g(le)h(commen-)515
-1203 y(taire)f(ci-dessous.)722 1485 y Fb(/****************)o(**)o(***)o
-(**)o(***)o(**)o(**)o(***)o(**)o(***)o(**)o(**)o(***)o(**)o(***)o(**)o
-(***)o(**)o(**)o(***)o(*)722 1585 y(**)43 b(Vous)f(pouvez)f(ajouter)g
-(d'autres)f(mode)i(d'authentificati)o(on)37 b(ici)42
-b(!)i(**)722 1685 y(*****************)o(**)o(***)o(**)o(***)o(**)o(**)o
-(***)o(**)o(***)o(**)o(**)o(***)o(**)o(***)o(**)o(***)o(**)o(**)o(***)o
-(/)515 1867 y Fg(Comme)30 b(l'indique)g(ce)g(commen)n(taire,)f(v)n(ous)
-g(p)r(ourrez)h(a)5 b(jouter)29 b(\022)-42 b(a)29 b(cet)i(endroit)e(une)
-i(p)r(or-)515 1967 y(tion)d(de)g(co)r(de)f(p)r(our)h(utiliser)f(un)i
-(autre)e(service)g(d'authen)n(ti\014cation.)g(La)h(syn)n(taxe)f(est)g
-(la)515 2066 y(suiv)-5 b(an)n(te)27 b(:)722 2209 y Fb(case)42
-b('<nom)p 1165 2209 27 4 v 30 w(auth>')f(:)722 2309 y(/*)i
+2129 y(taire)f(ci-dessous.)722 2312 y Fb(/****************)o(**)o(***)o
+(**)o(***)o(**)o(**)o(***)o(**)o(***)o(**)o(**)o(***)o(**)o(***)o(*)722
+2411 y(**)43 b(Ajouter)e(d'autres)f(mode)i(d'authentificati)o(on)37
+b(ici)42 b(!)i(**)722 2511 y(*****************)o(**)o(***)o(**)o(***)o
+(**)o(**)o(***)o(**)o(***)o(**)o(**)o(***)o(**)o(***)o(/)515
+2693 y Ff(Comme)30 b(l'indique)g(ce)g(commen)n(taire,)f(v)n(ous)g(p)r
+(ourrez)h(a)5 b(jouter)29 b(\022)-42 b(a)29 b(cet)i(endroit)e(une)i(p)r
+(or-)515 2793 y(tion)d(de)g(co)r(de)f(p)r(our)h(utiliser)f(un)i(autre)e
+(service)g(d'authen)n(ti\014cation.)g(La)h(syn)n(taxe)f(est)g(la)515
+2893 y(suiv)-5 b(an)n(te)27 b(:)722 3035 y Fb(case)42
+b('<nom)p 1165 3035 27 4 v 30 w(auth>')f(:)722 3135 y(/*)i
(Eventuellement)38 b(du)43 b(code)f(pr\023)-44 b(el\023)g(eminaire)38
-b(*/)722 2408 y($auth)p 947 2408 V 30 w(is)p 1065 2408
-V 30 w(ok=<fonction)p 1623 2408 V 27 w(ou)p 1738 2408
-V 30 w(variable)p 2120 2408 V 28 w(authentification>)o(;)722
-2508 y(if)43 b(\()g(!)g($auth)p 1252 2508 V 30 w(is)p
-1370 2508 V 30 w(ok)g(\))722 2607 y Fa(f)g Fb(//)g(On)g(ex\023)-44
+b(*/)722 3235 y($auth)p 947 3235 V 30 w(is)p 1065 3235
+V 30 w(ok=<fonction)p 1623 3235 V 27 w(ou)p 1738 3235
+V 30 w(variable)p 2120 3235 V 28 w(authentification>)o(;)722
+3334 y(if)43 b(\()g(!)g($auth)p 1252 3334 V 30 w(is)p
+1370 3334 V 30 w(ok)g(\))722 3434 y Fa(f)g Fb(//)g(On)g(ex\023)-44
b(ecute)41 b(la)h(ligne)g(ci-dessous)d(que)k(si)f(l'authentificaito)o
(n)c(\022)-44 b(a)43 b(\023)-44 b(echou\023)g(ee)722
-2707 y($errmsg=<fonction)p 1474 2707 V 25 w(ou)p 1588
-2707 V 30 w(chaine)p 1882 2707 V 29 w(explicant)p 2307
-2707 V 28 w(l)p 2379 2707 V 31 w(erreur)p 2674 2707 V
-29 w(d)p 2747 2707 V 31 w(authentificatio)o(n>;)722 2807
-y Fa(g)722 2906 y Fb(break;)515 3049 y Fg(Il)27 b(v)n(ous)f(su\016t)i
+3533 y($errmsg=<fonction)p 1474 3533 V 25 w(ou)p 1588
+3533 V 30 w(chaine)p 1882 3533 V 29 w(explicant)p 2307
+3533 V 28 w(l)p 2379 3533 V 31 w(erreur)p 2674 3533 V
+29 w(d)p 2747 3533 V 31 w(authentificatio)o(n>;)722 3633
+y Fa(g)722 3733 y Fb(break;)515 3875 y Ff(Il)27 b(v)n(ous)f(su\016t)i
(de)f(remplacer)f(les)f(\023)-39 b(el)n(\023)g(emen)n(ts)25
b(en)n(tre)i(c)n(hevrons)e(dans)i(le)g(co)r(de)h(ci-dessus)e(et)515
-3148 y(de)k(le)g(coller)e(dans)i Fd(\()-17 b(\()p Fg(auth)p
-1348 3148 25 4 v 29 w(dialog.inc.php)p Fd(\))g(\))29
-b Fg(p)r(our)h(p)r(ouv)n(oir)e(utiliser)i(un)g(nouv)n(eau)f(mo)r(de)515
-3248 y(d'authen)n(ti\014cation.)i(Reste)h(\022)-42 b(a)31
+3975 y(de)k(le)g(coller)e(dans)i Fd(\()-17 b(\()p Ff(auth)p
+1348 3975 25 4 v 29 w(dialog.inc.php)p Fd(\))g(\))29
+b Ff(p)r(our)h(p)r(ouv)n(oir)e(utiliser)i(un)g(nouv)n(eau)f(mo)r(de)515
+4074 y(d'authen)n(ti\014cation.)i(Reste)h(\022)-42 b(a)31
b(donner)g(\022)-42 b(a)31 b(l'utilisateur)h(la)f(capacit)n(\023)-39
-b(e)30 b(de)i(l'utiliser.)f(V)-7 b(ous)515 3348 y(devrez)32
+b(e)30 b(de)i(l'utiliser.)f(V)-7 b(ous)515 4174 y(devrez)32
b(encore,)h(d'une)g(part,)g(a)5 b(jouter)33 b(dans)g(la)g(base)f(de)i
-(donn)n(\023)-39 b(ees)32 b(le)h Ff(<)p Fg(nom)p 3049
-3348 V 29 w(auth)p Ff(>)g Fg(\022)-42 b(a)515 3447 y(l')n(\023)j(en)n
+(donn)n(\023)-39 b(ees)32 b(le)h Fe(<)p Ff(nom)p 3049
+4174 V 29 w(auth)p Fe(>)g Ff(\022)-42 b(a)515 4274 y(l')n(\023)j(en)n
(um)n(\023)g(eration)20 b(du)j(c)n(hamp)f Fd(\()-17 b(\()p
-Fg(metho)r(deAuth)p Fd(\))g(\))23 b Fg(de)g(la)f(table)h
-Fd(\()-17 b(\()p Fg(P)n(ersonne)p Fd(\))g(\))n Fg(,)22
-b(et)h(d'autre)g(part)515 3547 y(prop)r(oser)c(\022)-42
+Ff(metho)r(deAuth)p Fd(\))g(\))23 b Ff(de)g(la)f(table)h
+Fd(\()-17 b(\()p Ff(P)n(ersonne)p Fd(\))g(\))n Ff(,)22
+b(et)h(d'autre)g(part)515 4373 y(prop)r(oser)c(\022)-42
b(a)20 b(l'utilisateur)h(d'utiliser)f(ce)h(mo)r(de)g(d'authen)n
(ti\014cation)f(en)h(mo)r(di\014an)n(t)g(la)f(page)515
-3647 y Fd(\()-17 b(\()o Fg(pro\014l.php)p Fd(\))g(\))p
-Fg(.)1926 5255 y(4)p eop end
+4473 y Fd(\()-17 b(\()o Ff(pro\014l.php)p Fd(\))g(\))p
+Ff(.)1926 5255 y(5)p eop end
%%Trailer
userdict /end-hook known{end-hook}if
diff --git a/beta_old1/doc/READ_ME.txt b/beta_old1/doc/READ_ME.txt
index b82577d..ce42282 100644
--- a/beta_old1/doc/READ_ME.txt
+++ b/beta_old1/doc/READ_ME.txt
@@ -2,6 +2,25 @@
AWOR - Fichier Lisez-moi de l'administrateur
+Table des Matières
+
+ 1 Compatibilité
+ 2 Sécurité
+ 3 Installation
+ 3.1 Dépaquetage des pages PHP
+ 3.2 Paramètres de configuration
+ 3.3 Initialisation de la base
+ 3.4 Configuration par défaut des comptes
+ 4 Maintenance
+ 4.1 Visualisation des objets et des fichiers
+ 4.2 Nettoyage de la base
+ 5 Authentification dédiée - Personnalisation
+
+
+
+
+
+
1 Compatibilité
Cette application peut-être utilisée sur un serveur
@@ -60,9 +79,19 @@ d'authentification au travers d'un réseau de confiance.
3 Installation
+3.1 Dépaquetage des pages PHP
+
+L'application est livrée dans une archive de type
+tarball compressée qui contient toute l'arborescence et
+les fichiers PHP nécessaires. Il suffit de décompresser
+cette archive en conservant l'arborescence dans un
+dossier publié par votre serveur Web. Les fichiers de
+configurations sont présent et contiennent des valeurs
+d'exemple que vous pourrez adapter à votre situation.
-3.1 <sub:Configuration>Paramètres de configuration
+
+3.2 <sub:Configuration>Paramètres de configuration
Cette application comporte deux fichiers de
configuration qui sont dans le dossier "include". Les
@@ -146,7 +175,7 @@ pour but de servir de modèle.
accepted_files : Tableau des extensions qui sont autorisées.
-3.2 <sub:Initialisation-de-la-bd>Initialisation de la base
+3.3 <sub:Initialisation-de-la-bd>Initialisation de la base
Tout les fichiers nécessaires sont rangés dans le
dossier "install". Vous utiliserez principalement le
@@ -160,6 +189,22 @@ tables de votre base avec ce script php, vous pouvez
exécuter le script "base.sql" avec votre client SQL
favori. Le jeu d'essai se trouve dans le fichier "jeu_essai.sql".
+3.4 Configuration par défaut des comptes
+
+Dans le fichier de configuration modèle, un
+super-utilisateur est configuré :
+inglebert@iut-blagnac.fr et le jeu d'essai proposé au
+paragraphe précédent permet de créer des utilisateurs,
+et en particulier inglebert@iut-blagnac.fr.
+
+Par défaut, vous pourrez donc vous connecter en tant
+qu'administrateur avec ce compte. Le jeu d'essai met ce
+compte avec comme mode d'authentification "bypass", ce
+qui signifie qu'aucun mot de passe est nécessaire. Pour
+utiliser un vrai système d'authentification,
+connectez-vous avec ce compte et allez dans la page "Mon Profil"
+ pour choisir une autre mode d'authentification.
+
4 Maintenance
4.1 Visualisation des objets et des fichiers