diff --git a/application/modules/opac/controllers/AbonneController.php b/application/modules/opac/controllers/AbonneController.php
index 8ae1bffe37193c90b49eddb713b4c037beb941ce..38804abbd35da6b7b5044681b98068b549262699 100644
--- a/application/modules/opac/controllers/AbonneController.php
+++ b/application/modules/opac/controllers/AbonneController.php
@@ -52,6 +52,10 @@ class AbonneController extends ZendAfi_Controller_Action {
       $this->_request->setDispatched();
       return;
     }
+
+    $this->view->_current_module['controller'] = 'abonne';
+    $this->view->_current_module['action'] = 'fiche';
+    $this->view->_current_module['action2'] = '';
   }
 
 
diff --git a/application/modules/opac/controllers/AuthorController.php b/application/modules/opac/controllers/AuthorController.php
index eeec805d4eb440bdc874edf0c1644cb11ef2bb04..7966ff68b19e0cea38589be0aea438c3a5b4d102 100644
--- a/application/modules/opac/controllers/AuthorController.php
+++ b/application/modules/opac/controllers/AuthorController.php
@@ -28,6 +28,10 @@ class AuthorController extends ZendAfi_Controller_Action {
     parent::preDispatch();
     if (!$this->_author = $this->view->author = $this->_findAuthor())
       throw new Zend_Controller_Action_Exception($this->view->_('Désolé, cette page n\'existe pas'), 404);
+
+    $this->view->_current_module['controller'] = 'author';
+    $this->view->_current_module['action'] = 'view';
+    $this->view->_current_module['action2'] = '';
   }
 
 
diff --git a/application/modules/opac/controllers/BibController.php b/application/modules/opac/controllers/BibController.php
index 9fdf4ef78c40472d13766b1a060db2e948e6a983..d12464c4663f37c44e913d3ae0680968f3b66767 100644
--- a/application/modules/opac/controllers/BibController.php
+++ b/application/modules/opac/controllers/BibController.php
@@ -25,6 +25,10 @@ class BibController extends ZendAfi_Controller_Action {
   public function preDispatch() {
     parent::preDispatch();
     $this->_helper->librarySelection();
+
+    $this->view->_current_module['controller'] = 'bib';
+    $this->view->_current_module['action'] = 'en-lire-plus';
+    $this->view->_current_module['action2'] = '';
   }
 
 
diff --git a/application/modules/opac/controllers/RecordController.php b/application/modules/opac/controllers/RecordController.php
index 6c5a52a7da225cf253c57ba073d1d0fa57900515..3940106867de92f1951295bd1e807b526b99d17a 100644
--- a/application/modules/opac/controllers/RecordController.php
+++ b/application/modules/opac/controllers/RecordController.php
@@ -29,6 +29,15 @@ class RecordController extends ZendAfi_Controller_Action {
       $this->_helper->notify($this->_('Impossible d\'afficher les donnés. Le document est introuvable'));
       $this->_redirectToIndex();
     }
+
+    $this->view->_current_module['controller'] = 'recherche';
+    $this->view->_current_module['action'] = 'viewnotice';
+    $this->view->_current_module['action2'] = $this->view->record->getTypeDoc();
+
+    $this->view->notice_navigation =
+      new Class_Notice_NavigationRecherche((new Class_CriteresRecherche)->setParams($this->_request->getParams()),
+                                           Class_MoteurRecherche::getInstance(),
+                                           $this->view->record);
   }
 
 
diff --git a/library/Class/Notice/NavigationRecherche.php b/library/Class/Notice/NavigationRecherche.php
index 3a0803c8c5d6db18a73e88e976af0a95745fb2be..7714ae0b08c319ff5188f23745870775426374c6 100644
--- a/library/Class/Notice/NavigationRecherche.php
+++ b/library/Class/Notice/NavigationRecherche.php
@@ -92,4 +92,11 @@ class Class_Notice_NavigationRecherche {
   public function hasCriteria() {
     return !empty($this->_criteres_recherche->getCriteres());
   }
+
+
+  public function getBackToListUrl() {
+    return Class_Url::absolute($this->_criteres_recherche->getUrlRetourListe(), null, true)
+      . '#'
+      . $this->_current_notice->getId();
+  }
 }
\ No newline at end of file
diff --git a/library/Class/Systeme/ModulesAccueil/Action/Author.php b/library/Class/Systeme/ModulesAccueil/Action/Author.php
new file mode 100644
index 0000000000000000000000000000000000000000..664da1f39e203c361dc75de4eeb05eee7c3065c8
--- /dev/null
+++ b/library/Class/Systeme/ModulesAccueil/Action/Author.php
@@ -0,0 +1,28 @@
+<?php
+/**
+ * Copyright (c) 2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+class Class_Systeme_ModulesAccueil_Action_Author extends Class_Systeme_ModulesAccueil_Action {
+
+  public function __construct() {
+    parent::__construct();
+    $this->_form = 'ZendAfi_Form_Configuration_Widget_Action_Author';
+  }
+}
\ No newline at end of file
diff --git a/library/Class/Systeme/ModulesAccueil/Action/Library.php b/library/Class/Systeme/ModulesAccueil/Action/Library.php
new file mode 100644
index 0000000000000000000000000000000000000000..6480d3658b72fa27a30feb8a9e4e772716177498
--- /dev/null
+++ b/library/Class/Systeme/ModulesAccueil/Action/Library.php
@@ -0,0 +1,28 @@
+<?php
+/**
+ * Copyright (c) 2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+class Class_Systeme_ModulesAccueil_Action_Library extends Class_Systeme_ModulesAccueil_Action {
+
+  public function __construct() {
+    parent::__construct();
+    $this->_form = 'ZendAfi_Form_Configuration_Widget_Action_Library';
+  }
+}
\ No newline at end of file
diff --git a/library/Class/Systeme/ModulesAccueil/Action/Record.php b/library/Class/Systeme/ModulesAccueil/Action/Record.php
new file mode 100644
index 0000000000000000000000000000000000000000..4dac96170c63392b99350f45f70c0a0414032223
--- /dev/null
+++ b/library/Class/Systeme/ModulesAccueil/Action/Record.php
@@ -0,0 +1,28 @@
+<?php
+/**
+ * Copyright (c) 2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+class Class_Systeme_ModulesAccueil_Action_Record extends Class_Systeme_ModulesAccueil_Action {
+
+  public function __construct() {
+    parent::__construct();
+    $this->_form = 'ZendAfi_Form_Configuration_Widget_Action_Record';
+  }
+}
\ No newline at end of file
diff --git a/library/Class/Systeme/ModulesAccueil/Action/SearchResult.php b/library/Class/Systeme/ModulesAccueil/Action/SearchResult.php
index b9d6fac00e152b87b5262a12fc98ba5d951cf4a7..7f4be205d2da86b4b346b6831bcb7cd4ff5c7dc7 100644
--- a/library/Class/Systeme/ModulesAccueil/Action/SearchResult.php
+++ b/library/Class/Systeme/ModulesAccueil/Action/SearchResult.php
@@ -23,6 +23,8 @@ class Class_Systeme_ModulesAccueil_Action_SearchResult extends Class_Systeme_Mod
 
   public function __construct() {
     parent::__construct();
+    $this->_libelle = $this->_('Configuration du résultat de recherche');
+    $this->_defaultValues['titre'] = $this->_libelle;
     $this->_form = 'ZendAfi_Form_Configuration_Widget_Action_SearchResult';
   }
 }
\ No newline at end of file
diff --git a/library/Class/Systeme/ModulesAccueil/Action/User.php b/library/Class/Systeme/ModulesAccueil/Action/User.php
new file mode 100644
index 0000000000000000000000000000000000000000..b3cbb7f36cb2b914aca088e33893993eeee10a6c
--- /dev/null
+++ b/library/Class/Systeme/ModulesAccueil/Action/User.php
@@ -0,0 +1,28 @@
+<?php
+/**
+ * Copyright (c) 2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+class Class_Systeme_ModulesAccueil_Action_User extends Class_Systeme_ModulesAccueil_Action {
+
+  public function __construct() {
+    parent::__construct();
+    $this->_form = 'ZendAfi_Form_Configuration_Widget_Action_User';
+  }
+}
\ No newline at end of file
diff --git a/library/Class/Systeme/Widget/Action.php b/library/Class/Systeme/Widget/Action.php
index 0666730345bacc651d8aa2a1d2e1112441dc7a51..f045fb45d619f5635765b182f16fe18ebf3398d5 100644
--- a/library/Class/Systeme/Widget/Action.php
+++ b/library/Class/Systeme/Widget/Action.php
@@ -116,11 +116,6 @@ class Class_Systeme_Widget_Action extends Class_Systeme_Widget_Abstract {
   }
 
 
-  protected function _getTitle() {
-    return $this->getLabel();
-  }
-
-
   public function getWidgets() {
     return [];
   }
diff --git a/library/templates/Intonation/View/RenderRecord/Summary.php b/library/Class/Systeme/Widget/Action/Author.php
similarity index 60%
rename from library/templates/Intonation/View/RenderRecord/Summary.php
rename to library/Class/Systeme/Widget/Action/Author.php
index 2bba5e032b95c8d4d0677b0f9d60a9c037dcbf4a..207875b20c948853e732b8029f76cffc4e1c8d37 100644
--- a/library/templates/Intonation/View/RenderRecord/Summary.php
+++ b/library/Class/Systeme/Widget/Action/Author.php
@@ -1,6 +1,6 @@
 <?php
 /**
- * Copyright (c) 2012-2018, Agence Française Informatique (AFI). All rights reserved.
+ * Copyright (c) 2012-2017, Agence Française Informatique (AFI). All rights reserved.
  *
  * BOKEH is free software; you can redistribute it and/or modify
  * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
@@ -20,21 +20,13 @@
  */
 
 
-class Intonation_View_RenderRecord_Summary extends Intonation_View_RenderRecord {
-
-  public function RenderRecord_Summary($record) {
-    $html = $this->renderRecord($record);
-    $this->view->titre = $this->_('%s : Résumé', $this->view->titre);
-
-    return $html;
+class Class_Systeme_Widget_Action_Author extends Class_Systeme_Widget_Action {
+  public function getResourcesDefinition() {
+    return (new Class_Systeme_ModulesAccueil_Action_Author);
   }
 
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('summary' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function _getTitle() {
+    return $this->_('Configuration de la page auteur');
   }
-}
+}
\ No newline at end of file
diff --git a/library/Class/Systeme/Widget/Action/Library.php b/library/Class/Systeme/Widget/Action/Library.php
new file mode 100644
index 0000000000000000000000000000000000000000..76175ec4ae030dc715f613b807780ef90612c061
--- /dev/null
+++ b/library/Class/Systeme/Widget/Action/Library.php
@@ -0,0 +1,32 @@
+<?php
+/**
+ * Copyright (c) 2012-2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class Class_Systeme_Widget_Action_Library extends Class_Systeme_Widget_Action {
+  public function getResourcesDefinition() {
+    return (new Class_Systeme_ModulesAccueil_Action_Library);
+  }
+
+
+  public function _getTitle() {
+    return $this->_('Configuration de la page bibliothèque');
+  }
+}
\ No newline at end of file
diff --git a/library/Class/Systeme/Widget/Action/Record.php b/library/Class/Systeme/Widget/Action/Record.php
new file mode 100644
index 0000000000000000000000000000000000000000..ce06c308c4d5d83cd4d3006e90041a9a27ba3b44
--- /dev/null
+++ b/library/Class/Systeme/Widget/Action/Record.php
@@ -0,0 +1,40 @@
+<?php
+/**
+ * Copyright (c) 2012-2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class Class_Systeme_Widget_Action_Record extends Class_Systeme_Widget_Action {
+  public function getResourcesDefinition() {
+    return (new Class_Systeme_ModulesAccueil_Action_Record);
+  }
+
+
+  public function _getTitle() {
+    $id = $this->getId();
+    $id = explode('_' , $id);
+    $id = array_pop($id);
+
+    $doc_type = Class_TypeDoc::find($id);
+
+    return $doc_type
+      ? $this->_('Configuration de la page des documents de type %s', strtolower($doc_type->getLabel()))
+      : $this->_('Configuration de la page des documents');
+  }
+}
\ No newline at end of file
diff --git a/library/Class/Systeme/Widget/Action/User.php b/library/Class/Systeme/Widget/Action/User.php
new file mode 100644
index 0000000000000000000000000000000000000000..3299a048af824c8580e76a5f8d80ee23f3c77545
--- /dev/null
+++ b/library/Class/Systeme/Widget/Action/User.php
@@ -0,0 +1,32 @@
+<?php
+/**
+ * Copyright (c) 2012-2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class Class_Systeme_Widget_Action_User extends Class_Systeme_Widget_Action {
+  public function getResourcesDefinition() {
+    return (new Class_Systeme_ModulesAccueil_Action_User);
+  }
+
+
+  public function _getTitle() {
+    return $this->_('Configuration de la page compte');
+  }
+}
\ No newline at end of file
diff --git a/library/Class/Systeme/Widget/ActionLoader.php b/library/Class/Systeme/Widget/ActionLoader.php
index 75983739c3608d1c5d78f378cbddde7b05d14717..608d47f04d60cb2e356cdb7a12d6cf72c3a859f9 100644
--- a/library/Class/Systeme/Widget/ActionLoader.php
+++ b/library/Class/Systeme/Widget/ActionLoader.php
@@ -32,6 +32,17 @@ class Class_Systeme_Widget_ActionLoader {
 
 
   protected function _getActions() {
-    return ['recherche_resultat_simple' => 'Class_Systeme_Widget_Action_SearchResult'];
+    $record_action = 'Class_Systeme_Widget_Action_Record';
+
+    $actions = ['recherche_resultat_simple' => 'Class_Systeme_Widget_Action_SearchResult',
+                'recherche_viewnotice' => 'Class_Systeme_Widget_Action_Record',
+                'abonne_fiche' => 'Class_Systeme_Widget_Action_User',
+                'author_view' => 'Class_Systeme_Widget_Action_Author',
+                'bib_en-lire-plus' => 'Class_Systeme_Widget_Action_Library'];
+
+    foreach (Class_TypeDoc::findAll() as $doc_type)
+      $actions ['recherche_viewnotice_' . $doc_type->getId()] = $record_action;
+
+    return $actions;
   }
 }
\ No newline at end of file
diff --git a/library/Class/Template/Loader.php b/library/Class/Template/Loader.php
index ba14b3aecc30f5070693f906d6fa87a17036087f..2f98ef23d2f05f2d68dcf66bc7160005bf86de7c 100644
--- a/library/Class/Template/Loader.php
+++ b/library/Class/Template/Loader.php
@@ -28,7 +28,8 @@ class Class_Template_Loader {
     return [new Historic_Template,
             new Intonation_Template,
             new MyBibApp_Template,
-            new TerreDuMilieu_Template
+            new TerreDuMilieu_Template,
+            new Muscle_Template
     ];
   }
 
diff --git a/library/ZendAfi/Controller/Plugin/DefineURLs.php b/library/ZendAfi/Controller/Plugin/DefineURLs.php
index d228b7990b6bb95544ba778f0f46f2cbb115f7df..812b5ea6fd42a1d030e2b40e7d50bdcfe1f01049 100644
--- a/library/ZendAfi/Controller/Plugin/DefineURLs.php
+++ b/library/ZendAfi/Controller/Plugin/DefineURLs.php
@@ -77,6 +77,9 @@ class ZendAfi_Controller_Plugin_DefineURLs extends Zend_Controller_Plugin_Abstra
     if(!in_array($request->getModuleName(), [static::OPAC, static::PHONE]))
       return;
 
+    if (($template = Class_Template::current()->getId()) != $profil->getTemplate())
+      $this->_setCurrentProfileUsing($template);
+
     $request->setModuleName($profil->getBrowser());
 
     return $this->_userCanAccessProfil($profil)
@@ -85,6 +88,22 @@ class ZendAfi_Controller_Plugin_DefineURLs extends Zend_Controller_Plugin_Abstra
   }
 
 
+
+  protected function _setCurrentProfileUsing($template) {
+    if (($template == (new Historic_Template)->getId())
+        && (!Class_Profil::getCurrentProfil()->getTemplate()))
+      return;
+
+    if (! $profile = Class_Profil::findFirstBy(['template' => $template])) {
+      Class_Template::current()->tryOn(Class_Profil::getCurrentProfil());
+      $profile = Class_Profil::getCurrentProfil();
+    }
+
+    Class_Profil::clearCache();
+    Class_Profil::setCurrentProfil($profile);
+  }
+
+
   protected function authRequest($detector) {
     $profil = Class_Profil::getCurrentProfil();
 
diff --git a/library/ZendAfi/Form/Configuration/Widget/Action/Author.php b/library/ZendAfi/Form/Configuration/Widget/Action/Author.php
new file mode 100644
index 0000000000000000000000000000000000000000..2ab9042f2a213dc0c35070ee9b34dfbddb003914
--- /dev/null
+++ b/library/ZendAfi/Form/Configuration/Widget/Action/Author.php
@@ -0,0 +1,29 @@
+<?php
+/**
+ * Copyright (c) 2012-2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class ZendAfi_Form_Configuration_Widget_Action_Author extends ZendAfi_Form_Configuration_Widget_Action_Tabs {
+  protected function _getRichContentInstance() {
+    return (new Intonation_Library_View_Wrapper_Author_RichContent)
+      ->setView(new Class_Entity)
+      ->setModel(new Class_CodifAuteur);
+  }
+}
\ No newline at end of file
diff --git a/library/ZendAfi/Form/Configuration/Widget/Action/Library.php b/library/ZendAfi/Form/Configuration/Widget/Action/Library.php
new file mode 100644
index 0000000000000000000000000000000000000000..e22f8ee94dbfff26e3fec0e6f168eccdb68b0ea3
--- /dev/null
+++ b/library/ZendAfi/Form/Configuration/Widget/Action/Library.php
@@ -0,0 +1,29 @@
+<?php
+/**
+ * Copyright (c) 2012-2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class ZendAfi_Form_Configuration_Widget_Action_Library extends ZendAfi_Form_Configuration_Widget_Action_Tabs {
+  protected function _getRichContentInstance() {
+    return (new Intonation_Library_View_Wrapper_Library_RichContent)
+      ->setView(new Class_Entity)
+      ->setModel(new Class_Bib);
+  }
+}
\ No newline at end of file
diff --git a/library/ZendAfi/Form/Configuration/Widget/Action/Record.php b/library/ZendAfi/Form/Configuration/Widget/Action/Record.php
new file mode 100644
index 0000000000000000000000000000000000000000..2d2182fc17c397f99183267db5dd1610784e32b1
--- /dev/null
+++ b/library/ZendAfi/Form/Configuration/Widget/Action/Record.php
@@ -0,0 +1,29 @@
+<?php
+/**
+ * Copyright (c) 2012-2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class ZendAfi_Form_Configuration_Widget_Action_Record extends ZendAfi_Form_Configuration_Widget_Action_Tabs {
+  protected function _getRichContentInstance() {
+    return (new Intonation_Library_View_Wrapper_Record_RichContent)
+      ->setView(new Class_Entity)
+      ->setModel(new Class_Notice);
+  }
+}
\ No newline at end of file
diff --git a/library/ZendAfi/Form/Configuration/Widget/Action/Tabs.php b/library/ZendAfi/Form/Configuration/Widget/Action/Tabs.php
new file mode 100644
index 0000000000000000000000000000000000000000..2db724305844732e3ecb2ac74a6beb8b78ed1b96
--- /dev/null
+++ b/library/ZendAfi/Form/Configuration/Widget/Action/Tabs.php
@@ -0,0 +1,75 @@
+<?php
+/**
+ * Copyright (c) 2012-2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+abstract class ZendAfi_Form_Configuration_Widget_Action_Tabs extends ZendAfi_Form_Configuration_Widget_Action {
+
+  public function init() {
+    parent::init();
+    $rich_content = $this->_getRichContentInstance();
+
+    foreach ($rich_content->getSections() as $tab) {
+      $id = $tab->getClass();
+      $ico_id = Class_Template::current()->withNameSpace('ico_' . $id);
+      $label_id = Class_Template::current()->withNameSpace('label_' . $id);
+      $title_id = Class_Template::current()->withNameSpace('title_' . $id);
+      $title = $tab->getTitle();
+
+      $this
+
+        ->addElement('userfile',
+                     $ico_id,
+                     ['label' => $this->_('Icône de l\'onglet %s', $title),
+                      'placeholder' => $tab->getNavIco()])
+
+        ->addElement('text',
+                     $label_id,
+                     ['label' => $this->_('Titre de l\'onglet %s', $title),
+                      'placeholder' => $title])
+
+        ->addElement('text',
+                     $title_id,
+                     ['label' => $this->_('Attribut "title" de l\'onglet %s', $title),
+                      'placeholder' => $tab->getNavTitle()]);
+
+      $group [] = $ico_id;
+      $group [] = $label_id;
+      $group [] = $title_id;
+    }
+
+    $this->addDisplayGroup($group, 'action_options', ['legend' => $this->_('Renommage des onglets')]);
+  }
+
+
+  public function initDisplayGroups() {
+    parent::initDisplayGroups();
+    Class_Template::current()->customActionForm($this);
+  }
+
+
+  public function populate($datas) {
+    parent::populate($datas);
+    return $this;
+  }
+
+
+  abstract protected function _getRichContentInstance();
+}
\ No newline at end of file
diff --git a/library/ZendAfi/Form/Configuration/Widget/Action/User.php b/library/ZendAfi/Form/Configuration/Widget/Action/User.php
new file mode 100644
index 0000000000000000000000000000000000000000..546da0e63a1f551bdd3c35d69e33cf513506e835
--- /dev/null
+++ b/library/ZendAfi/Form/Configuration/Widget/Action/User.php
@@ -0,0 +1,29 @@
+<?php
+/**
+ * Copyright (c) 2012-2017, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class ZendAfi_Form_Configuration_Widget_Action_User extends ZendAfi_Form_Configuration_Widget_Action_Tabs {
+  protected function _getRichContentInstance() {
+    return (new Intonation_Library_View_Wrapper_User_RichContent)
+      ->setView(new Class_Entity)
+      ->setModel(new Class_Users);
+  }
+}
\ No newline at end of file
diff --git a/library/ZendAfi/View/Helper/FonctionsAdmin.php b/library/ZendAfi/View/Helper/FonctionsAdmin.php
index b5f97bdfb9a05d73c4d3a7a53250f48e8c1bbd04..d435540400d4e71ce90c8fee7c714b6851a9d588 100644
--- a/library/ZendAfi/View/Helper/FonctionsAdmin.php
+++ b/library/ZendAfi/View/Helper/FonctionsAdmin.php
@@ -106,6 +106,7 @@ class ZendAfi_View_Helper_FonctionsAdmin extends ZendAfi_View_Helper_BaseHelper
     if ($this->_isBoxConfiguration())
       return '';
 
+    $url_params['controller'] = 'modules';
     $url_params['action'] = 'apply-to';
 
     return $this->_renderActionLink('copy_module',
@@ -119,7 +120,7 @@ class ZendAfi_View_Helper_FonctionsAdmin extends ZendAfi_View_Helper_BaseHelper
     $action = $this->view->_current_module['action'];
     $action2 = $this->view->_current_module['action2'];
 
-    if (!(new Class_Systeme_ModulesAppli())->getModule($controller, $action))
+    if (!(new Class_Systeme_ModulesAppli)->getModule($controller, $action))
       return [];
 
     return array_filter(['module' => 'admin',
diff --git a/library/ZendAfi/View/Helper/Suggests.php b/library/ZendAfi/View/Helper/Suggests.php
index 21546b6a28d61c60db982ce046a9fd1fedefb8ca..dd3032344597fe68c476c530d0a3b942513d4d15 100644
--- a/library/ZendAfi/View/Helper/Suggests.php
+++ b/library/ZendAfi/View/Helper/Suggests.php
@@ -21,8 +21,15 @@
 
 class ZendAfi_View_Helper_Suggests extends ZendAfi_View_Helper_BaseHelper {
   public function suggests($search_result) {
-    $suggests = $search_result->fetchFacetsAndTags($search_result->getSettings())['suggests'];
+    if (!$facets_and_tags = $search_result->fetchFacetsAndTags($search_result->getSettings()))
+      return '';
+
+    if (!isset($facets_and_tags['suggests']))
+      return '';
+
+    $suggests = $facets_and_tags['suggests'];
     $criteres = $search_result->getCriteresRecherche();
+
     if (empty($suggests))
       return '';
 
@@ -37,6 +44,11 @@ class ZendAfi_View_Helper_Suggests extends ZendAfi_View_Helper_BaseHelper {
                        },
                        $suggests);
 
+    return $this->_renderSuggests($links);
+  }
+
+
+  protected function _renderSuggests($links) {
     return
       $this->_tag('div',
                   $this->_tag('h2', $this->_('Suggestions')).
@@ -60,9 +72,11 @@ class ZendAfi_View_Helper_Suggests extends ZendAfi_View_Helper_BaseHelper {
 
     $field->setLabel($suggest['label']);
 
-    return
-      $this->_tag('li', $field->renderOn($this->view, ['class' => 'facette']));
+    return $this->_renderSuggestHTML($field);
   }
-}
 
-?>
\ No newline at end of file
+
+  protected function _renderSuggestHTML($field) {
+    return $this->_tag('li', $field->renderOn($this->view, ['class' => 'facette']));
+  }
+}
\ No newline at end of file
diff --git a/library/ZendAfi/View/Helper/TagListeCoches.php b/library/ZendAfi/View/Helper/TagListeCoches.php
index 675642c04762c24417ad042a5566e58d05c50cee..78a6c884ba163740900a1ea9a0e5c1563ff0f7d2 100644
--- a/library/ZendAfi/View/Helper/TagListeCoches.php
+++ b/library/ZendAfi/View/Helper/TagListeCoches.php
@@ -112,7 +112,8 @@ class ZendAfi_View_Helper_TagListeCoches extends ZendAfi_View_Helper_BaseHelper
                   $this->_renderAllNothing()
                   . $this->_renderListItems(),
                   ['id' => $this->_name . '_saisie',
-                   'class' => 'tag_saisie d-none']);
+                   'class' => 'tag_saisie',
+                   'style' => 'display: none;']);
   }
 
 
diff --git a/library/ZendAfi/View/Helper/Widget/Section/Main.php b/library/ZendAfi/View/Helper/Widget/Section/Main.php
index f311dc40650be92b982ccea34d158195b8bbf8a8..d24ce0df8a55e9666fae7264d23a8b5a05bfffed 100644
--- a/library/ZendAfi/View/Helper/Widget/Section/Main.php
+++ b/library/ZendAfi/View/Helper/Widget/Section/Main.php
@@ -74,6 +74,8 @@ class ZendAfi_View_Helper_Widget_Section_Main extends ZendAfi_View_Helper_Widget
 
     $settings = (new Intonation_System_Action)->setSettings($configuration);
 
+    $this->view->_module_settings = $settings;
+
     return $settings->getHtmlAttribs();
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/Assets/css/intonation.css b/library/templates/Intonation/Assets/css/intonation.css
index 8f4899a7da862d5a6ee72f6bd58baff4cdf4531c..1a50278ca453d45cea942ae023c4d0898379cd0b 100644
--- a/library/templates/Intonation/Assets/css/intonation.css
+++ b/library/templates/Intonation/Assets/css/intonation.css
@@ -13,6 +13,7 @@
     --front-background: #f9f9f9;
     --front-background-black: black;
     --front-transparent-background: transparent;
+    --front-dropdown-shadow: #CCC;
     --front-widget-background: #FFF;
     --front-navbar-background: #CCC;
     --front-background-overlay: rgba(0, 0 , 0 ,0.7);
@@ -578,7 +579,7 @@ dl.row {
 
 .card-footer .dropleft.dropup .dropdown-menu {
     bottom: 1.5em !important;
-    right: -0.5em !important;
+    right: 0 !important;
 }
 
 .jumbotron .dropleft.dropup .dropdown-menu {
@@ -707,4 +708,25 @@ dl.row {
 
 .navbar-nav.flex-column .dropdown-menu {
     position: initial;
+}
+
+.ui-autocomplete,
+.dropdown-menu.show {
+    box-shadow: var(--front-dropdown-shadow) 0px 0px 5px; 
+}
+
+.menu_admin_front a {
+    position: relative;
+}
+
+.menu_admin_front a img {
+    position: absolute;
+    right: 0;
+    top: 0;
+    bottom: 0;
+    margin: auto;
+}
+
+.card-img-overlay .text-left {
+    text-align: center !important;
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/Assets/js/imagesloaded4.1.4.min.js b/library/templates/Intonation/Assets/js/imagesloaded4.1.4.min.js
new file mode 100644
index 0000000000000000000000000000000000000000..bcccd8adf32148e434527c85b8deaa06821c2905
--- /dev/null
+++ b/library/templates/Intonation/Assets/js/imagesloaded4.1.4.min.js
@@ -0,0 +1,7 @@
+/*!
+ * imagesLoaded PACKAGED v4.1.4
+ * JavaScript is all like "You images are done yet or what?"
+ * MIT License
+ */
+
+!function(e,t){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",t):"object"==typeof module&&module.exports?module.exports=t():e.EvEmitter=t()}("undefined"!=typeof window?window:this,function(){function e(){}var t=e.prototype;return t.on=function(e,t){if(e&&t){var i=this._events=this._events||{},n=i[e]=i[e]||[];return n.indexOf(t)==-1&&n.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{},n=i[e]=i[e]||{};return n[t]=!0,this}},t.off=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=i.indexOf(t);return n!=-1&&i.splice(n,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){i=i.slice(0),t=t||[];for(var n=this._onceEvents&&this._onceEvents[e],o=0;o<i.length;o++){var r=i[o],s=n&&n[r];s&&(this.off(e,r),delete n[r]),r.apply(this,t)}return this}},t.allOff=function(){delete this._events,delete this._onceEvents},e}),function(e,t){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(i){return t(e,i)}):"object"==typeof module&&module.exports?module.exports=t(e,require("ev-emitter")):e.imagesLoaded=t(e,e.EvEmitter)}("undefined"!=typeof window?window:this,function(e,t){function i(e,t){for(var i in t)e[i]=t[i];return e}function n(e){if(Array.isArray(e))return e;var t="object"==typeof e&&"number"==typeof e.length;return t?d.call(e):[e]}function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);var s=e;return"string"==typeof e&&(s=document.querySelectorAll(e)),s?(this.elements=n(s),this.options=i({},this.options),"function"==typeof t?r=t:i(this.options,t),r&&this.on("always",r),this.getImages(),h&&(this.jqDeferred=new h.Deferred),void setTimeout(this.check.bind(this))):void a.error("Bad element for imagesLoaded "+(s||e))}function r(e){this.img=e}function s(e,t){this.url=e,this.element=t,this.img=new Image}var h=e.jQuery,a=e.console,d=Array.prototype.slice;o.prototype=Object.create(t.prototype),o.prototype.options={},o.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},o.prototype.addElementImages=function(e){"IMG"==e.nodeName&&this.addImage(e),this.options.background===!0&&this.addElementBackgroundImages(e);var t=e.nodeType;if(t&&u[t]){for(var i=e.querySelectorAll("img"),n=0;n<i.length;n++){var o=i[n];this.addImage(o)}if("string"==typeof this.options.background){var r=e.querySelectorAll(this.options.background);for(n=0;n<r.length;n++){var s=r[n];this.addElementBackgroundImages(s)}}}};var u={1:!0,9:!0,11:!0};return o.prototype.addElementBackgroundImages=function(e){var t=getComputedStyle(e);if(t)for(var i=/url\((['"])?(.*?)\1\)/gi,n=i.exec(t.backgroundImage);null!==n;){var o=n&&n[2];o&&this.addBackground(o,e),n=i.exec(t.backgroundImage)}},o.prototype.addImage=function(e){var t=new r(e);this.images.push(t)},o.prototype.addBackground=function(e,t){var i=new s(e,t);this.images.push(i)},o.prototype.check=function(){function e(e,i,n){setTimeout(function(){t.progress(e,i,n)})}var t=this;return this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?void this.images.forEach(function(t){t.once("progress",e),t.check()}):void this.complete()},o.prototype.progress=function(e,t,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded,this.emitEvent("progress",[this,e,t]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,e),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&a&&a.log("progress: "+i,e,t)},o.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(e,[this]),this.emitEvent("always",[this]),this.jqDeferred){var t=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[t](this)}},r.prototype=Object.create(t.prototype),r.prototype.check=function(){var e=this.getIsImageComplete();return e?void this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),void(this.proxyImage.src=this.img.src))},r.prototype.getIsImageComplete=function(){return this.img.complete&&this.img.naturalWidth},r.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.img,t])},r.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},r.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},r.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},r.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype=Object.create(r.prototype),s.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url;var e=this.getIsImageComplete();e&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},s.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.element,t])},o.makeJQueryPlugin=function(t){t=t||e.jQuery,t&&(h=t,h.fn.imagesLoaded=function(e,t){var i=new o(this,e,t);return i.jqDeferred.promise(h(this))})},o.makeJQueryPlugin(),o});
diff --git a/library/templates/Intonation/Assets/js/masonry.js b/library/templates/Intonation/Assets/js/masonry.js
new file mode 100644
index 0000000000000000000000000000000000000000..bdca467ceec7aa672e6f103ce56f9b40f6bd5faf
--- /dev/null
+++ b/library/templates/Intonation/Assets/js/masonry.js
@@ -0,0 +1,37 @@
+(function ( $ ) {
+  $.fn.masonry = function () {
+    var html = $(this);
+
+    var allItems = $(html).find('.masonry-brick');
+      for(var i=0; i < allItems.length; i++) {
+	imagesLoaded( allItems[i], function(instance) {
+	  var item = instance.elements[0];
+	  resizeMasonryItem(item);
+	} );
+      }
+
+    var masonryEvents = ['load', 'resize'];
+    masonryEvents.forEach( function(event) {
+      window.addEventListener(event, resizeAllMasonryItems);
+    } );
+
+
+    function resizeMasonryItem(item){
+      var grid = html.get(0),
+	  rowGap = parseInt(window.getComputedStyle(grid).getPropertyValue('grid-row-gap')),
+	  rowHeight = parseInt(window.getComputedStyle(grid).getPropertyValue('grid-auto-rows'));
+
+      var rowSpan = Math.ceil((item.querySelector('.masonry-content').getBoundingClientRect().height+rowGap)/(rowHeight+rowGap));
+
+      item.style.gridRowEnd = 'span '+rowSpan;
+      item.style.visibility = 'visible';
+    }
+
+
+    function resizeAllMasonryItems(){
+      for(var i=0;i>allItems.length;i++){
+	resizeMasonryItem(allItems[i]);
+      }
+    }
+  };
+} (jQuery));
diff --git a/library/templates/Intonation/Library/ProfilePatcher.php b/library/templates/Intonation/Library/ProfilePatcher.php
index 942afbd23e0857f08d1103cd4558ece54c8b4335..12fd3884c3f3c485ea0785c4aaebfc58cf61bcf6 100644
--- a/library/templates/Intonation/Library/ProfilePatcher.php
+++ b/library/templates/Intonation/Library/ProfilePatcher.php
@@ -57,7 +57,8 @@ class Intonation_Library_ProfilePatcher extends Class_Template_ProfilePatcher {
       ->setCfgSiteParam('hauteur_banniere', '')
       ->setCfgSiteParam('responsive', '')
       ->setCfgSiteParam('couleur_lien_bandeau', '')
-      ->setCfgSiteParam('couleur_texte_bandeau', '');
+      ->setCfgSiteParam('couleur_texte_bandeau', '')
+      ->setAccessLevel(-1);
 
     (new Class_Profil_Preferences())
       ->setModulePref($this->_profile,
@@ -192,7 +193,7 @@ class Intonation_Library_ProfilePatcher extends Class_Template_ProfilePatcher {
       ->_addWidget(Intonation_Library_Widget_Nav_Definition::CODE,
                    Class_Profil::DIV_BANNIERE,
                    ['titre' => $this->_('Menu principal'),
-                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'black_and_white'],
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'black_and_white', 'admin_tools_invert_colors'],
                     'menu' => $this->_profile_id . '-' . $this->_menu_id,
                     $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_MEDIUM,
                     $this->_template->withNameSpace('width_xsmall') => 12,
@@ -218,7 +219,7 @@ class Intonation_Library_ProfilePatcher extends Class_Template_ProfilePatcher {
       ->_addWidget(Intonation_Library_Widget_Carousel_Library_Definition::CODE,
                    Class_Profil::DIV_MAIN,
                    ['titre' => $this->_('Bibliothèques'),
-                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'men_in_black', 'mb-3'],
+                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'men_in_black', 'mb-3', 'admin_tools_invert_colors'],
                     'rendering' => 'card-description',
                     'layout' => 'carousel',
                     'filters' => 'opening;town',
@@ -233,7 +234,7 @@ class Intonation_Library_ProfilePatcher extends Class_Template_ProfilePatcher {
       ->_addWidget(Intonation_Library_Widget_Carousel_Agenda_Definition::CODE,
                    Class_Profil::DIV_MAIN,
                    ['titre' => $this->_('Agenda'),
-                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'men_in_black', 'mb-3'],
+                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'men_in_black', 'mb-3', 'admin_tools_invert_colors'],
                     'rendering' => 'card',
                     'layout' => 'carousel',
                     'size' => 9,
@@ -252,7 +253,7 @@ class Intonation_Library_ProfilePatcher extends Class_Template_ProfilePatcher {
       ->_addWidget(Intonation_Library_Widget_Carousel_Record_Definition::CODE,
                    Class_Profil::DIV_MAIN,
                    ['titre' => $this->_('Nouveautés'),
-                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'men_in_black', 'mb-3'],
+                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'men_in_black', 'mb-3', 'admin_tools_invert_colors'],
                     'rendering' => 'card-overlay',
                     'layout' => 'wall',
                     'size' => 9,
@@ -268,7 +269,7 @@ class Intonation_Library_ProfilePatcher extends Class_Template_ProfilePatcher {
       ->_addWidget(Intonation_Library_Widget_Carousel_Review_Definition::CODE,
                    Class_Profil::DIV_MAIN,
                    ['titre' => $this->_('Dernières critiques'),
-                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'men_in_black', 'mb-3'],
+                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'men_in_black', 'mb-3', 'admin_tools_invert_colors'],
                     'rendering' => 'card',
                     'layout' => 'multible_carousel',
                     'abon_ou_bib' => 'all',
@@ -285,7 +286,7 @@ class Intonation_Library_ProfilePatcher extends Class_Template_ProfilePatcher {
       ->_addWidget(Intonation_Library_Widget_Credits_Definition::CODE,
                    Class_Profil::DIV_FOOTER,
                    ['titre' => $this->_('Crédits'),
-                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'black_and_white', 'text-right'],
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'black_and_white', 'text-right', 'admin_tools_invert_colors'],
                     $this->_template->withNameSpace('width_xsmall') => 7,
                     $this->_template->withNameSpace('show_header') => 0,
                     $this->_template->withNameSpace('show_content') => 1,
@@ -294,7 +295,7 @@ class Intonation_Library_ProfilePatcher extends Class_Template_ProfilePatcher {
       ->_addWidget(Intonation_Library_Widget_Share_Definition::CODE,
                    Class_Profil::DIV_FOOTER,
                    ['titre' => $this->_('Partager'),
-                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'black_and_white', 'text-center'],
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'black_and_white', 'text-center', 'admin_tools_invert_colors'],
                     $this->_template->withNameSpace('width_xsmall') => 5,
                     $this->_template->withNameSpace('show_header') => 0,
                     $this->_template->withNameSpace('show_content') => 1,
diff --git a/library/templates/Intonation/Library/Settings.php b/library/templates/Intonation/Library/Settings.php
index e5145f0f7dac9282739614b8b39bb1cf2922c73f..e227002fdb812968da0007ea8777a919f2eecfb9 100644
--- a/library/templates/Intonation/Library/Settings.php
+++ b/library/templates/Intonation/Library/Settings.php
@@ -70,10 +70,11 @@ class Intonation_Library_Settings extends Intonation_System_Abstract {
                                                  'text-center',
                                                  'text-right',
                                                  'text_small',
-                                                 'text_no_transform'
+                                                 'text_no_transform',
+                                                 'admin_tools_invert_colors'
                           ],
 
-                          'hydrating_mapping' => ['div id site_web_wrapper' => 'container align-self-center',
+                          'hydrating_mapping' => ['div id site_web_wrapper' => 'container align-self-center no_overflow',
                                                   'div id site_web_content_wrapper' => 'row justify-content-center no-gutters',
                                                   'div class widget' => 'card',
                                                   'div class widget-header' => 'card-header',
@@ -107,16 +108,19 @@ class Intonation_Library_Settings extends Intonation_System_Abstract {
                                                   'dt class user_info' => 'col-12 col-sm-6',
                                                   'dd class user_info' => 'col-12 col-sm-6',
                                                   'a' => 'text-secondary',
+                                                  'a class carousel_control' => 'text-dark',
                                                   'a class btn' => 'text-light',
                                                   'a class list_format' => 'btn btn-light',
                                                   'a class nav-link' => 'text-light',
                                                   'a class jumbotron_nav_link' => 'text-dark',
                                                   'a class account-loans' => 'btn btn-sm list-group-item-info',
+                                                  'a class more_action' => 'text-primary',
                                                   'a class badge' => '',
                                                   'a class active' => '',
                                                   'a class card-link' => '',
                                                   'a class list-group-item' => '',
                                                   'ul' => 'list-unstyled',
+                                                  'div class navbar-header' => 'justify-content-between',
                                                   'div class navbar-collapse' => 'justify-content-center',
                                                   'div class _notify' => 'alert-warning',
                                                   'div class success_notify' => 'alert-success',
@@ -228,7 +232,7 @@ class Intonation_Library_Settings extends Intonation_System_Abstract {
 
   public function getHtmlAttribs() {
     return ['id' => 'site_web_wrapper',
-            'class' => 'no_overflow ' . $this->_getResponsiveWidths()];
+            'class' => $this->_getResponsiveWidths()];
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Article.php b/library/templates/Intonation/Library/View/Wrapper/Article.php
index f303b8e81a7305961c4a41efeab798a90654c70d..d1bcdfc055436c7d1107e60e1e8cbcda3c439e85 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Article.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Article.php
@@ -201,7 +201,7 @@ class Intonation_Library_View_Wrapper_Article extends Intonation_Library_View_Wr
                                                                      $this->_model->getLibelle())])];
 
     $button = new Intonation_Library_Link(['Text' => $this->_('Plus'),
-                                           'Attribs' => ['class' => 'text-primary'],
+                                           'Attribs' => ['class' => 'more_action'],
                                            'Title' => $this->_('Voir plus d\'actions pour %s',
                                                                $this->_model->getLibelle()),
                                            'Image' => Class_Template::current()->getIco($this->_view,
diff --git a/library/templates/Intonation/Library/View/Wrapper/Author.php b/library/templates/Intonation/Library/View/Wrapper/Author.php
index c8b6787aa0bf36748a544e80bfcd3fd31309343e..7e2b6919ffb39dec8dc92c7304293d5c8f0859ae 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Author.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Author.php
@@ -147,7 +147,7 @@ class Intonation_Library_View_Wrapper_Author extends Intonation_Library_View_Wra
                                                                      $this->_model->getLibelle())])];
 
     $button = new Intonation_Library_Link(['Text' => $this->_('Plus'),
-                                           'Attribs' => ['class' => 'text-primary'],
+                                           'Attribs' => ['class' => 'more_action'],
                                            'Title' => $this->_('Voir plus d\'actions pour %s',
                                                                $this->_model->getLibelle()),
                                            'Image' => Class_Template::current()->getIco($this->_view,
diff --git a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent.php b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent.php
index a80e547bd672d0188f81bafad100d8840b771d7d..d19947854725dd0ecb7d99ff705c4bc099692da7 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent.php
@@ -45,4 +45,9 @@ class Intonation_Library_View_Wrapper_Author_RichContent extends Intonation_Libr
             new Intonation_Library_View_Wrapper_Author_RichContent_Interviews,
             new Intonation_Library_View_Wrapper_Author_RichContent_Youtube];
   }
+
+
+  protected function _getWrapper() {
+    return 'Intonation_Library_View_Wrapper_Author';
+  }
 }
diff --git a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Biography.php b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Biography.php
index ae30ddea57648efeaba1d62a09e2c6183b040622..14f513a2f10eedf7ab08fcef26b59e728933803c 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Biography.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Biography.php
@@ -47,7 +47,7 @@ class Intonation_Library_View_Wrapper_Author_RichContent_Biography extends Inton
 
 
   public function getNavIco() {
-    return 'author';
+    return 'class fas fa-user';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Collaborations.php b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Collaborations.php
index 3d6e5bf1b35a0ca6ca22023fdd6edae33fdecd34..4e11fcf76d7bdf90c9d7ccd5a6835160423196aa 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Collaborations.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Collaborations.php
@@ -47,7 +47,7 @@ class Intonation_Library_View_Wrapper_Author_RichContent_Collaborations extends
 
 
   public function getNavIco() {
-    return 'team';
+    return 'class fas fa-users';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Home.php b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Home.php
index 76a411273af16e83fca25175c422fc9cfd9ceee3..94325e8d838ca3ece235171291e7e4b6bace12b5 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Home.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Home.php
@@ -23,7 +23,7 @@
 class Intonation_Library_View_Wrapper_Author_RichContent_Home extends Intonation_Library_View_Wrapper_Author_RichContent_Section {
 
   public function getTitle() {
-    return '';
+    return $this->_('Tout');
   }
 
 
@@ -44,7 +44,7 @@ class Intonation_Library_View_Wrapper_Author_RichContent_Home extends Intonation
 
 
   public function getNavIco() {
-    return 'home';
+    return 'class fas fa-home';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Interviews.php b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Interviews.php
index dba3212e8b2b3b2007c43e6398f68d795b4fb36d..3cb03e770b403b9ae9bbed9f8800300846d685e1 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Interviews.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Interviews.php
@@ -47,7 +47,7 @@ class Intonation_Library_View_Wrapper_Author_RichContent_Interviews extends Into
 
 
   public function getNavIco() {
-    return 'reviews';
+    return 'class fas fa-comments';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Records.php b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Records.php
index 488c77cada0e9c540306901cfb9911f241cfbf53..17f2b4aef3aa751885a13818027c417c3713274e 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Records.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Records.php
@@ -47,7 +47,7 @@ class Intonation_Library_View_Wrapper_Author_RichContent_Records extends Intonat
 
 
   public function getNavIco() {
-    return 'related';
+    return 'class fas fa-clone';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Youtube.php b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Youtube.php
index 9a3a6d841432bf3ed86c0740a6dd98bbc7ac3e23..09e20d8b408b6e5e2566511b9f78234ecfef42b9 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Youtube.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Author/RichContent/Youtube.php
@@ -47,7 +47,7 @@ class Intonation_Library_View_Wrapper_Author_RichContent_Youtube extends Intonat
 
 
   public function getNavIco() {
-    return 'media';
+    return 'class fas fa-images';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent.php b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent.php
index 8500cbf63084c98ba0e986f2126cf312344f907a..5b36a5645ec5a464018281f0dd4ce2cede52153c 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent.php
@@ -22,7 +22,7 @@
 
 class Intonation_Library_View_Wrapper_Library_RichContent extends Intonation_Library_View_Wrapper_RichContent_Abstract {
 
-    protected $_navigation;
+  protected $_navigation;
 
 
   public function getNavigation() {
@@ -53,4 +53,9 @@ class Intonation_Library_View_Wrapper_Library_RichContent extends Intonation_Lib
             new Intonation_Library_View_Wrapper_Library_RichContent_Agenda,
             new Intonation_Library_View_Wrapper_Library_RichContent_Team];
   }
-}
+
+
+  protected function _getWrapper() {
+    return 'Intonation_Library_View_Wrapper_Library';
+  }
+}
\ No newline at end of file
diff --git a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Agenda.php b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Agenda.php
index 2b398ab403a45675c397e4dbb4c7e8e46bd4ab03..3f4ed8d3dd7186fbc8e963f498773f4a0a0f5749 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Agenda.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Agenda.php
@@ -74,7 +74,7 @@ class Intonation_Library_View_Wrapper_Library_RichContent_Agenda extends Intonat
 
 
   public function getNavIco() {
-    return 'agenda';
+    return 'class fas fa-calendar-alt';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Details.php b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Details.php
index 7a101840f859a0b4d7ddd6d4de88fa3122be6278..fb0612b676d900c47866ad5a4fe2454f28f8459b 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Details.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Details.php
@@ -146,7 +146,7 @@ class Intonation_Library_View_Wrapper_Library_RichContent_Details extends Intona
 
 
   public function getNavIco() {
-    return 'description';
+    return 'class fas fa-info';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Home.php b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Home.php
index dcad017818856c51f5eb59e008f1de8c8aba0284..898bd3efa3617c4b1f18390284b2d8ccaa90d519 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Home.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Home.php
@@ -23,7 +23,7 @@
 class Intonation_Library_View_Wrapper_Library_RichContent_Home extends Intonation_Library_View_Wrapper_User_RichContent_Section {
 
   public function getTitle() {
-    return '';
+    return $this->_('Tout');
   }
 
 
@@ -44,7 +44,7 @@ class Intonation_Library_View_Wrapper_Library_RichContent_Home extends Intonatio
 
 
   public function getNavIco() {
-    return 'home';
+    return 'class fas fa-home';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Map.php b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Map.php
index 3c95bd283379d0ae06dd679b00011c58b84b367c..a2057fbee43ebb4dca5fe42d2c4fd67372c569f5 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Map.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Map.php
@@ -54,7 +54,7 @@ class Intonation_Library_View_Wrapper_Library_RichContent_Map extends Intonation
 
 
   public function getNavIco() {
-    return 'map';
+    return 'class fas fa-map-marked-alt';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Openings.php b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Openings.php
index 6ffa61ca9d04e86ad8d9b8640dfa49cdb709ddf4..656afc344547e09c7acc9fbe2cf89fe92f6d7c2c 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Openings.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Openings.php
@@ -47,7 +47,7 @@ class Intonation_Library_View_Wrapper_Library_RichContent_Openings extends Inton
 
 
   public function getNavIco() {
-    return 'openings';
+    return 'class fas fa-clock';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/ProArticles.php b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/ProArticles.php
index 91ec079bfd671529b0613440e35197792b71a128..f34449720d078078d767d76a07c7b94b11ee6e48 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/ProArticles.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/ProArticles.php
@@ -36,6 +36,11 @@ class Intonation_Library_View_Wrapper_Library_RichContent_ProArticles extends In
   }
 
 
+  public function getDBTitle() {
+    return $this->getTitle();
+  }
+
+
   public function getTitle() {
     return $this->_('Les articles de %s', $this->getPro()->getLoginOrFullName());
   }
diff --git a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/ProReviews.php b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/ProReviews.php
index 3e9df95f78981ed2f93660cfba9fe7f4f9c20c97..04f8bacbaa182e283195cca13d894e2b20af6686 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/ProReviews.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/ProReviews.php
@@ -41,6 +41,11 @@ class Intonation_Library_View_Wrapper_Library_RichContent_ProReviews extends Int
   }
 
 
+  public function getDBTitle() {
+    return $this->getTitle();
+  }
+
+
   public function getContent() {
     if (!$reviews = $this->getPro()->getAvis())
       return;
diff --git a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/SelectionsPro.php b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/SelectionsPro.php
index fc2b377cb61851d4827820db5ec8b033acae51ed..981cd9d1368398fb0e6cc40c81640870f4e9a9fc 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/SelectionsPro.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/SelectionsPro.php
@@ -41,6 +41,11 @@ class Intonation_Library_View_Wrapper_Library_RichContent_SelectionsPro extends
   }
 
 
+  public function getDBTitle() {
+    return $this->getTitle();
+  }
+
+
   public function getContent() {
     if (!$selections = $this->getPro()->getPaniers())
       return;
diff --git a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Team.php b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Team.php
index aa3a2b73b56b1607b35150e2dc6ace3c7f82dcda..da5aabc06eb416e0edfab9631a1be928798245b2 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Team.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Library/RichContent/Team.php
@@ -66,7 +66,7 @@ class Intonation_Library_View_Wrapper_Library_RichContent_Team extends Intonatio
 
 
   public function getNavIco() {
-    return 'team';
+    return 'class fas fa-users';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record.php b/library/templates/Intonation/Library/View/Wrapper/Record.php
index 5782de19da16eed6fea40fbe2e80db044b733b60..64687285ad1d8db523708a1f21835ecd70501fd4 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Record.php
@@ -301,7 +301,7 @@ class Intonation_Library_View_Wrapper_Record extends Intonation_Library_View_Wra
                            $this->_thumbnailActions());
 
     $button = new Intonation_Library_Link(['Text' => $this->_('Plus'),
-                                           'Attribs' => ['class' => 'text-primary'],
+                                           'Attribs' => ['class' => 'more_action'],
                                            'Title' => $this->_('Voir plus d\'actions pour le document %s',
                                                                $this->_model->getTitrePrincipal(' ')),
                                            'Image' => Class_Template::current()->getIco($this->_view,
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent.php b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent.php
index f3800f0452c58d509992433d7c8ebf5f28d11839..64c605d7e37d81310cb67b1a942ef09c81c17516 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent.php
@@ -45,7 +45,8 @@ class Intonation_Library_View_Wrapper_Record_RichContent extends Intonation_Libr
       ->setModel($this->_model)
       ->setView($this->_view);
 
-    $actions = array_merge([$this->getNavigation()->getPosition()],
+    $actions = array_merge([$this->getNavigation()->getPosition(),
+                            $this->getNavigation()->getBackUrl()],
                            $wrapper->getActions());
 
     return $this->_view->renderActions($actions, ['class' => 'col col-lg-12 pt-1 mt-1 mr-1 pr-1 w-s_nowrap']);
@@ -61,4 +62,9 @@ class Intonation_Library_View_Wrapper_Record_RichContent extends Intonation_Libr
             new Intonation_Library_View_Wrapper_Record_RichContent_Related,
             new Intonation_Library_View_Wrapper_Record_RichContent_Author];
   }
+
+
+  protected function _getWrapper() {
+    return 'Intonation_Library_View_Wrapper_Record';
+  }
 }
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Author.php b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Author.php
index d251eb488e4d2e008f2d6abb52759fc6abd057ba..84d0319178bbec643e71f5ea79040246cbd0ca56 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Author.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Author.php
@@ -51,7 +51,7 @@ class Intonation_Library_View_Wrapper_Record_RichContent_Author extends Intonati
 
 
   public function getNavIco() {
-    return 'author';
+    return 'class fas fa-user';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Details.php b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Details.php
index 5863481f01361845f1586bfdcb8f9cb0584b5c5e..4ba6a60caffebff36bf8fb3e40ec895e94ac2470 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Details.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Details.php
@@ -49,7 +49,7 @@ class Intonation_Library_View_Wrapper_Record_RichContent_Details extends Intonat
 
 
   public function getNavIco() {
-    return 'description';
+    return 'class fas fa-info';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Home.php b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Home.php
index b9b66d76adcb490a87b6094535b5121e7de516a8..68ec0a6b9eedf40e1c5ed5cb883962a0fcaf93b2 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Home.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Home.php
@@ -23,7 +23,7 @@
 class Intonation_Library_View_Wrapper_Record_RichContent_Home extends Intonation_Library_View_Wrapper_Record_RichContent_Section {
 
   public function getTitle() {
-    return '';
+    return $this->_('Tout');
   }
 
 
@@ -44,7 +44,7 @@ class Intonation_Library_View_Wrapper_Record_RichContent_Home extends Intonation
 
 
   public function getNavIco() {
-    return 'home';
+    return 'class fas fa-home';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Items.php b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Items.php
index 2a1739629fe2431bd152d41b379c45af7dcbac7d..7e4cd621be12ea3576f37900c11dc3b947b767f1 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Items.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Items.php
@@ -50,7 +50,7 @@ class Intonation_Library_View_Wrapper_Record_RichContent_Items extends Intonatio
 
 
   public function getNavIco() {
-    return 'hold';
+    return 'class fas fa-thumbtack';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Media.php b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Media.php
index 927c8c259ee69795298b70c713d64e0a38eb2d82..f90aa0679280b19c3af0dd7bc33acad1b0ccda29 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Media.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Media.php
@@ -57,7 +57,7 @@ class Intonation_Library_View_Wrapper_Record_RichContent_Media extends Intonatio
 
 
   public function getNavIco() {
-    return 'media';
+    return 'class fas fa-images';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Navigation.php b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Navigation.php
index 44b79206f2ffdbbf44e1c5e1bcf2951c761f6412..d74bb11c9c6b4ae4a987c7072d05805685f3f823 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Navigation.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Navigation.php
@@ -88,6 +88,20 @@ class Intonation_Library_View_Wrapper_Record_RichContent_Navigation {
   }
 
 
+  public function getBackUrl() {
+    if (! $this->_isVisible())
+      return '';
+
+    return $this->_view->tagAction(new Intonation_Library_Link(['Url' => $this->_view->notice_navigation->getBackToListUrl(),
+                                                                'Text' => $this->_('Recherche'),
+                                                                'Title' => $this->_('Retourner aux résultats de la recherche'),
+                                                                'Image' => (Class_Template::current()
+                                                                            ->getIco($this->_view,
+                                                                                     'previous',
+                                                                                     'utils'))]));
+  }
+
+
   protected function _isVisible() {
     if (! isset($this->_view->notice_navigation))
       return false;
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Related.php b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Related.php
index 6d7599a8615b95a00cd737920c90ccd2f8636e9d..571c4502d95cb4f463049c7a07b56dd90c5b20cc 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Related.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Related.php
@@ -69,7 +69,7 @@ class Intonation_Library_View_Wrapper_Record_RichContent_Related extends Intonat
 
 
   public function getNavIco() {
-    return 'related';
+    return 'class fas fa-clone';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Reviews.php b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Reviews.php
index 18fe0162b0929ef17856f1f0c7f4eefd222f91a4..5a97e869aa5b2f67ddd276c52b52abea41e975e4 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Reviews.php
+++ b/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Reviews.php
@@ -47,7 +47,7 @@ class Intonation_Library_View_Wrapper_Record_RichContent_Reviews extends Intonat
 
 
   public function getNavIco() {
-    return 'reviews';
+    return 'class fas fa-comments';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/RichContent/Abstract.php b/library/templates/Intonation/Library/View/Wrapper/RichContent/Abstract.php
index 1c4c710a25c7728b6a2c47594b2cc361c7dd909f..67524f2334fbfc3295c49d537e31eb1a22afb21d 100644
--- a/library/templates/Intonation/Library/View/Wrapper/RichContent/Abstract.php
+++ b/library/templates/Intonation/Library/View/Wrapper/RichContent/Abstract.php
@@ -46,6 +46,7 @@ abstract class Intonation_Library_View_Wrapper_RichContent_Abstract {
     return $this->_model;
   }
 
+
   public function setSections($sections) {
     $this->_sections = $sections;
     return $this;
@@ -60,8 +61,12 @@ abstract class Intonation_Library_View_Wrapper_RichContent_Abstract {
 
     return $this->_sections = array_map(function($instance)
                                         {
+                                          $wrapper = $this->_getWrapper();
                                           return $instance
                                             ->setModel($this->_model)
+                                            ->setWrapped((new $wrapper())
+                                                         ->setModel($this->_model)
+                                                         ->setView($this->_view))
                                             ->setView($this->_view);
                                         },
                                         $instances);
@@ -75,4 +80,6 @@ abstract class Intonation_Library_View_Wrapper_RichContent_Abstract {
   abstract public function getRowActions();
 
   abstract protected function _getSectionsInstances();
+
+  abstract protected function _getWrapper();
 }
diff --git a/library/templates/Intonation/Library/View/Wrapper/RichContent/Section.php b/library/templates/Intonation/Library/View/Wrapper/RichContent/Section.php
index d65354f84242b3d59ca5697f7f7b3a8aa912e414..99a5dd890ea576f5f1bb93349ac002db7c89f5e7 100644
--- a/library/templates/Intonation/Library/View/Wrapper/RichContent/Section.php
+++ b/library/templates/Intonation/Library/View/Wrapper/RichContent/Section.php
@@ -28,6 +28,7 @@ abstract class Intonation_Library_View_Wrapper_RichContent_Section {
   protected
     $_view,
     $_model,
+    $_wrapped,
     $_content,
     $_visible = false,
     $_ajax = false,
@@ -51,6 +52,17 @@ abstract class Intonation_Library_View_Wrapper_RichContent_Section {
   }
 
 
+  public function setWrapped($wrapped) {
+    $this->_wrapped = $wrapped;
+    return $this;
+  }
+
+
+  public function getWrapped() {
+    return $this->_wrapped;
+  }
+
+
   public function isVisible() {
     return $this->_visible && $this->getContent();
   }
@@ -89,6 +101,49 @@ abstract class Intonation_Library_View_Wrapper_RichContent_Section {
   }
 
 
+  public function getDBTitle() {
+    $title = $this->_withModuleSettingsDo(function($settings)
+                                        {
+                                          $data_name = 'getLabel_' . $this->getClass();
+                                          return $settings->$data_name();
+                                        });
+    return $title
+      ? sprintf($title, $this->_wrapped->getMainTitle())
+      : $this->getTitle();
+  }
+
+
+  public function getDBNavTitle() {
+    $nav_title = $this->_withModuleSettingsDo(function($settings)
+                                        {
+                                          $data_name = 'getTitle_' . $this->getClass();
+                                          return $settings->$data_name();
+                                        });
+    return $nav_title
+      ? sprintf($nav_title, $this->_wrapped->getMainTitle())
+      : $this->getNavTitle();
+  }
+
+
+  public function getDBNavIco() {
+    $title = $this->_withModuleSettingsDo(function($settings)
+                                        {
+                                          $data_name = 'getIco_' . $this->getClass();
+                                          return $settings->$data_name();
+                                        });
+    return $title
+      ? $title
+      : $this->getNavIco();
+  }
+
+
+  protected function _withModuleSettingsDo($callback) {
+    return $this->_view->_module_settings
+      ? $callback($this->_view->_module_settings)
+      : '';
+  }
+
+
   abstract public function getTitle();
   abstract public function getContent();
   abstract public function getClass();
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent.php
index 8bee7bb9b86270ab3dca27a0e5c1dc9901e01936..c486e5c22851cd6f3177c1359871f90e60ba8d55 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent.php
@@ -46,4 +46,9 @@ class Intonation_Library_View_Wrapper_User_RichContent extends Intonation_Librar
             new Intonation_Library_View_Wrapper_User_RichContent_Reviews,
             new Intonation_Library_View_Wrapper_User_RichContent_Settings];
   }
+
+
+  protected function _getWrapper() {
+    return 'Intonation_Library_View_Wrapper_User';
+  }
 }
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/ChangeImage.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/ChangeImage.php
index 53f7a8f788a0dd686dd6d0257e774822a10d6ba8..c38727cc70ecba56b8017fab6eed4273bf39526a 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/ChangeImage.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/ChangeImage.php
@@ -27,6 +27,11 @@ class Intonation_Library_View_Wrapper_User_RichContent_ChangeImage extends Inton
   }
 
 
+  public function getDBTitle() {
+    return $this->getTitle();
+  }
+
+
   public function getContent() {
     if (!$paths = explode(';', Class_AdminVar::getValueOrDefault('USER_PROFILE_IMAGES')))
       return '';
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/EditInformations.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/EditInformations.php
index a1daaea1de06bf0378b997ed6b5ec9b06122d4fb..3e44a896d4885ff880fde9376f1f37e5d575e31a 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/EditInformations.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/EditInformations.php
@@ -27,6 +27,11 @@ class Intonation_Library_View_Wrapper_User_RichContent_EditInformations extends
   }
 
 
+  public function getDBTitle() {
+    return $this->getTitle();
+  }
+
+
   public function getContent() {
     return $this->_content;
   }
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/FollowASearch.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/FollowASearch.php
index ca437766fd6e5c55d2d893b1e31851314d998882..38f53e5af49062dbf1334908e3f9285393218e2b 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/FollowASearch.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/FollowASearch.php
@@ -36,6 +36,11 @@ class Intonation_Library_View_Wrapper_User_RichContent_FollowASearch extends Int
   }
 
 
+  public function getDBTitle() {
+    return $this->getTitle();
+  }
+
+
   public function getContent() {
     $form = (new ZendAfi_Form)
       ->setMethod('GET')
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Holds.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Holds.php
index 8bea1d3e7bde2e228db18e7c3e11c52093c81bf8..a86afb38b090dbf27e3a259ec97d30fa0cffcb2a 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Holds.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Holds.php
@@ -50,7 +50,7 @@ class Intonation_Library_View_Wrapper_User_RichContent_Holds extends Intonation_
 
 
   public function getNavIco() {
-    return 'hold';
+    return 'class fas fa-thumbtack';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Home.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Home.php
index 4459340471574897d506346b00007c5ef6722908..4160f060290d95bf3fbc01ba416ecfc2adb574ac 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Home.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Home.php
@@ -23,7 +23,7 @@
 class Intonation_Library_View_Wrapper_User_RichContent_Home extends Intonation_Library_View_Wrapper_User_RichContent_Section {
 
   public function getTitle() {
-    return '';
+    return $this->_('Tout');
   }
 
 
@@ -44,7 +44,7 @@ class Intonation_Library_View_Wrapper_User_RichContent_Home extends Intonation_L
 
 
   public function getNavIco() {
-    return 'home';
+    return 'class fas fa-home';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Informations.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Informations.php
index 650d0d1919861a6377fd2a110f73768d3838d289..de4d8def0195c2c3c650a06bf12ace74ecbef6a0 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Informations.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Informations.php
@@ -47,7 +47,7 @@ class Intonation_Library_View_Wrapper_User_RichContent_Informations extends Into
 
 
   public function getNavIco() {
-    return 'description';
+    return 'class fas fa-info';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Loans.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Loans.php
index 2b987a9e59fe0face5fc1394dc4af6e02f86c1da..81d3a8ce6b8208ed35f25e4655fcce98fe7f90f5 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Loans.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Loans.php
@@ -65,7 +65,7 @@ class Intonation_Library_View_Wrapper_User_RichContent_Loans extends Intonation_
 
 
   public function getNavIco() {
-    return 'loan';
+    return 'class fas fa-book';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/RateRecords.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/RateRecords.php
index 6b3eec62530ef65ed201c9053bedacf49277da99..102f80c61e5f7c853996e23db37279f4dcb6f3b7 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/RateRecords.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/RateRecords.php
@@ -36,6 +36,11 @@ class Intonation_Library_View_Wrapper_User_RichContent_RateRecords extends Inton
   }
 
 
+  public function getDBTitle() {
+    return $this->getTitle();
+  }
+
+
   public function getContent() {
     $criteria = $this->_criteria;
     $records_to_rate = $this->_getRecordsToRate($this->getModel(), $criteria);
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Reviews.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Reviews.php
index 45d057357fcba62fc501f7d164ea8e9cb2baf097..1c6a74f71fb88c1c95521984c682338acf628adb 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Reviews.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Reviews.php
@@ -64,7 +64,7 @@ class Intonation_Library_View_Wrapper_User_RichContent_Reviews extends Intonatio
 
 
   public function getNavIco() {
-    return 'reviews';
+    return 'class fas fa-comments';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Selections.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Selections.php
index 9598834f6590b39958162dd5258fefe6e4e69186..3971ec34e6272f33591feb18233f858e604ce881 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Selections.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Selections.php
@@ -61,7 +61,7 @@ class Intonation_Library_View_Wrapper_User_RichContent_Selections extends Intona
 
 
   public function getNavIco() {
-    return 'selection';
+    return 'class fas fa-heart';
   }
 
 
diff --git a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Settings.php b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Settings.php
index 2514e05e13bd0aeb7bf0b9d0676d044a7660ede6..31259676cc2083292719cc390f12d6fdff1f18ca 100644
--- a/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Settings.php
+++ b/library/templates/Intonation/Library/View/Wrapper/User/RichContent/Settings.php
@@ -142,7 +142,7 @@ class Intonation_Library_View_Wrapper_User_RichContent_Settings extends Intonati
 
 
   public function getNavIco() {
-    return 'settings';
+    return 'class fas fa-user-cog';
   }
 
 
diff --git a/library/templates/Intonation/Library/Widget/Accessibility/View.php b/library/templates/Intonation/Library/Widget/Accessibility/View.php
index 9bba3e5fe813be2d9093828b0c257e168b8fcd90..52341ecdce3ee9125064eb15ce026608ecccc74e 100644
--- a/library/templates/Intonation/Library/Widget/Accessibility/View.php
+++ b/library/templates/Intonation/Library/Widget/Accessibility/View.php
@@ -38,7 +38,9 @@ class Intonation_Library_Widget_Accessibility_View extends Zendafi_View_Helper_A
       ->addJQueryReady(sprintf('$("#%s").accessibility_tools()',
                                $id))
       ->addJqueryReady('$(".dropdown-menu").on("click", function (e) {e.stopPropagation();});');
-;
+
+    if ($this->_settings->getDisplayFontSize())
+      $script_loader->addOPACStyleSheet('font_size_rules');
   }
 
 
@@ -157,9 +159,6 @@ class Intonation_Library_Widget_Accessibility_View extends Zendafi_View_Helper_A
     if (!$this->_settings->getDisplayFontSize())
       return;
 
-    Class_ScriptLoader::getInstance()
-      ->addOPACStyleSheet('font_size_rules');
-
     return
       $this->view->button((new Class_Entity)
                           ->setImage($this->view->tagImg(Class_Url::absolute('public/opac/images/buttons/default_font_size.png'),
diff --git a/library/templates/Intonation/Library/Widget/Login/View.php b/library/templates/Intonation/Library/Widget/Login/View.php
index b92ef90ce338edb3a1cc4d9c25f6ebba067ebcfa..b2e50e0be36ae6595e04b621aa808c54eb09f9bf 100644
--- a/library/templates/Intonation/Library/Widget/Login/View.php
+++ b/library/templates/Intonation/Library/Widget/Login/View.php
@@ -109,7 +109,13 @@ abstract class IntonationLoginRenderAbstract {
       ->setAction($action);
 
     $form->removeElement('loginlink');
-    $form->getElement('login')->setOrder(2);
+    $form->getElement('username')->setOrder(1);
+    $form->getElement('password')->setOrder(2);
+    $form->getElement('login')->setOrder(3);
+    $form->getElement('lostpass')->setOrder(4);
+
+    if (Class_AdminVar::isEnregUtilAllowed())
+      $form->getElement('register')->setOrder(5);
 
     return $form;
   }
diff --git a/library/templates/Intonation/Library/Widget/Nav/View.php b/library/templates/Intonation/Library/Widget/Nav/View.php
index 69e6ef7c35667742ca97ef45dfb8442e13a16dd4..b67805e4e21df020866fb0491a2823aaf6c3664f 100644
--- a/library/templates/Intonation/Library/Widget/Nav/View.php
+++ b/library/templates/Intonation/Library/Widget/Nav/View.php
@@ -82,7 +82,7 @@ class Intonation_Library_Widget_Nav_View extends Zendafi_View_Helper_Accueil_Bas
     return $this->_tag('div',
                        $this->_renderLogo($this->_menu_settings)
                        . $this->_renderSandwich(),
-                       ['class' => 'd-flex justify-content-between navbar-header']);
+                       ['class' => 'd-flex navbar-header']);
   }
 
 
diff --git a/library/templates/Intonation/Library/Widget/Search/View.php b/library/templates/Intonation/Library/Widget/Search/View.php
index da4f96626ecee1791d4eecb76c7cc30e6de15f37..41cee016c8a7b2a745e4d8f02dc09e2fb31820e0 100644
--- a/library/templates/Intonation/Library/Widget/Search/View.php
+++ b/library/templates/Intonation/Library/Widget/Search/View.php
@@ -54,6 +54,29 @@ class Intonation_Library_Widget_Search_View extends ZendAfi_View_Helper_Accueil_
 
     return new IntonationSearchRenderDefault($this->view, $this->_settings, $this->_user);
   }
+
+
+  protected function _renderHeadScriptsOn($script_loader) {
+    $id = '#expressionRecherche' . $this->_settings->getIdForHtml();
+
+    $script_loader
+      ->addJQueryReady('$("' . $id . '").attr("x-webkit-speech","x-webkit-speech")')
+      ->addOPACPluginScript('search_autocomplete/search_autocomplete')
+      ->addJQueryReady('$("' . $id . '").search_autocomplete('. $this->getAutocompleteOptions()  .')');
+
+    return $this;
+  }
+
+
+  protected function getAutocompleteOptions() {
+    $options = new stdClass();
+    $options->url = $this->view->url(['controller' => 'recherche',
+                                      'action' => 'suggestajax'], null, true);
+    $options->dataType = 'json';
+    $options->dataLabel = 'startsWith';
+    $options->minLength = 3;
+    return json_encode($options);
+  }
 }
 
 
@@ -73,7 +96,7 @@ abstract class IntonationSearchRenderAbstract {
     $this->_view = $view;
     $this->_settings = $settings;
     $this->_user = $user;
-    $this->_id = $settings->getIdModule();
+    $this->_id = $settings->getIdForHtml();
 
     if ($this->_view->search_result)
       return $this;
@@ -127,7 +150,7 @@ abstract class IntonationSearchRenderAbstract {
                    'expressionRecherche',
                    ['label' => $this->_settings->getMessage(),
                     'value' => $this->_view->search_result ? $this->_view->search_result->getCriteresRecherche()->getExpressionRecherche() : '',
-                    'id' => 'expressionRecherche' . $this->_id,
+                    'id' => 'expressionRecherche' . $this->_settings->getIdForHtml(),
                     'class' => 'expressionRecherche',
                     'placeholder' => $this->_settings->getPlaceholder()])
 
diff --git a/library/templates/Intonation/System/WidgetSettings.php b/library/templates/Intonation/System/WidgetSettings.php
index eda179dcd86172f5766f3e7563bb29092f43453e..f46f12ff253650c83c392daf2681823421933c3e 100644
--- a/library/templates/Intonation/System/WidgetSettings.php
+++ b/library/templates/Intonation/System/WidgetSettings.php
@@ -41,4 +41,12 @@ class Intonation_System_WidgetSettings {
   public function __construct($settings) {
     $this->_settings = $settings;
   }
+
+
+  public function getIdForHtml() {
+    if (!$parent = $this->_settings->getParent())
+      return $this->_settings->getIdModule();
+
+    return $parent . '-' . $this->_settings->getIdModule();
+  }
 }
diff --git a/library/templates/Intonation/View/Abonne.php b/library/templates/Intonation/View/Abonne.php
index e8c2a6b1a05e6464423e17ba4e5efa74562241a7..c6c002abbbecd1eb8c24f185e05362ebf74b2993 100644
--- a/library/templates/Intonation/View/Abonne.php
+++ b/library/templates/Intonation/View/Abonne.php
@@ -21,6 +21,7 @@
 
 
 class Intonation_View_Abonne extends Intonation_View_Jumbotron_Abstract {
+
   public function abonne($user) {
     return $this->_core($user);
   }
diff --git a/library/templates/Intonation/View/Abonne/ConfigurationsBoard.php b/library/templates/Intonation/View/Abonne/ConfigurationsBoard.php
index 33be6930ae5b6579d0f04357bf82aad7d9ee72ae..ff366cd594d2b323def427c43a8a60da0240ee98 100644
--- a/library/templates/Intonation/View/Abonne/ConfigurationsBoard.php
+++ b/library/templates/Intonation/View/Abonne/ConfigurationsBoard.php
@@ -21,19 +21,11 @@
 
 
 class Intonation_View_Abonne_ConfigurationsBoard extends Intonation_View_Abonne {
-  public function abonne_ConfigurationsBoard($user) {
-    $html = $this->abonne($user);
-    $this->view->titre = $this->_('%s : Mes configurations',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'user_settings';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('user_settings' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+
+  public function abonne_ConfigurationsBoard($user) {
+    return $this->_renderSection($user);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Abonne/HoldsBoard.php b/library/templates/Intonation/View/Abonne/HoldsBoard.php
index b10dd9abb551476e8b464cee787da8bda0fbc2b5..e2269b6b0df35a38ade6b4814fba869d2de923d5 100644
--- a/library/templates/Intonation/View/Abonne/HoldsBoard.php
+++ b/library/templates/Intonation/View/Abonne/HoldsBoard.php
@@ -21,19 +21,11 @@
 
 
 class Intonation_View_Abonne_HoldsBoard extends Intonation_View_Abonne {
-  public function abonne_HoldsBoard($user) {
-    $html = $this->abonne($user);
-    $this->view->titre = $this->_('%s : Mes réservations',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'user_holds';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('user_holds' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+
+  public function abonne_HoldsBoard($user) {
+    return $this->_renderSection($user);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Abonne/Informations.php b/library/templates/Intonation/View/Abonne/Informations.php
index 4bfeadb91f83311cd894248e38f4e753a90a9268..e0d168621bd69c7d863c0bd1ea8d8c947eaf66d8 100644
--- a/library/templates/Intonation/View/Abonne/Informations.php
+++ b/library/templates/Intonation/View/Abonne/Informations.php
@@ -21,19 +21,11 @@
 
 
 class Intonation_View_Abonne_Informations extends Intonation_View_Abonne {
-  public function abonne_Informations($user) {
-    $html = $this->abonne($user);
-    $this->view->titre = $this->_('%s : Informations',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'user_informations';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('user_informations' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+
+  public function abonne_Informations($user) {
+    return $this->_renderSection($user);
   }
 }
diff --git a/library/templates/Intonation/View/Abonne/LoansBoard.php b/library/templates/Intonation/View/Abonne/LoansBoard.php
index 156e34f6cc36f333b61798c17e60c96d54134757..db42c9ad69db3622359f78ba3f2eb442eae9abb0 100644
--- a/library/templates/Intonation/View/Abonne/LoansBoard.php
+++ b/library/templates/Intonation/View/Abonne/LoansBoard.php
@@ -21,19 +21,11 @@
 
 
 class Intonation_View_Abonne_LoansBoard extends Intonation_View_Abonne {
-  public function abonne_LoansBoard($config) {
-    $html = $this->abonne($config->getUser());
-    $this->view->titre = $this->_('%s : Mes prêts',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'user_loans';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('user_loans' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+
+  public function abonne_LoansBoard($config) {
+    return $this->_renderSection($config->getUser());
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Abonne/ReviewsBoard.php b/library/templates/Intonation/View/Abonne/ReviewsBoard.php
index 898ef97a9e6c2a9f7adac41ff76d9903354302aa..cc13e36841ef4a9b0f2b123bfdb35c4b857f8dd4 100644
--- a/library/templates/Intonation/View/Abonne/ReviewsBoard.php
+++ b/library/templates/Intonation/View/Abonne/ReviewsBoard.php
@@ -21,19 +21,11 @@
 
 
 class Intonation_View_Abonne_ReviewsBoard extends Intonation_View_Abonne {
-  public function abonne_ReviewsBoard($user) {
-    $html = $this->abonne($user);
-    $this->view->titre = $this->_('%s : Mes avis',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'user_reviews';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('user_reviews' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+
+  public function abonne_ReviewsBoard($user) {
+    return $this->_renderSection($user);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Abonne/SelectionsBoard.php b/library/templates/Intonation/View/Abonne/SelectionsBoard.php
index 7073a617bbd5f8f835351673e38291a3d6f611fc..c5399bbc8c306caf9cedaac7f8ae678cb5afa98b 100644
--- a/library/templates/Intonation/View/Abonne/SelectionsBoard.php
+++ b/library/templates/Intonation/View/Abonne/SelectionsBoard.php
@@ -21,19 +21,11 @@
 
 
 class Intonation_View_Abonne_SelectionsBoard extends Intonation_View_Abonne {
-  public function abonne_SelectionsBoard($user) {
-    $html = $this->abonne($user);
-    $this->view->titre = $this->_('%s : Mes sélections',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'user_selections';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('user_selections' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+
+  public function abonne_SelectionsBoard($user) {
+    return $this->_renderSection($user);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Abstract/Carousel.php b/library/templates/Intonation/View/Abstract/Carousel.php
index e1824d57feae23724bb82a0fcf513f8d90ff7880..be4d79f82385f46ed832f97bf2e59fa8f69be313 100644
--- a/library/templates/Intonation/View/Abstract/Carousel.php
+++ b/library/templates/Intonation/View/Abstract/Carousel.php
@@ -85,7 +85,7 @@ abstract class Intonation_View_Abstract_Carousel extends ZendAfi_View_Helper_Bas
                        ['href' => '#' . $id,
                         'data-slide' => 'prev',
                         'role' => 'button',
-                        'class' => 'carousel-control-prev text-dark px-3'])
+                        'class' => 'carousel_control carousel-control-prev px-3'])
 
       . $this->_tag('a',
                     Class_Template::current()->getIco($this->view, 'next', 'utils', ['class' => 'ico_xl'])
@@ -93,7 +93,7 @@ abstract class Intonation_View_Abstract_Carousel extends ZendAfi_View_Helper_Bas
                     ['href' => '#' . $id,
                      'data-slide' => 'next',
                      'role' => 'button',
-                     'class' => 'carousel-control-next text-dark px-3']);
+                     'class' => 'carousel_control carousel-control-next px-3']);
   }
 
 
diff --git a/library/templates/Intonation/View/Author/Biography.php b/library/templates/Intonation/View/Author/Biography.php
index 3d09dd76fc30abda67989be92d1478de93bceda9..c978110a7cc99bde12701813807e892c79caee21 100644
--- a/library/templates/Intonation/View/Author/Biography.php
+++ b/library/templates/Intonation/View/Author/Biography.php
@@ -21,19 +21,10 @@
 
 
 class Intonation_View_Author_Biography extends Intonation_View_RenderAuthorDescription {
-  public function author_Biography($author) {
-    $html = $this->renderAuthorDescription(new Class_CodifAuteur_Description($author));
-    $this->view->titre = $this->_('%s : Biographie',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'author_biography';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('author_biography' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function author_Biography($author) {
+    return $this->_renderSection($author);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Author/Collaborations.php b/library/templates/Intonation/View/Author/Collaborations.php
index 03da75ed68e5ca38fd4cfc8f855d5941eb511780..20fdba40f493b8efce389a8bee4a59a062ed1a86 100644
--- a/library/templates/Intonation/View/Author/Collaborations.php
+++ b/library/templates/Intonation/View/Author/Collaborations.php
@@ -21,19 +21,10 @@
 
 
 class Intonation_View_Author_Collaborations extends Intonation_View_RenderAuthorDescription {
-  public function author_Collaborations($author) {
-    $html = $this->renderAuthorDescription(new Class_CodifAuteur_Description($author));
-    $this->view->titre = $this->_('%s : Collaborateurs',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'author_collaborations';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('author_collaborations' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function author_Collaborations($author) {
+    return $this->_renderSection($author);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Author/Interviews.php b/library/templates/Intonation/View/Author/Interviews.php
index f11f12540880ef94ae43e105d9f2d7b62e5e442b..c85a749a2094409a2d171eaac24bdcd396420903 100644
--- a/library/templates/Intonation/View/Author/Interviews.php
+++ b/library/templates/Intonation/View/Author/Interviews.php
@@ -21,19 +21,10 @@
 
 
 class Intonation_View_Author_Interviews extends Intonation_View_RenderAuthorDescription {
-  public function author_Interviews($author) {
-    $html = $this->renderAuthorDescription(new Class_CodifAuteur_Description($author));
-    $this->view->titre = $this->_('%s : Interviews',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'author_interviews';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('author_interviews' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function author_Interviews($author) {
+    return $this->_renderSection($author);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Author/Records.php b/library/templates/Intonation/View/Author/Records.php
index 3fad2c82a2d532e391b482cd0cbd63ecfc91d097..50345f63a7e99000bb9adb26885eee774b865887 100644
--- a/library/templates/Intonation/View/Author/Records.php
+++ b/library/templates/Intonation/View/Author/Records.php
@@ -21,19 +21,10 @@
 
 
 class Intonation_View_Author_Records extends Intonation_View_RenderAuthorDescription {
-  public function author_Records($author) {
-    $html = $this->renderAuthorDescription(new Class_CodifAuteur_Description($author));
-    $this->view->titre = $this->_('%s : Documents',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'author_records';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('author_records' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function author_Records($author) {
+    return $this->_renderSection($author);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Author/RenderCollaborations.php b/library/templates/Intonation/View/Author/RenderCollaborations.php
index 20f227453597a162747cc9c4bd18987172b4b2dc..ce2c521d3b2cc62210814a7d28a40fdb9ba29382 100644
--- a/library/templates/Intonation/View/Author/RenderCollaborations.php
+++ b/library/templates/Intonation/View/Author/RenderCollaborations.php
@@ -26,11 +26,11 @@ class Intonation_View_Author_RenderCollaborations extends ZendAfi_View_Helper_Ba
       return $this->_renderCollaboration($author, $collaboration);
     };
 
-
-    return $this->_tag('h3', $this->_('Auteurs associés'))
-      . $this->view->renderMultipleCarousel(new Storm_Collection($author->getAssociatedAuthors()),
+    return ($content = $this->view->renderMultipleCarousel(new Storm_Collection($author->getAssociatedAuthors()),
                                             $callback,
-                                            20);
+                                                           20))
+      ? $this->_tag('h3', $this->_('Auteurs associés')) . $content
+      : '';
   }
 
 
diff --git a/library/templates/Intonation/View/Author/YoutubeChan.php b/library/templates/Intonation/View/Author/YoutubeChan.php
index 14bc8d7a38e62bb9c8eed27f640443ce02f17400..3eb1739e1c4fd21b76dab3ca62fcefd464aa7e74 100644
--- a/library/templates/Intonation/View/Author/YoutubeChan.php
+++ b/library/templates/Intonation/View/Author/YoutubeChan.php
@@ -21,19 +21,10 @@
 
 
 class Intonation_View_Author_YoutubeChan extends Intonation_View_RenderAuthorDescription {
-  public function author_YoutubeChan($author) {
-    $html = $this->renderAuthorDescription(new Class_CodifAuteur_Description($author));
-    $this->view->titre = $this->_('%s : Chaine YouTube',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'author_youtube_chan';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('author_youtube_chan' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function author_YoutubeChan($author) {
+    return $this->_renderSection($author);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/CardifyWithOverlay.php b/library/templates/Intonation/View/CardifyWithOverlay.php
index b82fb01eb554091eabebf6789d31750d4585684f..de7030ec15b70ca7831214438774f62d29d5ba3c 100644
--- a/library/templates/Intonation/View/CardifyWithOverlay.php
+++ b/library/templates/Intonation/View/CardifyWithOverlay.php
@@ -38,10 +38,8 @@ class Intonation_View_CardifyWithOverlay extends ZendAfi_View_Helper_BaseHelper
     $content = [$title];
 
     if ($author_name = $element->getSecondaryTitle())
-      $content [] = $this->_tag('div',
-                                $element->getSecondaryIco()
-                                . $author_name,
-                                ['class' => 'card-subtitle']);
+      $content [] = $this->view->div(['class' => 'card-subtitle'],
+                                     $element->getSecondaryIco() . $this->view->div(['class' => 'd-inline'], $author_name));
 
     $doc_type = Class_Template::current()
       ->getIco($this->view,
diff --git a/library/templates/Intonation/View/FonctionsAdmin.php b/library/templates/Intonation/View/FonctionsAdmin.php
index 8474b2b21a0754662dd833f6782e73145f67225e..52c1ae6afdc6421b11b6e4197c0f6cc9f6f9ae01 100644
--- a/library/templates/Intonation/View/FonctionsAdmin.php
+++ b/library/templates/Intonation/View/FonctionsAdmin.php
@@ -21,29 +21,34 @@
 
 
 class Intonation_View_FonctionsAdmin extends ZendAfi_View_Helper_FonctionsAdmin {
-  public function fonctionsAdmin($id_module = 0, $type_module = false, $division = null, $extended_actions = []) {
-    if (! Class_Users::isCurrentUserCanAccesBackend())
-      return '';
 
-    return parent::fonctionsAdmin($id_module, $type_module, $division, $extended_actions);
+  public function fonctionsAdmin($id_module = 0, $type_module = false, $division = null, $extended_actions = []) {
+    return Class_Users::isCurrentUserCanAccesBackend()
+      ? parent::fonctionsAdmin($id_module, $type_module, $division, $extended_actions)
+      : '';
   }
 
 
-  protected function _properties($url_params) {
+  protected function getPopupUrlParams()  {
     $id =
       implode('_',
               array_filter([$this->view->_current_module['controller'],
                             $this->view->_current_module['action'],
                             $this->view->_current_module['action2']]));
 
+    return ['module' => 'admin',
+            'controller' => 'widget',
+            'action' => 'edit-action',
+            'id' => $id,
+            'id_profil' => $this->id_profil];
+  }
+
+
+  protected function _properties($url_params) {
     return $this->_renderActionLink('box_configuration',
                                     $this->_('Modifier la configuration de %s %s ',
                                              $this->view->_current_module['controller'],
                                              $this->view->_current_module['action']),
-                                    $this->view->url(array_filter(['module' => 'admin',
-                                                                   'controller' => 'widget',
-                                                                   'action' => 'edit-action',
-                                                                   'id' => $id,
-                                                                   'id_profil' => $this->id_profil]), null, true));
+                                    $this->view->url($url_params), null, true);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Jumbotron.php b/library/templates/Intonation/View/Jumbotron.php
index f81937f4ccaa46da397116c4504a9028e9d70a30..04108f036f80ce72a1b670dcad2cf02bc538615e 100644
--- a/library/templates/Intonation/View/Jumbotron.php
+++ b/library/templates/Intonation/View/Jumbotron.php
@@ -147,7 +147,7 @@ class Intonation_View_Jumbotron extends ZendAfi_View_Helper_BaseHelper {
   protected function _renderNavItem($item) {
     $id = $item->getModel()->getId();
 
-    $params = ['title' => $item->getNavTitle(),
+    $params = ['title' => $item->getDBNavTitle(),
                'class' => 'jumbotron_nav_link nav-link ' . $item->getClass() . ' ' . $item->getActiveClass()];
 
     if ($item->isAjax() || (!$item->getContent()))
@@ -157,7 +157,7 @@ class Intonation_View_Jumbotron extends ZendAfi_View_Helper_BaseHelper {
       $this->_tag('li',
                   $this->view->tagAnchor(array_merge($item->getNavUrl(),
                                                      ['id' => $id]),
-                                         Class_Template::current()->getIco($this->view, $item->getNavIco(), 'library'),
+                                         Class_Template::current()->getIco($this->view, $item->getDBNavIco()). $this->view->div(['class' => 'button_text d-none'], $item->getDBTitle()),
                                          $params),
                   ['class' => 'nav-item']);
       }
@@ -204,8 +204,8 @@ class Intonation_View_Jumbotron extends ZendAfi_View_Helper_BaseHelper {
     return
       $this->_div(['class' => $classes],
                   $this->_tag('h2',
-                              Class_Template::current()->getIco($this->view, $element->getNavIco(), 'library')
-                              . $this->view->tag('span', $element->getTitle()),
+                              Class_Template::current()->getIco($this->view, $element->getDBNavIco())
+                              . $this->view->tag('span', $element->getDBTitle()),
                               ['class' => 'jumbotron_section_title'])
                   . $element->getContent());
   }
diff --git a/library/templates/Intonation/View/Jumbotron/Abstract.php b/library/templates/Intonation/View/Jumbotron/Abstract.php
index e43174d84d8ba57cfe8004c0fab0300e47990617..d1257d1ce4915ab567ec7090990d791ac4e7f9d5 100644
--- a/library/templates/Intonation/View/Jumbotron/Abstract.php
+++ b/library/templates/Intonation/View/Jumbotron/Abstract.php
@@ -22,6 +22,11 @@
 
 abstract class Intonation_View_Jumbotron_Abstract extends ZendAfi_View_Helper_BaseHelper {
 
+  protected
+    $_show_current_section,
+    $_current_section;
+
+
   protected function _core($model) {
     $wrapped = $this->_getWrappedInstance()
       ->setView($this->view)
@@ -42,11 +47,27 @@ abstract class Intonation_View_Jumbotron_Abstract extends ZendAfi_View_Helper_Ba
   }
 
 
+  protected function _renderSection($model) {
+    return $this->_addPageTitleToHtml($this->_core($model));
+  }
+
+
   protected function _showSections($sections) {
-    $sections[0]->beActive();
+    if ( ! $this->_show_current_section) {
+      $sections[0]->beActive();
+
+      foreach($sections as $section)
+        $section
+        ->beVisible();
+
+      return;
+    }
+
     foreach($sections as $section)
-      $section
-      ->beVisible();
+      if ($this->_show_current_section == $section->getClass())
+        return $this->_current_section = $section
+          ->beActive()
+          ->beVisible();
   }
 
 
@@ -58,6 +79,14 @@ abstract class Intonation_View_Jumbotron_Abstract extends ZendAfi_View_Helper_Ba
   }
 
 
+  protected function _addPageTitleToHtml($html) {
+    $this->view->titre = $this->_('%s / %s',
+                                  $this->view->titre,
+                                  $this->_current_section->getDBTitle());
+    return $html;
+  }
+
+
   abstract protected function _getWrappedInstance();
 
   abstract protected function _getRichContentInstance();
diff --git a/library/templates/Intonation/View/Library/Agenda.php b/library/templates/Intonation/View/Library/Agenda.php
index fc33093f077eabfeb8a5edb194bc802d8f69f46e..875891ce69f2ab041e661ce75dd737b702731169 100644
--- a/library/templates/Intonation/View/Library/Agenda.php
+++ b/library/templates/Intonation/View/Library/Agenda.php
@@ -22,26 +22,10 @@
 
 class Intonation_View_Library_Agenda extends Intonation_View_Library {
 
-  public function library_Agenda($library) {
-    $this->view->library = $library;
-    $html = $this->library($library);
-    $this->view->titre = $this->_('%s : l\'agenda', $this->view->titre);
-    return $html;
-  }
-
-
-  protected function _showSections($sections) {}
+  protected $_show_current_section = 'library_agenda';
 
 
-  protected function _hookOn($rich_content) {
-    $sections = $rich_content->getSections();
-
-    $sections [5] = (new Intonation_Library_View_Wrapper_Library_RichContent_Agenda)
-      ->setModel($this->view->library)
-      ->setView($this->view)
-      ->beActive()
-      ->beVisible();
-
-    $rich_content->setSections($sections);
+  public function library_Agenda($library) {
+    return $this->_renderSection($library);
   }
 }
diff --git a/library/templates/Intonation/View/Library/Details.php b/library/templates/Intonation/View/Library/Details.php
index e86bf2205da843822445ffa268b32ed218fd8f89..c5264ce8085c7c1335f5ffd77bc5ca75ae4c0fed 100644
--- a/library/templates/Intonation/View/Library/Details.php
+++ b/library/templates/Intonation/View/Library/Details.php
@@ -21,26 +21,11 @@
 
 
 class Intonation_View_Library_Details extends Intonation_View_Library {
-  public function library_Details($library) {
-    $this->view->library = $library;
-    $html = $this->library($library);
-    $this->view->titre = $this->_('%s : informations', $this->view->titre);
-    return $html;
-  }
-
 
-  protected function _showSections($sections) {}
+  protected $_show_current_section = 'library_details';
 
 
-  protected function _hookOn($rich_content) {
-    $sections = $rich_content->getSections();
-
-    $sections [2] = (new Intonation_Library_View_Wrapper_Library_RichContent_Details)
-      ->setModel($this->view->library)
-      ->setView($this->view)
-      ->beActive()
-      ->beVisible();
-
-    $rich_content->setSections($sections);
+  public function library_Details($library) {
+    return $this->_renderSection($library);
   }
 }
diff --git a/library/templates/Intonation/View/Library/Map.php b/library/templates/Intonation/View/Library/Map.php
index ea952313c256101a481c37098e8d9a9907b46a38..b92449b2513ec836fca222f4d91cf14b8fdaf40f 100644
--- a/library/templates/Intonation/View/Library/Map.php
+++ b/library/templates/Intonation/View/Library/Map.php
@@ -21,26 +21,11 @@
 
 
 class Intonation_View_Library_Map extends Intonation_View_Library {
-  public function library_Map($library) {
-    $this->view->library = $library;
-    $html = $this->library($library);
-    $this->view->titre = $this->_('%s : carte', $this->view->titre);
-    return $html;
-  }
-
 
-  protected function _showSections($sections) {}
+  protected $_show_current_section = 'library_map';
 
 
-  protected function _hookOn($rich_content) {
-    $sections = $rich_content->getSections();
-
-    $sections [3] = (new Intonation_Library_View_Wrapper_Library_RichContent_Map)
-      ->setModel($this->view->library)
-      ->setView($this->view)
-      ->beActive()
-      ->beVisible();
-
-    $rich_content->setSections($sections);
+  public function library_Map($library) {
+    return $this->_renderSection($library);
   }
 }
diff --git a/library/templates/Intonation/View/Library/Openings.php b/library/templates/Intonation/View/Library/Openings.php
index c886c8c284dee36c82ca5dbf518303590ea3e23d..e54bc6009f770efa4907a0c36300133f6a6b5bbc 100644
--- a/library/templates/Intonation/View/Library/Openings.php
+++ b/library/templates/Intonation/View/Library/Openings.php
@@ -21,26 +21,11 @@
 
 
 class Intonation_View_Library_Openings extends Intonation_View_Library {
-  public function library_Openings($library) {
-    $this->view->library = $library;
-    $html = $this->library($library);
-    $this->view->titre = $this->_('%s : ouvertures', $this->view->titre);
-    return $html;
-  }
-
 
-  protected function _showSections($sections) {}
+  protected $_show_current_section = 'library_openings';
 
 
-  protected function _hookOn($rich_content) {
-    $sections = $rich_content->getSections();
-
-    $sections [1] = (new Intonation_Library_View_Wrapper_Library_RichContent_Openings)
-      ->setModel($this->view->library)
-      ->setView($this->view)
-      ->beActive()
-      ->beVisible();
-
-    $rich_content->setSections($sections);
+  public function library_Openings($library) {
+    return $this->_renderSection($library);
   }
 }
diff --git a/library/templates/Intonation/View/Library/ProArticles.php b/library/templates/Intonation/View/Library/ProArticles.php
index a589eeaf9b9bd2504bececb932dcf2521246d6a4..00f7a1f8ddbae17aa8a6277af9ccbe56b452f6e8 100644
--- a/library/templates/Intonation/View/Library/ProArticles.php
+++ b/library/templates/Intonation/View/Library/ProArticles.php
@@ -42,7 +42,7 @@ class Intonation_View_Library_ProArticles extends Intonation_View_Library {
   protected function _hookOn($rich_content) {
     $sections = $rich_content->getSections();
 
-    $sections [4] = (new Intonation_Library_View_Wrapper_Library_RichContent_ProArticles)
+    $sections [5] = (new Intonation_Library_View_Wrapper_Library_RichContent_ProArticles)
       ->setModel($this->view->library)
       ->setView($this->view)
       ->setPro($this->_pro)
diff --git a/library/templates/Intonation/View/Library/ProReviews.php b/library/templates/Intonation/View/Library/ProReviews.php
index 6b6c7010dc0deaa3866ac69ea5ccad672c5882fc..987cad55c08d7557e2e3a354e0c51f3faf14d1fd 100644
--- a/library/templates/Intonation/View/Library/ProReviews.php
+++ b/library/templates/Intonation/View/Library/ProReviews.php
@@ -42,7 +42,7 @@ class Intonation_View_Library_ProReviews extends Intonation_View_Library {
   protected function _hookOn($rich_content) {
     $sections = $rich_content->getSections();
 
-    $sections [4] = (new Intonation_Library_View_Wrapper_Library_RichContent_ProReviews)
+    $sections [5] = (new Intonation_Library_View_Wrapper_Library_RichContent_ProReviews)
       ->setModel($this->view->library)
       ->setView($this->view)
       ->setPro($this->_pro)
diff --git a/library/templates/Intonation/View/Library/SelectionsPro.php b/library/templates/Intonation/View/Library/SelectionsPro.php
index 21951d8950026d07cfa92cbff70ee7bd9fda48df..b927d4ff8cb4d2f3a93daac7985a753c83ac3ef1 100644
--- a/library/templates/Intonation/View/Library/SelectionsPro.php
+++ b/library/templates/Intonation/View/Library/SelectionsPro.php
@@ -42,7 +42,7 @@ class Intonation_View_Library_SelectionsPro extends Intonation_View_Library {
   protected function _hookOn($rich_content) {
     $sections = $rich_content->getSections();
 
-    $sections [4] = (new Intonation_Library_View_Wrapper_Library_RichContent_SelectionsPro)
+    $sections [5] = (new Intonation_Library_View_Wrapper_Library_RichContent_SelectionsPro)
       ->setModel($this->view->library)
       ->setView($this->view)
       ->setPro($this->_pro)
diff --git a/library/templates/Intonation/View/Library/Team.php b/library/templates/Intonation/View/Library/Team.php
index 971475d46bf22886b9f1c21bf8688962e4b1b0a4..2ed68e13d297bb3915590445901ad5baa851422c 100644
--- a/library/templates/Intonation/View/Library/Team.php
+++ b/library/templates/Intonation/View/Library/Team.php
@@ -21,26 +21,11 @@
 
 
 class Intonation_View_Library_Team extends Intonation_View_Library {
-  public function library_Team($library) {
-    $this->view->library = $library;
-    $html = $this->library($library);
-    $this->view->titre = $this->_('%s : l\'équipe', $this->view->titre);
-    return $html;
-  }
-
 
-  protected function _showSections($sections) {}
+  protected $_show_current_section = 'library_team';
 
 
-  protected function _hookOn($rich_content) {
-    $sections = $rich_content->getSections();
-
-    $sections [4] = (new Intonation_Library_View_Wrapper_Library_RichContent_Team)
-      ->setModel($this->view->library)
-      ->setView($this->view)
-      ->beActive()
-      ->beVisible();
-
-    $rich_content->setSections($sections);
+  public function library_Team($library) {
+    return $this->_renderSection($library);
   }
 }
diff --git a/library/templates/Intonation/View/Opac.php b/library/templates/Intonation/View/Opac.php
index a7e9353efcdca5dd542eb7f8841de98e3aa8ad04..62ed3797d1d5c78709396ec9484558dcffddfb5a 100644
--- a/library/templates/Intonation/View/Opac.php
+++ b/library/templates/Intonation/View/Opac.php
@@ -135,7 +135,8 @@ class Intonation_View_Opac extends ZendAfi_View_Helper_BaseHelper {
       $head_scripts->addOPACScript('subModal')
                    ->addAdminScripts(['onload_utils', 'global'])
                    ->showNotifications();
-      $script_loader->addJQueryReady('initializePopups();setupAnchorsTarget();');
+      $script_loader
+        ->addJQueryReady('initializePopups();setupAnchorsTarget();');
     }
 
     if($this->_template->getCoreCss())
diff --git a/library/templates/Intonation/View/RenderRecord/Author.php b/library/templates/Intonation/View/RenderRecord/Author.php
index d6bc1417916913cb3b1f49a5967f37ccd3c28c12..77c18115347b9d116148cdb69afc445a9f26078d 100644
--- a/library/templates/Intonation/View/RenderRecord/Author.php
+++ b/library/templates/Intonation/View/RenderRecord/Author.php
@@ -21,21 +21,11 @@
 
 
 class Intonation_View_RenderRecord_Author extends Intonation_View_RenderRecord {
-  public function RenderRecord_Author($record) {
-    $html = $this->renderRecord($record);
-    $this->view->titre = $this->_('%s : Auteur principal : %s',
-                                  $this->view->titre,
-                                  $record->getAuteurPrincipal());
 
-    return $html;
-  }
+  protected $_show_current_section = 'document_author';
 
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('document_author' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function RenderRecord_Author($record) {
+    return $this->_renderSection($record);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/RenderRecord/Description.php b/library/templates/Intonation/View/RenderRecord/Description.php
index d03d98abe8606c9c0b397f4a37cfb00fc50fb525..842f3d5cbc1132b8424842ae7acd196c1626fe92 100644
--- a/library/templates/Intonation/View/RenderRecord/Description.php
+++ b/library/templates/Intonation/View/RenderRecord/Description.php
@@ -21,19 +21,11 @@
 
 
 class Intonation_View_RenderRecord_Description extends Intonation_View_RenderRecord {
-  public function RenderRecord_Description($record) {
-    $html = $this->renderRecord($record);
-    $this->view->titre = $this->_('%s : Description',
-                                  $this->view->titre);
-    return $html;
-  }
 
+  protected $_show_current_section = 'description';
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('description' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+
+  public function RenderRecord_Description($record) {
+    return $this->_renderSection($record);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/RenderRecord/Items.php b/library/templates/Intonation/View/RenderRecord/Items.php
index f51478ea9bc943a231a33f4f8fb5465fe59c2a47..e25a7cb188cfb81b48fd6ac10d439d7974f9e75c 100644
--- a/library/templates/Intonation/View/RenderRecord/Items.php
+++ b/library/templates/Intonation/View/RenderRecord/Items.php
@@ -21,19 +21,11 @@
 
 
 class Intonation_View_RenderRecord_Items extends Intonation_View_RenderRecord {
-  public function renderRecord_Items($record) {
-    $html = $this->renderRecord($record);
-    $this->view->titre = $this->_('%s : Exemplaires',
-                                  $this->view->titre);
-    return $html;
-  }
+
+  protected $_show_current_section = 'document_items';
 
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('document_items' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function RenderRecord_Items($record) {
+    return $this->_renderSection($record);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/RenderRecord/Media.php b/library/templates/Intonation/View/RenderRecord/Media.php
index d76c6d46c25f2f26b2b3c1fcfdc48d86ffdbe6cb..d0cf4c856f3a1e4562cc27d27bff9e4161ee3e60 100644
--- a/library/templates/Intonation/View/RenderRecord/Media.php
+++ b/library/templates/Intonation/View/RenderRecord/Media.php
@@ -21,19 +21,11 @@
 
 
 class Intonation_View_RenderRecord_Media extends Intonation_View_RenderRecord {
-  public function RenderRecord_Media($record) {
-    $html = $this->renderRecord($record);
-    $this->view->titre = $this->_('%s : Médias', $this->view->titre);
 
-    return $html;
-  }
+  protected $_show_current_section = 'document_media';
 
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('document_media' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function RenderRecord_Media($record) {
+    return $this->_renderSection($record);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/RenderRecord/Related.php b/library/templates/Intonation/View/RenderRecord/Related.php
index 7a5c99bdd237b12c799a265443a8f90444ae5e7b..8160f36f6f9c65620456423ca22a2a0cbe81282a 100644
--- a/library/templates/Intonation/View/RenderRecord/Related.php
+++ b/library/templates/Intonation/View/RenderRecord/Related.php
@@ -22,19 +22,10 @@
 
 class Intonation_View_RenderRecord_Related extends Intonation_View_RenderRecord {
 
-  public function RenderRecord_Related($record) {
-    $html = $this->renderRecord($record);
-    $this->view->titre = $this->_('%s : Voir aussi', $this->view->titre);
-
-    return $html;
-  }
+  protected $_show_current_section = 'related';
 
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('related' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function RenderRecord_Related($record) {
+    return $this->_renderSection($record);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/RenderRecord/Reviews.php b/library/templates/Intonation/View/RenderRecord/Reviews.php
index b974a4d2a5d21e631496ac2bcae7d9e2824dd9af..6d00a56c6f560657e4bda65306490189963d6bc9 100644
--- a/library/templates/Intonation/View/RenderRecord/Reviews.php
+++ b/library/templates/Intonation/View/RenderRecord/Reviews.php
@@ -22,19 +22,10 @@
 
 class Intonation_View_RenderRecord_Reviews extends Intonation_View_RenderRecord {
 
-  public function RenderRecord_Reviews($record) {
-    $html = $this->renderRecord($record);
-    $this->view->titre = $this->_('%s : Avis', $this->view->titre);
-
-    return $html;
-  }
+  protected $_show_current_section = 'reviews';
 
 
-  protected function _showSections($sections) {
-    foreach($sections as $section)
-      if ('reviews' == $section->getClass())
-        return $section
-          ->beActive()
-          ->beVisible();
+  public function RenderRecord_Reviews($record) {
+    return $this->_renderSection($record);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/RenderWall.php b/library/templates/Intonation/View/RenderWall.php
index 5a0bad18cf73373ad185a2e65320d13fb8305612..d5dcdfabfa8dd2731b8646bef0df118d7d96c2f4 100644
--- a/library/templates/Intonation/View/RenderWall.php
+++ b/library/templates/Intonation/View/RenderWall.php
@@ -22,16 +22,26 @@
 
 class Intonation_View_RenderWall extends ZendAfi_View_Helper_BaseHelper {
   public function renderWall($collection, $callback) {
+    $id = uniqid();
+
+    Class_ScriptLoader::getInstance()
+      ->addScripts([Class_Url::absolute('/library/templates/Intonation/Assets/js/masonry.js')])
+      ->addScripts([Class_Url::absolute('/library/templates/Intonation/Assets/js/imagesloaded4.1.4.min.js')])
+      ->addJQueryReady(sprintf('$("#%s").masonry();', $id));
+
     $html = array_filter($collection
                          ->injectInto([], function($html, $element) use ($callback)
                                       {
-                                        $html [] = $callback($element);
+                                        $html [] = $this->view->div(['class' => 'masonry-brick'],
+                                                                    $this->view->div(['class' => 'masonry-content'],
+                                                                                     $callback($element)));
                                         return $html;
                                       }));
 
 
     return $this->_tag('div',
                        implode($html),
-                       ['class' => 'card-columns']);
+                       ['class' => 'masonry',
+                        'id' => $id]);
   }
 }
\ No newline at end of file
diff --git a/library/templates/Intonation/View/Search/Result.php b/library/templates/Intonation/View/Search/Result.php
index ba7a69255fdac013e8b54e42279c90b10e058412..515f72d0ef105e24247aa7415c022e2a077c96e3 100644
--- a/library/templates/Intonation/View/Search/Result.php
+++ b/library/templates/Intonation/View/Search/Result.php
@@ -43,9 +43,12 @@ class Intonation_View_Search_Result extends ZendAfi_View_Helper_BaseHelper {
                                   return $this->view->cardifyHorizontal($wrapped);
                                 });
 
-    $facets = $this->view->renderExpandable($this->view->search_Facets($search->fetchFacetsAndTags($search->getSettings())['facettes'],
-                                                                       $search->getSettings(),
-                                                                       $search->getCriteresRecherche()));
+    $facets_column_content = $this->view->grid(implode([$this->view->Search_Suggests($search),
+                                                        $this->view->search_Facets($search->fetchFacetsAndTags($search->getSettings())['facettes'],
+                                                                                   $search->getSettings(),
+                                                                                   $search->getCriteresRecherche())]));
+
+    $facets = $this->view->renderExpandable($facets_column_content);
 
     $criteria = $search->getCriteresRecherche();
 
diff --git a/library/templates/Intonation/View/Search/Suggests.php b/library/templates/Intonation/View/Search/Suggests.php
new file mode 100644
index 0000000000000000000000000000000000000000..6ef4dffc2022152836f700d119a461b23d636aaa
--- /dev/null
+++ b/library/templates/Intonation/View/Search/Suggests.php
@@ -0,0 +1,47 @@
+<?php
+/**
+ * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class Intonation_View_Search_Suggests extends ZendAfi_View_Helper_Suggests {
+  public function search_Suggests($search) {
+    return $this->suggests($search);
+  }
+
+
+  protected function _renderSuggests($links) {
+    $html = [$this->view->div(['class' => 'col-12'],
+                              $this->view->tag('b',
+                                               $this->_('Suggestions'))),
+             $this->view->div(['class' => 'col-12'],
+                              $this->_tag('ul',
+                                          implode($links),
+                                          ['class' => 'list-group border-0 mb-2']))];
+
+    return $this->view->grid(implode($html));
+  }
+
+
+  protected function _renderSuggestHTML($field) {
+    return $this->_tag('li',
+                       $field->renderOn($this->view, ['class' => 'd-block']),
+                       ['class' => 'list-group-item border-0 py-1 px-1 my-1']);
+  }
+}
diff --git a/library/templates/Muscle/Assets/css/muscle.css b/library/templates/Muscle/Assets/css/muscle.css
new file mode 100644
index 0000000000000000000000000000000000000000..8e83c17548d91c98d5eabea03ef326dba5a04ab3
--- /dev/null
+++ b/library/templates/Muscle/Assets/css/muscle.css
@@ -0,0 +1,299 @@
+@import url('https://fonts.googleapis.com/css?family=Roboto:100,400,700');
+
+:root {
+    --muscle-red: #d21f28;
+    --muscle-white: #fff;
+    --muscle-black: #011;
+    --muscle-text-color: #333;
+    --muscle-grey: #aaa;
+    --muscle-badge: #777;
+    --muscle-transparent: transparent;
+    --front-card-background: linear-gradient(to left, rgba(0,0,0,0), #fff, #eee);
+    --front-card-footer-background: linear-gradient(rgba(0, 0, 0, 0), #fff, #eee);
+}
+
+@font-face {
+    font-family: 'phenomena';
+    src: url('../fonts/phenomena-regular-webfont.eot');
+    src: url('../fonts/phenomena-regular-webfont.eot?#iefix') format('embedded-opentype'),
+    url('../fonts/phenomena-regular-webfont.woff2') format('woff2'),
+    url('../fonts/phenomena-regular-webfont.woff') format('woff'),
+    url('../fonts/phenomena-regular-webfont.ttf') format('truetype'),
+    url('../fonts/phenomena-regular-webfont.svg#robotocondensed') format('svg');
+    font-weight: normal;
+    font-style: normal;
+}
+
+body {
+    font-family: 'Roboto';
+    font-size: 16px;
+    background: var(--muscle-white);
+    color: var(--muscle-text-color);
+}
+
+.ui-widget *:not(i) {
+    font-family: 'Roboto';
+    font-size: 16px;
+}
+
+.widget.login .dropdown-toggle,
+.nav nav .nav-link,
+.widget-header,
+h1,
+h2,
+h3 {
+    font-family: 'phenomena';
+    font-size: 2em;
+    font-weight: bold;
+}
+
+header {
+    background: url(../images/banner.jpg);
+    background-position: top 3em center;
+    background-repeat: no-repeat;
+    background-size: contain;
+}
+
+.widget.justify-content-end * {
+    justify-content: end;
+    text-align: right;
+}
+
+.widget.justify-content-start * {
+    justify-content: start;
+    text-align: left;
+}
+
+.widget.justify-content-center * {
+    justify-content: center;
+}
+
+.login .dropdown {
+    display: flex;
+}
+
+.menu_buttons .button_text {
+    display: none !important;
+}
+
+.menu_buttons .nav-link,
+.menu_buttons .nav-link:hover {
+    color: var(--muscle-black) !important;
+}
+
+.login .dropdown-toggle,
+.login .dropdown-menu {
+    background: var(--muscle-red);
+    color: var(--muscle-white);
+}
+
+.ui-state-active,
+.btn:active,
+a:active,
+.btn:focus,
+a:focus,
+.btn:hover,
+a:hover {
+    opacity: 0.8;
+    text-decoration: underline;
+}
+
+.btn-sm,
+col-form-label-sm,
+.form-control-sm {
+    font-size: 1em;
+}
+
+.rech_simple.widget form div {
+    padding: 0;
+    margin: 0;
+}
+
+.rech_simple.widget input,
+.rech_simple.widget button {
+    background-color: var(--muscle-white);
+    line-height: 1em;
+    color: var(--muscle-black);
+    vertical-align: middle;
+    margin: 0;
+    padding: 5px;
+    height: 40px;
+    min-width: 50px;
+    font-size: 1.5em;
+}
+
+.rech_simple .dropdown-menu {
+    left: -33% !important;
+}
+
+.rech_simple.widget button[type='submit'] {
+    background-color: var(--muscle-red);
+    color: var(--muscle-white);
+}
+
+.rech_simple.widget ::placeholder {
+    color: var(--muscle-grey);
+}
+
+.widget.card,
+.widget-header,
+.breadcrumb,
+nav {
+    background: var(--muscle-white);
+}
+
+.nav nav .nav-link {
+    color: var(--muscle-black);
+    background: var(--muscle-transparent);
+    font-size: 1.8em;
+    border-right: 1px solid var(--muscle-black) !important;
+    line-height: 0.8em;
+}
+
+nav .nav-item:last-child .nav-link {
+    border-right: 0px !important;
+}
+
+.widget.nav {
+    margin-top: 4em;
+}
+
+.widget.nav .navbar-toggler {
+    margin-top: -4em;
+}
+
+#site_web_wrapper {
+    box-shadow: var(--muscle-grey) 0px 0px 5px;
+}
+
+body,
+#site_web_wrapper {
+    background: var(--muscle-white);
+}
+
+footer {
+    font-size: 0.875em;
+}
+
+footer .nav-link {
+    color: var(--muscle-red);
+    background: var(--muscle-transparent);
+    border-right: 1px solid var(--muscle-red) !important;
+    line-height: 0.8em;
+    text-align: center;
+}
+
+.nav-item:last-child .nav-link {
+    border-right-width: 0 !important;
+}
+
+.ui-autocomplete,
+.ui-autocomplete *,
+.ui-autocomplete *:hover {
+    border: none !important;
+    background: var(--muscle-white) !important;
+    color: var(--muscle-black) !important;
+}
+
+.widget.login * {
+    color: var(--muscle-white);
+}
+
+.widget.login input {
+    color: var(--muscle-black);
+}
+
+.widget.login form * {
+    text-align: left;
+}
+
+.widget.login .text-secondary {
+    color: var(--muscle-white) !important;
+}
+
+.widget.login .dropdown-toggle {
+    font-size: 20px;
+    margin-right: 0;
+}
+
+.widget.login .btn-primary {
+    background: var(--muscle-black);
+    color: var(--muscle-white) !important;
+    padding: 5px 15px;
+}
+
+.widget.login #login {
+    position: absolute;
+    bottom: 4em;
+    left: 0.875em;
+}
+
+.widget.login a {
+    font-weight: bold;
+}
+
+.widget.login a[href*="/auth/lostpass"] {
+    display: block;
+    margin-top: 4em;
+}
+
+.widget.login form {
+    max-width: 200px;
+}
+
+.widget-footer a.btn-secondary {
+    color: var(--muscle-red) !important;
+    background: var(--muscle-transparent);
+}
+
+.widget-footer {
+    text-align: right;
+}
+
+.badge-group .badge {
+    color: var(--muscle-white) !important;
+    background: var(--muscle-grey) !important;
+}
+
+.badge-group a.badge {
+    background: var(--muscle-badge) !important;
+}
+
+a,
+a:hover {
+    color: var(--muscle-black);
+}
+
+a.text-primary,
+a.text-primary:hover {
+    color: var(--muscle-black) !important;
+    background: var(--muscle-transparent) !important;
+}
+
+.carousel-item .card-footer {
+    margin: 0 1rem;
+}
+
+.widget > .card-footer,
+.card-footer {
+    background: transparent;
+}
+
+.masonry-content > .card > .card-footer {
+    padding: 5px;
+    background: var(--front-card-footer-background);
+}
+
+.list-group-item.active,
+.nav-tabs,
+.border-primary {
+    border-color: var(--muscle-red) !important;
+}
+
+.nav-tabs .nav-item {
+    border-bottom: 1px solid transparent;
+}
+
+.card-footer {
+    border-top: none;
+}
\ No newline at end of file
diff --git a/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.eot b/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.eot
new file mode 100644
index 0000000000000000000000000000000000000000..d5d3a2169d969f71d416347e4bb9ad240597b88e
Binary files /dev/null and b/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.eot differ
diff --git a/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.svg b/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.svg
new file mode 100644
index 0000000000000000000000000000000000000000..4c4a8bcf254faaa93db1c9b77a7b2dd617639783
--- /dev/null
+++ b/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.svg
@@ -0,0 +1,556 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
+<metadata></metadata>
+<defs>
+<font id="phenomenaregular" horiz-adv-x="929" >
+<font-face units-per-em="2048" ascent="1638" descent="-410" />
+<missing-glyph horiz-adv-x="466" />
+<glyph horiz-adv-x="0" />
+<glyph horiz-adv-x="682" />
+<glyph unicode=" "  horiz-adv-x="466" />
+<glyph unicode="&#x09;" horiz-adv-x="466" />
+<glyph unicode="&#xa0;" horiz-adv-x="466" />
+<glyph unicode="!" horiz-adv-x="466" d="M143 70q0 38 26 64t64 26q37 0 64 -26t27 -64q0 -37 -27 -63.5t-64 -26.5q-38 0 -64 26.5t-26 63.5zM172 299v1114q0 9 6 15t15 6h81q9 0 15 -6t6 -15v-1114q0 -20 -21 -20h-81q-21 0 -21 20z" />
+<glyph unicode="&#x22;" horiz-adv-x="434" d="M37 1098l18 315q0 21 23 21h88q10 0 15 -6.5t3 -16.5l-57 -315q-3 -19 -23 -19h-49q-18 0 -18 21zM242 1098l18 315q0 21 23 21h88q10 0 15 -6.5t3 -16.5l-57 -315q-3 -19 -23 -19h-49q-18 0 -18 21z" />
+<glyph unicode="#" horiz-adv-x="1112" d="M33 410l14 59q4 18 23 18h192l100 437h-190q-22 0 -18 22l14 60q4 18 22 18h195l90 391q4 19 23 19h69q21 0 17 -23l-88 -387h262l90 391q4 19 22 19h72q20 0 16 -23l-88 -387h193q10 0 15 -6.5t3 -16.5l-14 -59q-4 -18 -23 -18h-196l-100 -437h194q22 0 16 -22l-14 -59 q-4 -19 -22 -19h-197l-84 -369q-4 -18 -23 -18h-71q-21 0 -17 23l82 364h-262l-84 -369q-4 -18 -22 -18h-70q-20 0 -16 23l82 364h-191q-23 0 -16 23zM373 487h262l100 437h-262z" />
+<glyph unicode="$" horiz-adv-x="831" d="M74 328q0 20 20 20h82q21 0 21 -20q5 -110 63 -172t158 -62q103 0 160 57t57 158q0 71 -30.5 134.5t-79 113.5t-107 98.5t-117.5 99t-107.5 104.5t-79 125.5t-30.5 152.5q0 130 76.5 215t204.5 100v135q0 21 20 21h51q9 0 15 -6t6 -15v-135q125 -14 200.5 -103.5 t81.5 -242.5q0 -21 -20 -21h-82q-9 0 -15 6t-6 15q-9 233 -202 233q-97 0 -152 -53.5t-55 -148.5q0 -67 30.5 -127t79 -108t107 -95.5t117.5 -99t107.5 -107t79 -130.5t30.5 -161q0 -139 -82 -227.5t-219 -99.5v-136q0 -20 -21 -20h-51q-20 0 -20 20v138 q-130 17 -207.5 108.5t-83.5 235.5z" />
+<glyph unicode="%" horiz-adv-x="1159" d="M51 985v285q0 77 51.5 129.5t126.5 52.5q74 0 125.5 -53t51.5 -129v-285q0 -76 -51.5 -128t-125.5 -52q-75 0 -126.5 52t-51.5 128zM53 16l934 1407q14 17 27 17h73q11 0 18 -7t1 -16l-934 -1407q-10 -16 -27 -16h-73q-11 0 -18 6.5t-1 15.5zM152 985q0 -37 21.5 -60.5 t55.5 -23.5q32 0 54 24t22 60v285q0 38 -21.5 62t-54.5 24q-34 0 -55.5 -24t-21.5 -62v-285zM754 162v284q0 77 51.5 130t126.5 53q74 0 125 -53.5t51 -129.5v-284q0 -76 -51 -128t-125 -52q-75 0 -126.5 52t-51.5 128zM854 162q0 -37 22 -60.5t56 -23.5q32 0 54 24t22 60 v284q0 38 -21.5 62t-54.5 24q-34 0 -56 -24t-22 -62v-284z" />
+<glyph unicode="&#x26;" horiz-adv-x="925" d="M100 307v168q0 83 39 153.5t105 108.5q-66 38 -105 108.5t-39 153.5v88q0 101 34 182t110 133t184 52q83 0 148.5 -30.5t106.5 -83.5t63 -120t24 -145q0 -20 -20 -20h-82q-21 0 -21 20q-8 264 -219 264q-58 0 -99.5 -20.5t-63.5 -57t-32 -79.5t-10 -95v-98q0 -82 60 -138 t149 -56h406q20 0 20 -21v-74q0 -20 -20 -20h-88v-625q0 -29 -16.5 -45t-45.5 -16h-260q-139 0 -233.5 90.5t-94.5 222.5zM223 307q0 -85 58 -141.5t147 -56.5h199v571h-195q-92 0 -150.5 -55.5t-58.5 -139.5v-178z" />
+<glyph unicode="'" horiz-adv-x="215" d="M35 1098l18 315q0 21 23 21h88q10 0 15 -6.5t3 -16.5l-57 -315q-3 -19 -23 -19h-49q-18 0 -18 21z" />
+<glyph unicode="(" horiz-adv-x="475" d="M127 88v1260q0 139 81 231t206 100q20 0 20 -20v-74q0 -19 -20 -22q-72 -6 -118 -64.5t-46 -150.5v-1260q0 -92 46 -150.5t118 -66.5q20 -3 20 -23v-73q0 -21 -20 -21q-125 8 -206 101t-81 233z" />
+<glyph unicode=")" horiz-adv-x="475" d="M41 -152q0 20 20 23q72 8 118 66.5t46 150.5v1260q0 92 -46 150.5t-118 64.5q-20 3 -20 22v74q0 20 20 20q125 -8 206 -100t81 -231v-1260q0 -140 -81 -233t-206 -101q-20 0 -20 21v73z" />
+<glyph unicode="*" horiz-adv-x="634" d="M76 1284l14 49q6 22 27 15l153 -52v162q0 9 6 15t15 6h51q20 0 20 -21v-162l156 50q19 6 25 -13l16 -47q6 -19 -14 -26l-156 -50l96 -133q11 -16 -4 -28l-41 -31q-17 -13 -28 4l-97 133l-94 -131q-11 -17 -28 -4l-43 29q-15 12 -5 28l97 133l-154 50q-17 6 -12 24z" />
+<glyph unicode="+" horiz-adv-x="942" d="M102 700v70q0 9 6 15t15 6h293v299q0 20 20 20h70q20 0 20 -20v-299h293q9 0 15 -6t6 -15v-70q0 -20 -21 -20h-293v-299q0 -21 -20 -21h-70q-20 0 -20 21v299h-293q-21 0 -21 20z" />
+<glyph unicode="," horiz-adv-x="208" d="M31 -190l18 315q0 20 23 20h88q22 0 18 -22l-57 -316q-3 -18 -23 -18h-49q-18 0 -18 21z" />
+<glyph unicode="-" horiz-adv-x="581" d="M35 489v74q0 21 20 21h471q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-471q-20 0 -20 20z" />
+<glyph unicode="." horiz-adv-x="249" d="M31 74q0 40 27 67t67 27q39 0 66.5 -27.5t27.5 -66.5q0 -38 -28 -66t-66 -28q-39 0 -66.5 27.5t-27.5 66.5z" />
+<glyph unicode="/" horiz-adv-x="653" d="M8 25l516 1392q6 17 23 17h82q10 0 14.5 -7t1.5 -18l-516 -1393q-5 -16 -23 -16h-81q-10 0 -15 7t-2 18z" />
+<glyph unicode="0" horiz-adv-x="831" d="M102 297v840q0 135 91 226t223 91t222.5 -91t90.5 -226v-840q0 -135 -90.5 -226t-222.5 -91t-223 91t-91 226zM225 297q0 -15 4 -39l324 1022q-53 59 -137 59q-82 0 -136.5 -57.5t-54.5 -144.5v-840zM279 154q57 -60 137 -60q82 0 136 57.5t54 145.5v840q0 25 -2 37z" />
+<glyph unicode="1" horiz-adv-x="481" d="M31 1339v74q0 21 20 21h185q49 0 75.5 -26.5t26.5 -76.5v-1311q0 -20 -21 -20h-81q-21 0 -21 20v1299h-164q-20 0 -20 20z" />
+<glyph unicode="2" horiz-adv-x="770" d="M74 61v41q0 103 27.5 198t71.5 168.5t97 141.5t106.5 130t97.5 121.5t71.5 128.5t27.5 140q0 92 -50 150.5t-138 58.5q-87 0 -137.5 -60t-54.5 -173q0 -9 -6 -15t-15 -6h-78q-20 0 -20 21q6 155 91.5 251.5t219.5 96.5q139 0 224 -93t85 -231q0 -83 -27.5 -161.5 t-71 -143t-96.5 -128.5t-106.5 -128.5t-97 -131.5t-71 -150t-27.5 -172h479q20 0 20 -21v-74q0 -20 -20 -20h-541q-61 0 -61 61z" />
+<glyph unicode="3" horiz-adv-x="786" d="M72 332q0 20 20 20h82q21 0 21 -20q4 -120 53.5 -179t134.5 -59q88 0 138 60.5t50 164.5v228q0 113 -60 178.5t-159 65.5h-76q-20 0 -20 20v20q0 19 10 39l252 449h-405q-21 0 -21 20v76q0 9 6 15t15 6l536 -2q13 0 22 -9t9 -22v-17q0 -20 -10 -38l-246 -455l-4 -8 q132 -17 203 -109.5t71 -228.5v-228q0 -152 -86.5 -245.5t-224.5 -93.5q-134 0 -219.5 93.5t-91.5 258.5z" />
+<glyph unicode="4" horiz-adv-x="813" d="M41 483v21q0 40 10 74l287 839q7 17 24 17h84q11 0 15.5 -6.5t1.5 -16.5l-293 -870h352v483q0 20 21 20h82q20 0 20 -20v-483h98q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-98v-406q0 -20 -20 -20h-82q-21 0 -21 20v406h-420q-61 0 -61 57z" />
+<glyph unicode="5" horiz-adv-x="806" d="M96 332q0 20 21 20h82q20 0 20 -20q4 -118 52.5 -178t136.5 -60q90 0 139 61t49 169v311q0 95 -53.5 154t-139.5 59q-71 0 -118 -43.5t-54 -118.5q-3 -39 -43 -39h-43q-41 0 -41 41v690q0 29 16.5 45.5t45.5 16.5h510q20 0 20 -21v-73q0 -21 -20 -21h-449v-442 q77 80 189 80q128 0 215.5 -93t87.5 -233v-313q0 -155 -85 -249.5t-226 -94.5q-138 0 -222 93t-90 259z" />
+<glyph unicode="6" horiz-adv-x="823" d="M102 299v825q0 144 88.5 237t225.5 93q133 0 220 -90t93 -238q0 -20 -20 -20h-82q-21 0 -21 20q-6 100 -57.5 156.5t-132.5 56.5q-85 0 -138 -59t-53 -154v-270q80 86 201 86q125 0 214 -92t89 -227v-324q0 -136 -91 -227.5t-222 -91.5t-222.5 91.5t-91.5 227.5zM225 299 q0 -88 55.5 -146.5t135.5 -58.5t135 58.5t55 146.5v315q0 94 -54.5 153.5t-135.5 59.5t-136 -59.5t-55 -153.5v-315z" />
+<glyph unicode="7" horiz-adv-x="669" d="M31 1339v74q0 21 20 21h508q51 0 51 -45q0 -37 -8 -68l-319 -1303q-3 -18 -23 -18h-86q-23 0 -16 23l319 1296h-426q-20 0 -20 20z" />
+<glyph unicode="8" horiz-adv-x="839" d="M96 307v154q0 99 43.5 169.5t120.5 108.5q-64 42 -101.5 111t-37.5 151v146q0 131 83.5 219t215.5 88q133 0 216 -88t83 -219v-146q0 -82 -37.5 -151t-101.5 -111q77 -38 120 -108.5t43 -169.5v-154q0 -141 -94 -234t-229 -93t-229.5 93t-94.5 234zM219 307 q0 -91 58.5 -152t142.5 -61t142.5 61t58.5 152v160q0 94 -58 153.5t-143 59.5t-143 -59.5t-58 -153.5v-160zM244 995q0 -85 50 -142.5t126 -57.5t126 57.5t50 142.5v152q0 81 -48.5 136.5t-127.5 55.5t-127.5 -55.5t-48.5 -136.5v-152z" />
+<glyph unicode="9" horiz-adv-x="825" d="M96 307q0 9 6 15t15 6h82q20 0 20 -21q6 -100 58 -156.5t133 -56.5q85 0 137.5 59t52.5 154v271q-80 -86 -201 -86q-125 0 -214 92t-89 227v324q0 136 91.5 227.5t222.5 91.5t222 -91.5t91 -227.5v-826q0 -144 -88 -236.5t-225 -92.5q-133 0 -220.5 89.5t-93.5 237.5z M219 819q0 -94 55 -153.5t136 -59.5t135.5 59.5t54.5 153.5v316q0 88 -55 146t-135 58t-135.5 -58t-55.5 -146v-316z" />
+<glyph unicode=":" horiz-adv-x="299" d="M25 74q0 40 27 67t67 27q39 0 66.5 -27.5t27.5 -66.5q0 -38 -28 -66t-66 -28q-39 0 -66.5 27.5t-27.5 66.5zM25 784q0 40 27 67.5t67 27.5q39 0 66.5 -27.5t27.5 -67.5q0 -38 -28 -66t-66 -28q-39 0 -66.5 27.5t-27.5 66.5z" />
+<glyph unicode=";" horiz-adv-x="270" d="M41 784q0 40 27 67.5t67 27.5q39 0 66.5 -27.5t27.5 -67.5q0 -38 -28 -66t-66 -28q-39 0 -66.5 27.5t-27.5 66.5zM55 -190l19 315q0 20 22 20h88q10 0 15.5 -6.5t3.5 -15.5l-58 -316q-3 -18 -22 -18h-49q-19 0 -19 21z" />
+<glyph unicode="&#x3c;" horiz-adv-x="778" d="M164 684v102q0 14 10 17l506 276q14 7 25.5 0t11.5 -22v-70q0 -13 -10 -16l-431 -236l431 -235q10 -3 10 -17v-69q0 -15 -12 -22.5t-25 -0.5l-506 277q-10 3 -10 16z" />
+<glyph unicode="=" horiz-adv-x="819" d="M41 532v70q0 21 20 21h697q20 0 20 -21v-70q0 -20 -20 -20h-697q-20 0 -20 20zM41 834v69q0 21 20 21h697q20 0 20 -21v-69q0 -21 -20 -21h-697q-20 0 -20 21z" />
+<glyph unicode="&#x3e;" horiz-adv-x="675" d="M61 414v69q0 13 11 17l430 235l-430 236q-11 4 -11 16v70q0 15 11.5 22t25.5 0l506 -276q10 -3 10 -17v-102q0 -13 -10 -16l-506 -277q-13 -7 -25 0.5t-12 22.5z" />
+<glyph unicode="?" horiz-adv-x="655" d="M0 1106q6 158 94 253t223 95q138 0 228 -97.5t90 -248.5q0 -84 -21.5 -154.5t-53 -116.5t-69 -95t-69 -91t-53 -105t-21.5 -136v-111q0 -20 -20 -20h-82q-21 0 -21 20v125q0 69 16 128.5t41 103t55.5 83.5t61.5 78.5t56 79.5t41 95t16 116q0 104 -54.5 167.5t-140.5 63.5 q-84 0 -137 -61t-57 -172q0 -9 -6 -15t-15 -6h-82q-20 0 -20 21zM201 70q0 38 26 64t64 26q37 0 63.5 -26t26.5 -64q0 -37 -26.5 -63.5t-63.5 -26.5q-38 0 -64 26.5t-26 63.5z" />
+<glyph unicode="@" horiz-adv-x="1259" d="M92 217v473q0 189 115.5 302.5t304.5 113.5h111q126 0 202 -76.5t76 -202.5v-426q0 -117 -73 -187.5t-195 -70.5q-131 0 -210 78t-79 209q1 134 77 211.5t202 77.5h168v108q0 77 -46.5 124.5t-121.5 47.5h-111q-140 0 -224.5 -84t-84.5 -225v-473q0 -142 84.5 -228.5 t224.5 -86.5h236q140 0 224.5 86.5t84.5 228.5v803q0 141 -85 227t-224 86h-359q-20 0 -20 21v65q0 21 20 21h359q189 0 304 -115.5t115 -304.5v-803q0 -190 -115 -306t-304 -116h-236q-189 0 -304.5 116t-115.5 306zM455 430q0 -83 49 -131.5t129 -48.5q71 0 114.5 42 t43.5 109v211h-168q-75 0 -120 -47.5t-48 -134.5z" />
+<glyph unicode="A" d="M127 20v1063q0 166 93 267.5t245 101.5t245 -101.5t93 -267.5v-1063q0 -20 -21 -20h-82q-20 0 -20 20v500h-430v-500q0 -20 -21 -20h-82q-20 0 -20 20zM250 635h430v448q0 120 -56.5 187t-158.5 67t-158.5 -67t-56.5 -187v-448z" />
+<glyph unicode="B" horiz-adv-x="878" d="M127 57v1053q0 154 87 248t228 94q147 0 236.5 -94t89.5 -248v-98q0 -103 -46 -177.5t-124 -97.5q94 -29 149.5 -109.5t55.5 -187.5v-100q0 -155 -91.5 -249.5t-242.5 -94.5h-281q-28 0 -44.5 16.5t-16.5 44.5zM250 111h219q100 0 155.5 61t55.5 168v100q0 108 -56 169 t-155 61h-219v-559zM250 784h190q97 0 151 60.5t54 167.5v98q0 107 -53 167t-150 60q-91 0 -141.5 -60t-50.5 -167v-326z" />
+<glyph unicode="C" horiz-adv-x="837" d="M100 332v770q0 158 91.5 255t242.5 97q145 0 237.5 -104.5t96.5 -274.5q0 -20 -20 -20h-82q-21 0 -21 20q-4 126 -60.5 195t-150.5 69q-100 0 -155.5 -62.5t-55.5 -174.5v-770q0 -113 55.5 -175.5t155.5 -62.5q101 0 159.5 73t61.5 202q0 20 21 20h82q20 0 20 -18 q-4 -177 -98.5 -284t-245.5 -107t-242.5 97t-91.5 255z" />
+<glyph unicode="D" horiz-adv-x="915" d="M143 57v1319q0 29 16.5 45.5t45.5 16.5h276q152 0 243 -101t91 -258v-727q0 -155 -92 -255.5t-242 -100.5h-276q-29 0 -45.5 16t-16.5 45zM266 111h215q95 0 153 67.5t58 173.5v727q0 108 -57 176t-154 68h-215v-1212z" />
+<glyph unicode="E" horiz-adv-x="737" d="M100 348v737q0 151 94 252t240 101h213q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-213q-93 0 -152 -68t-59 -170v-301h375q20 0 20 -20v-74q0 -20 -20 -20h-375v-322q0 -102 59 -169.5t152 -67.5h213q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-213q-146 0 -240 100.5t-94 251.5z " />
+<glyph unicode="F" horiz-adv-x="700" d="M127 20v1061q0 151 94 252t240 101h178q20 0 20 -21v-74q0 -20 -20 -20h-178q-93 0 -152 -68t-59 -170v-317h348q20 0 20 -21v-73q0 -21 -20 -21h-348v-629q0 -20 -21 -20h-82q-20 0 -20 20z" />
+<glyph unicode="G" horiz-adv-x="876" d="M100 352v731q0 165 94 268t250 103q148 0 241 -98t99 -250q0 -21 -20 -21h-82q-20 0 -20 21q-6 103 -64.5 168t-153.5 65q-102 0 -161.5 -70t-59.5 -188v-729q0 -116 63 -187t163 -71q99 0 162 68t63 170v317h-193q-20 0 -20 21v73q0 21 20 21h254q29 0 45.5 -16.5 t16.5 -45.5v-370q0 -151 -98 -251.5t-250 -100.5q-154 0 -251.5 104t-97.5 268z" />
+<glyph unicode="H" horiz-adv-x="942" d="M143 20v1393q0 9 6 15t15 6h82q20 0 20 -21v-629h410v629q0 21 20 21h82q9 0 15 -6t6 -15v-1393q0 -20 -21 -20h-82q-20 0 -20 20v652h-410v-652q0 -20 -20 -20h-82q-21 0 -21 20z" />
+<glyph unicode="I" horiz-adv-x="409" d="M143 20v1393q0 9 6 15t15 6h82q20 0 20 -21v-1393q0 -20 -20 -20h-82q-21 0 -21 20z" />
+<glyph unicode="J" horiz-adv-x="825" d="M31 369q0 20 20 20h82q21 0 21 -20q5 -126 60 -200.5t153 -74.5q100 0 154 70.5t54 193.5v1055q0 9 6 15t15 6h82q20 0 20 -21v-1055q0 -173 -87 -275.5t-246 -102.5q-149 0 -238.5 107.5t-95.5 281.5z" />
+<glyph unicode="K" horiz-adv-x="913" d="M143 20v1393q0 9 6 15t15 6h82q20 0 20 -21v-629h209l213 633q7 17 25 17h82q23 0 16 -23l-221 -647q102 -35 158.5 -126.5t56.5 -219.5v-398q0 -20 -21 -20h-82q-20 0 -20 20v398q0 113 -58 182.5t-153 69.5h-205v-650q0 -20 -20 -20h-82q-21 0 -21 20z" />
+<glyph unicode="L" horiz-adv-x="690" d="M127 346v1067q0 21 20 21h82q9 0 15 -6t6 -15v-1067q0 -101 57 -168t148 -67h184q20 0 20 -21v-74q0 -20 -20 -20h-184q-146 0 -237 100t-91 250z" />
+<glyph unicode="M" horiz-adv-x="1400" d="M127 20v1061q0 173 83.5 273t233.5 100q95 0 153 -44t103 -128q45 82 104 127t152 45q149 0 233.5 -100t84.5 -273v-1061q0 -20 -21 -20h-82q-20 0 -20 20v1061q0 125 -50 191.5t-145 66.5q-89 0 -141.5 -67.5t-52.5 -190.5v-1061q0 -20 -21 -20h-82q-20 0 -20 20v1061 q0 122 -54 190t-141 68q-96 0 -145 -66t-49 -192v-1061q0 -20 -21 -20h-82q-20 0 -20 20z" />
+<glyph unicode="N" d="M127 20v1065q0 163 93 266t245 103t245 -103t93 -266v-1065q0 -20 -21 -20h-82q-20 0 -20 20v1065q0 114 -58.5 184t-156.5 70t-156.5 -70t-58.5 -184v-1065q0 -20 -21 -20h-82q-20 0 -20 20z" />
+<glyph unicode="O" horiz-adv-x="897" d="M100 360v713q0 168 97.5 273.5t251.5 105.5q153 0 250.5 -101.5t97.5 -256.5v-754q0 -155 -97.5 -256.5t-250.5 -101.5q-154 0 -251.5 105t-97.5 273zM223 360q0 -120 62.5 -192t163.5 -72q99 0 162 69t63 175v754q0 106 -63 174.5t-162 68.5q-101 0 -163.5 -72 t-62.5 -192v-713z" />
+<glyph unicode="P" horiz-adv-x="858" d="M127 20v1065q0 164 90 266.5t242 102.5t243 -103t91 -266v-221q0 -147 -91.5 -238t-242.5 -91h-209v-515q0 -20 -21 -20h-82q-20 0 -20 20zM250 649h209q96 0 153.5 58.5t57.5 156.5v221q0 115 -57.5 184.5t-153.5 69.5t-152.5 -69.5t-56.5 -184.5v-436z" />
+<glyph unicode="Q" horiz-adv-x="911" d="M100 340v754q0 155 98.5 256.5t252.5 101.5t252 -101.5t98 -256.5v-754q0 -137 -78 -234l82 -81q6 -6 6 -14.5t-6 -14.5l-43 -43q-6 -6 -14.5 -6t-14.5 6l-84 86q-85 -57 -198 -57q-154 0 -252.5 101.5t-98.5 256.5zM225 340q0 -106 63.5 -175t162.5 -69q59 0 112 29 l-92 94q-6 6 -6 14.5t6 14.5l43 43q6 6 14.5 6t14.5 -6l94 -94q39 61 39 143v754q0 106 -63 174.5t-162 68.5t-162.5 -68.5t-63.5 -174.5v-754z" />
+<glyph unicode="R" horiz-adv-x="899" d="M127 20v1065q0 162 93.5 265.5t242.5 103.5t242.5 -103.5t93.5 -265.5v-151q0 -123 -57 -211.5t-150 -126.5l235 -571q4 -10 -0.5 -17.5t-15.5 -7.5h-90q-18 0 -23 16l-221 555h-227v-551q0 -20 -21 -20h-82q-20 0 -20 20zM250 686h211q96 0 155.5 69.5t59.5 178.5v151 q0 114 -59 184t-154 70t-154 -70t-59 -184v-399z" />
+<glyph unicode="S" horiz-adv-x="831" d="M74 369q0 20 20 20h82q21 0 21 -20q5 -135 61 -205t160 -70q107 0 162 54.5t55 160.5q0 71 -30.5 134.5t-79 113.5t-107 98.5t-117.5 99t-107.5 104.5t-79 125.5t-30.5 152.5q0 143 90.5 230t239.5 87q139 0 228 -104t97 -275q0 -20 -20 -20h-82q-21 0 -21 20 q-12 264 -202 264q-101 0 -154 -51t-53 -151q0 -67 30.5 -127t79 -108t107 -95.5t117.5 -99t107.5 -107t79 -130.5t30.5 -161q0 -149 -93 -239t-247 -90q-151 0 -245 107t-99 282z" />
+<glyph unicode="T" horiz-adv-x="716" d="M31 1339v74q0 21 20 21h615q20 0 20 -21v-74q0 -20 -20 -20h-246v-1299q0 -20 -21 -20h-82q-20 0 -20 20v1299h-246q-20 0 -20 20z" />
+<glyph unicode="U" d="M127 348v1065q0 21 20 21h82q9 0 15 -6t6 -15v-1065q0 -114 58.5 -184t156.5 -70t156.5 70t58.5 184v1065q0 21 20 21h82q9 0 15 -6t6 -15v-1065q0 -163 -93 -265.5t-245 -102.5t-245 102.5t-93 265.5z" />
+<glyph unicode="V" horiz-adv-x="786" d="M29 1411q-2 10 3 16.5t15 6.5h82q20 0 23 -19l241 -1280l242 1280q3 19 22 19h82q10 0 15.5 -7t3.5 -16l-262 -1362q-9 -55 -66 -55h-76q-53 0 -65 55z" />
+<glyph unicode="W" horiz-adv-x="1400" d="M127 352v1061q0 21 20 21h82q9 0 15 -6t6 -15v-1061q0 -125 49.5 -191.5t144.5 -66.5q89 0 142 67.5t53 190.5v1061q0 21 20 21h82q9 0 15 -6t6 -15v-1061q0 -122 53.5 -190t140.5 -68q96 0 145.5 66.5t49.5 191.5v1061q0 21 20 21h82q9 0 15 -6t6 -15v-1061 q0 -173 -84 -272.5t-234 -99.5q-95 0 -153 44t-103 128q-45 -82 -104 -127t-152 -45q-149 0 -233 99.5t-84 272.5z" />
+<glyph unicode="X" horiz-adv-x="868" d="M100 20v410q0 206 174 297q-174 91 -174 297v389q0 9 6 15t15 6h82q20 0 20 -21v-389q0 -104 59 -173t152 -69t152 69t59 173v389q0 9 6 15t15 6h82q20 0 20 -21v-389q0 -206 -174 -297q174 -91 174 -297v-410q0 -20 -20 -20h-82q-21 0 -21 20v410q0 104 -59 172t-152 68 t-152 -68t-59 -172v-410q0 -20 -20 -20h-82q-21 0 -21 20z" />
+<glyph unicode="Y" horiz-adv-x="847" d="M90 815v598q0 9 6 15t15 6h82q20 0 20 -21v-598q0 -103 59 -171.5t152 -68.5t152 68.5t59 171.5v598q0 21 20 21h82q9 0 15 -6t6 -15v-598q0 -134 -75 -230t-198 -116v-449q0 -20 -20 -20h-82q-21 0 -21 20v449q-122 20 -197 116t-75 230z" />
+<glyph unicode="Z" horiz-adv-x="813" d="M76 61v41q0 44 14 76l526 1141h-477q-20 0 -20 20v74q0 21 20 21h535q58 0 61 -62l2 -41v-12q0 -33 -14 -64l-530 -1140h526q20 0 20 -21v-74q0 -20 -20 -20h-582q-61 0 -61 61z" />
+<glyph unicode="[" horiz-adv-x="512" d="M133 -184v1802q0 29 16.5 45t45.5 16h225q20 0 20 -20v-74q0 -20 -20 -20h-164v-1696h164q20 0 20 -21v-73q0 -21 -20 -21h-225q-29 0 -45.5 16.5t-16.5 45.5z" />
+<glyph unicode="\" horiz-adv-x="653" d="M8 1409q-3 11 2 18t15 7h81q17 0 23 -17l516 -1392q3 -11 -1.5 -18t-14.5 -7h-82q-18 0 -23 16z" />
+<glyph unicode="]" horiz-adv-x="501" d="M61 -152q0 9 6 15t15 6h164v1696h-164q-21 0 -21 20v74q0 20 21 20h225q29 0 45.5 -16t16.5 -45v-1802q0 -29 -16.5 -45.5t-45.5 -16.5h-225q-9 0 -15 6t-6 15v73z" />
+<glyph unicode="^" horiz-adv-x="606" d="M26.5 973.5q-3.5 6.5 0.5 17.5l211 428q6 15 24 15h100q19 0 25 -15l211 -428q4 -11 0.5 -17.5t-14.5 -6.5h-90q-19 0 -25 14l-156 330l-157 -330q-6 -14 -25 -14h-90q-11 0 -14.5 6.5z" />
+<glyph unicode="_" horiz-adv-x="757" d="M20 -39q0 9 6 15t15 6h676q20 0 20 -21v-72q0 -20 -20 -20h-676q-21 0 -21 20v72z" />
+<glyph unicode="a" horiz-adv-x="796" d="M78 299q0 124 87 209.5t224 85.5h199v133q0 91 -52 148t-141 57q-81 0 -129.5 -51.5t-54.5 -137.5q-3 -20 -21 -20h-75q-21 0 -21 20q8 133 89.5 217t211.5 84q139 0 224.5 -90t85.5 -227v-428q0 -138 -86.5 -227.5t-225.5 -89.5q-141 0 -228 89.5t-87 227.5zM195 299 q0 -92 53 -148.5t145 -56.5q91 0 143 56.5t52 148.5v182h-199q-88 0 -141 -52.5t-53 -129.5z" />
+<glyph unicode="b" horiz-adv-x="831" d="M113 301v1112q0 21 20 21h76q20 0 20 -21v-471q82 102 197 102q139 0 226 -90.5t87 -230.5v-422q0 -140 -87 -230.5t-226 -90.5t-226 90.5t-87 230.5zM229 301q0 -94 53 -151.5t144 -57.5t144 57.5t53 151.5v422q0 94 -53 151.5t-144 57.5t-144 -57.5t-53 -151.5v-422z " />
+<glyph unicode="c" horiz-adv-x="786" d="M92 301v422q0 139 85 230t222 91q132 0 216 -84.5t92 -216.5q0 -20 -21 -20h-76q-20 0 -20 20q-6 86 -56.5 137.5t-134.5 51.5q-88 0 -139 -57.5t-51 -151.5v-422q0 -94 52 -151.5t142 -57.5q85 0 137 57t58 152q0 21 20 21h76q9 0 15 -6t6 -15q-8 -141 -93.5 -231 t-218.5 -90q-138 0 -224.5 91t-86.5 230z" />
+<glyph unicode="d" horiz-adv-x="831" d="M92 301v422q0 139 87 230t227 91q114 0 196 -102v471q0 9 6 15t15 6h75q9 0 15 -6t6 -15v-1112q0 -140 -87 -230.5t-226 -90.5q-140 0 -227 91t-87 230zM209 301q0 -94 53 -151.5t144 -57.5t143.5 57.5t52.5 151.5v422q0 94 -52.5 151.5t-143.5 57.5t-144 -57.5 t-53 -151.5v-422z" />
+<glyph unicode="e" horiz-adv-x="796" d="M92 303v416q0 143 85.5 233t228.5 90q139 0 226 -89t87 -226q0 -129 -87 -214t-226 -85h-197v-125q0 -94 53 -151.5t144 -57.5q86 0 138.5 57.5t55.5 151.5q0 21 21 21h75q9 0 15 -6t6 -15q-4 -145 -90 -233t-221 -88q-141 0 -227.5 88t-86.5 233zM209 541h197 q91 0 143.5 51.5t52.5 134.5q0 91 -52.5 147t-143.5 56q-94 0 -145.5 -57t-51.5 -154v-178z" />
+<glyph unicode="f" horiz-adv-x="598" d="M31 934v70q0 20 20 20h127v66q0 161 91.5 255.5t234.5 94.5q20 0 20 -21v-69q0 -21 -20 -21q-97 0 -153 -60t-56 -179v-66h235q21 0 21 -20v-70q0 -9 -6 -15t-15 -6h-235v-893q0 -20 -21 -20h-75q-21 0 -21 20v893h-127q-20 0 -20 21z" />
+<glyph unicode="g" horiz-adv-x="831" d="M92 -109q0 9 6 15t15 6h75q21 0 21 -21q4 -98 56.5 -153t140.5 -55q92 0 144 55t52 153v232q-83 -103 -196 -103q-140 0 -227 91t-87 231v381q0 139 87 230t227 91q139 0 226 -90.5t87 -230.5v-832q0 -145 -86 -233t-227 -88q-137 0 -223.5 88t-90.5 233zM209 342 q0 -94 53 -151.5t144 -57.5t143.5 57.5t52.5 151.5v381q0 94 -52.5 151.5t-143.5 57.5t-144 -57.5t-53 -151.5v-381z" />
+<glyph unicode="h" horiz-adv-x="868" d="M133 20v1393q0 9 6 15t15 6h75q9 0 15 -6t6 -15v-467q75 98 203 98q138 0 220.5 -91.5t82.5 -235.5v-697q0 -20 -21 -20h-76q-20 0 -20 20v697q0 98 -52 156.5t-145 58.5q-86 0 -139 -59t-53 -156v-697q0 -20 -21 -20h-75q-21 0 -21 20z" />
+<glyph unicode="i" horiz-adv-x="382" d="M111 1237q0 35 22 57.5t57 22.5q34 0 57 -22.5t23 -57.5q0 -33 -23.5 -56.5t-56.5 -23.5q-35 0 -57 23t-22 57zM133 20v984q0 20 21 20h75q21 0 21 -20v-984q0 -20 -21 -20h-75q-21 0 -21 20z" />
+<glyph unicode="j" horiz-adv-x="495" d="M0 -328q0 21 20 21h3q202 6 202 215v1096q0 20 21 20h76q20 0 20 -20v-1096q0 -150 -82 -238.5t-237 -89.5h-3q-20 0 -20 21v71zM203 1237q0 35 22.5 57.5t57.5 22.5q34 0 56.5 -22.5t22.5 -57.5q0 -33 -23 -56.5t-56 -23.5q-35 0 -57.5 23t-22.5 57z" />
+<glyph unicode="k" horiz-adv-x="819" d="M133 20v1393q0 9 6 15t15 6h75q9 0 15 -6t6 -15v-825h139l229 422q8 14 25 14h86q11 0 16 -7t0 -18l-235 -426q100 -28 160.5 -106.5t60.5 -185.5v-261q0 -20 -20 -20h-76q-21 0 -21 20v261q0 89 -56.5 141.5t-147.5 52.5h-160v-455q0 -20 -21 -20h-75q-21 0 -21 20z" />
+<glyph unicode="l" horiz-adv-x="382" d="M133 20v1393q0 9 6 15t15 6h75q9 0 15 -6t6 -15v-1393q0 -20 -21 -20h-75q-21 0 -21 20z" />
+<glyph unicode="m" horiz-adv-x="1280" d="M113 20v703q0 140 80.5 230.5t212.5 90.5q77 0 138.5 -41.5t96.5 -111.5q33 70 94.5 111.5t138.5 41.5q132 0 212.5 -90.5t80.5 -230.5v-703q0 -20 -20 -20h-76q-20 0 -20 20v703q0 94 -47 151.5t-130 57.5t-129.5 -57.5t-46.5 -151.5v-703q0 -20 -20 -20h-76 q-20 0 -20 20v703q0 94 -46.5 151.5t-129.5 57.5t-130 -57.5t-47 -151.5v-703q0 -20 -20 -20h-76q-20 0 -20 20z" />
+<glyph unicode="n" horiz-adv-x="835" d="M113 20v703q0 139 85 230t220 91t220 -91t85 -230v-703q0 -20 -21 -20h-75q-21 0 -21 20v703q0 95 -50.5 153t-137.5 58t-138 -58t-51 -153v-703q0 -20 -20 -20h-76q-20 0 -20 20z" />
+<glyph unicode="o" horiz-adv-x="815" d="M92 301v422q0 140 87.5 230.5t228.5 90.5t228 -90.5t87 -230.5v-422q0 -140 -87 -230.5t-228 -90.5t-228.5 90.5t-87.5 230.5zM211 301q0 -95 53 -153t144 -58t143.5 58t52.5 153v422q0 95 -52.5 153t-143.5 58t-144 -58t-53 -153v-422z" />
+<glyph unicode="p" horiz-adv-x="831" d="M113 -389v1112q0 140 87 230.5t226 90.5t226 -90.5t87 -230.5v-422q0 -138 -84 -229.5t-211 -91.5q-133 0 -215 102v-471q0 -21 -20 -21h-76q-20 0 -20 21zM229 301q0 -94 53 -151.5t144 -57.5t144 57.5t53 151.5v422q0 94 -53 151.5t-144 57.5t-144 -57.5t-53 -151.5 v-422z" />
+<glyph unicode="q" horiz-adv-x="831" d="M92 301v422q0 139 87 230t227 91q139 0 226 -90.5t87 -230.5v-1112q0 -9 -6 -15t-15 -6h-75q-9 0 -15 6t-6 15v471q-82 -102 -215 -102q-127 0 -211 91.5t-84 229.5zM209 301q0 -94 53 -151.5t144 -57.5t143.5 57.5t52.5 151.5v422q0 94 -52.5 151.5t-143.5 57.5 t-144 -57.5t-53 -151.5v-422z" />
+<glyph unicode="r" horiz-adv-x="575" d="M113 20v695q0 140 91 227.5t230 87.5h90q21 0 21 -20v-72q0 -20 -21 -20h-90q-92 0 -148.5 -54.5t-56.5 -148.5v-695q0 -20 -20 -20h-76q-20 0 -20 20z" />
+<glyph unicode="s" horiz-adv-x="784" d="M78 301q0 21 20 21h76q21 0 21 -21q9 -209 211 -209q90 0 137 44.5t47 119.5q0 44 -21.5 79t-57 57.5t-80.5 44.5t-92 39.5t-92 44.5t-80.5 57.5t-57 79.5t-21.5 110q0 115 82.5 195.5t212.5 80.5q147 0 225 -80t84 -221q0 -20 -20 -20h-76q-21 0 -21 20q-5 85 -52.5 137 t-133.5 52q-83 0 -133.5 -45.5t-50.5 -118.5q0 -42 21.5 -76t57 -55t80.5 -42.5t92 -39.5t92 -45t80.5 -58.5t57 -82t21.5 -113.5q0 -116 -84 -196t-217 -80q-147 0 -234.5 87t-93.5 234z" />
+<glyph unicode="t" horiz-adv-x="561" d="M31 934v70q0 20 20 20h127v266q0 9 6 15t15 6h75q9 0 15 -6t6 -15v-266h174q20 0 20 -20v-70q0 -21 -20 -21h-174v-573q0 -231 172 -231h27q20 0 20 -21v-72q0 -20 -20 -20h-27q-137 0 -213 90.5t-76 253.5v573h-127q-20 0 -20 21z" />
+<glyph unicode="u" horiz-adv-x="835" d="M113 301v703q0 20 20 20h76q20 0 20 -20v-703q0 -95 51 -153t138 -58t137.5 58t50.5 153v703q0 20 21 20h75q21 0 21 -20v-703q0 -139 -85 -230t-220 -91t-220 91t-85 230z" />
+<glyph unicode="v" horiz-adv-x="737" d="M27 1001q-7 23 16 23h80q19 0 22 -18l224 -904l223 904q3 18 22 18h80q11 0 15.5 -6.5t1.5 -16.5l-246 -954q-12 -53 -70 -53h-53q-58 0 -70 53z" />
+<glyph unicode="w" horiz-adv-x="1280" d="M113 301v703q0 20 20 20h76q20 0 20 -20v-703q0 -94 47 -151.5t130 -57.5t129.5 57.5t46.5 151.5v703q0 20 20 20h76q20 0 20 -20v-703q0 -94 46.5 -151.5t129.5 -57.5t130 57.5t47 151.5v703q0 20 20 20h76q20 0 20 -20v-703q0 -140 -80.5 -230.5t-212.5 -90.5 q-77 0 -138.5 41.5t-94.5 111.5q-35 -70 -96.5 -111.5t-138.5 -41.5q-132 0 -212.5 90.5t-80.5 230.5z" />
+<glyph unicode="x" horiz-adv-x="794" d="M92 20v228q0 86 40 155t112 111q-72 40 -112 108.5t-40 155.5v226q0 20 21 20h75q21 0 21 -20v-226q0 -94 50.5 -151.5t137.5 -57.5t138 58t51 151v226q0 20 20 20h76q20 0 20 -20v-226q0 -87 -40 -155.5t-111 -108.5q72 -42 111.5 -110.5t39.5 -155.5v-228 q0 -20 -20 -20h-76q-20 0 -20 20v228q0 93 -51 151t-138 58t-137.5 -57.5t-50.5 -151.5v-228q0 -20 -21 -20h-75q-21 0 -21 20z" />
+<glyph unicode="y" horiz-adv-x="868" d="M113 -109q0 21 20 21h76q20 0 20 -21q3 -98 54.5 -153t140.5 -55q92 0 143 55t51 153v234q-82 -105 -194 -105q-138 0 -224.5 91t-86.5 231v662q0 20 20 20h76q20 0 20 -20v-662q0 -93 52.5 -151t142.5 -58t142 57.5t52 151.5v662q0 20 21 20h76q20 0 20 -20v-1113 q0 -145 -85.5 -233t-225.5 -88q-134 0 -219.5 88t-91.5 233z" />
+<glyph unicode="z" horiz-adv-x="722" d="M74 49v37q0 34 14 61l440 764h-417q-9 0 -15 6t-6 15v72q0 20 21 20h489q49 0 49 -49v-47q0 -35 -14 -62l-434 -753h428q20 0 20 -21v-72q0 -20 -20 -20h-506q-49 0 -49 49z" />
+<glyph unicode="{" horiz-adv-x="548" d="M41 682v86q0 20 18 23q67 21 109.5 70.5t42.5 129.5v361q0 134 82.5 226t204.5 101q20 0 20 -20v-74q0 -19 -20 -22q-71 -8 -117.5 -66t-46.5 -145v-361q0 -87 -37.5 -155.5t-103.5 -110.5q66 -42 103.5 -110.5t37.5 -155.5v-377q0 -87 46.5 -145t117.5 -66q20 -3 20 -23 v-73q0 -21 -20 -21q-122 9 -204.5 101t-82.5 227v377q0 80 -42.5 129.5t-109.5 70.5q-18 3 -18 23z" />
+<glyph unicode="|" horiz-adv-x="389" d="M133 -123v1741q0 20 21 20h82q20 0 20 -20v-1741q0 -20 -20 -20h-82q-21 0 -21 20z" />
+<glyph unicode="}" horiz-adv-x="548" d="M31 -152q0 20 20 23q71 8 117.5 66t46.5 145v377q0 87 37.5 155.5t103.5 110.5q-66 42 -103.5 110.5t-37.5 155.5v361q0 87 -46.5 145t-117.5 66q-20 3 -20 22v74q0 20 20 20q122 -9 204.5 -101t82.5 -226v-361q0 -80 42 -129.5t109 -70.5q19 -3 19 -23v-86 q0 -20 -19 -23q-67 -21 -109 -70.5t-42 -129.5v-377q0 -135 -82.5 -227t-204.5 -101q-20 0 -20 21v73z" />
+<glyph unicode="~" horiz-adv-x="870" d="M66 715q-9 15 2 28q81 105 186 105q65 0 186 -49t166 -49q79 0 131 75q15 22 27 0l39 -57q11 -15 0 -29q-78 -110 -189 -110q-65 0 -186 49t-166 49q-78 0 -131 -76q-16 -19 -29 0z" />
+<glyph unicode="&#xa1;" horiz-adv-x="446" d="M133 952q0 37 26 63.5t64 26.5q37 0 63.5 -26.5t26.5 -63.5q0 -38 -26.5 -64t-63.5 -26q-38 0 -64 26t-26 64zM162 -391v1114q0 20 20 20h82q21 0 21 -20v-1114q0 -9 -6 -15t-15 -6h-82q-20 0 -20 21z" />
+<glyph unicode="&#xa2;" horiz-adv-x="786" d="M92 301v422q0 127 71.5 214.5t190.5 102.5v138q0 20 21 20h51q20 0 20 -20v-136q116 -13 188.5 -95.5t80.5 -203.5q0 -20 -21 -20h-76q-20 0 -20 20q-6 86 -58 137.5t-137 51.5q-90 0 -142 -57.5t-52 -151.5v-422q0 -94 52 -151.5t142 -57.5q85 0 137 51.5t58 137.5 q0 20 20 20h76q21 0 21 -20q-8 -121 -80.5 -203.5t-188.5 -95.5v-136q0 -20 -20 -20h-51q-21 0 -21 20v138q-119 15 -190.5 102.5t-71.5 214.5z" />
+<glyph unicode="&#xa3;" horiz-adv-x="946" d="M49 20v64q0 34 39 43q52 9 76 55t24 137v349h-112q-21 0 -21 20v74q0 20 21 20h112v320q0 152 92.5 252t241.5 100q147 0 239.5 -98t98.5 -250q0 -21 -20 -21h-82q-21 0 -21 21q-6 103 -64 168t-151 65q-95 0 -153 -67t-58 -170v-320h377q21 0 21 -20v-74q0 -20 -21 -20 h-377v-357q0 -122 -53 -188h608q9 0 15 -6t6 -15v-82q0 -20 -21 -20h-796q-21 0 -21 20z" />
+<glyph unicode="&#xa4;" horiz-adv-x="917" d="M76 262l94 113q-37 70 -37 162v180q0 92 37 162l-94 112q-13 16 4 29l47 41q16 13 29 -4l77 -92q88 82 226 82q137 0 225 -82l78 92q13 17 29 4l47 -41q17 -13 4 -29l-94 -110q36 -68 36 -164v-180q0 -96 -36 -164l94 -111q13 -16 -4 -29l-47 -40q-16 -13 -29 4l-78 92 q-88 -82 -225 -82q-138 0 -226 82l-77 -92q-13 -17 -29 -4l-47 40q-17 13 -4 29zM252 537q0 -100 55.5 -160t151.5 -60t151.5 60t55.5 160v180q0 100 -55.5 159.5t-151.5 59.5t-151.5 -59.5t-55.5 -159.5v-180z" />
+<glyph unicode="&#xa5;" horiz-adv-x="1040" d="M100 266v58q0 20 21 20h338v129h-338q-9 0 -15 6t-6 15v57q0 20 21 20h168q-47 41 -74 98.5t-27 118.5v625q0 9 6 15t15 6h82q20 0 20 -21v-625q0 -84 61 -143t148 -59q88 0 148.5 58.5t60.5 143.5v625q0 9 6 15t15 6h81q9 0 15 -6t6 -15v-625q0 -60 -27.5 -117.5 t-74.5 -99.5h170q20 0 20 -20v-57q0 -21 -20 -21h-338v-129h338q20 0 20 -20v-58q0 -20 -20 -20h-338v-226q0 -20 -21 -20h-82q-20 0 -20 20v226h-338q-21 0 -21 20z" />
+<glyph unicode="&#xa6;" horiz-adv-x="348" d="M113 -123v569q0 21 20 21h82q9 0 15 -6t6 -15v-569q0 -20 -21 -20h-82q-20 0 -20 20zM113 1049v569q0 20 20 20h82q21 0 21 -20v-569q0 -9 -6 -15t-15 -6h-82q-20 0 -20 21z" />
+<glyph unicode="&#xa7;" horiz-adv-x="800" d="M74 760q0 68 42 124t115 87q-141 81 -141 223q0 107 82.5 182.5t214.5 75.5q138 0 214.5 -72.5t82.5 -183.5q0 -20 -20 -20h-82q-21 0 -21 20q-6 65 -50.5 103t-123.5 38q-76 0 -126 -38t-50 -105q0 -47 28.5 -83t74 -59.5t100.5 -45t110 -45.5t100.5 -53.5t74 -77.5 t28.5 -109q0 -172 -166 -242q144 -92 144 -241q0 -107 -82.5 -181.5t-214.5 -74.5q-140 0 -225 78.5t-93 197.5q0 9 6 15t15 6h82q20 0 20 -21q6 -76 54 -119t141 -43q85 0 129.5 39t44.5 103q0 51 -28 89t-73 62t-99 45t-108 47t-99 59t-73 89.5t-28 130.5zM195 743 q0 -77 70 -129t169 -71q73 8 122.5 56.5t49.5 119.5q0 45 -39 85t-93.5 64t-119.5 39q-75 -13 -117 -59t-42 -105z" />
+<glyph unicode="&#xa9;" horiz-adv-x="1261" d="M113 383v659q0 179 107 288.5t282 109.5h260q173 0 280 -110t107 -288v-659q0 -175 -107 -282t-280 -107h-260q-175 0 -282 107t-107 282zM190 383q0 -149 82 -232t230 -83h260q146 0 227.5 83t81.5 232v659q0 153 -81.5 238.5t-227.5 85.5h-260q-147 0 -229.5 -85.5 t-82.5 -238.5v-659zM373 539v350q0 120 71.5 193t188.5 73q109 0 179.5 -71t76.5 -185q0 -14 -15 -14h-73q-15 0 -15 14q-8 72 -48.5 113t-104.5 41q-75 0 -116.5 -43.5t-41.5 -120.5v-350q0 -77 41.5 -120.5t116.5 -43.5q67 0 108.5 41.5t49.5 115.5q0 15 14 15h74 q14 0 14 -15q-6 -117 -78 -188.5t-182 -71.5q-117 0 -188.5 73.5t-71.5 193.5z" />
+<glyph unicode="&#xab;" horiz-adv-x="823" d="M74 483q-30 43 0 86l223 301q8 13 27 13h79q12 0 16 -8t-3 -17l-252 -332l252 -331q7 -9 3 -17t-16 -8h-79q-20 0 -27 12zM401 483q-30 43 0 86l224 301q8 13 26 13h80q12 0 16 -8t-4 -17l-251 -332l251 -331q8 -9 4 -17t-16 -8h-80q-19 0 -26 12z" />
+<glyph unicode="&#xac;" horiz-adv-x="942" d="M102 700v70q0 9 6 15t15 6h696q9 0 15 -6t6 -15v-248q0 -20 -21 -20h-65q-21 0 -21 20v158h-610q-21 0 -21 20z" />
+<glyph unicode="&#xad;" horiz-adv-x="581" d="M35 489v74q0 21 20 21h471q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-471q-20 0 -20 20z" />
+<glyph unicode="&#xae;" horiz-adv-x="897" d="M102 764v453q0 92 66 157.5t158 65.5h245q92 0 158 -65.5t66 -157.5v-453q0 -92 -66 -157.5t-158 -65.5h-245q-92 0 -158 65.5t-66 157.5zM154 764q0 -70 51 -121t121 -51h245q71 0 121.5 51t50.5 121v453q0 71 -50.5 121.5t-121.5 50.5h-245q-70 0 -121 -50.5 t-51 -121.5v-453zM299 713v434q0 66 41.5 107.5t108.5 41.5q64 0 104.5 -41.5t40.5 -107.5v-62q0 -100 -86 -139l96 -231q3 -10 -6 -10h-49q-7 0 -10 6l-88 223h-91v-221q0 -8 -8 -8h-45q-8 0 -8 8zM360 991h89q37 0 60 26.5t23 67.5v62q0 41 -23 67.5t-60 26.5 q-40 0 -64.5 -26.5t-24.5 -67.5v-156z" />
+<glyph unicode="&#xb0;" horiz-adv-x="610" d="M51 1188q0 120 70 193t184 73t184 -73t70 -193t-70 -193t-184 -73t-184 73t-70 193zM154 1188q0 -76 41.5 -123t109.5 -47t110 47t42 123t-42 123t-110 47t-109.5 -47t-41.5 -123z" />
+<glyph unicode="&#xb1;" horiz-adv-x="942" d="M102 254v70q0 20 21 20h696q21 0 21 -20v-70q0 -9 -6 -15t-15 -6h-696q-9 0 -15 6t-6 15zM102 760v69q0 9 6 15t15 6h293v293q0 20 20 20h70q20 0 20 -20v-293h293q9 0 15 -6t6 -15v-69q0 -9 -6 -15t-15 -6h-293v-293q0 -20 -20 -20h-70q-20 0 -20 20v293h-293 q-9 0 -15 6t-6 15z" />
+<glyph unicode="&#xb6;" horiz-adv-x="952" d="M33 1116q0 146 89.5 232t235.5 86h390q29 0 45 -16.5t16 -45.5v-1554q0 -9 -6 -15t-15 -6h-81q-9 0 -15 6t-6 15v1501h-205v-1501q0 -21 -20 -21h-82q-9 0 -15 6t-6 15v981q-146 0 -235.5 85.5t-89.5 231.5z" />
+<glyph unicode="&#xb7;" horiz-adv-x="299" d="M25 526q0 40 27 67.5t67 27.5q39 0 66.5 -27.5t27.5 -67.5q0 -38 -28 -66t-66 -28q-39 0 -66.5 27.5t-27.5 66.5z" />
+<glyph unicode="&#xbb;" horiz-adv-x="823" d="M76 178q-4 8 4 17l252 331l-252 332q-8 9 -4 17t16 8h80q19 0 27 -13l223 -301q30 -43 0 -86l-223 -301q-7 -12 -27 -12h-80q-12 0 -16 8zM404 178q-4 8 4 17l251 331l-251 332q-8 9 -4 17t16 8h80q18 0 26 -13l224 -301q30 -43 0 -86l-224 -301q-7 -12 -26 -12h-80 q-12 0 -16 8z" />
+<glyph unicode="&#xbf;" horiz-adv-x="655" d="M20 -88q0 84 21.5 154.5t53 116.5t69 95t69 91t53 105t21.5 136v111q0 20 21 20h82q20 0 20 -20v-125q0 -69 -16 -128.5t-41 -103t-55.5 -83.5t-61.5 -78.5t-56 -79.5t-41 -95t-16 -116q0 -104 54.5 -167.5t140.5 -63.5q84 0 137 61t57 172q0 20 21 20h82q20 0 20 -20 q-6 -158 -94 -253t-223 -95q-138 0 -228 97.5t-90 248.5zM274 950q0 37 27 63.5t64 26.5q38 0 64 -26.5t26 -63.5q0 -38 -26 -64t-64 -26q-37 0 -64 26t-27 64z" />
+<glyph unicode="&#xc0;" d="M127 20v1063q0 166 93 267.5t245 101.5t245 -101.5t93 -267.5v-1063q0 -20 -21 -20h-82q-20 0 -20 20v500h-430v-500q0 -20 -21 -20h-82q-20 0 -20 20zM250 635h430v448q0 120 -56.5 187t-158.5 67t-158.5 -67t-56.5 -187v-448zM263 1790.5q4 7.5 16 7.5h94q19 0 26 -12 l142 -187q7 -9 3 -16.5t-16 -7.5h-69q-16 0 -25 12l-166 187q-9 9 -5 16.5z" />
+<glyph unicode="&#xc1;" d="M127 20v1063q0 166 93 267.5t245 101.5t245 -101.5t93 -267.5v-1063q0 -20 -21 -20h-82q-20 0 -20 20v500h-430v-500q0 -20 -21 -20h-82q-20 0 -20 20zM250 635h430v448q0 120 -56.5 187t-158.5 67t-158.5 -67t-56.5 -187v-448zM379.5 1582.5q-3.5 7.5 3.5 16.5l141 187 q7 12 27 12h94q12 0 15.5 -7.5t-5.5 -16.5l-166 -187q-9 -12 -24 -12h-70q-12 0 -15.5 7.5z" />
+<glyph unicode="&#xc2;" d="M127 20v1063q0 166 93 267.5t245 101.5t245 -101.5t93 -267.5v-1063q0 -20 -21 -20h-82q-20 0 -20 20v500h-430v-500q0 -20 -21 -20h-82q-20 0 -20 20zM230 1581.5q-4 6.5 3 17.5l154 187q9 12 25 12h106q16 0 25 -12l153 -187q7 -11 3.5 -17.5t-15.5 -6.5h-68 q-16 0 -24 10l-127 144l-127 -144q-8 -10 -25 -10h-67q-12 0 -16 6.5zM250 635h430v448q0 120 -56.5 187t-158.5 67t-158.5 -67t-56.5 -187v-448z" />
+<glyph unicode="&#xc3;" d="M127 20v1063q0 166 93 267.5t245 101.5t245 -101.5t93 -267.5v-1063q0 -20 -21 -20h-82q-20 0 -20 20v500h-430v-500q0 -20 -21 -20h-82q-20 0 -20 20zM244 1612q6 66 42.5 104.5t92.5 38.5q34 0 65 -16.5t54.5 -32.5t40.5 -16q33 0 39 43q3 20 22 20h64q20 0 20 -20 q-6 -65 -43.5 -104.5t-91.5 -39.5q-33 0 -63.5 16.5t-54.5 33t-42 16.5q-33 0 -39 -43q-3 -21 -22 -21h-64q-20 0 -20 21zM250 635h430v448q0 120 -56.5 187t-158.5 67t-158.5 -67t-56.5 -187v-448z" />
+<glyph unicode="&#xc4;" d="M127 20v1063q0 166 93 267.5t245 101.5t245 -101.5t93 -267.5v-1063q0 -20 -21 -20h-82q-20 0 -20 20v500h-430v-500q0 -20 -21 -20h-82q-20 0 -20 20zM250 635h430v448q0 120 -56.5 187t-158.5 67t-158.5 -67t-56.5 -187v-448zM287 1669q0 34 20.5 55t54.5 21t55 -21 t21 -55t-21 -55t-55 -21t-54.5 21t-20.5 55zM492 1669q0 34 20.5 55t54.5 21t55 -21t21 -55t-21 -55t-55 -21t-54.5 21t-20.5 55z" />
+<glyph unicode="&#xc5;" d="M127 20v1063q0 166 93 267.5t245 101.5t245 -101.5t93 -267.5v-1063q0 -20 -21 -20h-82q-20 0 -20 20v500h-430v-500q0 -20 -21 -20h-82q-20 0 -20 20zM250 635h430v448q0 120 -56.5 187t-158.5 67t-158.5 -67t-56.5 -187v-448zM324 1683q0 60 38 97t101 37t101 -37 t38 -97q0 -62 -38 -99.5t-101 -37.5t-101 37.5t-38 99.5zM403 1681q0 -28 16 -43.5t44 -15.5q27 0 43 16t16 43q0 26 -16.5 43t-42.5 17q-27 0 -43.5 -16.5t-16.5 -43.5z" />
+<glyph unicode="&#xc6;" horiz-adv-x="1261" d="M127 20v1092q0 148 89.5 244t227.5 96q80 0 145.5 -44t110.5 -114q46 68 116 110t157 42h178q20 0 20 -21v-73q0 -21 -20 -21h-178q-101 0 -156 -58t-55 -161v-328h328q20 0 20 -20v-74q0 -20 -20 -20h-328v-332q0 -107 55 -167t156 -60h198q9 0 15 -6t6 -15v-74 q0 -20 -21 -20h-198q-152 0 -243 94t-91 248v332h-389v-650q0 -20 -21 -20h-82q-20 0 -20 20zM250 784h389v328q0 100 -54 162.5t-141 62.5t-140.5 -62.5t-53.5 -162.5v-328z" />
+<glyph unicode="&#xc7;" horiz-adv-x="837" d="M100 332v770q0 158 91.5 255t242.5 97q145 0 237.5 -104.5t96.5 -274.5q0 -20 -20 -20h-82q-21 0 -21 20q-4 126 -60.5 195t-150.5 69q-100 0 -155.5 -62.5t-55.5 -174.5v-770q0 -113 55.5 -175.5t155.5 -62.5q101 0 159.5 73t61.5 202q0 20 21 20h82q20 0 20 -18 q-4 -168 -90.5 -274t-226.5 -117l-12 -70h12q66 -5 110.5 -48t44.5 -106q0 -76 -51 -121t-131 -45q-74 0 -124 39t-56 107q-3 20 18 20h58q17 0 20 -18q6 -29 28.5 -44.5t55.5 -15.5q38 0 62 21t24 57q0 31 -23.5 50.5t-58.5 19.5q-38 0 -71 -10q-10 -3 -17 4l-4 4 q-8 8 -6 16l29 146q-123 20 -196 113.5t-73 232.5z" />
+<glyph unicode="&#xc8;" horiz-adv-x="741" d="M100 348v737q0 151 94 252t240 101h213q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-213q-93 0 -152 -68t-59 -170v-301h375q20 0 20 -20v-74q0 -20 -20 -20h-375v-322q0 -102 59 -169.5t152 -67.5h213q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-213q-146 0 -240 100.5t-94 251.5z M244.5 1790.5q3.5 7.5 15.5 7.5h94q20 0 27 -12l141 -187q8 -9 4 -16.5t-16 -7.5h-70q-15 0 -24 12l-166 187q-9 9 -5.5 16.5z" />
+<glyph unicode="&#xc9;" horiz-adv-x="741" d="M100 348v737q0 151 94 252t240 101h213q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-213q-93 0 -152 -68t-59 -170v-301h375q20 0 20 -20v-74q0 -20 -20 -20h-375v-322q0 -102 59 -169.5t152 -67.5h213q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-213q-146 0 -240 100.5t-94 251.5z M328 1582.5q-4 7.5 4 16.5l141 187q7 12 27 12h94q12 0 15.5 -7.5t-5.5 -16.5l-166 -187q-9 -12 -24 -12h-70q-12 0 -16 7.5z" />
+<glyph unicode="&#xca;" horiz-adv-x="737" d="M100 348v737q0 151 94 252t240 101h213q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-213q-93 0 -152 -68t-59 -170v-301h375q20 0 20 -20v-74q0 -20 -20 -20h-375v-322q0 -102 59 -169.5t152 -67.5h213q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-213q-146 0 -240 100.5t-94 251.5z M191.5 1581.5q-3.5 6.5 3.5 17.5l153 187q9 12 25 12h106q16 0 25 -12l153 -187q7 -11 3.5 -17.5t-15.5 -6.5h-67q-18 0 -25 10l-127 144l-127 -144q-8 -10 -25 -10h-67q-12 0 -15.5 6.5z" />
+<glyph unicode="&#xcb;" horiz-adv-x="737" d="M100 348v737q0 151 94 252t240 101h213q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-213q-93 0 -152 -68t-59 -170v-301h375q20 0 20 -20v-74q0 -20 -20 -20h-375v-322q0 -102 59 -169.5t152 -67.5h213q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-213q-146 0 -240 100.5t-94 251.5z M248 1669q0 34 21 55t55 21t54.5 -21t20.5 -55t-20.5 -55t-54.5 -21t-55 21t-21 55zM453 1669q0 34 20.5 55t54.5 21t55 -21t21 -55t-21 -55t-55 -21t-54.5 21t-20.5 55z" />
+<glyph unicode="&#xcc;" horiz-adv-x="409" d="M62.5 1790.5q3.5 7.5 15.5 7.5h94q20 0 27 -12l141 -187q8 -9 4 -16.5t-16 -7.5h-70q-16 0 -25 12l-165 187q-9 9 -5.5 16.5zM143 20v1393q0 9 6 15t15 6h82q20 0 20 -21v-1393q0 -20 -20 -20h-82q-21 0 -21 20z" />
+<glyph unicode="&#xcd;" horiz-adv-x="456" d="M144 1582.5q-4 7.5 3 16.5l142 187q7 12 26 12h95q12 0 15.5 -7.5t-5.5 -16.5l-166 -187q-9 -12 -25 -12h-69q-12 0 -16 7.5zM168 20v1393q0 21 20 21h82q9 0 15 -6t6 -15v-1393q0 -20 -21 -20h-82q-20 0 -20 20z" />
+<glyph unicode="&#xce;" horiz-adv-x="532" d="M31.5 1581.5q-3.5 6.5 3.5 17.5l153 187q9 12 25 12h106q16 0 25 -12l154 -187q7 -11 3 -17.5t-16 -6.5h-67q-18 0 -25 10l-127 144l-127 -144q-8 -10 -24 -10h-68q-12 0 -15.5 6.5zM205 20v1393q0 21 20 21h82q9 0 15 -6t6 -15v-1393q0 -20 -21 -20h-82q-20 0 -20 20z " />
+<glyph unicode="&#xcf;" horiz-adv-x="409" d="M27 1669q0 34 20.5 55t54.5 21t55 -21t21 -55t-21 -55t-55 -21t-54.5 21t-20.5 55zM143 20v1393q0 9 6 15t15 6h82q20 0 20 -21v-1393q0 -20 -20 -20h-82q-21 0 -21 20zM231 1669q0 34 21 55t55 21t55 -21t21 -55t-21 -55t-55 -21t-55 21t-21 55z" />
+<glyph unicode="&#xd0;" horiz-adv-x="1003" d="M92 690v72q0 20 21 20h118v594q0 29 16.5 45.5t45.5 16.5h276q152 0 243 -101t91 -258v-727q0 -155 -92 -255.5t-242 -100.5h-276q-29 0 -45.5 16t-16.5 45v613h-118q-21 0 -21 20zM354 111h215q95 0 153 67.5t58 173.5v727q0 108 -57 176t-154 68h-215v-541h148 q20 0 20 -20v-72q0 -20 -20 -20h-148v-559z" />
+<glyph unicode="&#xd1;" d="M127 20v1065q0 163 93 266t245 103t245 -103t93 -266v-1065q0 -20 -21 -20h-82q-20 0 -20 20v1065q0 114 -58.5 184t-156.5 70t-156.5 -70t-58.5 -184v-1065q0 -20 -21 -20h-82q-20 0 -20 20zM250 1612q6 66 42.5 104.5t92.5 38.5q34 0 65 -16.5t54.5 -32.5t40.5 -16 q33 0 39 43q3 20 22 20h64q20 0 20 -20q-6 -65 -43.5 -104.5t-91.5 -39.5q-33 0 -63.5 16.5t-54.5 33t-42 16.5q-33 0 -39 -43q-3 -21 -22 -21h-64q-20 0 -20 21z" />
+<glyph unicode="&#xd2;" horiz-adv-x="897" d="M100 360v713q0 168 97.5 273.5t251.5 105.5q153 0 250.5 -101.5t97.5 -256.5v-754q0 -155 -97.5 -256.5t-250.5 -101.5q-154 0 -251.5 105t-97.5 273zM223 360q0 -120 62.5 -192t163.5 -72q99 0 162 69t63 175v754q0 106 -63 174.5t-162 68.5q-101 0 -163.5 -72 t-62.5 -192v-713zM306 1790.5q4 7.5 16 7.5h94q19 0 26 -12l142 -187q7 -9 3 -16.5t-16 -7.5h-69q-16 0 -25 12l-166 187q-9 9 -5 16.5z" />
+<glyph unicode="&#xd3;" horiz-adv-x="897" d="M100 360v713q0 168 97.5 273.5t251.5 105.5q153 0 250.5 -101.5t97.5 -256.5v-754q0 -155 -97.5 -256.5t-250.5 -101.5q-154 0 -251.5 105t-97.5 273zM223 360q0 -120 62.5 -192t163.5 -72q99 0 162 69t63 175v754q0 106 -63 174.5t-162 68.5q-101 0 -163.5 -72 t-62.5 -192v-713zM363.5 1582.5q-3.5 7.5 3.5 16.5l141 187q7 12 27 12h94q12 0 15.5 -7.5t-5.5 -16.5l-166 -187q-9 -12 -24 -12h-70q-12 0 -15.5 7.5z" />
+<glyph unicode="&#xd4;" horiz-adv-x="897" d="M100 360v713q0 168 97.5 273.5t251.5 105.5q153 0 250.5 -101.5t97.5 -256.5v-754q0 -155 -97.5 -256.5t-250.5 -101.5q-154 0 -251.5 105t-97.5 273zM213.5 1581.5q-3.5 6.5 3.5 17.5l154 187q9 12 24 12h107q15 0 24 -12l154 -187q7 -11 3.5 -17.5t-15.5 -6.5h-68 q-18 0 -25 10l-126 144l-127 -144q-8 -10 -25 -10h-68q-12 0 -15.5 6.5zM223 360q0 -120 62.5 -192t163.5 -72q99 0 162 69t63 175v754q0 106 -63 174.5t-162 68.5q-101 0 -163.5 -72t-62.5 -192v-713z" />
+<glyph unicode="&#xd5;" horiz-adv-x="897" d="M100 360v713q0 168 97.5 273.5t251.5 105.5q153 0 250.5 -101.5t97.5 -256.5v-754q0 -155 -97.5 -256.5t-250.5 -101.5q-154 0 -251.5 105t-97.5 273zM223 360q0 -120 62.5 -192t163.5 -72q99 0 162 69t63 175v754q0 106 -63 174.5t-162 68.5q-101 0 -163.5 -72 t-62.5 -192v-713zM227 1612q6 66 42.5 104.5t92.5 38.5q34 0 65 -16.5t54.5 -32.5t40.5 -16q33 0 39 43q3 20 23 20h63q21 0 21 -20q-6 -65 -43.5 -104.5t-92.5 -39.5q-33 0 -63.5 16.5t-54 33t-41.5 16.5q-33 0 -39 -43q-3 -21 -23 -21h-63q-9 0 -15 6t-6 15z" />
+<glyph unicode="&#xd6;" horiz-adv-x="897" d="M100 360v713q0 168 97.5 273.5t251.5 105.5q153 0 250.5 -101.5t97.5 -256.5v-754q0 -155 -97.5 -256.5t-250.5 -101.5q-154 0 -251.5 105t-97.5 273zM223 360q0 -120 62.5 -192t163.5 -72q99 0 162 69t63 175v754q0 106 -63 174.5t-162 68.5q-101 0 -163.5 -72 t-62.5 -192v-713zM270 1669q0 34 21 55t55 21t55 -21t21 -55t-21 -55t-55 -21t-55 21t-21 55zM475 1669q0 34 21 55t55 21t55 -21t21 -55t-21 -55t-55 -21t-55 21t-21 55z" />
+<glyph unicode="&#xd7;" horiz-adv-x="942" d="M113 426q-12 16 0 31l278 278l-278 279q-12 15 0 30l49 50q16 12 31 0l278 -279l279 279q15 12 30 0l49 -50q12 -15 0 -30l-278 -279l278 -278q12 -16 0 -31l-49 -49q-15 -12 -30 0l-279 278l-278 -278q-15 -12 -31 0z" />
+<glyph unicode="&#xd8;" horiz-adv-x="901" d="M100 360v713q0 168 98 273.5t253 105.5q81 0 151 -31l27 88q7 17 22 17h72q11 0 16 -6.5t2 -16.5l-45 -147q105 -100 105 -262v-754q0 -155 -98 -256.5t-252 -101.5q-85 0 -152 30l-27 -88q-6 -16 -22 -16h-72q-24 0 -18 22l45 150q-105 108 -105 280zM225 360 q0 -71 25 -129l317 1076q-55 30 -116 30q-101 0 -163.5 -72t-62.5 -192v-713zM334 129q47 -33 117 -33q99 0 162 69t63 175v754q0 58 -23 112z" />
+<glyph unicode="&#xd9;" d="M127 348v1065q0 21 20 21h82q9 0 15 -6t6 -15v-1065q0 -114 58.5 -184t156.5 -70t156.5 70t58.5 184v1065q0 21 20 21h82q9 0 15 -6t6 -15v-1065q0 -163 -93 -265.5t-245 -102.5t-245 102.5t-93 265.5zM312 1790.5q4 7.5 16 7.5h94q20 0 27 -12l141 -187q8 -9 4 -16.5 t-16 -7.5h-70q-16 0 -25 12l-166 187q-9 9 -5 16.5z" />
+<glyph unicode="&#xda;" d="M127 348v1065q0 21 20 21h82q9 0 15 -6t6 -15v-1065q0 -114 58.5 -184t156.5 -70t156.5 70t58.5 184v1065q0 21 20 21h82q9 0 15 -6t6 -15v-1065q0 -163 -93 -265.5t-245 -102.5t-245 102.5t-93 265.5zM369.5 1582.5q-3.5 7.5 3.5 16.5l141 187q7 12 27 12h94 q12 0 15.5 -7.5t-5.5 -16.5l-166 -187q-9 -12 -24 -12h-70q-12 0 -15.5 7.5z" />
+<glyph unicode="&#xdb;" d="M127 348v1065q0 21 20 21h82q9 0 15 -6t6 -15v-1065q0 -114 58.5 -184t156.5 -70t156.5 70t58.5 184v1065q0 21 20 21h82q9 0 15 -6t6 -15v-1065q0 -163 -93 -265.5t-245 -102.5t-245 102.5t-93 265.5zM220 1581.5q-4 6.5 3 17.5l154 187q9 12 24 12h107q15 0 24 -12 l154 -187q7 -11 3.5 -17.5t-15.5 -6.5h-68q-16 0 -24 10l-127 144l-127 -144q-8 -10 -25 -10h-67q-12 0 -16 6.5z" />
+<glyph unicode="&#xdc;" d="M127 348v1065q0 21 20 21h82q9 0 15 -6t6 -15v-1065q0 -114 58.5 -184t156.5 -70t156.5 70t58.5 184v1065q0 21 20 21h82q9 0 15 -6t6 -15v-1065q0 -163 -93 -265.5t-245 -102.5t-245 102.5t-93 265.5zM276 1669q0 34 21 55t55 21t55 -21t21 -55t-21 -55t-55 -21t-55 21 t-21 55zM481 1669q0 34 21 55t55 21t55 -21t21 -55t-21 -55t-55 -21t-55 21t-21 55z" />
+<glyph unicode="&#xdd;" horiz-adv-x="847" d="M90 815v598q0 9 6 15t15 6h82q20 0 20 -21v-598q0 -103 59 -171.5t152 -68.5t152 68.5t59 171.5v598q0 21 20 21h82q9 0 15 -6t6 -15v-598q0 -134 -75 -230t-198 -116v-449q0 -20 -20 -20h-82q-21 0 -21 20v449q-122 20 -197 116t-75 230zM338 1582.5q-4 7.5 4 16.5 l141 187q7 12 27 12h94q12 0 15.5 -7.5t-5.5 -16.5l-165 -187q-9 -12 -25 -12h-70q-12 0 -16 7.5z" />
+<glyph unicode="&#xde;" horiz-adv-x="843" d="M143 20v1393q0 9 6 15t15 6h82q20 0 20 -21v-246h195q132 0 224.5 -93t92.5 -224v-266q0 -131 -92.5 -224.5t-224.5 -93.5h-195v-246q0 -20 -20 -20h-82q-21 0 -21 20zM266 381h195q80 0 137 56.5t57 137.5v283q0 81 -57 138t-137 57h-195v-672z" />
+<glyph unicode="&#xdf;" horiz-adv-x="831" d="M127 20l2 1129q0 131 83 218t204 87q122 0 207.5 -87.5t85.5 -217.5l-2 -166q0 -114 -134 -213q79 -41 131 -112t52 -156v-185q0 -131 -92 -224t-222 -93h-108q-21 0 -21 20v72q0 9 6 15t15 6h108q80 0 137.5 59t57.5 145v185q0 84 -57.5 142t-137.5 58h-108q-9 0 -15 6 t-6 15v72q0 20 21 20h76q75 0 127.5 49.5t52.5 118.5l2 166q0 84 -51 138t-125 54q-72 0 -121 -53.5t-49 -138.5l-2 -1129q0 -20 -21 -20h-76q-20 0 -20 20z" />
+<glyph unicode="&#xe0;" horiz-adv-x="796" d="M78 299q0 124 87 209.5t224 85.5h199v133q0 91 -52 148t-141 57q-81 0 -129.5 -51.5t-54.5 -137.5q-3 -20 -21 -20h-75q-21 0 -21 20q8 133 89.5 217t211.5 84q139 0 224.5 -90t85.5 -227v-428q0 -138 -86.5 -227.5t-225.5 -89.5q-141 0 -228 89.5t-87 227.5zM195 299 q0 -92 53 -148.5t145 -56.5q91 0 143 56.5t52 148.5v182h-199q-88 0 -141 -52.5t-53 -129.5zM213.5 1368.5q3.5 7.5 15.5 7.5h93q14 0 24 -14l121 -193q6 -11 2 -17.5t-16 -6.5h-68q-20 0 -27 12l-141 195q-7 9 -3.5 16.5z" />
+<glyph unicode="&#xe1;" horiz-adv-x="796" d="M78 299q0 124 87 209.5t224 85.5h199v133q0 91 -52 148t-141 57q-81 0 -129.5 -51.5t-54.5 -137.5q-3 -20 -21 -20h-75q-21 0 -21 20q8 133 89.5 217t211.5 84q139 0 224.5 -90t85.5 -227v-428q0 -138 -86.5 -227.5t-225.5 -89.5q-141 0 -228 89.5t-87 227.5zM195 299 q0 -92 53 -148.5t145 -56.5q91 0 143 56.5t52 148.5v182h-199q-88 0 -141 -52.5t-53 -129.5zM305.5 1151.5q-4.5 6.5 1.5 17.5l121 193q10 14 25 14h92q12 0 15.5 -7.5t-3.5 -16.5l-141 -195q-7 -12 -27 -12h-67q-12 0 -16.5 6.5z" />
+<glyph unicode="&#xe2;" horiz-adv-x="796" d="M78 299q0 124 87 209.5t224 85.5h199v133q0 91 -52 148t-141 57q-81 0 -129.5 -51.5t-54.5 -137.5q-3 -20 -21 -20h-75q-21 0 -21 20q8 133 89.5 217t211.5 84q139 0 224.5 -90t85.5 -227v-428q0 -138 -86.5 -227.5t-225.5 -89.5q-141 0 -228 89.5t-87 227.5zM181 1152.5 q-4 7.5 3 16.5l142 195q7 12 24 12h94q18 0 25 -12l141 -195q8 -9 4 -16.5t-16 -7.5h-66q-17 0 -26 12l-109 133l-108 -133q-9 -12 -27 -12h-65q-12 0 -16 7.5zM195 299q0 -92 53 -148.5t145 -56.5q91 0 143 56.5t52 148.5v182h-199q-88 0 -141 -52.5t-53 -129.5z" />
+<glyph unicode="&#xe3;" horiz-adv-x="796" d="M78 299q0 124 87 209.5t224 85.5h199v133q0 91 -52 148t-141 57q-81 0 -129.5 -51.5t-54.5 -137.5q-3 -20 -21 -20h-75q-21 0 -21 20q8 133 89.5 217t211.5 84q139 0 224.5 -90t85.5 -227v-428q0 -138 -86.5 -227.5t-225.5 -89.5q-141 0 -228 89.5t-87 227.5zM172 1202 q6 66 42.5 105t92.5 39q34 0 65 -16.5t54.5 -33t40.5 -16.5q33 0 39 43q3 20 22 20h64q20 0 20 -20q-6 -65 -43 -104t-92 -39q-33 0 -63.5 16.5t-54.5 32.5t-42 16q-32 0 -38 -43q-3 -20 -23 -20h-63q-21 0 -21 20zM195 299q0 -92 53 -148.5t145 -56.5q91 0 143 56.5 t52 148.5v182h-199q-88 0 -141 -52.5t-53 -129.5z" />
+<glyph unicode="&#xe4;" horiz-adv-x="796" d="M78 299q0 124 87 209.5t224 85.5h199v133q0 91 -52 148t-141 57q-81 0 -129.5 -51.5t-54.5 -137.5q-3 -20 -21 -20h-75q-21 0 -21 20q8 133 89.5 217t211.5 84q139 0 224.5 -90t85.5 -227v-428q0 -138 -86.5 -227.5t-225.5 -89.5q-141 0 -228 89.5t-87 227.5zM195 299 q0 -92 53 -148.5t145 -56.5q91 0 143 56.5t52 148.5v182h-199q-88 0 -141 -52.5t-53 -129.5zM219 1239q0 34 21 55t55 21t55 -21t21 -55t-21 -55t-55 -21t-55 21t-21 55zM424 1239q0 34 21 55t55 21t54.5 -21t20.5 -55t-20.5 -55t-54.5 -21t-55 21t-21 55z" />
+<glyph unicode="&#xe5;" horiz-adv-x="796" d="M78 299q0 124 87 209.5t224 85.5h199v133q0 91 -52 148t-141 57q-81 0 -129.5 -51.5t-54.5 -137.5q-3 -20 -21 -20h-75q-21 0 -21 20q8 133 89.5 217t211.5 84q139 0 224.5 -90t85.5 -227v-428q0 -138 -86.5 -227.5t-225.5 -89.5q-141 0 -228 89.5t-87 227.5zM195 299 q0 -92 53 -148.5t145 -56.5q91 0 143 56.5t52 148.5v182h-199q-88 0 -141 -52.5t-53 -129.5zM258 1262q0 60 38 96.5t101 36.5t101.5 -36.5t38.5 -96.5q0 -62 -38.5 -100t-101.5 -38t-101 38t-38 100zM338 1260q0 -28 15.5 -44t43.5 -16q27 0 43.5 16.5t16.5 43.5 q0 26 -17 42.5t-43 16.5q-27 0 -43 -16t-16 -43z" />
+<glyph unicode="&#xe6;" horiz-adv-x="1243" d="M78 279q0 124 91 210t224 86h170v152q0 88 -52 146.5t-128 58.5q-71 0 -120.5 -52.5t-55.5 -136.5q0 -20 -21 -20h-75q-21 0 -21 20q8 131 90 216t203 85q148 0 238 -151q94 151 245 151q136 0 217.5 -81.5t81.5 -210.5q0 -125 -86.5 -207t-230.5 -82h-168v-162 q0 -94 50.5 -151.5t137.5 -57.5q85 0 130.5 55.5t50.5 159.5q0 21 20 21h76q20 0 20 -21q-6 -151 -84.5 -239t-212.5 -88q-160 0 -245 149q-39 -68 -102 -108.5t-146 -40.5q-132 0 -214.5 84.5t-82.5 214.5zM195 279q0 -84 48 -135.5t132 -51.5q87 0 137.5 57t50.5 152v162 h-170q-88 0 -143 -53t-55 -131zM680 575h168q99 0 150 49t51 128q0 83 -47.5 131.5t-135.5 48.5q-84 0 -135 -57.5t-51 -147.5v-152z" />
+<glyph unicode="&#xe7;" horiz-adv-x="786" d="M92 301v422q0 139 85 230t222 91q132 0 216 -84.5t92 -216.5q0 -20 -21 -20h-76q-20 0 -20 20q-6 86 -56.5 137.5t-134.5 51.5q-88 0 -139 -57.5t-51 -151.5v-422q0 -94 52 -151.5t142 -57.5q85 0 137 57t58 152q0 21 20 21h76q9 0 15 -6t6 -15q-8 -131 -81 -218.5 t-192 -100.5l-12 -72h12q66 -5 111 -48t45 -106q0 -76 -51 -121t-131 -45q-74 0 -124 39t-56 107q-3 20 18 20h57q18 0 21 -18q6 -29 28.5 -44.5t55.5 -15.5q38 0 62 21t24 57q0 31 -23.5 50.5t-58.5 19.5q-39 0 -72 -10q-9 -3 -16 4l-4 4q-8 8 -6 16l26 144 q-117 19 -186.5 105.5t-69.5 211.5z" />
+<glyph unicode="&#xe8;" horiz-adv-x="796" d="M92 303v416q0 143 85.5 233t228.5 90q139 0 226 -89t87 -226q0 -129 -87 -214t-226 -85h-197v-125q0 -94 53 -151.5t144 -57.5q86 0 138.5 57.5t55.5 151.5q0 21 21 21h75q9 0 15 -6t6 -15q-4 -145 -90 -233t-221 -88q-141 0 -227.5 88t-86.5 233zM209 541h197 q91 0 143.5 51.5t52.5 134.5q0 91 -52.5 147t-143.5 56q-94 0 -145.5 -57t-51.5 -154v-178zM217.5 1368.5q3.5 7.5 15.5 7.5h93q14 0 24 -14l121 -193q6 -11 2 -17.5t-16 -6.5h-68q-20 0 -27 12l-141 195q-7 9 -3.5 16.5z" />
+<glyph unicode="&#xe9;" horiz-adv-x="796" d="M92 303v416q0 143 85.5 233t228.5 90q139 0 226 -89t87 -226q0 -129 -87 -214t-226 -85h-197v-125q0 -94 53 -151.5t144 -57.5q86 0 138.5 57.5t55.5 151.5q0 21 21 21h75q9 0 15 -6t6 -15q-4 -145 -90 -233t-221 -88q-141 0 -227.5 88t-86.5 233zM209 541h197 q91 0 143.5 51.5t52.5 134.5q0 91 -52.5 147t-143.5 56q-94 0 -145.5 -57t-51.5 -154v-178zM309.5 1151.5q-4.5 6.5 1.5 17.5l121 193q10 14 25 14h92q12 0 15.5 -7.5t-3.5 -16.5l-141 -195q-7 -12 -27 -12h-67q-12 0 -16.5 6.5z" />
+<glyph unicode="&#xea;" horiz-adv-x="796" d="M92 303v416q0 143 85.5 233t228.5 90q139 0 226 -89t87 -226q0 -129 -87 -214t-226 -85h-197v-125q0 -94 53 -151.5t144 -57.5q86 0 138.5 57.5t55.5 151.5q0 21 21 21h75q9 0 15 -6t6 -15q-4 -145 -90 -233t-221 -88q-141 0 -227.5 88t-86.5 233zM185 1152.5 q-4 7.5 3 16.5l142 195q7 12 24 12h95q17 0 24 -12l141 -195q8 -9 4 -16.5t-16 -7.5h-65q-18 0 -27 12l-109 133l-108 -133q-9 -12 -27 -12h-65q-12 0 -16 7.5zM209 541h197q91 0 143.5 51.5t52.5 134.5q0 91 -52.5 147t-143.5 56q-94 0 -145.5 -57t-51.5 -154v-178z" />
+<glyph unicode="&#xeb;" horiz-adv-x="796" d="M92 303v416q0 143 85.5 233t228.5 90q139 0 226 -89t87 -226q0 -129 -87 -214t-226 -85h-197v-125q0 -94 53 -151.5t144 -57.5q86 0 138.5 57.5t55.5 151.5q0 21 21 21h75q9 0 15 -6t6 -15q-4 -145 -90 -233t-221 -88q-141 0 -227.5 88t-86.5 233zM209 541h197 q91 0 143.5 51.5t52.5 134.5q0 91 -52.5 147t-143.5 56q-94 0 -145.5 -57t-51.5 -154v-178zM223 1239q0 34 21 55t55 21t55 -21t21 -55t-21 -55t-55 -21t-55 21t-21 55zM428 1239q0 34 21 55t55 21t55 -21t21 -55t-21 -55t-55 -21t-55 21t-21 55z" />
+<glyph unicode="&#xec;" horiz-adv-x="382" d="M7 1368.5q4 7.5 16 7.5h92q13 0 24 -14l121 -193q6 -11 2 -17.5t-16 -6.5h-68q-19 0 -26 12l-142 195q-7 9 -3 16.5zM133 20v984q0 20 21 20h75q21 0 21 -20v-984q0 -20 -21 -20h-75q-21 0 -21 20z" />
+<glyph unicode="&#xed;" horiz-adv-x="382" d="M98.5 1151.5q-4.5 6.5 1.5 17.5l121 193q10 14 25 14h92q12 0 16 -7.5t-4 -16.5l-141 -195q-7 -12 -27 -12h-67q-12 0 -16.5 6.5zM133 20v984q0 20 21 20h75q21 0 21 -20v-984q0 -20 -21 -20h-75q-21 0 -21 20z" />
+<glyph unicode="&#xee;" horiz-adv-x="434" d="M31.5 1152.5q-3.5 7.5 3.5 16.5l141 195q7 12 25 12h94q17 0 24 -12l142 -195q7 -9 3.5 -16.5t-15.5 -7.5h-66q-18 0 -27 12l-108 133l-109 -133q-9 -12 -26 -12h-66q-12 0 -15.5 7.5zM190 20v984q0 20 21 20h76q20 0 20 -20v-984q0 -20 -20 -20h-76q-21 0 -21 20z" />
+<glyph unicode="&#xef;" horiz-adv-x="360" d="M23 1237q0 31 18.5 49.5t48.5 18.5q31 0 51.5 -19t20.5 -49q0 -31 -20.5 -50.5t-51.5 -19.5q-29 0 -48 19.5t-19 50.5zM121 20v984q0 20 20 20h76q21 0 21 -20v-984q0 -20 -21 -20h-76q-20 0 -20 20zM203 1237q0 30 20 49t51 19q28 0 48 -19t20 -49t-20 -50t-48 -20 q-31 0 -51 19.5t-20 50.5z" />
+<glyph unicode="&#xf0;" horiz-adv-x="851" d="M92 307v416q0 139 87 230t227 91q114 0 196 -102v72q0 128 -72 215l-176 -111q-10 -6 -17 -1.5t-7 16.5v51q0 14 14 24l125 78q-79 53 -184 53h-41q-9 0 -15 6t-6 15v72q0 20 21 20h41q174 0 288 -100l119 73q10 6 17.5 2t7.5 -16v-51q0 -14 -15 -25l-71 -45 q88 -114 88 -276v-707q0 -144 -86 -235.5t-227 -91.5t-227.5 91.5t-86.5 235.5zM209 307q0 -98 52 -156.5t145 -58.5q92 0 144 58.5t52 156.5v416q0 94 -52.5 151.5t-143.5 57.5t-144 -57.5t-53 -151.5v-416z" />
+<glyph unicode="&#xf1;" horiz-adv-x="835" d="M113 20v703q0 139 85 230t220 91t220 -91t85 -230v-703q0 -20 -21 -20h-75q-21 0 -21 20v703q0 95 -50.5 153t-137.5 58t-138 -58t-51 -153v-703q0 -20 -20 -20h-76q-20 0 -20 20zM193 1202q6 66 42.5 105t92.5 39q34 0 64.5 -16.5t54 -33t40.5 -16.5q33 0 39 43 q3 20 23 20h63q21 0 21 -20q-6 -65 -43 -104t-92 -39q-33 0 -63.5 16.5t-54.5 32.5t-42 16q-33 0 -39 -43q-3 -20 -23 -20h-63q-20 0 -20 20z" />
+<glyph unicode="&#xf2;" horiz-adv-x="815" d="M92 301v422q0 140 87.5 230.5t228.5 90.5t228 -90.5t87 -230.5v-422q0 -140 -87 -230.5t-228 -90.5t-228.5 90.5t-87.5 230.5zM211 301q0 -95 53 -153t144 -58t143.5 58t52.5 153v422q0 95 -52.5 153t-143.5 58t-144 -58t-53 -153v-422zM224 1368.5q4 7.5 16 7.5h92 q14 0 24 -14l121 -193q6 -11 2 -17.5t-16 -6.5h-68q-19 0 -26 12l-142 195q-7 9 -3 16.5z" />
+<glyph unicode="&#xf3;" horiz-adv-x="815" d="M92 301v422q0 140 87.5 230.5t228.5 90.5t228 -90.5t87 -230.5v-422q0 -140 -87 -230.5t-228 -90.5t-228.5 90.5t-87.5 230.5zM211 301q0 -95 53 -153t144 -58t143.5 58t52.5 153v422q0 95 -52.5 153t-143.5 58t-144 -58t-53 -153v-422zM315.5 1151.5q-4.5 6.5 1.5 17.5 l121 193q10 14 25 14h92q12 0 15.5 -7.5t-3.5 -16.5l-141 -195q-7 -12 -27 -12h-67q-12 0 -16.5 6.5z" />
+<glyph unicode="&#xf4;" horiz-adv-x="815" d="M92 301v422q0 140 87.5 230.5t228.5 90.5t228 -90.5t87 -230.5v-422q0 -140 -87 -230.5t-228 -90.5t-228.5 90.5t-87.5 230.5zM191.5 1152.5q-3.5 7.5 3.5 16.5l141 195q7 12 24 12h95q17 0 24 -12l142 -195q7 -9 3 -16.5t-16 -7.5h-65q-18 0 -27 12l-108 133l-109 -133 q-9 -12 -27 -12h-65q-12 0 -15.5 7.5zM211 301q0 -95 53 -153t144 -58t143.5 58t52.5 153v422q0 95 -52.5 153t-143.5 58t-144 -58t-53 -153v-422z" />
+<glyph unicode="&#xf5;" horiz-adv-x="815" d="M92 301v422q0 140 87.5 230.5t228.5 90.5t228 -90.5t87 -230.5v-422q0 -140 -87 -230.5t-228 -90.5t-228.5 90.5t-87.5 230.5zM182 1202q6 66 42.5 105t92.5 39q34 0 65 -16.5t54.5 -33t40.5 -16.5q33 0 39 43q3 20 23 20h63q21 0 21 -20q-6 -65 -43.5 -104t-92.5 -39 q-33 0 -63.5 16.5t-54 32.5t-41.5 16q-33 0 -39 -43q-3 -20 -23 -20h-63q-21 0 -21 20zM211 301q0 -95 53 -153t144 -58t143.5 58t52.5 153v422q0 95 -52.5 153t-143.5 58t-144 -58t-53 -153v-422z" />
+<glyph unicode="&#xf6;" horiz-adv-x="815" d="M92 301v422q0 140 87.5 230.5t228.5 90.5t228 -90.5t87 -230.5v-422q0 -140 -87 -230.5t-228 -90.5t-228.5 90.5t-87.5 230.5zM211 301q0 -95 53 -153t144 -58t143.5 58t52.5 153v422q0 95 -52.5 153t-143.5 58t-144 -58t-53 -153v-422zM229 1239q0 34 21 55t55 21 t55 -21t21 -55t-21 -55t-55 -21t-55 21t-21 55zM434 1239q0 34 21 55t55 21t55 -21t21 -55t-21 -55t-55 -21t-55 21t-21 55z" />
+<glyph unicode="&#xf7;" horiz-adv-x="942" d="M102 700v70q0 9 6 15t15 6h696q9 0 15 -6t6 -15v-70q0 -20 -21 -20h-696q-21 0 -21 20zM377 428q0 40 27 67t67 27q39 0 66.5 -27.5t27.5 -66.5q0 -38 -28 -66t-66 -28q-39 0 -66.5 27.5t-27.5 66.5zM377 1026q0 40 27 67t67 27q39 0 66.5 -27.5t27.5 -66.5 q0 -38 -28 -66t-66 -28q-39 0 -66.5 27.5t-27.5 66.5z" />
+<glyph unicode="&#xf8;" horiz-adv-x="815" d="M92 301v422q0 140 87.5 230.5t228.5 90.5q44 0 75 -8l19 64q3 16 22 16h68q24 0 18 -22l-26 -97q66 -43 102.5 -114t36.5 -160v-422q0 -140 -87 -230.5t-228 -90.5q-49 0 -103 14l-20 -70q-3 -16 -23 -16h-67q-25 0 -19 22l33 115q-56 43 -86.5 110t-30.5 146zM211 301 q0 -69 33 -127l211 756q-28 4 -47 4q-91 0 -144 -58t-53 -153v-422zM334 102q34 -12 74 -12q91 0 143.5 58t52.5 153v422q0 98 -53 154z" />
+<glyph unicode="&#xf9;" horiz-adv-x="835" d="M113 301v703q0 20 20 20h76q20 0 20 -20v-703q0 -95 51 -153t138 -58t137.5 58t50.5 153v703q0 20 21 20h75q21 0 21 -20v-703q0 -139 -85 -230t-220 -91t-220 91t-85 230zM230 1368.5q4 7.5 16 7.5h92q14 0 24 -14l121 -193q6 -11 2 -17.5t-16 -6.5h-68q-19 0 -26 12 l-142 195q-7 9 -3 16.5z" />
+<glyph unicode="&#xfa;" horiz-adv-x="835" d="M113 301v703q0 20 20 20h76q20 0 20 -20v-703q0 -95 51 -153t138 -58t137.5 58t50.5 153v703q0 20 21 20h75q21 0 21 -20v-703q0 -139 -85 -230t-220 -91t-220 91t-85 230zM322 1151.5q-4 6.5 2 17.5l120 193q10 14 25 14h92q12 0 15.5 -7.5t-3.5 -16.5l-141 -195 q-7 -12 -26 -12h-68q-12 0 -16 6.5z" />
+<glyph unicode="&#xfb;" horiz-adv-x="835" d="M113 301v703q0 20 20 20h76q20 0 20 -20v-703q0 -95 51 -153t138 -58t137.5 58t50.5 153v703q0 20 21 20h75q21 0 21 -20v-703q0 -139 -85 -230t-220 -91t-220 91t-85 230zM197.5 1152.5q-3.5 7.5 3.5 16.5l141 195q7 12 25 12h94q17 0 24 -12l142 -195q7 -9 3 -16.5 t-16 -7.5h-65q-18 0 -27 12l-108 133l-109 -133q-9 -12 -26 -12h-66q-12 0 -15.5 7.5z" />
+<glyph unicode="&#xfc;" horiz-adv-x="835" d="M113 301v703q0 20 20 20h76q20 0 20 -20v-703q0 -95 51 -153t138 -58t137.5 58t50.5 153v703q0 20 21 20h75q21 0 21 -20v-703q0 -139 -85 -230t-220 -91t-220 91t-85 230zM236 1239q0 34 20.5 55t54.5 21t55 -21t21 -55t-21 -55t-55 -21t-54.5 21t-20.5 55zM440 1239 q0 34 21 55t55 21t55 -21t21 -55t-21 -55t-55 -21t-55 21t-21 55z" />
+<glyph unicode="&#xfd;" horiz-adv-x="868" d="M113 -109q0 21 20 21h76q20 0 20 -21q3 -98 54.5 -153t140.5 -55q92 0 143 55t51 153v234q-82 -105 -194 -105q-138 0 -224.5 91t-86.5 231v662q0 20 20 20h76q20 0 20 -20v-662q0 -93 52.5 -151t142.5 -58t142 57.5t52 151.5v662q0 20 21 20h76q20 0 20 -20v-1113 q0 -145 -85.5 -233t-225.5 -88q-134 0 -219.5 88t-91.5 233zM338 1151.5q-4 6.5 2 17.5l121 193q11 14 24 14h93q12 0 16 -7.5t-4 -16.5l-141 -195q-7 -12 -27 -12h-68q-12 0 -16 6.5z" />
+<glyph unicode="&#xfe;" horiz-adv-x="839" d="M133 -389v1802q0 9 6 15t15 6h75q9 0 15 -6t6 -15v-469q77 100 190 100q137 0 222.5 -91t85.5 -230v-422q0 -139 -85.5 -230t-222.5 -91q-113 0 -190 100v-469q0 -9 -6 -15t-15 -6h-75q-9 0 -15 6t-6 15zM250 301q0 -94 51 -151.5t139 -57.5t139.5 57.5t51.5 151.5v422 q0 94 -51.5 151.5t-139.5 57.5t-139 -57.5t-51 -151.5v-422z" />
+<glyph unicode="&#xff;" horiz-adv-x="868" d="M113 -109q0 21 20 21h76q20 0 20 -21q3 -98 54.5 -153t140.5 -55q92 0 143 55t51 153v234q-82 -105 -194 -105q-138 0 -224.5 91t-86.5 231v662q0 20 20 20h76q20 0 20 -20v-662q0 -93 52.5 -151t142.5 -58t142 57.5t52 151.5v662q0 20 21 20h76q20 0 20 -20v-1113 q0 -145 -85.5 -233t-225.5 -88q-134 0 -219.5 88t-91.5 233zM252 1239q0 34 21 55t55 21t54.5 -21t20.5 -55t-20.5 -55t-54.5 -21t-55 21t-21 55zM457 1239q0 34 20.5 55t54.5 21t55 -21t21 -55t-21 -55t-55 -21t-54.5 21t-20.5 55z" />
+<glyph unicode="&#x152;" horiz-adv-x="1280" d="M100 338v758q0 153 92 253.5t234 100.5q95 0 165.5 -47t106.5 -129q38 77 105 121.5t155 44.5h232q20 0 20 -21v-71q0 -21 -20 -21h-232q-89 0 -145.5 -72t-56.5 -178v-293h358q21 0 21 -20v-72q0 -20 -21 -20h-358v-316q0 -106 56.5 -176.5t145.5 -70.5h232q20 0 20 -21 v-74q0 -20 -20 -20h-232q-88 0 -155 44.5t-105 121.5q-36 -82 -106.5 -129t-165.5 -47q-142 0 -234 100.5t-92 253.5zM223 338q0 -105 57 -172.5t146 -67.5q91 0 149 73.5t58 184.5v721q0 111 -58 184.5t-149 73.5q-89 0 -146 -67.5t-57 -171.5v-758z" />
+<glyph unicode="&#x153;" horiz-adv-x="1257" d="M92 301v422q0 139 83.5 230t217.5 91q165 0 242 -141q80 141 237 141q131 0 213 -87t82 -224q0 -132 -86.5 -217.5t-214.5 -85.5h-172v-129q0 -94 50 -151.5t135 -57.5q81 0 129.5 51.5t54.5 137.5q0 20 20 20h76q21 0 21 -20q-8 -132 -90 -216.5t-211 -84.5 q-155 0 -242 157q-91 -157 -244 -157q-134 0 -217.5 91t-83.5 230zM209 301q0 -94 49.5 -151.5t134.5 -57.5t135 57.5t50 151.5v422q0 94 -50 151.5t-135 57.5t-134.5 -57.5t-49.5 -151.5v-422zM694 543h172q80 0 132.5 52t52.5 138q0 91 -48 145t-131 54q-82 0 -130 -57 t-48 -150v-182z" />
+<glyph unicode="&#x178;" horiz-adv-x="847" d="M90 815v598q0 9 6 15t15 6h82q20 0 20 -21v-598q0 -103 59 -171.5t152 -68.5t152 68.5t59 171.5v598q0 21 20 21h82q9 0 15 -6t6 -15v-598q0 -134 -75 -230t-198 -116v-449q0 -20 -20 -20h-82q-21 0 -21 20v449q-122 20 -197 116t-75 230zM246 1669q0 34 21 55t55 21 t54.5 -21t20.5 -55t-20.5 -55t-54.5 -21t-55 21t-21 55zM451 1669q0 34 20.5 55t54.5 21t55 -21t21 -55t-21 -55t-55 -21t-54.5 21t-20.5 55z" />
+<glyph unicode="&#x2000;" horiz-adv-x="908" />
+<glyph unicode="&#x2001;" horiz-adv-x="1817" />
+<glyph unicode="&#x2002;" horiz-adv-x="908" />
+<glyph unicode="&#x2003;" horiz-adv-x="1817" />
+<glyph unicode="&#x2004;" horiz-adv-x="605" />
+<glyph unicode="&#x2005;" horiz-adv-x="454" />
+<glyph unicode="&#x2006;" horiz-adv-x="302" />
+<glyph unicode="&#x2007;" horiz-adv-x="302" />
+<glyph unicode="&#x2008;" horiz-adv-x="227" />
+<glyph unicode="&#x2009;" horiz-adv-x="363" />
+<glyph unicode="&#x200a;" horiz-adv-x="100" />
+<glyph unicode="&#x2010;" horiz-adv-x="581" d="M35 489v74q0 21 20 21h471q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-471q-20 0 -20 20z" />
+<glyph unicode="&#x2011;" horiz-adv-x="581" d="M35 489v74q0 21 20 21h471q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-471q-20 0 -20 20z" />
+<glyph unicode="&#x2012;" horiz-adv-x="581" d="M35 489v74q0 21 20 21h471q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-471q-20 0 -20 20z" />
+<glyph unicode="&#x2013;" horiz-adv-x="786" d="M35 489v74q0 21 20 21h676q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-676q-20 0 -20 20z" />
+<glyph unicode="&#x2014;" horiz-adv-x="1044" d="M41 489v74q0 21 20 21h922q9 0 15 -6t6 -15v-74q0 -20 -21 -20h-922q-20 0 -20 20z" />
+<glyph unicode="&#x2018;" horiz-adv-x="208" d="M39 1100l57 315q3 19 23 19h49q18 0 18 -21l-18 -315q0 -21 -23 -21h-88q-10 0 -15 6.5t-3 16.5z" />
+<glyph unicode="&#x2019;" horiz-adv-x="208" d="M27 1098l18 315q0 21 23 21h88q10 0 15 -6.5t3 -16.5l-57 -315q-3 -19 -23 -19h-49q-18 0 -18 21z" />
+<glyph unicode="&#x201a;" horiz-adv-x="225" d="M31 -190l18 315q0 20 23 20h88q22 0 18 -22l-57 -316q-3 -18 -23 -18h-49q-18 0 -18 21z" />
+<glyph unicode="&#x201c;" horiz-adv-x="413" d="M35 1100l57 315q3 19 23 19h49q18 0 18 -21l-18 -315q0 -21 -23 -21h-88q-10 0 -15 6.5t-3 16.5zM240 1100l57 315q3 19 22 19h50q18 0 18 -21l-18 -315q0 -21 -23 -21h-88q-10 0 -15 6.5t-3 16.5z" />
+<glyph unicode="&#x201d;" horiz-adv-x="430" d="M31 1098l18 315q0 21 23 21h88q10 0 15 -6.5t3 -16.5l-57 -315q-3 -19 -23 -19h-49q-18 0 -18 21zM236 1098l18 315q0 21 22 21h89q10 0 15 -6.5t3 -16.5l-57 -315q-3 -19 -23 -19h-49q-18 0 -18 21z" />
+<glyph unicode="&#x201e;" horiz-adv-x="225" d="M31 -190l18 315q0 20 23 20h88q22 0 18 -22l-57 -316q-3 -18 -23 -18h-49q-18 0 -18 21z" />
+<glyph unicode="&#x2022;" horiz-adv-x="360" d="M51 512q0 54 37.5 92.5t89.5 38.5q54 0 92.5 -38.5t38.5 -92.5t-38.5 -90.5t-92.5 -36.5q-53 0 -90 36.5t-37 90.5z" />
+<glyph unicode="&#x2026;" horiz-adv-x="954" d="M55 74q0 40 27.5 67t67.5 27q39 0 66.5 -27.5t27.5 -66.5q0 -38 -28 -66t-66 -28q-40 0 -67.5 28t-27.5 66zM383 74q0 40 27 67t67 27q39 0 66.5 -27.5t27.5 -66.5q0 -38 -28 -66t-66 -28q-39 0 -66.5 27.5t-27.5 66.5zM711 74q0 40 27 67t67 27q39 0 66.5 -27.5 t27.5 -66.5q0 -38 -28 -66t-66 -28q-39 0 -66.5 27.5t-27.5 66.5z" />
+<glyph unicode="&#x202f;" horiz-adv-x="363" />
+<glyph unicode="&#x2039;" horiz-adv-x="495" d="M74 483q-30 43 0 86l223 301q8 13 27 13h79q12 0 16 -8t-3 -17l-252 -332l252 -331q7 -9 3 -17t-16 -8h-79q-20 0 -27 12z" />
+<glyph unicode="&#x203a;" horiz-adv-x="495" d="M76 178q-4 8 4 17l252 331l-252 332q-8 9 -4 17t16 8h80q19 0 27 -13l223 -301q30 -43 0 -86l-223 -301q-7 -12 -27 -12h-80q-12 0 -16 8z" />
+<glyph unicode="&#x205f;" horiz-adv-x="454" />
+<glyph unicode="&#x20ac;" horiz-adv-x="972" d="M70 573v56q0 20 20 20h135v133h-135q-20 0 -20 21v55q0 21 20 21h135v223q0 158 91.5 255t242.5 97q145 0 237.5 -104.5t96.5 -274.5q0 -20 -21 -20h-81q-21 0 -21 20q-4 126 -60.5 195t-150.5 69q-100 0 -155.5 -62.5t-55.5 -174.5v-223h367q20 0 20 -21v-55 q0 -21 -20 -21h-367v-133h367q20 0 20 -20v-56q0 -20 -20 -20h-367v-221q0 -113 55.5 -175.5t155.5 -62.5q101 0 159.5 73t61.5 202q0 20 21 20h82q20 0 20 -18q-4 -177 -98.5 -284t-245.5 -107t-242.5 97t-91.5 255v221h-135q-20 0 -20 20z" />
+<glyph unicode="&#x2122;" horiz-adv-x="1087" d="M47 1362v61q0 11 10 11h312q10 0 10 -11v-61q0 -10 -10 -10h-115v-465q0 -10 -10 -10h-66q-10 0 -10 10v465h-111q-10 0 -10 10zM430 889v350q0 95 45 148t127 53q81 0 127 -90q46 90 127 90q82 0 127 -53t45 -148v-350q0 -12 -10 -12h-64q-12 0 -12 12v350 q0 119 -86 119q-84 0 -84 -119v-350q0 -12 -12 -12h-62q-12 0 -12 12v350q0 119 -84 119q-86 0 -86 -119v-350q0 -5 -4 -8.5t-8 -3.5h-64q-10 0 -10 12z" />
+<glyph unicode="&#x25fc;" horiz-adv-x="1024" d="M0 0v1024h1024v-1024h-1024z" />
+<hkern u1="H" u2="j" k="20" />
+<hkern u1="I" u2="j" k="20" />
+<hkern u1="g" u2="j" k="100" />
+<hkern u1="q" u2="j" k="43" />
+<hkern u1="y" u2="j" k="55" />
+<hkern u1="&#xcc;" u2="j" k="20" />
+<hkern u1="&#xcd;" u2="j" k="20" />
+<hkern u1="&#xce;" u2="j" k="20" />
+<hkern u1="&#xcf;" u2="j" k="20" />
+<hkern u1="&#xee;" u2="&#x3f;" k="-70" />
+<hkern u1="&#xef;" u2="&#x3f;" k="-27" />
+<hkern g1="B,germandbls" 	g2="J" 	k="23" />
+<hkern g1="B,germandbls" 	g2="C,E,G,O,Q,Ccedilla,Egrave,Eacute,Ecircumflex,Edieresis,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,OE" 	k="37" />
+<hkern g1="B,germandbls" 	g2="T" 	k="49" />
+<hkern g1="B,germandbls" 	g2="L,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	k="6" />
+<hkern g1="B,germandbls" 	g2="j" 	k="82" />
+<hkern g1="B,germandbls" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="20" />
+<hkern g1="B,germandbls" 	g2="question" 	k="20" />
+<hkern g1="C,Ccedilla" 	g2="J" 	k="37" />
+<hkern g1="C,Ccedilla" 	g2="L,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	k="4" />
+<hkern g1="C,Ccedilla" 	g2="j" 	k="41" />
+<hkern g1="C,Ccedilla" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="39" />
+<hkern g1="C,Ccedilla" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="20" />
+<hkern g1="C,Ccedilla" 	g2="m,n,p,r,ntilde" 	k="53" />
+<hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,OE" 	g2="J" 	k="72" />
+<hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,OE" 	g2="j" 	k="41" />
+<hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,OE" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="18" />
+<hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,OE" 	g2="f" 	k="33" />
+<hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,OE" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="41" />
+<hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,OE" 	g2="v" 	k="6" />
+<hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,OE" 	g2="z" 	k="25" />
+<hkern g1="F" 	g2="J" 	k="225" />
+<hkern g1="F" 	g2="j" 	k="104" />
+<hkern g1="F" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="41" />
+<hkern g1="F" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="41" />
+<hkern g1="F" 	g2="m,n,p,r,ntilde" 	k="20" />
+<hkern g1="F" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="76" />
+<hkern g1="F" 	g2="v" 	k="41" />
+<hkern g1="F" 	g2="z" 	k="82" />
+<hkern g1="F" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="61" />
+<hkern g1="F" 	g2="s" 	k="25" />
+<hkern g1="F" 	g2="t" 	k="27" />
+<hkern g1="F" 	g2="x" 	k="61" />
+<hkern g1="F" 	g2="comma" 	k="211" />
+<hkern g1="F" 	g2="period" 	k="211" />
+<hkern g1="G" 	g2="T" 	k="16" />
+<hkern g1="G" 	g2="j" 	k="61" />
+<hkern g1="H,I,Igrave,Iacute,Icircumflex,Idieresis" 	g2="T" 	k="20" />
+<hkern g1="H,I,Igrave,Iacute,Icircumflex,Idieresis" 	g2="L,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	k="23" />
+<hkern g1="H,I,Igrave,Iacute,Icircumflex,Idieresis" 	g2="j" 	k="88" />
+<hkern g1="H,I,Igrave,Iacute,Icircumflex,Idieresis" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="12" />
+<hkern g1="H,I,Igrave,Iacute,Icircumflex,Idieresis" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="18" />
+<hkern g1="H,I,Igrave,Iacute,Icircumflex,Idieresis" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="18" />
+<hkern g1="H,I,Igrave,Iacute,Icircumflex,Idieresis" 	g2="comma" 	k="63" />
+<hkern g1="H,I,Igrave,Iacute,Icircumflex,Idieresis" 	g2="period" 	k="61" />
+<hkern g1="H,I,Igrave,Iacute,Icircumflex,Idieresis" 	g2="quoteright" 	k="37" />
+<hkern g1="K" 	g2="J" 	k="61" />
+<hkern g1="K" 	g2="C,E,G,O,Q,Ccedilla,Egrave,Eacute,Ecircumflex,Edieresis,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,OE" 	k="27" />
+<hkern g1="K" 	g2="T" 	k="41" />
+<hkern g1="K" 	g2="j" 	k="76" />
+<hkern g1="K" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="33" />
+<hkern g1="K" 	g2="question" 	k="20" />
+<hkern g1="K" 	g2="m,n,p,r,ntilde" 	k="61" />
+<hkern g1="K" 	g2="f" 	k="47" />
+<hkern g1="K" 	g2="z" 	k="37" />
+<hkern g1="K" 	g2="s" 	k="51" />
+<hkern g1="K" 	g2="t" 	k="55" />
+<hkern g1="K" 	g2="A,B,F,M,N,P,R,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Ntilde,germandbls" 	k="10" />
+<hkern g1="K" 	g2="Y,Yacute,Ydieresis" 	k="18" />
+<hkern g1="K" 	g2="hyphen" 	k="8" />
+<hkern g1="L" 	g2="J" 	k="63" />
+<hkern g1="L" 	g2="C,E,G,O,Q,Ccedilla,Egrave,Eacute,Ecircumflex,Edieresis,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,OE" 	k="47" />
+<hkern g1="L" 	g2="T" 	k="129" />
+<hkern g1="L" 	g2="L,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	k="45" />
+<hkern g1="L" 	g2="j" 	k="100" />
+<hkern g1="L" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="72" />
+<hkern g1="L" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="27" />
+<hkern g1="L" 	g2="m,n,p,r,ntilde" 	k="20" />
+<hkern g1="L" 	g2="f" 	k="98" />
+<hkern g1="L" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="61" />
+<hkern g1="L" 	g2="v" 	k="92" />
+<hkern g1="L" 	g2="z" 	k="20" />
+<hkern g1="L" 	g2="t" 	k="90" />
+<hkern g1="L" 	g2="quoteright" 	k="184" />
+<hkern g1="L" 	g2="A,B,F,M,N,P,R,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Ntilde,germandbls" 	k="25" />
+<hkern g1="L" 	g2="Y,Yacute,Ydieresis" 	k="164" />
+<hkern g1="L" 	g2="hyphen" 	k="143" />
+<hkern g1="L" 	g2="S" 	k="78" />
+<hkern g1="L" 	g2="V" 	k="98" />
+<hkern g1="L" 	g2="asterisk" 	k="184" />
+<hkern g1="L" 	g2="emdash" 	k="164" />
+<hkern g1="L" 	g2="endash" 	k="123" />
+<hkern g1="L" 	g2="quotedbl" 	k="223" />
+<hkern g1="L" 	g2="quotesingle" 	k="201" />
+<hkern g1="A,M,N,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Ntilde" 	g2="J" 	k="66" />
+<hkern g1="A,M,N,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Ntilde" 	g2="T" 	k="51" />
+<hkern g1="A,M,N,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Ntilde" 	g2="j" 	k="57" />
+<hkern g1="A,M,N,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Ntilde" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="31" />
+<hkern g1="A,M,N,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Ntilde" 	g2="z" 	k="4" />
+<hkern g1="A,M,N,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Ntilde" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="20" />
+<hkern g1="A,M,N,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Ntilde" 	g2="asterisk" 	k="61" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="J" 	k="61" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="T" 	k="43" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="j" 	k="96" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="8" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="f" 	k="4" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="z" 	k="41" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="18" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="comma" 	k="43" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="period" 	k="82" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="V" 	k="2" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="asterisk" 	k="61" />
+<hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash" 	g2="Z" 	k="10" />
+<hkern g1="P" 	g2="J" 	k="266" />
+<hkern g1="P" 	g2="T" 	k="20" />
+<hkern g1="P" 	g2="j" 	k="100" />
+<hkern g1="P" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="20" />
+<hkern g1="P" 	g2="m,n,p,r,ntilde" 	k="61" />
+<hkern g1="P" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="29" />
+<hkern g1="P" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="25" />
+<hkern g1="P" 	g2="s" 	k="18" />
+<hkern g1="P" 	g2="comma" 	k="246" />
+<hkern g1="P" 	g2="period" 	k="246" />
+<hkern g1="R" 	g2="J" 	k="102" />
+<hkern g1="R" 	g2="j" 	k="80" />
+<hkern g1="R" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="41" />
+<hkern g1="R" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="41" />
+<hkern g1="R" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="25" />
+<hkern g1="S" 	g2="J" 	k="61" />
+<hkern g1="S" 	g2="T" 	k="12" />
+<hkern g1="S" 	g2="j" 	k="74" />
+<hkern g1="S" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="16" />
+<hkern g1="S" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="27" />
+<hkern g1="S" 	g2="m,n,p,r,ntilde" 	k="20" />
+<hkern g1="S" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="37" />
+<hkern g1="S" 	g2="z" 	k="35" />
+<hkern g1="S" 	g2="t" 	k="18" />
+<hkern g1="S" 	g2="Y,Yacute,Ydieresis" 	k="12" />
+<hkern g1="S" 	g2="Z" 	k="10" />
+<hkern g1="T" 	g2="J" 	k="176" />
+<hkern g1="T" 	g2="C,E,G,O,Q,Ccedilla,Egrave,Eacute,Ecircumflex,Edieresis,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,OE" 	k="43" />
+<hkern g1="T" 	g2="j" 	k="113" />
+<hkern g1="T" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="137" />
+<hkern g1="T" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="90" />
+<hkern g1="T" 	g2="m,n,p,r,ntilde" 	k="123" />
+<hkern g1="T" 	g2="f" 	k="41" />
+<hkern g1="T" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="125" />
+<hkern g1="T" 	g2="v" 	k="82" />
+<hkern g1="T" 	g2="z" 	k="121" />
+<hkern g1="T" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="119" />
+<hkern g1="T" 	g2="s" 	k="121" />
+<hkern g1="T" 	g2="t" 	k="125" />
+<hkern g1="T" 	g2="x" 	k="121" />
+<hkern g1="T" 	g2="comma" 	k="143" />
+<hkern g1="T" 	g2="period" 	k="143" />
+<hkern g1="T" 	g2="hyphen" 	k="96" />
+<hkern g1="T" 	g2="D,H,I,K,Igrave,Iacute,Icircumflex,Idieresis,Thorn" 	k="8" />
+<hkern g1="T" 	g2="colon" 	k="215" />
+<hkern g1="T" 	g2="semicolon" 	k="160" />
+<hkern g1="Thorn" 	g2="j" 	k="123" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="J" 	k="63" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="L,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	k="4" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="j" 	k="82" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="23" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="12" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="m,n,p,r,ntilde" 	k="29" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="4" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="z" 	k="41" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="23" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="s" 	k="37" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="t" 	k="4" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="comma" 	k="82" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="period" 	k="123" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="A,B,F,M,N,P,R,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Ntilde,germandbls" 	k="-4" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="Z" 	k="20" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="colon" 	k="57" />
+<hkern g1="J,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	g2="semicolon" 	k="82" />
+<hkern g1="V" 	g2="J" 	k="145" />
+<hkern g1="V" 	g2="C,E,G,O,Q,Ccedilla,Egrave,Eacute,Ecircumflex,Edieresis,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,OE" 	k="2" />
+<hkern g1="V" 	g2="j" 	k="106" />
+<hkern g1="V" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="51" />
+<hkern g1="V" 	g2="m,n,p,r,ntilde" 	k="43" />
+<hkern g1="V" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="-20" />
+<hkern g1="V" 	g2="z" 	k="33" />
+<hkern g1="V" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="61" />
+<hkern g1="V" 	g2="s" 	k="51" />
+<hkern g1="V" 	g2="comma" 	k="123" />
+<hkern g1="V" 	g2="period" 	k="127" />
+<hkern g1="V" 	g2="Z" 	k="20" />
+<hkern g1="V" 	g2="colon" 	k="61" />
+<hkern g1="V" 	g2="semicolon" 	k="61" />
+<hkern g1="X" 	g2="J" 	k="51" />
+<hkern g1="X" 	g2="j" 	k="63" />
+<hkern g1="X" 	g2="S" 	k="2" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="J" 	k="164" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="j" 	k="94" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="57" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="18" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="m,n,p,r,ntilde" 	k="80" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="29" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="s" 	k="35" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="comma" 	k="184" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="Z" 	k="45" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="colon" 	k="41" />
+<hkern g1="Y,Yacute,Ydieresis" 	g2="semicolon" 	k="41" />
+<hkern g1="Z" 	g2="J" 	k="82" />
+<hkern g1="Z" 	g2="L,U,W,Ugrave,Uacute,Ucircumflex,Udieresis" 	k="20" />
+<hkern g1="Z" 	g2="j" 	k="74" />
+<hkern g1="Z" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="53" />
+<hkern g1="Z" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="33" />
+<hkern g1="Z" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="63" />
+<hkern g1="Z" 	g2="z" 	k="4" />
+<hkern g1="Z" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="43" />
+<hkern g1="Z" 	g2="t" 	k="12" />
+<hkern g1="Z" 	g2="Y,Yacute,Ydieresis" 	k="8" />
+<hkern g1="Z" 	g2="hyphen" 	k="102" />
+<hkern g1="Z" 	g2="S" 	k="20" />
+<hkern g1="c,ccedilla" 	g2="j" 	k="76" />
+<hkern g1="c,ccedilla" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="43" />
+<hkern g1="c,ccedilla" 	g2="m,n,p,r,ntilde" 	k="2" />
+<hkern g1="c,ccedilla" 	g2="s" 	k="20" />
+<hkern g1="c,ccedilla" 	g2="t" 	k="23" />
+<hkern g1="c,ccedilla" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="10" />
+<hkern g1="c,ccedilla" 	g2="v" 	k="2" />
+<hkern g1="c,ccedilla" 	g2="z" 	k="4" />
+<hkern g1="c,ccedilla" 	g2="question" 	k="72" />
+<hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,oe" 	g2="j" 	k="68" />
+<hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,oe" 	g2="m,n,p,r,ntilde" 	k="10" />
+<hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,oe" 	g2="question" 	k="61" />
+<hkern g1="f" 	g2="j" 	k="96" />
+<hkern g1="f" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="16" />
+<hkern g1="f" 	g2="m,n,p,r,ntilde" 	k="59" />
+<hkern g1="f" 	g2="s" 	k="20" />
+<hkern g1="f" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="18" />
+<hkern g1="f" 	g2="v" 	k="-4" />
+<hkern g1="f" 	g2="question" 	k="41" />
+<hkern g1="f" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="49" />
+<hkern g1="f" 	g2="period" 	k="147" />
+<hkern g1="f" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="29" />
+<hkern g1="f" 	g2="x" 	k="8" />
+<hkern g1="f" 	g2="comma" 	k="147" />
+<hkern g1="f" 	g2="hyphen" 	k="102" />
+<hkern g1="k" 	g2="j" 	k="74" />
+<hkern g1="k" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="25" />
+<hkern g1="k" 	g2="m,n,p,r,ntilde" 	k="20" />
+<hkern g1="k" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="12" />
+<hkern g1="k" 	g2="question" 	k="82" />
+<hkern g1="k" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="25" />
+<hkern g1="k" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="10" />
+<hkern g1="i,j,l,y,igrave,iacute,icircumflex,idieresis,yacute,ydieresis" 	g2="j" 	k="57" />
+<hkern g1="i,j,l,y,igrave,iacute,icircumflex,idieresis,yacute,ydieresis" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="4" />
+<hkern g1="i,j,l,y,igrave,iacute,icircumflex,idieresis,yacute,ydieresis" 	g2="m,n,p,r,ntilde" 	k="10" />
+<hkern g1="i,j,l,y,igrave,iacute,icircumflex,idieresis,yacute,ydieresis" 	g2="s" 	k="4" />
+<hkern g1="i,j,l,y,igrave,iacute,icircumflex,idieresis,yacute,ydieresis" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="4" />
+<hkern g1="i,j,l,y,igrave,iacute,icircumflex,idieresis,yacute,ydieresis" 	g2="question" 	k="84" />
+<hkern g1="i,j,l,y,igrave,iacute,icircumflex,idieresis,yacute,ydieresis" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="4" />
+<hkern g1="i,j,l,y,igrave,iacute,icircumflex,idieresis,yacute,ydieresis" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="16" />
+<hkern g1="g,h,m,n,q,ntilde" 	g2="j" 	k="137" />
+<hkern g1="g,h,m,n,q,ntilde" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="4" />
+<hkern g1="g,h,m,n,q,ntilde" 	g2="t" 	k="23" />
+<hkern g1="g,h,m,n,q,ntilde" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="16" />
+<hkern g1="g,h,m,n,q,ntilde" 	g2="z" 	k="12" />
+<hkern g1="g,h,m,n,q,ntilde" 	g2="question" 	k="82" />
+<hkern g1="g,h,m,n,q,ntilde" 	g2="period" 	k="20" />
+<hkern g1="g,h,m,n,q,ntilde" 	g2="f" 	k="39" />
+<hkern g1="g,h,m,n,q,ntilde" 	g2="braceright" 	k="20" />
+<hkern g1="a,b,o,p,agrave,aacute,acircumflex,atilde,adieresis,aring,ograve,oacute,ocircumflex,otilde,odieresis,oslash,thorn" 	g2="j" 	k="86" />
+<hkern g1="a,b,o,p,agrave,aacute,acircumflex,atilde,adieresis,aring,ograve,oacute,ocircumflex,otilde,odieresis,oslash,thorn" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="20" />
+<hkern g1="a,b,o,p,agrave,aacute,acircumflex,atilde,adieresis,aring,ograve,oacute,ocircumflex,otilde,odieresis,oslash,thorn" 	g2="question" 	k="80" />
+<hkern g1="a,b,o,p,agrave,aacute,acircumflex,atilde,adieresis,aring,ograve,oacute,ocircumflex,otilde,odieresis,oslash,thorn" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="12" />
+<hkern g1="a,b,o,p,agrave,aacute,acircumflex,atilde,adieresis,aring,ograve,oacute,ocircumflex,otilde,odieresis,oslash,thorn" 	g2="period" 	k="20" />
+<hkern g1="a,b,o,p,agrave,aacute,acircumflex,atilde,adieresis,aring,ograve,oacute,ocircumflex,otilde,odieresis,oslash,thorn" 	g2="comma" 	k="82" />
+<hkern g1="a,b,o,p,agrave,aacute,acircumflex,atilde,adieresis,aring,ograve,oacute,ocircumflex,otilde,odieresis,oslash,thorn" 	g2="braceright" 	k="31" />
+<hkern g1="r" 	g2="j" 	k="119" />
+<hkern g1="r" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="8" />
+<hkern g1="r" 	g2="m,n,p,r,ntilde" 	k="33" />
+<hkern g1="r" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="20" />
+<hkern g1="r" 	g2="v" 	k="-4" />
+<hkern g1="r" 	g2="question" 	k="20" />
+<hkern g1="r" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="20" />
+<hkern g1="r" 	g2="period" 	k="139" />
+<hkern g1="r" 	g2="semicolon" 	k="61" />
+<hkern g1="r" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="47" />
+<hkern g1="r" 	g2="comma" 	k="123" />
+<hkern g1="r" 	g2="hyphen" 	k="102" />
+<hkern g1="r" 	g2="emdash" 	k="61" />
+<hkern g1="r" 	g2="endash" 	k="102" />
+<hkern g1="r" 	g2="quoteright" 	k="-29" />
+<hkern g1="s" 	g2="j" 	k="66" />
+<hkern g1="s" 	g2="t" 	k="4" />
+<hkern g1="s" 	g2="question" 	k="102" />
+<hkern g1="s" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="20" />
+<hkern g1="t" 	g2="j" 	k="68" />
+<hkern g1="t" 	g2="s" 	k="4" />
+<hkern g1="t" 	g2="question" 	k="45" />
+<hkern g1="t" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="12" />
+<hkern g1="t" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="4" />
+<hkern g1="t" 	g2="f" 	k="-8" />
+<hkern g1="d,u,w,eth,ugrave,uacute,ucircumflex,udieresis" 	g2="j" 	k="61" />
+<hkern g1="d,u,w,eth,ugrave,uacute,ucircumflex,udieresis" 	g2="m,n,p,r,ntilde" 	k="18" />
+<hkern g1="d,u,w,eth,ugrave,uacute,ucircumflex,udieresis" 	g2="z" 	k="16" />
+<hkern g1="d,u,w,eth,ugrave,uacute,ucircumflex,udieresis" 	g2="question" 	k="133" />
+<hkern g1="d,u,w,eth,ugrave,uacute,ucircumflex,udieresis" 	g2="period" 	k="82" />
+<hkern g1="d,u,w,eth,ugrave,uacute,ucircumflex,udieresis" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="10" />
+<hkern g1="d,u,w,eth,ugrave,uacute,ucircumflex,udieresis" 	g2="f" 	k="2" />
+<hkern g1="v" 	g2="j" 	k="45" />
+<hkern g1="v" 	g2="m,n,p,r,ntilde" 	k="20" />
+<hkern g1="v" 	g2="z" 	k="-4" />
+<hkern g1="v" 	g2="question" 	k="59" />
+<hkern g1="v" 	g2="period" 	k="123" />
+<hkern g1="v" 	g2="comma" 	k="143" />
+<hkern g1="v" 	g2="f" 	k="-2" />
+<hkern g1="x" 	g2="j" 	k="59" />
+<hkern g1="x" 	g2="question" 	k="82" />
+<hkern g1="z" 	g2="j" 	k="61" />
+<hkern g1="z" 	g2="h,i,k,l,igrave,iacute,icircumflex,idieresis,thorn" 	k="25" />
+<hkern g1="z" 	g2="m,n,p,r,ntilde" 	k="10" />
+<hkern g1="z" 	g2="b,u,w,y,ugrave,uacute,ucircumflex,udieresis,yacute,ydieresis" 	k="6" />
+<hkern g1="z" 	g2="v" 	k="-2" />
+<hkern g1="z" 	g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae" 	k="25" />
+<hkern g1="z" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="33" />
+<hkern g1="asterisk" 	g2="m,n,p,r,ntilde" 	k="162" />
+<hkern g1="braceleft" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="-20" />
+<hkern g1="hyphen" 	g2="T" 	k="96" />
+<hkern g1="hyphen" 	g2="Z" 	k="51" />
+<hkern g1="parenleft" 	g2="C,E,G,O,Q,Ccedilla,Egrave,Eacute,Ecircumflex,Edieresis,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,OE" 	k="61" />
+<hkern g1="period" 	g2="c,d,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,eth,ograve,oacute,ocircumflex,otilde,odieresis,oslash,oe" 	k="20" />
+<hkern g1="quoteleft" 	g2="J" 	k="184" />
+<hkern g1="quoteleft" 	g2="j" 	k="82" />
+<hkern g1="quoteright" 	g2="m,n,p,r,ntilde" 	k="41" />
+<hkern g1="quoteright" 	g2="s" 	k="45" />
+<hkern g1="quoteright" 	g2="t" 	k="-31" />
+</font>
+</defs></svg> 
\ No newline at end of file
diff --git a/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.ttf b/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..cb16dc3f62336320a213d40ac73f14e43c5761b2
Binary files /dev/null and b/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.ttf differ
diff --git a/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.woff b/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.woff
new file mode 100644
index 0000000000000000000000000000000000000000..cc61488a0d530ae2bae44541565849c34fd93df8
Binary files /dev/null and b/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.woff differ
diff --git a/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.woff2 b/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..e288a89d22a0d8db28fc91c6ab29397560edca65
Binary files /dev/null and b/library/templates/Muscle/Assets/fonts/phenomena-regular-webfont.woff2 differ
diff --git a/library/templates/Muscle/Assets/images/banner.jpg b/library/templates/Muscle/Assets/images/banner.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..3aa39f85a654ed0721d43bd2d9c9182149da0d79
Binary files /dev/null and b/library/templates/Muscle/Assets/images/banner.jpg differ
diff --git a/library/templates/Muscle/Assets/images/logo.png b/library/templates/Muscle/Assets/images/logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..d677f72ff4ac8b80c0ef17f4107aea063038d97c
Binary files /dev/null and b/library/templates/Muscle/Assets/images/logo.png differ
diff --git a/library/templates/Muscle/Library/FormCustomizer.php b/library/templates/Muscle/Library/FormCustomizer.php
new file mode 100644
index 0000000000000000000000000000000000000000..fea2c6ae92434e72bc88c7fb272c9bea78e78d60
--- /dev/null
+++ b/library/templates/Muscle/Library/FormCustomizer.php
@@ -0,0 +1,27 @@
+<?php
+/**
+ * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class Muscle_Library_FormCustomizer extends Intonation_Library_FormCustomizer {
+  public function getTemplateForm($form) {
+    return (new Muscle_Library_FormCustomizer_Template($this->_template, $form))->getForm();
+  }
+}
diff --git a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Summary.php b/library/templates/Muscle/Library/FormCustomizer/Template.php
similarity index 56%
rename from library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Summary.php
rename to library/templates/Muscle/Library/FormCustomizer/Template.php
index deaafe90bb571b434c30f350b15503c081e00c91..aeec1f99715dfd7750fdf33017627d0aa7895ca0 100644
--- a/library/templates/Intonation/Library/View/Wrapper/Record/RichContent/Summary.php
+++ b/library/templates/Muscle/Library/FormCustomizer/Template.php
@@ -20,39 +20,18 @@
  */
 
 
-class Intonation_Library_View_Wrapper_Record_RichContent_Summary extends Intonation_Library_View_Wrapper_Record_RichContent_Section {
+class Muscle_Library_FormCustomizer_Template extends Intonation_Library_FormCustomizer_Template {
+  public function getForm() {
+    parent::getForm();
 
+    $this->_form
+      ->addElement('checkbox',
+                   $this->_template->withNameSpace('muscle_css'),
+                   ['label' => $this->_('muscle.css'),
+                    'order' => 3]);
 
-  public function getTitle() {
-    return $this->_('Résumé');
-  }
-
-
-  public function getContent() {
-    if ($this->_content)
-      return $this->_content;
-
-    return $this->_content = $this->_model->getResume();
-  }
-
-
-  public function getClass() {
-    return 'summary';
-  }
-
-
-  public function getNavUrl() {
-    return ['controller' => 'record',
-            'action' => 'summary'];
-  }
-
-
-  public function getNavIco() {
-    return 'summary';
-  }
-
+    $this->_addToTemplateGroup(['muscle_css']);
 
-  public function getNavTitle() {
-    return $this->_('Le résumé du document');
+    return $this;
   }
 }
diff --git a/library/templates/Muscle/Library/ProfilePatcher.php b/library/templates/Muscle/Library/ProfilePatcher.php
new file mode 100644
index 0000000000000000000000000000000000000000..a69f7ee121c0502fadc920fdc8429432f5023f30
--- /dev/null
+++ b/library/templates/Muscle/Library/ProfilePatcher.php
@@ -0,0 +1,380 @@
+<?php
+/**
+ * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class Muscle_Library_ProfilePatcher extends Intonation_Library_ProfilePatcher {
+
+  protected
+    $_main_menu,
+    $_help_menu,
+    $_social_network_top_menu,
+    $_credits_menu;
+
+  protected function _upgradeProfile() {
+    parent::_upgradeProfile();
+
+    $this->_profile
+      ->setAccessLevel(-1)
+      ->setLibelle($this->_('Accueil Musclé'));
+
+    Class_AdminVar::set('MENU_BOITE', 1);
+
+    return $this;
+  }
+
+
+  protected function _upgradeSections() {
+    $section_main = ((new Class_Systeme_Widget_Section_Main)
+                ->setProfileId($this->_profile_id)
+                ->load());
+
+    $section_main
+      ->setNewDatas(['boite' => ['no_border_radius','m-auto', 'pt-3', 'pb-3'],
+                     $this->_template->withNameSpace('width_xsmall') => 11])
+      ->updateProfile();
+
+    Class_Profil::clearCache();
+
+    $first_section = ((new Class_Systeme_Widget_Section_FirstSide)
+                     ->setProfileId($this->_profile_id)
+                     ->load());
+
+    $first_section
+      ->setNewDatas(['boite' => ['pt-3', 'pb-3'],
+                     $this->_template->withNameSpace('width_xsmall') => 11,
+                     $this->_template->withNameSpace('visibility_index') => 1,
+                     $this->_template->withNameSpace('visibility_recherche') => 0,
+                     $this->_template->withNameSpace('visibility_abonne') => 0,
+                     $this->_template->withNameSpace('visibility_cms') => 0,
+                     $this->_template->withNameSpace('visibility_blog') => 0,
+                     $this->_template->withNameSpace('visibility_auth') => 0])
+
+      ->updateProfile();
+
+    Class_Profil::clearCache();
+
+    $second_section = ((new Class_Systeme_Widget_Section_SecondSide)
+                      ->setProfileId($this->_profile_id)
+                      ->load());
+
+    $second_section
+      ->setNewDatas(['boite' => ['pt-3', 'pb-3'],
+                     $this->_template->withNameSpace('width_xsmall') => 11,
+                     $this->_template->withNameSpace('visibility_index') => 1,
+                     $this->_template->withNameSpace('visibility_recherche') => 0,
+                     $this->_template->withNameSpace('visibility_abonne') => 0,
+                     $this->_template->withNameSpace('visibility_cms') => 0,
+                     $this->_template->withNameSpace('visibility_blog') => 0,
+                     $this->_template->withNameSpace('visibility_auth') => 0])
+      ->updateProfile();
+
+    Class_Profil::clearCache();
+    $this->_profile = Class_Profil::find($this->_profile_id);
+
+    return $this;
+  }
+
+
+  protected function _upgradeMenus() {
+    $this->_main_menu = $this->_profile
+      ->addMenu(['libelle' => $this->_('Menu principal'),
+                 'picto' => '',
+                 'menus' => [
+                             ['type_menu' => 'ACCUEIL',
+                              'libelle' => $this->_('Accueil'),
+                              'use_profil' => $this->_profile_id],
+
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Le réseau ou la médiathèque'),
+                              'url' => ''],
+
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Agenda'),
+                              'url' => ''],
+
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Offre en ligne'),
+                              'url' => ''],
+
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Infos pratiques'),
+                              'url' => '']
+                 ]
+                 ]);
+
+    $this->_help_menu = $this->_profile
+      ->addMenu(['libelle' => $this->_('Menu aide'),
+                 'picto' => '',
+                 'menus' => [
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Comment accéder à mon compte'),
+                              'use_profil' => $this->_help_menu,
+                              'picto' => 'class fas fa-id-card',
+                              'url' => ''],
+
+                             ['type_menu' => 'URL',
+                              'picto' => 'class fas fa-question-circle',
+                              'libelle' => $this->_('Besoin d\'aide ?'),
+                              'url' => ''],
+                            ]
+                 ]);
+
+    $this->_social_network_top_menu = $this->_profile
+      ->addMenu(['libelle' => $this->_('Menu réseaux sociaux haut de page'),
+                 'picto' => '',
+                 'menus' => [
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Facebook'),
+                              'url' => '',
+                              'picto' => 'class fab fa-facebook-f'],
+
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Youtube'),
+                              'url' => '',
+                              'picto' => 'class fab fa-youtube'],
+
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Twitter'),
+                              'url' => '',
+                              'picto' => 'class fab fa-twitter'],
+
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Instagram'),
+                              'url' => '',
+                              'picto' => 'class fab fa-instagram'],
+
+                 ]
+                 ]);
+
+
+        $this->_credits_menu = $this->_profile
+      ->addMenu(['libelle' => $this->_('Menu crédits'),
+                 'picto' => '',
+                 'menus' => [
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Contact'),
+                              'url' => ''],
+
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Plan du site'),
+                              'url' => ''],
+
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Mentions légales'),
+                              'url' => ''],
+
+                             ['type_menu' => 'URL',
+                              'libelle' => $this->_('Crédits'),
+                              'url' => ''],
+                 ]
+                 ]);
+
+    $this->_profile->save();
+
+    return $this;
+  }
+
+
+  protected function _upgradeWidgets() {
+    $this
+      ->_removeWidgets()
+
+      ->_addWidget(Intonation_Library_Widget_Menu_Definition::CODE,
+                   Class_Profil::DIV_BANNIERE,
+                   ['titre' => $this->_('Menu réseau sociaux haut'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'justify-content-start', 'menu_buttons'],
+                    'menu' => $this->_profile_id . '-' . $this->_social_network_top_menu,
+                    $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_XSMALL,
+                    $this->_template->withNameSpace('width_xsmall') => 6,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 0])
+
+      ->_addWidget(Intonation_Library_Widget_Menu_Definition::CODE,
+                   Class_Profil::DIV_BANNIERE,
+                   ['titre' => $this->_('Menu d\'aide haut'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'justify-content-end', 'menu_buttons'],
+                    'menu' => $this->_profile_id . '-' . $this->_help_menu,
+                    $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_XSMALL,
+                    $this->_template->withNameSpace('width_xsmall') => 6,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 0])
+
+      ->_addWidget(Intonation_Library_Widget_Login_Definition::CODE,
+                   Class_Profil::DIV_BANNIERE,
+                   ['titre' => $this->_('Connexion'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'no_background', 'justify-content-end', 'pt-3'],
+                    'titre_connecte' => $this->_('Mon compte'),
+                    'message_connecte' => '',
+                    'identifiant' => $this->_('Identifiant'),
+                    'identifiant_exemple' => $this->_('N° de carte'),
+                    'mot_de_passe' => $this->_('Mot de passe'),
+                    'mot_de_passe_exemple' => $this->_('Année de naissance'),
+                    'lien_connexion' => $this->_('Se connecter'),
+                    'lien_deconnection' => $this->_('Se déconnecter'),
+                    'lien_mot_de_passe_oublie' => $this->_('Mot de passe oublié'),
+                    'lien_compte' => $this->_('Mon compte'),
+                    'lien_creer_compte' => $this->_('S\'enregistrer'),
+                    $this->_template->withNameSpace('form_style') => 'toggle',
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 0])
+
+      ->_addWidget(Intonation_Library_Widget_Image_Definition::CODE,
+                   Class_Profil::DIV_BANNIERE,
+                   ['titre' => $this->_('Logo du réseau'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'no_background', 'justify-content-center'],
+                    'image' => Class_Url::absolute('/library/templates/Muscle/Assets/images/logo.png'),
+                    'link' => '',
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 0])
+
+      ->_addWidget(Intonation_Library_Widget_Search_Definition::CODE,
+                   Class_Profil::DIV_BANNIERE,
+                   ['titre' => $this->_('Recherche'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'no_background', 'm-auto', 'pt-3', 'justify-content-center'],
+                    'search_button' => 'class fas fa-search',
+                    'placeholder' => $this->_('Trouver un document'),
+                    'type_doc' => '',
+                    $this->_template->withNameSpace('form_style') => 'inline',
+                    $this->_template->withNameSpace('width_xsmall') => 11,
+                    $this->_template->withNameSpace('width_xsmall') => 9,
+                    $this->_template->withNameSpace('width_medium') => 6,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 0])
+
+      ->_addWidget(Intonation_Library_Widget_Nav_Definition::CODE,
+                   Class_Profil::DIV_BANNIERE,
+                   ['titre' => $this->_('Menu réseau sociaux haut'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'justify-content-start', 'pt-3'],
+                    'menu' => $this->_profile_id . '-' . $this->_main_menu,
+                    $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_SMALL,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 0])
+
+      ->_addWidget(Intonation_Library_Widget_Breadcrumb_Definition::CODE,
+                   Class_Profil::DIV_BANNIERE,
+                   ['titre' => $this->_('Fil d\'ariane'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'justify-content-start', 'pl-2'],
+                    'root' => '',
+                    'show_profile' => 1,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 0])
+
+      ->_addWidget(Intonation_Library_Widget_Carousel_Article_Definition::CODE,
+                   Class_Profil::DIV_MAIN,
+                   ['titre' => $this->_('À la une'),
+                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'm-auto', 'pt-3', 'pb-3'],
+                    'rendering' => 'card-overlay',
+                    'layout' => 'carousel',
+                    'size' => 3,
+                    'link_to_all' => 1,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 1])
+
+      ->_addWidget(Intonation_Library_Widget_Carousel_Agenda_Definition::CODE,
+                   Class_Profil::DIV_MAIN,
+                   ['titre' => $this->_('L\'agenda'),
+                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'm-auto', 'pt-3', 'pb-3'],
+                    'rendering' => 'card',
+                    'layout' => 'multiple_carousel',
+                    'size' => 9,
+                    'order' => 'EventDebut',
+                    'enabled_filters' => 'day;date;place',
+                    'link_to_all' => 1,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('show_header') => 1,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 1])
+
+      ->_addWidget(Intonation_Library_Widget_Carousel_Domain_Definition::CODE,
+                   Class_Profil::DIV_MAIN,
+                   ['titre' => $this->_('Nouveautés'),
+                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'm-auto', 'auto_col', 'pt-3', 'pb-3'],
+                    'rendering' => 'card-overlay',
+                    'layout' => 'horizontal_list',
+                    'size' => 5,
+                    'link_to_all' => 1,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('show_header') => 1,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 1])
+
+      ->_addWidget(Intonation_Library_Widget_Carousel_Library_Definition::CODE,
+                   Class_Profil::DIV_MAIN,
+                   ['titre' => $this->_('Accès'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'pt-3', 'pb-3', 'border-primary', 'border-left', 'pr-md-3'],
+                    'rendering' => 'card-description',
+                    'layout' => 'carousel',
+                    'osm_map' => 1,
+                    'size' => 10,
+                    'link_to_all' => 1,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('width_medium') => 6,
+                    $this->_template->withNameSpace('show_header') => 1,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 1])
+
+      ->_addWidget(Intonation_Library_Widget_Carousel_Review_Definition::CODE,
+                   Class_Profil::DIV_MAIN,
+                   ['titre' => $this->_('Derniers avis'),
+                    'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'pl-md-3', 'pt-3', 'pb-3'],
+                    'rendering' => 'card',
+                    'layout' => 'carousel',
+                    'size' => 5,
+                    'link_to_all' => 1,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('width_medium') => 6,
+                    $this->_template->withNameSpace('show_header') => 1,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 1])
+
+      ->_addWidget(Intonation_Library_Widget_Menu_Definition::CODE,
+                   Class_Profil::DIV_FOOTER,
+                   ['titre' => $this->_('Menu mentions légales'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'pt-5', 'text-align-right', 'ml-auto', 'justify-content-end'],
+                    'menu' => $this->_profile_id . '-' . $this->_credits_menu,
+                    $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_XSMALL,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 0])
+
+      ->_addScrollDownWidget()
+      ->_addScrollTopWidget()
+      ->_addAdminWidget()
+      ->_addAccessibilityWidget()
+      ->_addNotificationWidget();
+
+    return $this;
+  }
+}
\ No newline at end of file
diff --git a/library/templates/Muscle/Library/Settings.php b/library/templates/Muscle/Library/Settings.php
new file mode 100644
index 0000000000000000000000000000000000000000..116aa8e1899107bf2f8d58a9f56fe42e700f775a
--- /dev/null
+++ b/library/templates/Muscle/Library/Settings.php
@@ -0,0 +1,72 @@
+<?php
+/**
+ * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class Muscle_Library_Settings extends Intonation_Library_Settings {
+  protected function _getDefaultSettings() {
+    $settings = parent::_getDefaultSettings();
+    $settings[$this->_template->withNameSpace('muscle_css')] = 1;
+    $settings[$this->_template->withNameSpace('width_xsmall')] = 11;
+    $settings[$this->_template->withNameSpace('width_small')] = 10;
+    $settings[$this->_template->withNameSpace('width_medium')] = 9;
+
+    $custom_css_classes = $settings[$this->_template->withNameSpace('custom_css_class')];
+
+    $custom_css_classes = ['position_fixed_bottom',
+                           'position_fixed_bottom_left',
+                           'position_fixed_bottom_right',
+                           'position_fixed_top',
+                           'position_fixed_top_left',
+                           'position_fixed_top_right',
+                           'position_fixed_mid_left',
+                           'position_fixed_mid_right',
+                           'pt-3',
+                           'pt-5',
+                           'pb-3',
+                           'pl-2',
+                           'pl-md-3',
+                           'pr-md-3',
+                           'no_border',
+                           'no_border_radius',
+                           'no_shadow',
+                           'm-auto',
+                           'ml-auto',
+                           'mr-auto',
+                           'align-items-center',
+                           'auto_col',
+                           'justify-content-start',
+                           'justify-content-end',
+                           'justify-content-center',
+                           'menu_buttons'];
+
+    $settings[$this->_template->withNameSpace('custom_css_class')] = $custom_css_classes;
+
+    $hydrating_mapping = $settings[$this->_template->withNameSpace('hydrating_mapping')];
+
+    $hydrating_mapping['a class nav-link'] = '';
+    $hydrating_mapping['div class navbar-header'] = '';
+    $hydrating_mapping['div class navbar-collapse'] = '';
+    $hydrating_mapping['div id site_web_wrapper'] = 'container align-self-center';
+
+    $settings[$this->_template->withNameSpace('hydrating_mapping')] = $hydrating_mapping;
+    return $settings;
+  }
+}
diff --git a/library/templates/Muscle/Template.php b/library/templates/Muscle/Template.php
new file mode 100644
index 0000000000000000000000000000000000000000..24a21c27b286ace77cb88535da5defe1f3c4f12e
--- /dev/null
+++ b/library/templates/Muscle/Template.php
@@ -0,0 +1,63 @@
+<?php
+/**
+ * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class Muscle_Template extends Intonation_Template {
+
+  const ID = 'MUSCLE';
+
+
+  public function __construct() {
+    $this->setId(static::ID)
+         ->setTitle($this->_('Musclé'))
+         ->setSettings(new Muscle_Library_Settings($this))
+         ->setPatcher(new Muscle_Library_ProfilePatcher($this));
+  }
+
+
+  public function getProfile() {
+    if ($this->_profile)
+      return $this->_profile;
+
+    if ($this->_profile = Class_Profil::findFirstBy(['template' => $this->getId()]))
+      return $this->_profile;
+
+    $this->createFrom(Class_Profil::getPortail());
+
+    return $this->_profile = Class_Profil::getCurrentProfil();
+  }
+
+
+  public function renderOpac($view) {
+    return (new Muscle_View_Opac($this, $view))->render();
+  }
+
+
+  public function renderSubModal($view) {
+    return (new Muscle_View_SubModal($this, $view))->render();
+  }
+
+
+  public function customTemplateForm($form) {
+    $helper = new Muscle_Library_FormCustomizer($this);
+    return $helper->getTemplateForm($form);
+  }
+}
diff --git a/library/templates/Muscle/View/Opac.php b/library/templates/Muscle/View/Opac.php
new file mode 100644
index 0000000000000000000000000000000000000000..a86115252dda1ab21971adf24332f7c5650c01aa
--- /dev/null
+++ b/library/templates/Muscle/View/Opac.php
@@ -0,0 +1,29 @@
+<?php
+/**
+ * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class Muscle_View_Opac extends Intonation_View_Opac {
+  protected function _headContent() {
+    Class_ScriptLoader::getInstance()
+      ->addStyleSheet(Class_Url::absolute('/library/templates/Muscle/Assets/css/muscle.css'));
+    return parent::_headContent();
+  }
+}
diff --git a/library/templates/Muscle/View/SubModal.php b/library/templates/Muscle/View/SubModal.php
new file mode 100644
index 0000000000000000000000000000000000000000..bb33fa76ae4cf16119200c6bb040c9ca4d543413
--- /dev/null
+++ b/library/templates/Muscle/View/SubModal.php
@@ -0,0 +1,29 @@
+<?php
+/**
+ * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+class Muscle_View_SubModal extends Intonation_View_SubModal {
+  protected function _headContent() {
+    Class_ScriptLoader::getInstance()
+      ->addStyleSheet(Class_Url::absolute('/library/templates/Muscle/Assets/css/muscle.css'));
+    return parent::_headContent();
+  }
+}
diff --git a/library/templates/MyBibApp/Library/ProfilePatcher.php b/library/templates/MyBibApp/Library/ProfilePatcher.php
index 4a10647a0f1c5d75b5261f730b7444fb8106c1fa..797e10035d9aaad1d4b760b09e2e92b0dc0d7900 100644
--- a/library/templates/MyBibApp/Library/ProfilePatcher.php
+++ b/library/templates/MyBibApp/Library/ProfilePatcher.php
@@ -26,7 +26,6 @@ class MyBibApp_Library_ProfilePatcher extends Intonation_Library_ProfilePatcher
     parent::_upgradeProfile();
 
     $this->_profile
-      ->setAccessLevel(ZendAfi_Acl_AdminControllerRoles::ABONNE)
       ->setLibelle($this->_('Accueil MyBibApp'));
 
     (new Class_Profil_Preferences())
@@ -84,9 +83,11 @@ class MyBibApp_Library_ProfilePatcher extends Intonation_Library_ProfilePatcher
                     'message_connecte' => '',
                     'identifiant' => '',
                     'mot_de_passe' => '',
-                    'lien_connexion' => '',
+                    'identifiant_exemple' => $this->_('N° de carte / email'),
+                    'mot_de_passe_exemple' => $this->_('Mot de passe'),
+                    'lien_connexion' => $this->_('Se connecter'),
+                    'lien_mot_de_passe_oublie' => $this->_('Mot de passe oublié'),
                     'lien_deconnection' => '',
-                    'lien_mot_de_passe_oublie' => '',
                     'lien_compte' => '',
                     'lien_creer_compte' => '',
                     $this->_template->withNameSpace('form_style') => 'inline',
diff --git a/library/templates/TerreDuMilieu/Assets/css/terredumilieu.css b/library/templates/TerreDuMilieu/Assets/css/terredumilieu.css
index c49261620c955e81d05d3ddc1b3c8db6c404d701..bf79f9fe020a5830ab44c1c1f29a03fc6829734d 100644
--- a/library/templates/TerreDuMilieu/Assets/css/terredumilieu.css
+++ b/library/templates/TerreDuMilieu/Assets/css/terredumilieu.css
@@ -1,18 +1,31 @@
+@import url('https://fonts.googleapis.com/css?family=Fredoka+One|Hammersmith+One|Lato:400,700|Lobster+Two:400,700|Raleway+Dots');
+
 :root {
+    --front-background: #fff;
+    
     --tdm-search-color: #e83a3b;
     --tdm-link-color: #f1cb00;
     --tdm-button-text-color: #000;
-    --tdm-footer-link-color: #f9f9f9;
+    --tdm-footer-link-color: #fff;
+    --tdm-main-nav-color: wheat;
 
-    --tdm-main-background: #f9f9f9;
+    --tdm-main-background: #fff;
+    --tdm-login-input: #FFFCC8;
+    --tdm-search-button-background: rgba(255, 255, 255, 0.90);
+    --tdm-main-nav-link-background: rgba(0,0,0,0.8);
     --main-nav-button-background-color: #3dae9a;
     --first-division-background-color: #1a6362;
-    --main-division-background-color: #f9f9f9;
+    --main-division-background-color: #fff;
     --third-division-background-color: #f2f2f2;
     --footer-background-color: #3dae9a;
     --footer-widget-background-color: #000;
 }
 
+body {
+    font-family: 'Lato';
+    font-size:16px;
+}
+
 header {
     background: url(../images/header.jpg);
     background-position: top 3em center;
@@ -26,23 +39,33 @@ header {
 
 .tdm_search_widget .form-control,
 .tdm_search_widget button {
-    background-color: rgba(255, 255, 255, 0.90);
+    background-color: var(--tdm-search-button-background);
     font-size: 1.2em;
     color: var(--tdm-search-color);
     vertical-align: middle;
     margin: 0;
 }
 
+.ui-autocomplete {
+    border: none !important;
+    background: var(--third-division-background-color) !important;
+    color: var(--tdm-link-color) !important;
+}
+
 .tdm_search_widget .form-control {
     padding:0;
 }
 
 .tdm_search_widget button {
-    height: 2em;
     padding: 0 1em;
     border-left: 2px dotted var(--tdm-search-color) !important;
 }
 
+.tdm_search_widget .expressionRecherche,
+.tdm_search_widget button {
+    height: 2.5em;
+}
+
 .tdm_search_widget .form-row > .col {
     margin: 0;
     padding: 0;
@@ -60,7 +83,7 @@ header {
 }
 
 .tdm_social_network_widget .nav-link:hover {
-    color: black !important;
+    color: black;
 }
 
 .tdm_social_network_widget .navbar {
@@ -76,21 +99,31 @@ header {
     padding-bottom: 0.5em
 }
 
-.tdm_main_nav_widget {
-    background: url('../images/nav.png');
-    background-position: top center;
-    background-repeat: no-repeat;
-    padding: 7em 0 0 0 !important;
+.widget.login input {
+    color: var(--tdm-button-text-color);
+    background-color: var(--tdm-login-input);
 }
 
+.widget.login input[type="submit"] {
+    color: var(--tdm-main-background);
+    background: var(--tdm-main-nav-link-background);
+    padding: 0.5em 2em;
+}
+
+.widget.login a {
+    color: var(--tdm-search-color);
+    background: transparent;
+}
 
 .tdm_main_nav_widget .nav-link {
-    background-color: rgba(0,0,0,0.8);
     padding: 0.5em 1em !important;
-    color: wheat !important;
+    color: var(--tdm-main-nav-color);
+    display: block;
+    text-align: center;
 }
 
 .tdm_main_nav_widget .nav-item {
+    background-color: var(--tdm-main-nav-link-background);
     margin-right: 5px;
     display: inline-table;
 }
@@ -99,16 +132,16 @@ header {
     margin: 0;
 }
 
-.tdm_main_nav_widget .nav-link:last-child {
-    background-color: var(--main-nav-button-background-color) !important;
+.tdm_main_nav_widget .nav-item:last-child {
+    background-color: var(--main-nav-button-background-color);
 }
 
 .tdm_main_nav_widget .nav-link:hover {
-    opacity: 0.7;
+    opacity: 0.8;
 }
 
 aside[data-division='1'] {
-    background-color: var(--first-division-background-color) !important;
+    background-color: var(--first-division-background-color);
 }
 
 body {
@@ -132,19 +165,19 @@ footer .widget .nav-item a:hover,
 footer .widget btn,
 footer .widget btn:hover,
 footer .badge {
-    color: var(--tdm-footer-link-color) !important;
+    color: var(--tdm-footer-link-color);
     background: none;
 }
 
 footer .widget a,
 footer .widget a:hover {
-    color: var(--tdm-link-color) !important;
+    color: var(--tdm-link-color);
     background: none;
 }
 
 footer .widget a.btn[href*='render-all'] {
     background: var(--main-division-background-color);
-    color: var(--tdm-button-text-color) !important;
+    color: var(--tdm-button-text-color);
 }
 
 .widget > .card-footer,
@@ -157,7 +190,7 @@ h2,
 h3,
 .card-title,
 .card-header {
-    color: var(--tdm-link-color) !important;
+    color: var(--tdm-link-color);
     background: none;
     font-weight: bold;
     font-size: 1em;
@@ -177,30 +210,30 @@ a.text-secondary,
 .tdm_widget .btn,
 .tdm_widget .text-primary,
 .tdm_widget .text-secondary {
-    color: var(--tdm-button-text-color) !important;
+    color: var(--tdm-button-text-color);
 }
 
 .tdm_widget .btn {
-    background-color: var(--tdm-link-color) !important;
+    background-color: var(--tdm-link-color);
 }
 
 a.text-primary:hover,
 a.text-secondary:hover,
 .btn:hover,
 a:hover {
-    color: var(--tdm-button-text-color) !important;
+    color: var(--tdm-button-text-color);
 }
 
-a[href*='render-all'] {
+.widget-footer a[href*='render-all'] {
     border-radius: 100px !important;
 }
 
-a[href*='render-all'] i,
-a[href*='render-all'] div {
+.widget-footer a[href*='render-all'] i,
+.widget-footer a[href*='render-all'] div {
     display: none !important;
 }
 
-a[href*='render-all']:after {
+.widget-footer a[href*='render-all']:after {
     content: '+';
     font-size: 2em;
     width: 35px;
@@ -213,9 +246,15 @@ a[href*='render-all']:after {
     right: 0;
 }
 
+.ui-state-active,
+.btn:active,
+a:active,
+.btn:focus,
+a:focus,
 .btn:hover,
 a:hover {
-    opacity: 0.7;
+    opacity: 0.8;
+    text-decoration: underline;
 }
 
 .border-primary {
@@ -234,12 +273,12 @@ a:hover {
 
 .widget.admin_tools .dropdown-menu,
 .widget.admin_tools .dropdown-menu *:not(img) {
-    background: var(--footer-background-color) !important;
+    background: var(--footer-background-color);
 }
 
 .widget.admin_tools a,
 .widget.admin_tools a:hover {
-    color: var(--tdm-button-text-color) !important;
+    color: var(--tdm-button-text-color);
 }
 
 nav .nav-link {
@@ -263,17 +302,32 @@ nav .nav-link {
     display: inline-block;
 }
 
-.widget.login .dropdown-menu.show * {
-    text-align: center;
-    background-color: var(--tdm-main-background);
-}
-
 .widget.login .dropdown-menu.show a:hover,
 .widget.login .dropdown-menu.show a,
 .widget.login .dropdown-menu.show a * {
-    color: var(--tdm-main-background);
-    background-color: var(--tdm-button-text-color);
-    display:inline !important;
+    display: inline-block !important;
+    text-align: center !important;
+    padding: .5em 2em;
+}
+
+.widget.login .btn.dropdown-toggle {
+    text-transform: uppercase;
+    background-image: url('../images/compte.png');
+    background-repeat: no-repeat;
+    position: absolute;
+    z-index: 2;
+    background-position: top center;
+    padding-bottom: 45px;
+}
+
+.widget.login .btn.dropdown-toggle:after {
+    display: none;
+}
+
+.widget.login .btn.dropdown-toggle:active,
+.widget.login .btn.dropdown-toggle:focus,
+.widget.login .btn.dropdown-toggle:hover {
+    opacity: 1;
 }
 
 header {
@@ -289,16 +343,21 @@ header {
 .tdm_flying_widget .navbar-collapse.collapsing,
 .tdm_flying_widget .navbar-collapse.collapse,
 .tdm_flying_widget a {
-    color: var(--tdm-main-background) !important;
+    color: var(--tdm-main-background);
     background-color: var(--footer-widget-background-color);
     text-transform: uppercase;
 }
 
+.widget.tdm_flying_widget a {
+    background-color: transparent;
+}
+
 .tdm_flying_widget .navbar-collapse.collapsing,
 .tdm_flying_widget .navbar-collapse.collapse {
     padding: 2em 0.5em;
     height: 3000px;
     overflow:visible;
+    margin-top: -80px;
 }
 
 .tdm_flying_widget .navbar.navbar-collapse {
@@ -311,7 +370,9 @@ header {
     text-align: right !important;
     border-radius: 100px !important;
     background-color: var(--tdm-link-color);
-    float: right;
+    position: absolute;
+    right: 5px;
+    z-index: 2;
 }
 
 .tdm_flying_widget .navbar-toggler {
@@ -335,4 +396,35 @@ header {
 .tdm_flying_widget * {
     transition-delay: unset;
     transition-duration: unset;
+}
+
+footer .tdm_social_network_widget .nav-item {
+    width: 25%;
+    text-align: center;
+}
+
+footer .tdm_social_network_widget .nav-item:first-child {
+    width: 100%;
+    text-align: center;
+}
+
+.z_index_11 {
+    z-index: 11;
+}
+
+.tdm_flying_widget.position_fixed_top_right {
+    top: 80px !important;
+}
+
+.breadcrumb {
+    background: var(--tdm-main-background);
+}
+
+.widget.ariane {
+    text-align: center;
+}
+
+ol.breadcrumb,
+ol.breadcrumb li {
+    display: inline;
 }
\ No newline at end of file
diff --git a/library/templates/TerreDuMilieu/Assets/images/compte.png b/library/templates/TerreDuMilieu/Assets/images/compte.png
new file mode 100644
index 0000000000000000000000000000000000000000..b6aa715eaeaf024a32c6c60a2c1ec85f22b8b609
Binary files /dev/null and b/library/templates/TerreDuMilieu/Assets/images/compte.png differ
diff --git a/library/templates/TerreDuMilieu/Library/ProfilePatcher.php b/library/templates/TerreDuMilieu/Library/ProfilePatcher.php
index 5aeaf287acc6b3ae38c0f2bce88bca21385c8cc1..7b99f07d2639288355ecde71ebccc3a1214d1262 100644
--- a/library/templates/TerreDuMilieu/Library/ProfilePatcher.php
+++ b/library/templates/TerreDuMilieu/Library/ProfilePatcher.php
@@ -268,15 +268,15 @@ class TerreDuMilieu_Library_ProfilePatcher extends Intonation_Library_ProfilePat
 
       ->_addWidget(Intonation_Library_Widget_Login_Definition::CODE,
                    Class_Profil::DIV_BANNIERE,
-                   ['titre' => $this->_('Connexion'),
+                   ['titre' => $this->_('Mon compte'),
                     'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'no_background'],
                     'titre_connecte' => $this->_('Mon compte'),
                     'message_connecte' => '',
-                    'identifiant' => '',
-                    'identifiant_exemple' => $this->_('N° de carte'),
-                    'mot_de_passe' => '',
-                    'mot_de_passe_exemple' => $this->_('Année de naissance'),
-                    'lien_connexion' => $this->_('Valider'),
+                    'identifiant' => $this->_('N° de carte / email'),
+                    'identifiant_exemple' => $this->_('N° de carte / email'),
+                    'mot_de_passe' => $this->_('Mot de passe'),
+                    'mot_de_passe_exemple' => $this->_('Mot de passe'),
+                    'lien_connexion' => $this->_('Se connecter'),
                     'lien_deconnection' => $this->_('Se déconnecter'),
                     'lien_mot_de_passe_oublie' => $this->_('Mot de passe oublié'),
                     'lien_compte' => $this->_('Mon compte'),
@@ -288,12 +288,23 @@ class TerreDuMilieu_Library_ProfilePatcher extends Intonation_Library_ProfilePat
                     $this->_template->withNameSpace('show_content') => 0,
                     $this->_template->withNameSpace('show_footer') => 0])
 
+      ->_addWidget(Intonation_Library_Widget_Image_Definition::CODE,
+                   Class_Profil::DIV_BANNIERE,
+                   ['titre' => $this->_('Logo du réseau'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'no_background', 'justify-content-center', 'admin_tools_invert_colors'],
+                    'image' => Class_Url::absolute('/library/templates/TerreDuMilieu/Assets/images/nav.png'),
+                    'link' => '',
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 0])
+
       ->_addWidget(Intonation_Library_Widget_Nav_Definition::CODE,
                    Class_Profil::DIV_BANNIERE,
                    ['titre' => $this->_('Menu réseau sociaux haut'),
-                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'tdm_main_nav_widget', 'tdm_widget'],
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'tdm_main_nav_widget', 'tdm_widget', 'admin_tools_invert_colors'],
                     'menu' => $this->_profile_id . '-' . $this->_menu_id,
-                    $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_XSMALL,
+                    $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_SMALL,
                     $this->_template->withNameSpace('width_xsmall') => 12,
                     $this->_template->withNameSpace('show_header') => 0,
                     $this->_template->withNameSpace('show_content') => 0,
@@ -302,14 +313,26 @@ class TerreDuMilieu_Library_ProfilePatcher extends Intonation_Library_ProfilePat
       ->_addWidget(Intonation_Library_Widget_Search_Definition::CODE,
                    Class_Profil::DIV_BANNIERE,
                    ['titre' => $this->_('Recherche'),
-                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'no_background', 'tdm_search_widget', 'm-auto', 'pt-3'],
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'no_background', 'tdm_search_widget', 'm-auto', 'pt-3', 'admin_tools_invert_colors'],
                     'search_button' => 'class fas fa-search',
                     'placeholder' => $this->_('Titre, auteur…'),
                     'type_doc' => '',
                     $this->_template->withNameSpace('form_style') => 'inline',
                     $this->_template->withNameSpace('width_xsmall') => 11,
                     $this->_template->withNameSpace('width_small') => 8,
-                    $this->_template->withNameSpace('width_medium') => 5,
+                    $this->_template->withNameSpace('width_medium') => 6,
+                    $this->_template->withNameSpace('show_header') => 0,
+                    $this->_template->withNameSpace('show_content') => 0,
+                    $this->_template->withNameSpace('show_footer') => 0])
+
+      ->_addWidget(Intonation_Library_Widget_Breadcrumb_Definition::CODE,
+                   Class_Profil::DIV_BANNIERE,
+                   ['titre' => $this->_('Fil d\'ariane'),
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'justify-content-start'],
+                    'root' => '',
+                    'show_profile' => 1,
+                    $this->_template->withNameSpace('visibility_index') => 0,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
                     $this->_template->withNameSpace('show_header') => 0,
                     $this->_template->withNameSpace('show_content') => 0,
                     $this->_template->withNameSpace('show_footer') => 0])
@@ -322,7 +345,7 @@ class TerreDuMilieu_Library_ProfilePatcher extends Intonation_Library_ProfilePat
                     'layout' => 'multiple_carousel',
                     'size' => 3,
                     'order' => 'EventDebut',
-                    'enabled_filters' => 'day;date;place',
+                    'enabled_filters' => '',
                     'link_to_all' => 1,
                     $this->_template->withNameSpace('width_xsmall') => 11,
                     $this->_template->withNameSpace('width_small') => 10,
@@ -392,10 +415,13 @@ class TerreDuMilieu_Library_ProfilePatcher extends Intonation_Library_ProfilePat
       ->_addWidget(Intonation_Library_Widget_Menu_Definition::CODE,
                    Class_Profil::DIV_FOOTER,
                    ['titre' => $this->_('Menu réseau sociaux bas'),
-                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'tdm_social_network_widget', 'pt-3', 'pb-3'],
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'tdm_social_network_widget', 'pt-3', 'pb-3', 'admin_tools_invert_colors'],
                     'menu' => $this->_profile_id . '-' . $this->_social_network_bottom_menu,
                     $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_XSMALL,
-                    $this->_template->withNameSpace('width_xsmall') => 3,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('width_small') => 6,
+                    $this->_template->withNameSpace('width_medium') => 4,
+                    $this->_template->withNameSpace('width_large') => 3,
                     $this->_template->withNameSpace('show_header') => 0,
                     $this->_template->withNameSpace('show_content') => 0,
                     $this->_template->withNameSpace('show_footer') => 0])
@@ -403,13 +429,16 @@ class TerreDuMilieu_Library_ProfilePatcher extends Intonation_Library_ProfilePat
       ->_addWidget(Intonation_Library_Widget_Carousel_Library_Definition::CODE,
                    Class_Profil::DIV_FOOTER,
                    ['titre' => $this->_('Adresse bibliothèque'),
-                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'pt-3', 'pb-3', 'border-primary', 'border-left'],
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'pt-3', 'pb-3', 'border-primary', 'border-left', 'admin_tools_invert_colors'],
                     'rendering' => 'card-description',
                     'layout' => 'carousel',
                     'osm_map' => 0,
-                    'size' => 1,
+                    'size' => 5,
                     'link_to_all' => 1,
-                    $this->_template->withNameSpace('width_xsmall') => 3,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('width_small') => 6,
+                    $this->_template->withNameSpace('width_medium') => 4,
+                    $this->_template->withNameSpace('width_large') => 3,
                     $this->_template->withNameSpace('show_header') => 0,
                     $this->_template->withNameSpace('show_content') => 0,
                     $this->_template->withNameSpace('show_footer') => 1])
@@ -417,11 +446,13 @@ class TerreDuMilieu_Library_ProfilePatcher extends Intonation_Library_ProfilePat
       ->_addWidget(Intonation_Library_Widget_Menu_Definition::CODE,
                    Class_Profil::DIV_FOOTER,
                    ['titre' => $this->_('Menu crédits'),
-                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'pt-3', 'pb-3', 'border-primary', 'border-left'],
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'pt-3', 'pb-3', 'border-primary', 'border-left', 'admin_tools_invert_colors'],
                     'menu' => $this->_profile_id . '-' . $this->_credits_menu,
                     'layout' => 'vertical',
                     $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_XSMALL,
-                    $this->_template->withNameSpace('width_xsmall') => 3,
+                    $this->_template->withNameSpace('width_xsmall') => 12,
+                    $this->_template->withNameSpace('width_medium') => 4,
+                    $this->_template->withNameSpace('width_large') => 3,
                     $this->_template->withNameSpace('show_header') => 0,
                     $this->_template->withNameSpace('show_content') => 0,
                     $this->_template->withNameSpace('show_footer') => 0])
@@ -429,7 +460,7 @@ class TerreDuMilieu_Library_ProfilePatcher extends Intonation_Library_ProfilePat
       ->_addWidget(Intonation_Library_Widget_Menu_Definition::CODE,
                    Class_Profil::DIV_BANNIERE,
                    ['titre' => $this->_('Menu volant'),
-                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'tdm_flying_widget', 'position_fixed_top_right'],
+                    'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'tdm_flying_widget', 'position_fixed_top_right', 'z_index_11'],
                     'menu' => $this->_profile_id . '-' . $this->_flying_menu,
                     $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_ALWAYS,
                     $this->_template->withNameSpace('width_xsmall') => 6,
@@ -440,6 +471,7 @@ class TerreDuMilieu_Library_ProfilePatcher extends Intonation_Library_ProfilePat
                     $this->_template->withNameSpace('show_footer') => 0])
 
       ->_addScrollTopWidget()
+      ->_addScrollDownWidget()
       ->_addAdminWidget()
       ->_addAccessibilityWidget()
       ->_addNotificationWidget();
diff --git a/library/templates/TerreDuMilieu/Library/Settings.php b/library/templates/TerreDuMilieu/Library/Settings.php
index f1a55f21e23e72e4a727abc0cbdeee84dd1743a1..2f239c2d386e0dd1c366c74f86500e8865e5ee06 100644
--- a/library/templates/TerreDuMilieu/Library/Settings.php
+++ b/library/templates/TerreDuMilieu/Library/Settings.php
@@ -49,13 +49,19 @@ class TerreDuMilieu_Library_Settings extends Intonation_Library_Settings {
                            'tdm_social_network_widget',
                            'tdm_main_nav_widget',
                            'border-primary',
-                           'border-left'];
+                           'border-left',
+                           'z_index_11'];
 
     $settings[$this->_template->withNameSpace('custom_css_class')] = $custom_css_classes;
 
     $hydrating_mapping = $settings[$this->_template->withNameSpace('hydrating_mapping')];
 
+    $hydrating_mapping['a class btn'] = '';
+    $hydrating_mapping['a'] = '';
+    $hydrating_mapping['a class more_action'] = '';
     $hydrating_mapping['a class nav-link'] = '';
+    $hydrating_mapping['a class jumbotron_nav_link'] = '';
+    $hydrating_mapping['a class carousel_control'] = '';
 
     $settings[$this->_template->withNameSpace('hydrating_mapping')] = $hydrating_mapping;
     return $settings;
diff --git a/public/opac/css/core.css b/public/opac/css/core.css
index 332681779c38f76815be03043cdd2e8e40484153..840ec34f4a640ad0c869815153ca347caf0eb387 100644
--- a/public/opac/css/core.css
+++ b/public/opac/css/core.css
@@ -35,3 +35,104 @@ section {
     height: 100%;
     min-height: 50px;
 }
+
+.ui-autocomplete li {
+    display: block !important;
+    margin: 0 !important;
+    padding: 0 !important;
+    border: none !important;
+    background: transparent !important;
+}
+
+.ui-autocomplete li:hover {
+    border: none !important;
+    background: transparent !important;
+}
+
+.ui-autocomplete {
+    width: auto !important;
+}
+
+.ui-autocomplete a {
+    display: block !important;
+    border: none !important;
+    background: transparent !important;
+    margin: 1px !important;
+    padding: 4px !important;
+}
+
+.ui-autocomplete a:hover {
+    border: none;
+    margin: 1px !important;
+    padding: 4px !important;
+    text-decoration: underline;
+}
+
+.ui-widget {
+    font-family: unset !important;
+}
+
+.ui-autocomplete a span {
+    font-weight: bold;
+}
+
+.deactivate_show_admin_icons.menu_admin_front_anchor[style*='inline'] {
+    display: block !important;
+}
+
+.masonry {
+    display: grid;
+    grid-gap: 1em;
+    grid-template-columns: repeat( auto-fill, minmax(200px, 1fr) );
+    grid-auto-rows: 0;
+}
+
+.masonry-brick {
+    visibility: hidden;
+}
+
+.card-img-top > .masonry,
+.img-thumbnail > .masonry {
+    grid-gap: 3px;
+    grid-template-columns: repeat(3, 30%);
+}
+
+.card-img-top > .masonry .card-img-overlay div,
+.img-thumbnail > .masonry .card-img-overlay div {
+    display: none;
+    visibility: hidden;
+}
+
+
+.img-thumbnail[src=''] {
+    display: none;
+}
+
+ol.breadcrumb li {
+    padding-left: .5rem;
+}
+
+.navbar-light .navbar-toggler-icon {
+    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
+}
+
+.navbar-light[aria-expanded="true"] .navbar-toggler-icon {
+    background-image: unset;
+}
+
+.navbar-light[aria-expanded="true"] .navbar-toggler-icon:after {
+    content: 'x';
+    display: inline;
+    vertical-align: middle;
+    font-size: 1.5em;
+    color: black;
+}
+
+.admin_tools_invert_colors .configuration_module,
+.admin_tools_invert_colors .edit_menu {
+    filter: invert(1);
+}
+
+.ui-widget-content .ui-state-active {
+    color: unset;
+}
\ No newline at end of file
diff --git a/public/opac/java/search_autocomplete/search_autocomplete.js b/public/opac/java/search_autocomplete/search_autocomplete.js
index 78f02907f1062024a4f15bacf704f301d7b7b29c..b8a7c717a9acbb3114603c33aed3d6bf828fcaf6 100644
--- a/public/opac/java/search_autocomplete/search_autocomplete.js
+++ b/public/opac/java/search_autocomplete/search_autocomplete.js
@@ -40,10 +40,7 @@
       }
     },
 
-
-
-
-
+    
     _renderItem: function(ul, item) {
       return $("<li>")
 	.data("item.autocomplete", item)
diff --git a/scripts/emacs/phafi-mode.el b/scripts/emacs/phafi-mode.el
index 1b2f74888497a556138dbf4655e68bc8fda9c6e4..6070213d6d317702924498703734b8fcb74a80f1 100644
--- a/scripts/emacs/phafi-mode.el
+++ b/scripts/emacs/phafi-mode.el
@@ -75,7 +75,7 @@
   (gtags-mode t)
   (setq ag-highlight-search t)
   (setq ag-arguments (list "--smart-case" 
-			   "--column" 
+			   "--column"
 			   "--ignore" "phonetix.txt" 
 			   "--ignore" "TAGS" 
 			   "--ignore-dir" "report" 
diff --git a/tests/scenarios/Templates/MuscleTemplateTest.php b/tests/scenarios/Templates/MuscleTemplateTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..255655c827fcf71da504eb4eeb5d7d57fd06dde5
--- /dev/null
+++ b/tests/scenarios/Templates/MuscleTemplateTest.php
@@ -0,0 +1,162 @@
+<?php
+/**
+ * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+abstract class MuscleTemplateTestCase extends AbstractControllerTestCase {
+  protected $_storm_default_to_volatile = true;
+
+  public function setUp() {
+    parent::setUp();
+    Class_Systeme_ModulesAccueil::reset();
+    Class_AdminVar::set('TEMPLATING', 1);
+
+    $profile = $this->fixture('Class_Profil',
+                              ['id' => 23]);
+
+    (new Muscle_Template)->tryOn($profile);
+    (new Class_Profil_Promoter())->promote($profile);
+
+  }
+
+
+  public function tearDown() {
+    parent::tearDown();
+    Class_Systeme_ModulesAccueil::reset();
+  }
+}
+
+
+
+
+class MuscleTemplateAdminTemplateIndexDispatchTest extends MuscleTemplateTestCase {
+
+  public function setUp() {
+    parent::setUp();
+    $this->dispatch('/admin/template/index');
+  }
+
+
+  /** @test */
+  public function editMuscleUrlShouldBeDisplay() {
+    $this->assertXPath('//table//a[contains(@href,"/admin/template/edit/template/MUSCLE")]');
+  }
+}
+
+
+
+class MuscleTemplateProfilePatcherTest extends MuscleTemplateTestCase {
+
+  public function setUp() {
+    parent::setUp();
+    $this->dispatch('/opac/index/index');
+  }
+
+
+  public function widgetsClasses() {
+    return [
+            ['login'],
+            ['accessibility'],
+            ['rech_simple'],
+            ['admin_tools'],
+            ['scroll'],
+            ['library'],
+            ['critiques'],
+    ];
+  }
+
+
+  /**
+   * @dataProvider widgetsClasses
+   * @test */
+  public function indexShouldContainsWidgets($widget_class) {
+    $this->assertXPath(sprintf('//div[contains(@class, "widget")][contains(@class, "%s")]',
+                               $widget_class));
+  }
+
+
+  /** @test */
+  public function editTemplateMuscleShouldBePresent() {
+    $this->assertXPathContentContains('//a[contains(@href, "admin/template/edit/template/MUSCLE")]', 'Configuration du template');
+  }
+}
+
+
+
+class MuscleTemplateOpacIndexWithUserAgentTest extends MuscleTemplateTestCase {
+  public function setUp() {
+    parent::setUp();
+    $this->dispatch('/opac/index/index');
+  }
+
+
+  /** @test */
+  public function pageTitleShouldBeTestCharteMuscle() {
+    $this->assertXPathContentContains('//head/title', 'Musclé');
+  }
+
+
+  /** @test */
+  public function pageShouldLoadMuscleCss() {
+    $this->assertXPath('//head/link[contains(@href, "/templates/Muscle/Assets/css/muscle.css")]');
+  }
+
+
+  /** @test */
+  public function pageShouldBeHtml5Valid() {
+    $this->assertHTML5();
+  }
+
+
+  /** @test */
+  public function pageShouldBeAccessible() {
+    $this->assertAccessible($this->_response->getBody());
+  }
+}
+
+
+
+class MuscleTemplateEditTemplateTest extends Admin_AbstractControllerTestCase {
+  protected $_storm_default_to_volatile = true;
+
+  public function setUp() {
+    parent::setUp();
+
+    Class_AdminVar::set('TEMPLATING', 1);
+
+    $settings = $this->fixture('Class_Template_Settings',
+                               ['id' => 456,
+                                'template' => 'MUSCLE']);
+
+    $this->dispatch('/admin/template/edit/template/muscle');
+  }
+
+
+  /** @test */
+  public function checkboxMuscleCssShouldBeChecked() {
+    $this->assertXPath('//form//input[@type="checkbox"][@name="MuscleMuscleCss"][@checked]');
+  }
+
+
+  /** @test */
+  public function customCssShouldContainsClassMenuButtons() {
+    $this->assertContains('"menu_buttons"', $this->_response->getBody());
+  }
+}
\ No newline at end of file
diff --git a/tests/scenarios/Templates/TemplatesTest.php b/tests/scenarios/Templates/TemplatesTest.php
index 93685c1c02b193ea9e7a11863d620bf2f9ba0db7..f921d8b43ee08ed5961af0dd63721f01c20c917a 100644
--- a/tests/scenarios/Templates/TemplatesTest.php
+++ b/tests/scenarios/Templates/TemplatesTest.php
@@ -985,6 +985,7 @@ class TemplatesDispatchIntonationSearchTest extends TemplatesIntonationTestCase
     $this->assertEquals('INTONATION', Class_Profil::getCurrentProfil()->getTemplate());
   }
 
+
   /** @test */
   public function linkToDeleteFacetShoulContainsMultifacetT3() {
     $this->assertXPathContentContains('//div[@class="criteres_recherche"]//a[@href="/recherche/simple/expressionRecherche/pomme/multifacets/T1"]', 'Site:');
@@ -1572,6 +1573,13 @@ class TemplatesDispatchIntonationWithAccessibilityTest extends TemplatesIntonati
     $this->dispatch('/opac/index/index/id_profil/72', true);
     $this->assertXPath('//button/i[contains(@class,  "fa-low-vision")]');
   }
+
+
+  /** @test */
+  public function fontSizeRulesCssShouldBeLoaded() {
+    $this->dispatch('/opac/index/index/id_profil/72', true);
+    $this->assertXPath('//head/link[contains(@href, "public/opac/css/font_size_rules.css")]');
+  }
 }
 
 
@@ -1957,6 +1965,20 @@ class TemplatesCmsArticleViewTest extends TemplatesIntonationTestCase {
 class TemplatesViewRecordTest extends TemplatesIntonationTestCase {
   public function setUp() {
     parent::setUp();
+
+    $conf = (new Class_Systeme_Widget_Action)
+      ->setId('recherche_viewnotice_1')
+      ->setProfileId(72)
+      ->load();
+
+    $conf
+      ->setNewDatas(['IntonationIcoAllRecordData' => 'https://ma.super-ico.afi-sa.fr',
+                     'IntonationLabelAllRecordData' => 'Tout savoir',
+                     'IntonationTitleAllRecordData' => 'Tout savoir sur la notice'])
+      ->updateProfile();
+
+    Class_Profil::clearCache();
+
     $this->fixture('Class_CodifGenre',
                    ['id' => 13,
                     'libelle' => 'Roman']);
@@ -1967,10 +1989,15 @@ class TemplatesViewRecordTest extends TemplatesIntonationTestCase {
 
     $this->fixture('Class_Notice',
                    ['id' => 456,
+                    'type_doc' => 1,
                     'titre_principal' => 'Psycho',
                     'clef_oeuvre' => 'PSYKO',
                     'facettes' => 'G13 M12']);
 
+    $this->fixture('Class_TypeDoc',
+                   ['id' => 1,
+                    'label' => 'book']);
+
     $this->fixture('Class_AvisNotice',
                    ['id' => 178,
                     'entete' => "Lost héighway",
@@ -2019,7 +2046,13 @@ class TemplatesViewRecordTest extends TemplatesIntonationTestCase {
 
   /** @test */
   public function recordNavShouldContainsHomeLinkActive() {
-    $this->assertXPath('//ul[contains(@class, "nav")]//li//a[contains(@class, "active")][contains(@href, "recherche/viewnotice")]');
+    $this->assertXPathContentContains('//ul[contains(@class, "nav")]//li//a[contains(@class, "active")][contains(@href, "recherche/viewnotice")]//div', 'Tout savoir');
+  }
+
+
+  /** @test */
+  public function recordNavHomeLinkShouldContainsIcoMaSuperIcoAndToutSavoirSurLaNoticeTitle() {
+    $this->assertXPath('//ul[contains(@class, "nav")]//li//a[contains(@class, "active")][contains(@href, "recherche/viewnotice")][@title="Tout savoir sur la notice"]//img[@src= "https://ma.super-ico.afi-sa.fr"]');
   }
 }
 
@@ -2299,13 +2332,13 @@ class TemplatesRecordResumeDispatchTest extends TemplatesIntonationTestCase {
       ->set_subfield('330', 'a', 'Résumé du document')
       ->save();
 
-    $this->dispatch('/opac/record/summary/id/456/id_profil/72');
+    $this->dispatch('/opac/recherche/viewnotice/id/456/id_profil/72');
   }
 
 
   /** @test */
-  public function pageTitleShouldBePsychoResume() {
-    $this->assertXPathContentContains('//head//title', 'Psycho : Résumé');
+  public function linkToEditActionViewNoticeShouldBePresent() {
+    $this->assertXPath('//a[contains(@href, "/admin/widget/edit-action/id/recherche_viewnotice/id_profil/72")]');
   }
 
 
@@ -2794,6 +2827,10 @@ class TemplatesDispatchIntonationSearchListFormatWallTest extends TemplatesInton
   public function setUp() {
     parent::setUp();
 
+    $this->fixture('Class_CodifAuteur',
+                   ['id' => 43,
+                    'libelle' => 'Pomme d\'API']);
+
     $records = [$this->fixture('Class_Notice',
                                ['id' => 89]),
                 $this->fixture('Class_Notice',
@@ -2812,7 +2849,12 @@ class TemplatesDispatchIntonationSearchListFormatWallTest extends TemplatesInton
       ->answers(['facettes' => ''])
 
       ->whenCalled('fetchFacetsAndTags')
-      ->answers(['facettes' => ''])
+      ->answers(['facettes' => '',
+                 'suggests' => [['id' => 'M87',
+                                 'label' => 'Pomme (sujet)'],
+
+                                ['id' => 'A43',
+                                 'label' => 'Pomme d\'API (auteur)']]])
 
       ->whenCalled('getRecordsCount')
       ->answers(2)
@@ -2841,8 +2883,7 @@ class TemplatesDispatchIntonationSearchListFormatWallTest extends TemplatesInton
 
   /** @test */
   public function searchResultOrderShouldBeAuthorDESC() {
-    $this->assertXPath('//select/option[@selected="selected"][@value="alpha_auteur desc"]',
-                       $this->_response->getBody());
+    $this->assertXPath('//select/option[@selected="selected"][@value="alpha_auteur desc"]');
   }
 
 
@@ -2856,6 +2897,12 @@ class TemplatesDispatchIntonationSearchListFormatWallTest extends TemplatesInton
   public function buttonMurShouldBeActive() {
     $this->assertXpath('//div//a[contains(@class, "active")][contains(@href, "/liste_format/4")]');
   }
+
+
+  /** @test */
+  public function suggestionsShouldBeDisplay() {
+    $this->assertXPathContentContains('//b', 'Suggestions', $this->_response->getBody());
+  }
 }
 
 
@@ -4000,6 +4047,20 @@ class TemplatesDispatchAuthorActionsTest extends TemplatesIntonationWithAuthorTe
   }
 
 
+  /** @test */
+  public function authorViewShouldContainsEditAction() {
+    $this->dispatch('/opac/author/view/id/10/id_profil/72');
+    $this->assertXPath('//a[contains(@href, "/admin/widget/edit-action/id/author_view/id_profil/72")]');
+  }
+
+
+  /** @test */
+  public function authorViewShouldContainsExtendAction() {
+    $this->dispatch('/opac/author/view/id/10/id_profil/72');
+    $this->assertXPath('//a[contains(@href, "/admin/modules/apply-to/id/author_view/id_profil/72")]');
+  }
+
+
   /** @test */
   public function dispatchBiograpryShouldDisplayBiography() {
     $this->dispatch('/author/biography/id/10/id_profil/72');
@@ -4086,26 +4147,54 @@ class TemplatesDispatchAdminWidgetEditActionTest extends TemplatesIntonationTest
   /** @test */
   public function dispatchModuleShouldContainsExpectation() {
     $this->dispatch('/opac/abonne/fiche/id_profil/72');
-    $this->assertXPath('//a[contains(@href, "/admin/widget/edit-action/id/abonne_fiche/id_profil/72")]',
-                       $this->_response->getBody());
+    $this->assertXPath('//a[contains(@href, "/admin/widget/edit-action/id_profil/72/id/abonne_fiche")]');
   }
 
 
   /** @test */
   public function customCssClassesShouldBePresent() {
-    $this->dispatch('/admin/widget/edit-action/id/recherche_simple/id_profil/72');
+    $this->dispatch('/admin/widget/edit-action/id/recherche_resultat_simple/id_profil/72');
     $this->assertXPath('//input[@type="checkbox"][@value="ultra_light_widget"]');
   }
 
 
+  /** @test */
+  public function pageTitleShouldBeConfigartionDeLaPageDuDocumentDeTypeBook() {
+    $this->dispatch('/admin/widget/edit-action/id/recherche_viewnotice_1/id_profil/72');
+    $this->assertXPathContentContains('//h1', 'Configuration de la page des documents de type livres');
+  }
+
+
+  /** @test */
+  public function renameTabTextShouldBePresent() {
+    $this->dispatch('/admin/widget/edit-action/id/recherche_viewnotice/id_profil/72');
+    $this->assertXPath('//input[@type="text"][@id="IntonationLabelDocumentItems"]');
+  }
+
+
+  /** @test */
+  public function changeTabIcoShouldBePresent() {
+    $this->dispatch('/admin/widget/edit-action/id/recherche_viewnotice/id_profil/72');
+    $this->assertXPath('//input[@type="text"][@id="IntonationIcoDocumentItems"]');
+  }
+
+
+  /** @test */
+  public function changeTabTitleShouldBePresent() {
+    $this->dispatch('/admin/widget/edit-action/id/recherche_viewnotice/id_profil/72');
+    $this->assertXPath('//input[@type="text"][@id="IntonationTitleDocumentItems"]');
+  }
+
+
   /** @test */
   public function customCssClassesShouldHaveBeenSaved() {
-    $this->postDispatch('/admin/widget/edit-action/id/recherche_simple/id_profil/72',
+    $this->postDispatch('/admin/widget/edit-action/id/recherche_resultat_simple/id_profil/72',
                         ['boite' => 'ultra_light_widget']);
 
     $this->assertContains('ultra_light_widget',
                           (new Class_Profil_Preferences())->getModulePref(Class_Profil::find(72),
                                                                           (new Class_Profil_ModuleDefinition('recherche',
+                                                                                                             'resultat',
                                                                                                              'simple'))));
   }
 
diff --git a/tests/scenarios/Templates/TerreDuMilieuTemplateTest.php b/tests/scenarios/Templates/TerreDuMilieuTemplateTest.php
index 5a4ec2f9ac3c60231d4e1ef4340d19d31ccba3b5..a71b9ff93bbf6461fac0b6daabbf3b63e0467c76 100644
--- a/tests/scenarios/Templates/TerreDuMilieuTemplateTest.php
+++ b/tests/scenarios/Templates/TerreDuMilieuTemplateTest.php
@@ -119,6 +119,18 @@ class TerreDuMilieuTemplateOpacIndexWithUserAgentTest extends TerreDuMilieuTempl
   }
 
 
+  /** @test */
+  public function searchWidgetInFlyingWidgetShouldHaveIdBoite1Mnus5() {
+    $this->assertXPath('//div[contains(@class, "tdm_flying_widget")]//div[contains(@class, "tdm_search_widget")][@id="boite_1-5"]');
+  }
+
+
+  /** @test */
+  public function searchWidgetInFlyingWidgetShouldHaveInputExpressionRechercheIdIdBoite1Mnus5() {
+    $this->assertXPath('//div[contains(@class, "tdm_flying_widget")]//div[contains(@class, "tdm_search_widget")][@id="boite_1-5"]//input[@id="expressionRecherche1-5"]');
+  }
+
+
   /** @test */
   public function pageShouldBeHtml5Valid() {
     $this->assertHTML5();