diff --git a/doc/dev/documentation.org b/doc/dev/documentation.org
index 91a48e2c1909f60f64dc09814219e21b0e93e832..58a14a52db711b2af9b01968722a743a70818fe3 100644
--- a/doc/dev/documentation.org
+++ b/doc/dev/documentation.org
@@ -456,6 +456,15 @@ of Bar (Listing [[sql-bar]] and [[sql-foo]]).
               bar._sql_save(execute, data=data)
 #+end_src
 
+Let see the results database scheme for Pamhyr2 at version v0.0.7 in
+Figure [[sql_schema]].
+
+#+NAME: sql_schema
+#+ATTR_LATEX: :width 16cm
+#+CAPTION: SQLite database scheme at Pamhyr2 version v0.0.7 (generate with [[https://gitlab.com/Screwtapello/sqlite-schema-diagram]])
+[[./images/schema_v0.0.7.png]]
+
+
 [fn:sqlite] The SQLite web site: https://www.sqlite.org/index.html
 (last access 2023-09-20)
 
diff --git a/doc/dev/images/schema_v0.0.7.png b/doc/dev/images/schema_v0.0.7.png
new file mode 100644
index 0000000000000000000000000000000000000000..a09da69f67cde4569c3bcf10e0db4313594c61ef
Binary files /dev/null and b/doc/dev/images/schema_v0.0.7.png differ
diff --git a/src/Model/Geometry/PointXYZ.py b/src/Model/Geometry/PointXYZ.py
index 2e806687cbc5bb9f5bfeac1031e06cb02c93ac04..0db9ff3de26f7f5e7e83a662504257ecb4bd023c 100644
--- a/src/Model/Geometry/PointXYZ.py
+++ b/src/Model/Geometry/PointXYZ.py
@@ -47,7 +47,7 @@ class PointXYZ(Point, SQLSubModel):
             z INTEGER NOT NULL,
             profile INTEGER NOT NULL,
             sl INTEGER,
-            FOREIGN KEY(profile) REFERENCES profileXYZ(id),
+            FOREIGN KEY(profile) REFERENCES geometry_profileXYZ(id),
             FOREIGN KEY(sl) REFERENCES sedimentary_layer(id)
           )
         """)
diff --git a/src/Solver/CommandLine.py b/src/Solver/CommandLine.py
index 4afcbc9a24a91c49d640e33bdb4a06a2812b1100..5f706d1a2772b25e6f10f82bd512bb7c574aaf78 100644
--- a/src/Solver/CommandLine.py
+++ b/src/Solver/CommandLine.py
@@ -167,8 +167,10 @@ class CommandLineSolver(AbstractSolver):
             repertory, "pamhyr-study-description.txt"
         )
 
-        with open(path, "w+") as f:
-            txt = study.description
+        with open(path, "w+", encoding='utf-8') as f:
+            txt = study.description\
+                       .encode()\
+                       .decode('utf-8', 'replace')
             f.write(txt)
 
     #######
diff --git a/src/Solver/Mage.py b/src/Solver/Mage.py
index 43a9a0364d25f3570d07b37197cfe7ff76e48fcb..ea1c763532aeb0aa87aeda12fbb36c3d3fc604fe 100644
--- a/src/Solver/Mage.py
+++ b/src/Solver/Mage.py
@@ -282,6 +282,9 @@ class Mage(CommandLineSolver):
                 if bound.node is None:
                     continue
 
+                if not study.river.is_enable_node(bound.node):
+                    continue
+
                 if bound.bctype == "ZD":
                     AVA.append(bound)
                 elif bound.bctype == "TD" or bound.bctype == "PC":
@@ -357,13 +360,7 @@ class Mage(CommandLineSolver):
         with mage_file_open(os.path.join(repertory, f"{name}.RUG"), "w+") as f:
             files.append(f"{name}.RUG")
 
-            edges = study.river.edges()
-            edges = list(
-                filter(
-                    lambda e: e.is_enable(),
-                    edges
-                )
-            )
+            edges = study.river.enable_edges()
 
             id = 1
             for edge in edges:
diff --git a/src/View/Results/Window.py b/src/View/Results/Window.py
index 45aaa0094ced68d59565ed910cbe434e3747721b..155b971e5c4ba7081aadf9ae2820c5777b6dec01 100644
--- a/src/View/Results/Window.py
+++ b/src/View/Results/Window.py
@@ -160,7 +160,10 @@ class ResultsWindow(PamhyrWindow):
         self.canvas = MplCanvas(width=5, height=4, dpi=100)
         self.canvas.setObjectName("canvas")
         self.toolbar = PamhyrPlotToolbar(
-            self.canvas, self
+            self.canvas, self, items=[
+                "home", "move", "zoom", "save",
+                "iso", "back/forward"
+            ]
         )
         self.plot_layout = self.find(QVBoxLayout, "verticalLayout")
         self.plot_layout.addWidget(self.toolbar)
@@ -180,7 +183,10 @@ class ResultsWindow(PamhyrWindow):
         self.canvas_2 = MplCanvas(width=5, height=4, dpi=100)
         self.canvas_2.setObjectName("canvas_2")
         self.toolbar_2 = PamhyrPlotToolbar(
-            self.canvas_2, self
+            self.canvas_2, self, items=[
+                "home", "move", "zoom", "save",
+                "iso", "back/forward"
+            ]
         )
         self.plot_layout_2 = self.find(QVBoxLayout, "verticalLayout_2")
         self.plot_layout_2.addWidget(self.toolbar_2)
@@ -199,7 +205,10 @@ class ResultsWindow(PamhyrWindow):
         self.canvas_3 = MplCanvas(width=5, height=4, dpi=100)
         self.canvas_3.setObjectName("canvas_3")
         self.toolbar_3 = PamhyrPlotToolbar(
-            self.canvas_3, self
+            self.canvas_3, self, items=[
+                "home", "move", "zoom", "save",
+                "iso", "back/forward"
+            ]
         )
         self.plot_layout_3 = self.find(QVBoxLayout, "verticalLayout_3")
         self.plot_layout_3.addWidget(self.toolbar_3)
@@ -218,7 +227,10 @@ class ResultsWindow(PamhyrWindow):
         self.canvas_4 = MplCanvas(width=5, height=4, dpi=100)
         self.canvas_4.setObjectName("canvas_4")
         self.toolbar_4 = PamhyrPlotToolbar(
-            self.canvas_4, self
+            self.canvas_4, self, items=[
+                "home", "move", "zoom", "save",
+                "iso", "back/forward"
+            ]
         )
         self.plot_layout_4 = self.find(
             QVBoxLayout, "verticalLayout_hydrograph")
diff --git a/tools/license.el b/tools/license.el
index afb49975302f0a33d67f216795ea1fe63fc3de24..1d08c959f6cdd909006995e26f92155a4d045ee7 100644
--- a/tools/license.el
+++ b/tools/license.el
@@ -109,3 +109,59 @@
     (mapcar 'pamhyr--insert-license
             (mapcar (lambda (file) (concat root "/" file))
                     files-without-copyright))))
+
+(defvar pamhyr-mail-template "Bonjour,
+
+La version @version de Pamhyr2 est disponible.
+
+<NEWS>
+
+---Change-logs-------------------@version---
+@description
+------------------------------------------
+
+---Liens-utiles---------------------------
+  Télécharger cette version :
+    https://gitlab.irstea.fr/theophile.terraz/pamhyr/-/releases/@version
+
+  La documentation (en anglais) :
+    https://gitlab.irstea.fr/theophile.terraz/pamhyr/-/wikis/home
+
+  Rapporter un problème :
+    https://gitlab.irstea.fr/theophile.terraz/pamhyr/-/issues
+  ou directement par mail à :
+    <pierre-antoine.rouby@inrae.fr>
+------------------------------------------
+
+<FUTURE_WORK>
+
+---/!\--Attention-------------------------
+  Pour les utilisateurs Windows : Certains antivirus peuvent détecter Pamhyr2 comme un virus, c'est un faux positif, le problème est connu et vient de l'exécutable généré par PyInstaller.
+  Nous n'avons pas encore de solution pour régler ce problème.
+  Si c'est votre cas, il faudra ajouter une exception dans votre antivirus si vous voulez utiliser Pamhyr2.
+  Sinon, il est aussi possible de passer par WSL et utiliser la version Linux sous Windows.
+
+  Rapport d'antivirus : <LINK_VIRUSTOTAL>
+------------------------------------------
+
+Bon weekend,
+")
+
+(require 'web)
+(require 'json)
+
+(defun pamhyr-release-mail (release)
+  (interactive "sRelease name: ")
+  (web-http-get
+   (lambda (httpc header my-data)
+     (let* ((data (json-read-from-string my-data))
+            (release (cdr (assoc 'tag_name data)))
+            (description (cdr (assoc 'description data))))
+       (let ((buffer (generate-new-buffer (format "* mail-%s *" release))))
+         (with-current-buffer buffer
+           (insert
+            (string-replace "@description" description
+                            (string-replace "@version" release
+                                            pamhyr-mail-template)))
+           (set-buffer buffer)))))
+   :url (concat "https://gitlab.irstea.fr/api/v4/projects/2779/releases/" release)))