diff --git a/src/Solver/ASolver.py b/src/Solver/ASolver.py
index 1b070f39eb5bd126c7a159cacb1cda72b97a6f8a..9d84fefbfa2614e4a31a69f13991b38e218bed62 100644
--- a/src/Solver/ASolver.py
+++ b/src/Solver/ASolver.py
@@ -25,7 +25,7 @@ try:
     # Installation allow Unix-like signal
     from signal import SIGTERM, SIGSTOP, SIGCONT
     _signal = True
-except:
+except Exception:
     _signal = False
 
 from enum import Enum
@@ -220,7 +220,7 @@ class AbstractSolver(object):
         """
         # HACK: Works in most case... Trust me i'm an engineer
         cmd = cmd.replace("@install_dir", self._install_dir())
-        cmd = cmd.replace("@path", path.replace(" ", "\ "))
+        cmd = cmd.replace("@path", path.replace(" ", "%20"))
         cmd = cmd.replace("@input", self.input_param())
         cmd = cmd.replace("@dir", self._process.workingDirectory())
         cmd = cmd.replace("@args", " ".join(self.cmd_args(study)))
@@ -230,7 +230,7 @@ class AbstractSolver(object):
         if cmd[0] == "\"":
             # Command line executable path is between " char
             cmd = cmd.split("\"")
-            exe = cmd[1].replace("\ ", " ")
+            exe = cmd[1].replace("%20", " ")
             args = list(
                 filter(
                     lambda s: s != "",
@@ -239,12 +239,12 @@ class AbstractSolver(object):
             )
         else:
             # We suppose the command line executable path as no space char
-            cmd = cmd.replace("\ ", "&_&").split(" ")
+            cmd = cmd.replace("\\ ", "&_&").split(" ")
             exe = cmd[0].replace("&_&", " ")
             args = list(
                 filter(
                     lambda s: s != "",
-                    map(lambda s: s.replace("&_&", "\ "), cmd[1:])
+                    map(lambda s: s.replace("&_&", " "), cmd[1:])
                 )
             )
 
diff --git a/src/Solver/Mage.py b/src/Solver/Mage.py
index 15d3979b8bd52a9127d7389720a8775a6da3e0ac..4836d39fb0d1f8b7ac916568b2fd3b2066db7775 100644
--- a/src/Solver/Mage.py
+++ b/src/Solver/Mage.py
@@ -99,11 +99,11 @@ class Mage(AbstractSolver):
     ##########
 
     def cmd_args(self, study):
-        l = super(Mage, self).cmd_args(study)
+        lst = super(Mage, self).cmd_args(study)
 
-        l.append("-r")
+        lst.append("-r")
 
-        return l
+        return lst
 
     def input_param(self):
         name = self._study.name
@@ -137,7 +137,10 @@ class Mage(AbstractSolver):
             if edge._name == "":
                 name = f"Reach_{edge.id}"
 
-            with mage_file_open(os.path.join(repertory, "net", f"{name}.ST"), "w+") as f:
+            with mage_file_open(
+                    os.path.join(repertory, "net", f"{name}.ST"),
+                    "w+"
+            ) as f:
                 files.append(str(os.path.join("net", f"{name}.ST")))
 
                 cnt_num = 1
@@ -159,8 +162,12 @@ class Mage(AbstractSolver):
 
                         nl = len(profile.sl)
                         sediment = f" {nl:>3}"
-                        for l in profile.sl.layers:
-                            sediment += f" {l.height:>10} {l.d50:>10} {l.sigma:>10} {l.critical_constraint:>10}"
+                        for layer in profile.sl.layers:
+                            sediment += (
+                                f" {layer.height:>10} {layer.d50:>10} " +
+                                f"{layer.sigma:>10} " +
+                                f"{layer.critical_constraint:>10}"
+                            )
 
                     f.write(f"{num}{c1}{c2}{t}{kp}  {name} {sediment}\n")
                     cnt_num += 1
@@ -176,9 +183,13 @@ class Mage(AbstractSolver):
                         if point.sl is not None:
                             nl = len(point.sl)
                             sediment = f"{nl:>3}"
-                            for l in point.sl.layers:
-                                prev = round(prev - l.height, 5)
-                                sediment += f" {prev:>10} {l.d50:>10} {l.sigma:>10} {l.critical_constraint:>10}"
+                            for layer in point.sl.layers:
+                                prev = round(prev - layer.height, 5)
+                                sediment += (
+                                    f" {prev:>10} {layer.d50:>10} " +
+                                    f"{layer.sigma:>10} " +
+                                    f"{layer.critical_constraint:>10}"
+                                )
 
                         f.write(f"{x}{y}{z} {n} {sediment}\n")
 
@@ -252,7 +263,10 @@ class Mage(AbstractSolver):
     #     if qlog is not None:
     #         qlog.put(f"Export LAT file")
 
-    #     with mage_file_open(os.path.join(repertory, f"{name}.LAT"), "w+") as f:
+    #     with mage_file_open(
+    #             os.path.join(repertory, f"{name}.LAT"),
+    #             "w+"
+    #     ) as f:
     #         files.append(f"{name}.LAT")
 
     #         name = f"{lateral.node.id:3}".replace(" ", "x")
@@ -478,12 +492,12 @@ class Mage8(Mage):
     ##########
 
     def cmd_args(self, study):
-        l = super(Mage8, self).cmd_args(study)
+        lst = super(Mage8, self).cmd_args(study)
 
         if study.river.has_sediment():
-            l.append("-c=3")
+            lst.append("-c=3")
 
-        return l
+        return lst
 
     @timer
     def _export_PAR(self, study, repertory, qlog=None, name="0"):