diff --git a/.gitignore b/.gitignore
index b1d3e9df45a1ee5cd73527d7e7d1c21b7393b48d..ef7b45a407d5ae80417ed57615ef152184a2f1c4 100755
--- a/.gitignore
+++ b/.gitignore
@@ -25,6 +25,4 @@ n2s3.iml
 .cache-main
 .cache-tests
 .classpath
-20NCropped \[1\] 15-04-2020 16:15:33/
 
-40N \[1\] 06-04-2020 21:24:40/
diff --git a/build.sbt b/build.sbt
index 428ef36b76577fbd0ebafcc1c3e47dca722b20d2..98e887d7f5eb2eaaf17f5b3a2604817fa88151b5 100755
--- a/build.sbt
+++ b/build.sbt
@@ -1,11 +1,11 @@
 import com.typesafe.sbt.SbtMultiJvm
-import com.typesafe.sbt.SbtMultiJvm.MultiJvmKeys.{MultiJvm, scalatestOptions}
+import com.typesafe.sbt.SbtMultiJvm.MultiJvmKeys.MultiJvm
 
 lazy val commonSettings = Seq(
-  version          := "1.1",
+  version          := "1.1.1",
   organization     := "fr.univ-lille.cristal",
   scalaVersion     := "2.11.6",
-  scalacOptions    := Seq("-unchecked", "-deprecation", "-encoding", "utf8", "-language:postfixOps", "-Xmax-classfile-name","78"),
+  scalacOptions    := Seq("-unchecked", "-deprecation", "-encoding", "utf8", "-language:postfixOps"),
 
  /********************************************************************************************************************
   * Dependecy information
@@ -50,19 +50,19 @@ lazy val commonSettings = Seq(
 )
 
 lazy val root = (project in file(".")).
-  aggregate(n2s3, n2s3_cluster, examples, daemon)
+  aggregate(n2s3, examples, daemon) //n2s3_cluster
 
 lazy val n2s3 = (project in file("n2s3")).
   settings(commonSettings: _*)
 
-lazy val n2s3_cluster = (project in file("n2s3_cluster")).
-  settings(commonSettings: _*).
-  dependsOn(n2s3)
+//lazy val n2s3_cluster = (project in file("n2s3_cluster")).
+//  settings(commonSettings: _*).
+//  dependsOn(n2s3)
 
 lazy val examples = (project in file("n2s3_examples")).
   settings(commonSettings: _*).
-  dependsOn(n2s3, n2s3_cluster)
-
+  dependsOn(n2s3)
+//dependsOn(n2s3, n2s3_cluster)
 lazy val daemon = (project in file("n2s3_daemon")).
   settings(commonSettings: _*).
   dependsOn(n2s3)
@@ -70,5 +70,9 @@ lazy val daemon = (project in file("n2s3_daemon")).
 lazy val integration_tests = (project in file("n2s3_integration_tests")).
   settings(SbtMultiJvm.multiJvmSettings: _*).
   settings(commonSettings: _*).
-  configs(MultiJvm).
-  dependsOn(n2s3, n2s3_cluster)
+  settings(
+    parallelExecution in Test := false
+  )
+  .configs(MultiJvm).
+  dependsOn(n2s3)
+
diff --git a/jfreechart-1.5.0.jar b/jfreechart-1.5.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..a6bebed73c95d6548dd0848ed059996885feabf4
Binary files /dev/null and b/jfreechart-1.5.0.jar differ
diff --git a/n2s3/build.sbt b/n2s3/build.sbt
old mode 100755
new mode 100644
index fe60ec7e01941c89c06bf9166754928309e83ea4..68cb04eab437621b11eb188604dddef4483c6ad8
--- a/n2s3/build.sbt
+++ b/n2s3/build.sbt
@@ -17,7 +17,7 @@ test in assembly := {}
 libraryDependencies += "org.mongodb.scala" %% "mongo-scala-driver" % "2.6.0"
 
 libraryDependencies ++= {
-  val scalaXmlV = "1.0.2"
+  val scalaXmlV = "1.0.1"
   val akkaV = "2.3.7"
   val scalatestV = "2.2.1"
   Seq(
@@ -28,8 +28,15 @@ libraryDependencies ++= {
     "com.typesafe.akka" %% "akka-cluster"    % akkaV,
     "org.scalatest"     %% "scalatest"       % scalatestV % "test",
     "com.squants"  %% "squants"  % "0.5.3",
-    "com.storm-enroute" %% "scalameter" % "0.7",
-    "org.knowm.xchart" % "xchart" % "3.3.1" exclude("de.erichseifert.vectorgraphics2d", "VectorGraphics2D"),
+    "com.storm-enroute" %% "scalameter" % "0.19" % Test,
+    "com.fasterxml.jackson.core" % "jackson-databind" % "2.11.0",
+    "com.fasterxml.jackson.module" %% "jackson-module-scala" % "2.11.0",
+    "org.knowm.xchart" % "xchart" % "3.6.3" exclude("de.erichseifert.vectorgraphics2d", "VectorGraphics2D"),
    "net.sf" %% "jaer" % "1.0" from "https://sourcesup.renater.fr/frs/download.php/file/5047/jaer.jar"
   )
-}
\ No newline at end of file
+}
+
+assemblyMergeStrategy in assembly := {
+case PathList("META-INF", xs @ _*) => MergeStrategy.discard
+case PathList("module-info.class") => MergeStrategy.discard
+case x => val oldStrategy = (assemblyMergeStrategy in assembly).value; oldStrategy(x) }
diff --git a/n2s3/documentation/Modification/nessy modofication.pdf b/n2s3/documentation/Modification/nessy modofication.pdf
old mode 100755
new mode 100644
diff --git a/n2s3/documentation/different_presentations/SoutenancePJI.pdf b/n2s3/documentation/different_presentations/SoutenancePJI.pdf
old mode 100755
new mode 100644
diff --git a/n2s3/documentation/different_presentations/report_pji.tar.gz b/n2s3/documentation/different_presentations/report_pji.tar.gz
old mode 100755
new mode 100644
diff --git a/n2s3/documentation/different_presentations/slides_n2s3.tar.gz b/n2s3/documentation/different_presentations/slides_n2s3.tar.gz
old mode 100755
new mode 100644
diff --git a/n2s3/documentation/different_presentations/slides_pji.tar.gz b/n2s3/documentation/different_presentations/slides_pji.tar.gz
old mode 100755
new mode 100644
diff --git a/n2s3/documentation/different_presentations/userGuide/main.tex b/n2s3/documentation/different_presentations/userGuide/main.tex
old mode 100755
new mode 100644
diff --git a/n2s3/documentation/different_presentations/userGuide/n2s3-user-guide.pdf b/n2s3/documentation/different_presentations/userGuide/n2s3-user-guide.pdf
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/Graph.java b/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/Graph.java
deleted file mode 100755
index 687fcfee411193b307c5da155fb5b21ca13835c6..0000000000000000000000000000000000000000
--- a/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/Graph.java
+++ /dev/null
@@ -1,111 +0,0 @@
-package fr.univ_lille.cristal.emeraude.n2s3;
-
-import org.jfree.chart.ChartFactory;
-import org.jfree.chart.ChartPanel;
-import org.jfree.chart.JFreeChart;
-import org.jfree.chart.axis.NumberAxis;
-import org.jfree.chart.plot.PlotOrientation;
-import org.jfree.chart.plot.XYPlot;
-import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer;
-import org.jfree.data.xy.XYDataset;
-import org.jfree.data.xy.XYSeries;
-import org.jfree.data.xy.XYSeriesCollection;
-import org.jfree.ui.ApplicationFrame;
-
-import java.awt.*;
-
-public class Graph extends ApplicationFrame {
-
-	/**
-	 * 
-	 */
-	private static final long serialVersionUID = 1352234752863184258L;
-
-	// chart data
-	private XYSeriesCollection _dataset;
-	private XYSeries firstSerie, secondSerie;
-
-	// abscissa of the next point
-	private int time;
-	private final String time_name = "time";
-
-	/**
-	 * Main constructor
-	 *
-	 * @param title
-	 *            title of the frame
-	 */
-	public Graph(String title, String first_title, String second_title) {
-		super(title);
-		this.time = 1;
-		this.firstSerie = new XYSeries(first_title);
-		this.secondSerie = new XYSeries(second_title);
-		this._dataset = new XYSeriesCollection();
-		this._dataset.addSeries(firstSerie);
-		this._dataset.addSeries(secondSerie);
-		final JFreeChart chart = createChart(_dataset);
-		final ChartPanel chartPanel = new ChartPanel(chart);
-		chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
-		setContentPane(chartPanel);
-		this.setVisible(true);
-	}
-
-	/**
-	 * Creation of the chart
-	 *
-	 * @param dataset
-	 *            data to display on the graph
-	 * @return the chart initialized
-	 */
-	private JFreeChart createChart(final XYDataset dataset) {
-
-		// create the chart...
-		final JFreeChart chart = ChartFactory.createXYLineChart(
-				this.getTitle(), // chart title
-				this.time_name, // x axis label
-				"Entity number", // y axis label
-				dataset, // data
-				PlotOrientation.VERTICAL, true, // include legend
-				true, // tooltips
-				false // urls
-				);
-
-		// NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART...
-		chart.setBackgroundPaint(Color.white);
-
-		// get a reference to the plot for further customisation...
-		final XYPlot plot = chart.getXYPlot();
-		plot.setBackgroundPaint(Color.lightGray);
-		plot.setDomainGridlinePaint(Color.white);
-		plot.setRangeGridlinePaint(Color.white);
-
-		final XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
-		renderer.setSeriesShapesVisible(0, false);
-		renderer.setSeriesShapesVisible(1, false);
-		plot.setRenderer(renderer);
-
-		// change the auto tick unit selection to integer units only...
-		final NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
-		rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
-		// OPTIONAL CUSTOMISATION COMPLETED.
-
-		return chart;
-
-	}
-
-	@Override
-	public void paint(Graphics grphcs) {
-		super.paint(grphcs);
-	}
-
-	public void addall(double x, double y) {
-		this.secondSerie.add(this.time, y);
-		this.firstSerie.add(this.time, x);
-		XYSeriesCollection xs = new XYSeriesCollection();
-		xs.addSeries(firstSerie);
-		xs.addSeries(secondSerie);
-		this.time++;
-		this._dataset = xs;
-	}
-
-}
diff --git a/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/InputOutputGraphNetworkObserver.scala b/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/InputOutputGraphNetworkObserver.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/AbstractGraph.java b/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/AbstractGraph.java
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/NeuronsActivitiesGraph.java b/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/NeuronsActivitiesGraph.java
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapticsConductancesGraph.java b/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapticsConductancesGraph.java
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapticsWeightsBarGraph.java b/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapticsWeightsBarGraph.java
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/ValuesOfNetworkGraph.java b/n2s3/src/main/java/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/ValuesOfNetworkGraph.java
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/resources/META-INF/MANIFEST.MF b/n2s3/src/main/resources/META-INF/MANIFEST.MF
deleted file mode 100644
index af66193358ac5ab8f8567c86745be53fb1ec45c8..0000000000000000000000000000000000000000
--- a/n2s3/src/main/resources/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,61 +0,0 @@
-Manifest-Version: 1.0
-Class-Path: squants_2.11-0.5.3.jar akka-testkit_2.11-2.3.7.jar xchart-
- 3.3.1.jar jfreechart-1.0.17.jar nd4j-common-0.7.2.jar nd4j-native-0.7
- .2-android-x86.jar asm-5.0.4.jar protobuf-java-2.5.0.jar nd4j-native-
- platform-0.7.2.jar akka-cluster_2.11-2.3.7.jar commons-io-2.4.jar nd4
- j-native-0.7.2-android-arm.jar openblas-0.2.19-1.3-android-arm.jar ne
- tty-3.8.0.Final.jar commons-math3-3.2.jar scalameter-core_2.11-0.7.ja
- r scalameter_2.11-0.7.jar lombok-1.16.10.jar jackson-core-2.5.2.jar s
- tax2-api-3.1.4.jar openblas-0.2.19-1.3-linux-x86_64.jar scala-parser-
- combinators_2.11-1.0.1.jar scala-parser-combinators_2.11-1.0.3.jar ja
- ckson-module-scala_2.11-2.5.2.jar scala-swing_2.11-1.0.1.jar uncommon
- s-maths-1.2.2a.jar openblas-0.2.19-1.3-windows-x86_64.jar nd4j-contex
- t-0.7.2.jar nd4j-native-0.7.2-windows-x86_64.jar annotations-2.0.1.ja
- r nd4j-native-0.7.2-linux-ppc64le.jar nd4j-native-0.7.2.jar scala-xml
- _2.11-1.0.2.jar commons-math3-3.4.1.jar nd4s_2.11-0.7.2.jar openblas-
- 0.2.19-1.3-linux-ppc64le.jar openblas-0.2.19-1.3-macosx-x86_64.jar sl
- f4j-api-1.7.10.jar scalaxy-loops_2.11-0.3.4.jar openblas-0.2.19-1.3-a
- ndroid-x86.jar ascii-graphs_2.10-0.0.3.jar gpg-library_2.10-0.8.3.jar
-  commons-codec-1.4.jar commons-logging-1.1.1.jar jsr250-api-1.0.jar c
- di-api-1.0.jar javax.inject-1.jar dispatch-core_2.10-0.8.10.jar dispa
- tch-futures_2.10-0.8.10.jar dispatch-http_2.10-0.8.10.jar ant-launche
- r-1.9.6.jar ant-1.9.6.jar httpclient-4.1.3.jar httpcore-4.1.4.jar mav
- en-artifact-3.3.3.jar maven-model-3.3.3.jar maven-plugin-api-3.3.3.ja
- r bcpg-jdk15on-1.49.jar bcprov-jdk15on-1.49.jar plexus-classworlds-2.
- 5.2.jar plexus-component-annotations-1.5.5.jar plexus-utils-3.0.20.ja
- r org.eclipse.sisu.inject-0.3.0.jar org.eclipse.sisu.plexus-0.3.0.jar
-  asm-commons-5.0.4.jar asm-tree-5.0.4.jar asm-5.0.4.jar jarjar-1.6.0.
- jar scala-actors-2.10.6.jar scalactic_2.10-2.2.1.jar scalaz-core_2.10
- -7.0.2.jar scalaz-effect_2.10-7.0.2.jar sbt-assembly-0.14.3.jar sbt-m
- ulti-jvm-0.3.11.jar sbt-pgp-0.8.3.jar sbteclipse-core-2.5.0.jar sbtec
- lipse-plugin-2.5.0.jar sbt-dependency-graph-0.8.2.jar jansi.jar jline
- .jar scala-compiler.jar scala-library.jar scala-reflect.jar actions-0
- .13.13.jar api-0.13.13.jar apply-macro-0.13.13.jar cache-0.13.13.jar 
- classfile-0.13.13.jar classpath-0.13.13.jar collections-0.13.13.jar c
- ommand-0.13.13.jar compile-0.13.13.jar compiler-integration-0.13.13.j
- ar compiler-interface-0.13.13.jar compiler-ivy-integration-0.13.13.ja
- r completion-0.13.13.jar control-0.13.13.jar cross-0.13.13.jar increm
- ental-compiler-0.13.13.jar io-0.13.13.jar ivy-0.13.13.jar ivy-2.3.0-s
- bt-2cf13e211b2cb31f0d3b317289dca70eca3362f6.jar jansi-1.11.jar jawn-p
- arser_2.10-0.6.0.jar jline-2.13.jar jsch-0.1.50.jar json4s-ast_2.10-3
- .2.10.jar json4s-core_2.10-3.2.10.jar json4s-support_2.10-0.6.0.jar l
- auncher-interface-1.0.0-M1.jar logging-0.13.13.jar logic-0.13.13.jar 
- main-0.13.13.jar main-settings-0.13.13.jar paranamer-2.6.jar persist-
- 0.13.13.jar process-0.13.13.jar quasiquotes_2.10-2.0.1.jar relation-0
- .13.13.jar run-0.13.13.jar sbinary_2.10-0.4.2.jar sbt-0.13.13.jar sca
- la-pickling_2.10-0.10.1.jar scala-reflect-2.10.6.jar serialization_2.
- 10-0.1.2.jar task-system-0.13.13.jar tasks-0.13.13.jar template-resol
- ver-0.1.jar test-agent-0.13.13.jar test-interface-1.0.jar testing-0.1
- 3.13.jar tracking-0.13.13.jar interface-0.13.13.jar nd4j-native-0.7.2
- -linux-x86_64.jar guava-18.0.jar config-1.2.1.jar openblas-0.2.19-1.3
- .jar nd4j-api-0.7.2.jar nd4j-buffer-0.7.2.jar nd4j-native-0.7.2-macos
- x-x86_64.jar commons-lang3-3.4.jar reflections-0.9.10.jar test-interf
- ace-0.5.jar jcommon-1.0.21.jar scala-compiler-2.11.6.jar joda-time-2.
- 2.jar nd4j-native-api-0.7.2.jar akka-remote_2.11-2.3.7.jar paranamer-
- 2.6.jar snakeyaml-1.12.jar javacpp-1.3.1.jar javassist-3.18.2-GA.jar 
- jackson-databind-2.5.2.jar scala-reflect-2.11.6.jar scala-library-2.1
- 1.6.jar scala-chart_2.11-0.4.2.jar jackson-0.7.2.jar akka-actor_2.11-
- 2.3.7.jar scala-xml_2.11-1.0.3.jar jackson-annotations-2.5.2.jar xml-
- apis-1.3.04.jar jaer_2.11-1.0.jar scalaxy-streams_2.11-0.3.4.jar
-Main-Class: apps.xperium.Mnist1
-
diff --git a/n2s3/src/main/resources/application.conf.default b/n2s3/src/main/resources/application.conf.default
deleted file mode 100755
index de674f31ae2a4ef28adf8a1189a402d8c98d5fe2..0000000000000000000000000000000000000000
--- a/n2s3/src/main/resources/application.conf.default
+++ /dev/null
@@ -1,707 +0,0 @@
-    ####################################
-    # Akka Actor Reference Config File #
-    ####################################
-
-    # This is the reference config file that contains all the default settings.
-    # Make your edits/overrides in your application.conf.
-
-    akka {
-    # Akka version, checked against the runtime version of Akka.
-    version = "2.2.3"
-
-    # Home directory of Akka, modules in the deploy directory will be loaded
-    home = ""
-
-    # Loggers to register at boot time (akka.event.Logging$DefaultLogger logs
-    # to STDOUT)
-    loggers = ["akka.event.Logging$DefaultLogger"]
-
-    # Deprecated, use akka.loggers.
-    event-handlers = []
-
-    # Loggers are created and registered synchronously during ActorSystem
-    # start-up, and since they are actors, this timeout is used to bound the
-    # waiting time
-    logger-startup-timeout = 5s
-
-    # Deprecated, use akka.logger-startup-timeout
-    event-handler-startup-timeout = -1s
-
-    # Log level used by the configured loggers (see "loggers") as soon
-    # as they have been started; before that, see "stdout-loglevel"
-    # Options: OFF, ERROR, WARNING, INFO, DEBUG
-    loglevel = "DEBUG"
-
-    # Log level for the very basic logger activated during AkkaApplication startup
-    # Options: OFF, ERROR, WARNING, INFO, DEBUG
-    stdout-loglevel = "WARNING"
-
-    # Log the complete configuration at INFO level when the actor system is started.
-    # This is useful when you are uncertain of what configuration is used.
-    log-config-on-start = off
-
-    # Log at info level when messages are sent to dead letters.
-    # Possible values:
-    # on: all dead letters are logged
-    # off: no logging of dead letters
-    # n: positive integer, number of dead letters that will be logged
-    log-dead-letters = 10
-
-    # Possibility to turn off logging of dead letters while the actor system
-    # is shutting down. Logging is only done when enabled by 'log-dead-letters'
-    # setting.
-    log-dead-letters-during-shutdown = on
-
-    # List FQCN of extensions which shall be loaded at actor system startup.
-    # Should be on the format: 'extensions = ["foo", "bar"]' etc.
-    # See the Akka Documentation for more info about Extensions
-    extensions = []
-
-    # Toggles whether threads created by this ActorSystem should be daemons or not
-    daemonic = off
-
-    # JVM shutdown, System.exit(-1), in case of a fatal error,
-    # such as OutOfMemoryError
-    jvm-exit-on-fatal-error = on
-
-    actor {
-
-    # FQCN of the ActorRefProvider to be used; the below is the built-in default,
-    # another one is akka.remote.RemoteActorRefProvider in the akka-remote bundle.
-    provider = "akka.actor.LocalActorRefProvider"
-
-    # The guardian "/user" will use this class to obtain its supervisorStrategy.
-    # It needs to be a subclass of akka.actor.SupervisorStrategyConfigurator.
-    # In addition to the default there is akka.actor.StoppingSupervisorStrategy.
-    guardian-supervisor-strategy = "akka.actor.DefaultSupervisorStrategy"
-
-    # Timeout for ActorSystem.actorOf
-    creation-timeout = 20s
-
-    # Frequency with which stopping actors are prodded in case they had to be
-    # removed from their parents
-    reaper-interval = 5s
-
-    # Serializes and deserializes (non-primitive) messages to ensure immutability,
-    # this is only intended for testing.
-    serialize-messages = off
-
-    # Serializes and deserializes creators (in Props) to ensure that they can be
-    # sent over the network, this is only intended for testing. Purely local deployments
-    # as marked with deploy.scope == LocalScope are exempt from verification.
-    serialize-creators = off
-
-    # Timeout for send operations to top-level actors which are in the process
-    # of being started. This is only relevant if using a bounded mailbox or the
-    # CallingThreadDispatcher for a top-level actor.
-    unstarted-push-timeout = 10s
-
-    typed {
-    # Default timeout for typed actor methods with non-void return type
-    timeout = 5s
-    }
-
-    deployment {
-
-    # deployment id pattern - on the format: /parent/child etc.
-    default {
-
-    # The id of the dispatcher to use for this actor.
-    # If undefined or empty the dispatcher specified in code
-    # (Props.withDispatcher) is used, or default-dispatcher if not
-    # specified at all.
-    dispatcher = ""
-
-    # The id of the mailbox to use for this actor.
-    # If undefined or empty the default mailbox of the configured dispatcher
-    # is used or if there is no mailbox configuration the mailbox specified
-    # in code (Props.withMailbox) is used.
-    # If there is a mailbox defined in the configured dispatcher then that
-    # overrides this setting.
-    mailbox = ""
-
-    # routing (load-balance) scheme to use
-    # - available: "from-code", "round-robin", "random", "smallest-mailbox",
-    # "scatter-gather", "broadcast"
-    # - or: Fully qualified class name of the router class.
-    # The class must extend akka.routing.CustomRouterConfig and
-    # have a public constructor with com.typesafe.config.Config
-    # parameter.
-    # - default is "from-code";
-    # Whether or not an actor is transformed to a Router is decided in code
-    # only (Props.withRouter). The type of router can be overridden in the
-    # configuration; specifying "from-code" means that the values specified
-    # in the code shall be used.
-    # In case of routing, the actors to be routed to can be specified
-    # in several ways:
-    # - nr-of-instances: will create that many children
-    # - routees.paths: will look the paths up using actorFor and route to
-    # them, i.e. will not create children
-    # - resizer: dynamically resizable number of routees as specified in
-    # resizer below
-    router = "round-robin"
-
-    # number of children to create in case of a router;
-    # this setting is ignored if routees.paths is given
-    nr-of-instances = 10
-
-    # within is the timeout used for routers containing future calls
-    within = 5 seconds
-
-    # number of virtual nodes per node for consistent-hashing router
-    virtual-nodes-factor = 10
-
-    routees {
-    # Alternatively to giving nr-of-instances you can specify the full
-    # paths of those actors which should be routed to. This setting takes
-    # precedence over nr-of-instances
-    paths = []
-    }
-
-    # Routers with dynamically resizable number of routees; this feature is
-    # enabled by including (parts of) this section in the deployment
-    resizer {
-
-    # The fewest number of routees the router should ever have.
-    lower-bound = 1
-
-    # The most number of routees the router should ever have.
-    # Must be greater than or equal to lower-bound.
-    upper-bound = 10
-
-    # Threshold used to evaluate if a routee is considered to be busy
-    # (under pressure). Implementation depends on this value (default is 1).
-    # 0: number of routees currently processing a message.
-    # 1: number of routees currently processing a message has
-    # some messages in mailbox.
-    # > 1: number of routees with at least the configured pressure-threshold
-    # messages in their mailbox. Note that estimating mailbox size of
-    # default UnboundedMailbox is O(N) operation.
-    pressure-threshold = 1
-
-    # Percentage to increase capacity whenever all routees are busy.
-    # For example, 0.2 would increase 20% (rounded up), i.e. if current
-    # capacity is 6 it will request an increase of 2 more routees.
-    rampup-rate = 0.2
-
-    # Minimum fraction of busy routees before backing off.
-    # For example, if this is 0.3, then we'll remove some routees only when
-    # less than 30% of routees are busy, i.e. if current capacity is 10 and
-    # 3 are busy then the capacity is unchanged, but if 2 or less are busy
-    # the capacity is decreased.
-    # Use 0.0 or negative to avoid removal of routees.
-    backoff-threshold = 0.3
-
-    # Fraction of routees to be removed when the resizer reaches the
-    # backoffThreshold.
-    # For example, 0.1 would decrease 10% (rounded up), i.e. if current
-    # capacity is 9 it will request an decrease of 1 routee.
-    backoff-rate = 0.1
-
-    # When the resizer reduce the capacity the abandoned routee actors are
-    # stopped with PoisonPill after this delay. The reason for the delay is
-    # to give concurrent messages a chance to be placed in mailbox before
-    # sending PoisonPill.
-    # Use 0s to skip delay.
-    stop-delay = 1s
-
-    # Number of messages between resize operation.
-    # Use 1 to resize before each message.
-    messages-per-resize = 10
-    }
-    }
-    }
-
-    default-dispatcher {
-    # Must be one of the following
-    # Dispatcher, (BalancingDispatcher, only valid when all actors using it are
-    # of the same type), PinnedDispatcher, or a FQCN to a class inheriting
-    # MessageDispatcherConfigurator with a public constructor with
-    # both com.typesafe.config.Config parameter and
-    # akka.dispatch.DispatcherPrerequisites parameters.
-    # PinnedDispatcher must be used toghether with executor=thread-pool-executor.
-    type = "Dispatcher"
-
-    # Which kind of ExecutorService to use for this dispatcher
-    # Valid options:
-    # - "fork-join-executor" requires a "fork-join-executor" section
-    # - "thread-pool-executor" requires a "thread-pool-executor" section
-    # - A FQCN of a class extending ExecutorServiceConfigurator
-    executor = "fork-join-executor"
-
-    # This will be used if you have set "executor = "fork-join-executor""
-    fork-join-executor {
-    # Min number of threads to cap factor-based parallelism number to
-    parallelism-min = 8
-
-    # The parallelism factor is used to determine thread pool size using the
-    # following formula: ceil(available processors * factor). Resulting size
-    # is then bounded by the parallelism-min and parallelism-max values.
-    parallelism-factor = 3.0
-
-    # Max number of threads to cap factor-based parallelism number to
-    parallelism-max = 64
-    }
-
-    # This will be used if you have set "executor = "thread-pool-executor""
-    thread-pool-executor {
-    # Keep alive time for threads
-    keep-alive-time = 60s
-
-    # Min number of threads to cap factor-based core number to
-    core-pool-size-min = 8
-
-    # The core pool size factor is used to determine thread pool core size
-    # using the following formula: ceil(available processors * factor).
-    # Resulting size is then bounded by the core-pool-size-min and
-    # core-pool-size-max values.
-    core-pool-size-factor = 3.0
-
-    # Max number of threads to cap factor-based number to
-    core-pool-size-max = 64
-
-    # Minimum number of threads to cap factor-based max number to
-    # (if using a bounded task queue)
-    max-pool-size-min = 8
-
-    # Max no of threads (if using a bounded task queue) is determined by
-    # calculating: ceil(available processors * factor)
-    max-pool-size-factor = 3.0
-
-    # Max number of threads to cap factor-based max number to
-    # (if using a bounded task queue)
-    max-pool-size-max = 64
-
-    # Specifies the bounded capacity of the task queue (< 1 == unbounded)
-    task-queue-size = -1
-
-    # Specifies which type of task queue will be used, can be "array" or
-    # "linked" (default)
-    task-queue-type = "linked"
-
-    # Allow core threads to time out
-    allow.core.Timeout = on
-    }
-
-    # How long time the dispatcher will wait for new actors until it shuts down
-    shutdown-timeout = 1s
-
-    # Throughput defines the number of messages that are processed in a batch
-    # before the thread is returned to the pool. Set to 1 for as fair as possible.
-    throughput = 5
-
-    # Throughput deadline for Dispatcher, set to 0 or negative for no deadline
-    throughput-deadline-time = 0ms
-
-    # For BalancingDispatcher: If the balancing dispatcher should attempt to
-    # schedule idle actors using the same dispatcher when a message comes in,
-    # and the dispatchers ExecutorService is not fully busy already.
-    attempt-teamwork = on
-
-    # If this dispatcher requires a specific type of mailbox, specify the
-    # fully-qualified class name here; the actually created mailbox will
-    # be a subtype of this type. The empty string signifies no requirement.
-    mailbox-requirement = ""
-    }
-
-    default-mailbox {
-    # FQCN of the MailboxType. The Class of the FQCN must have a public
-    # constructor with
-    # (akka.actor.ActorSystem.Settings, com.typesafe.config.Config) parameters.
-    mailbox-type = "akka.dispatch.UnboundedMailbox"
-
-    # If the mailbox is bounded then it uses this setting to determine its
-    # capacity. The provided value must be positive.
-    # NOTICE:
-    # Up to version 2.1 the mailbox type was determined based on this setting;
-    # this is no longer the case, the type must explicitly be a bounded mailbox.
-    mailbox-capacity = 1000
-
-    # If the mailbox is bounded then this is the timeout for enqueueing
-    # in case the mailbox is full. Negative values signify infinite
-    # timeout, which should be avoided as it bears the risk of dead-lock.
-    mailbox-push-timeout-time = 10s
-
-    # For Actor with Stash: The default capacity of the stash.
-    # If negative (or zero) then an unbounded stash is used (default)
-    # If positive then a bounded stash is used and the capacity is set using
-    # the property
-    stash-capacity = -1
-    }
-
-    mailbox {
-    # Mapping between message queue semantics and mailbox configurations.
-    # Used by akka.dispatch.RequiresMessageQueue[T] to enforce different
-    # mailbox types on actors.
-    # If your Actor implements RequiresMessageQueue[T], then when you create
-    # an instance of that actor its mailbox type will be decided by looking
-    # up a mailbox configuration via T in this mapping
-    requirements {
-    "akka.dispatch.UnboundedMessageQueueSemantics" =
-    akka.actor.mailbox.unbounded-queue-based
-    "akka.dispatch.BoundedMessageQueueSemantics" =
-    akka.actor.mailbox.bounded-queue-based
-    "akka.dispatch.DequeBasedMessageQueueSemantics" =
-    akka.actor.mailbox.unbounded-deque-based
-    "akka.dispatch.UnboundedDequeBasedMessageQueueSemantics" =
-    akka.actor.mailbox.unbounded-deque-based
-    "akka.dispatch.BoundedDequeBasedMessageQueueSemantics" =
-    akka.actor.mailbox.bounded-deque-based
-    "akka.dispatch.MultipleConsumerSemantics" =
-    akka.actor.mailbox.unbounded-queue-based
-    }
-
-    unbounded-queue-based {
-    # FQCN of the MailboxType, The Class of the FQCN must have a public
-    # constructor with (akka.actor.ActorSystem.Settings,
-    # com.typesafe.config.Config) parameters.
-    mailbox-type = "akka.dispatch.UnboundedMailbox"
-    }
-
-    bounded-queue-based {
-    # FQCN of the MailboxType, The Class of the FQCN must have a public
-    # constructor with (akka.actor.ActorSystem.Settings,
-    # com.typesafe.config.Config) parameters.
-    mailbox-type = "akka.dispatch.BoundedMailbox"
-    }
-
-    unbounded-deque-based {
-    # FQCN of the MailboxType, The Class of the FQCN must have a public
-    # constructor with (akka.actor.ActorSystem.Settings,
-    # com.typesafe.config.Config) parameters.
-    mailbox-type = "akka.dispatch.UnboundedDequeBasedMailbox"
-    }
-
-    bounded-deque-based {
-    # FQCN of the MailboxType, The Class of the FQCN must have a public
-    # constructor with (akka.actor.ActorSystem.Settings,
-    # com.typesafe.config.Config) parameters.
-    mailbox-type = "akka.dispatch.BoundedDequeBasedMailbox"
-    }
-    }
-
-    debug {
-    # enable function of Actor.loggable(), which is to log any received message
-    # at DEBUG level, see the “Testing Actor Systems” section of the Akka
-    # Documentation at http://akka.io/docs
-    receive = off
-
-    # enable DEBUG logging of all AutoReceiveMessages (Kill, PoisonPill et.c.)
-    autoreceive = off
-
-    # enable DEBUG logging of actor lifecycle changes
-    lifecycle = on
-
-    # enable DEBUG logging of all LoggingFSMs for events, transitions and timers
-    fsm = off
-
-    # enable DEBUG logging of subscription changes on the eventStream
-    event-stream = off
-
-    # enable DEBUG logging of unhandled messages
-    unhandled = off
-
-    # enable WARN logging of misconfigured routers
-    router-misconfiguration = off
-    }
-
-    # Entries for pluggable serializers and their bindings.
-    serializers {
-    java = "akka.serialization.JavaSerializer"
-    bytes = "akka.serialization.ByteArraySerializer"
-    }
-
-    # Class to Serializer binding. You only need to specify the name of an
-    # interface or abstract base class of the messages. In case of ambiguity it
-    # is using the most specific configured class, or giving a warning and
-    # choosing the “first” one.
-    #
-    # To disable one of the default serializers, assign its class to "none", like
-    # "java.io.Serializable" = none
-    serialization-bindings {
-    "[B" = bytes
-    "java.io.Serializable" = java
-    }
-
-    # Configuration items which are used by the akka.actor.ActorDSL._ methods
-    dsl {
-    # Maximum queue size of the actor created by newInbox(); this protects
-    # against faulty programs which use select() and consistently miss messages
-    inbox-size = 1000
-
-    # Default timeout to assume for operations like Inbox.receive et al
-    default-timeout = 5s
-    }
-    }
-
-    # Used to set the behavior of the scheduler.
-    # Changing the default values may change the system behavior drastically so make
-    # sure you know what you're doing! See the Scheduler section of the Akka
-    # Documentation for more details.
-    scheduler {
-    # The LightArrayRevolverScheduler is used as the default scheduler in the
-    # system. It does not execute the scheduled tasks on exact time, but on every
-    # tick, it will run everything that is (over)due. You can increase or decrease
-    # the accuracy of the execution timing by specifying smaller or larger tick
-    # duration. If you are scheduling a lot of tasks you should consider increasing
-    # the ticks per wheel.
-    # Note that it might take up to 1 tick to stop the Timer, so setting the
-    # tick-duration to a high value will make shutting down the actor system
-    # take longer.
-    tick-duration = 10ms
-
-    # The timer uses a circular wheel of buckets to store the timer tasks.
-    # This should be set such that the majority of scheduled timeouts (for high
-    # scheduling frequency) will be shorter than one rotation of the wheel
-    # (ticks-per-wheel * ticks-duration)
-    # THIS MUST BE A POWER OF TWO!
-    ticks-per-wheel = 512
-
-    # This setting selects the timer implementation which shall be loaded at
-    # system start-up. Built-in choices are:
-    # - akka.actor.LightArrayRevolverScheduler
-    # - akka.actor.DefaultScheduler (HWT) DEPRECATED
-    # The class given here must implement the akka.actor.Scheduler interface
-    # and offer a public constructor which takes three arguments:
-    # 1) com.typesafe.config.Config
-    # 2) akka.event.LoggingAdapter
-    # 3) java.util.concurrent.ThreadFactory
-    implementation = akka.actor.LightArrayRevolverScheduler
-
-    # When shutting down the scheduler, there will typically be a thread which
-    # needs to be stopped, and this timeout determines how long to wait for
-    # that to happen. In case of timeout the shutdown of the actor system will
-    # proceed without running possibly still enqueued tasks.
-    shutdown-timeout = 5s
-    }
-
-    io {
-
-    # By default the select loops run on dedicated threads, hence using a
-    # PinnedDispatcher
-    pinned-dispatcher {
-    type = "PinnedDispatcher"
-    executor = "thread-pool-executor"
-    thread-pool-executor.allow-core-pool-timeout = off
-    }
-
-    tcp {
-
-    # The number of selectors to stripe the served channels over; each of
-    # these will use one select loop on the deploymentStrategy-dispatcher.
-    nr-of-selectors = 1
-
-    # Maximum number of open channels supported by this TCP module; there is
-    # no intrinsic general limit, this setting is meant to enable DoS
-    # protection by limiting the number of concurrently connected clients.
-    # Also note that this is a "soft" limit; in certain cases the implementation
-    # will accept a few connections more or a few less than the number configured
-    # here. Must be an integer > 0 or "unlimited".
-    max-channels = 256000
-
-    # When trying to assign a new connection to a deploymentStrategy and the chosen
-    # deploymentStrategy is at full capacity, retry deploymentStrategy choosing and assignment
-    # this many times before giving up
-    deploymentStrategy-association-retries = 10
-
-    # The maximum number of connection that are accepted in one go,
-    # higher numbers decrease latency, lower numbers increase fairness on
-    # the worker-dispatcher
-    batch-accept-limit = 10
-
-    # The number of bytes per direct buffer in the pool used to read or write
-    # network data from the kernel.
-    direct-buffer-size = 128 KiB
-
-    # The maximal number of direct buffers kept in the direct buffer pool for
-    # reuse.
-    direct-buffer-pool-limit = 1000
-
-    # The duration a connection actor waits for a `Register` message from
-    # its commander before aborting the connection.
-    register-timeout = 5s
-
-    # The maximum number of bytes delivered by a `Received` message. Before
-    # more data is read from the network the connection actor will try to
-    # do other work.
-    max-received-message-size = unlimited
-
-    # Enable fine grained logging of what goes on inside the implementation.
-    # Be aware that this may log more than once per message sent to the actors
-    # of the tcp implementation.
-    trace-logging = off
-
-    # Fully qualified config path which holds the dispatcher configuration
-    # to be used for running the select() calls in the selectors
-    deploymentStrategy-dispatcher = "akka.io.pinned-dispatcher"
-
-    # Fully qualified config path which holds the dispatcher configuration
-    # for the read/write worker actors
-    worker-dispatcher = "akka.actor.default-dispatcher"
-
-    # Fully qualified config path which holds the dispatcher configuration
-    # for the deploymentStrategy management actors
-    management-dispatcher = "akka.actor.default-dispatcher"
-
-    # Fully qualified config path which holds the dispatcher configuration
-    # on which file IO tasks are scheduled
-    file-io-dispatcher = "akka.actor.default-dispatcher"
-
-    # The maximum number of bytes (or "unlimited") to transfer in one batch
-    # when using `WriteFile` command which uses `FileChannel.transferTo` to
-    # pipe files to a TCP socket. On some OS like Linux `FileChannel.transferTo`
-    # may block for a long time when network IO is faster than file IO.
-    # Decreasing the value may improve fairness while increasing may improve
-    # throughput.
-    file-io-transferTo-limit = 512 KiB
-
-    # The number of times to retry the `finishConnect` call after being notified about
-    # OP_CONNECT. Retries are needed if the OP_CONNECT notification doesn't imply that
-    # `finishConnect` will succeed, which is the case on Android.
-    finish-connect-retries = 5
-    }
-
-    udp {
-
-    # The number of selectors to stripe the served channels over; each of
-    # these will use one select loop on the deploymentStrategy-dispatcher.
-    nr-of-selectors = 1
-
-    # Maximum number of open channels supported by this UDP module Generally
-    # UDP does not require a large number of channels, therefore it is
-    # recommended to keep this setting low.
-    max-channels = 4096
-
-    # The select loop can be used in two modes:
-    # - setting "infinite" will select without a timeout, hogging a thread
-    # - setting a positive timeout will do a bounded select call,
-    # enabling sharing of a single thread between multiple selectors
-    # (in this case you will have to use a different configuration for the
-    # deploymentStrategy-dispatcher, e.g. using "type=Dispatcher" with size 1)
-    # - setting it to zero means polling, i.e. calling selectNow()
-    select-timeout = infinite
-
-    # When trying to assign a new connection to a deploymentStrategy and the chosen
-    # deploymentStrategy is at full capacity, retry deploymentStrategy choosing and assignment
-    # this many times before giving up
-    deploymentStrategy-association-retries = 10
-
-    # The maximum number of datagrams that are read in one go,
-    # higher numbers decrease latency, lower numbers increase fairness on
-    # the worker-dispatcher
-    receive-throughput = 3
-
-    # The number of bytes per direct buffer in the pool used to read or write
-    # network data from the kernel.
-    direct-buffer-size = 128 KiB
-
-    # The maximal number of direct buffers kept in the direct buffer pool for
-    # reuse.
-    direct-buffer-pool-limit = 1000
-
-    # The maximum number of bytes delivered by a `Received` message. Before
-    # more data is read from the network the connection actor will try to
-    # do other work.
-    received-message-size-limit = unlimited
-
-    # Enable fine grained logging of what goes on inside the implementation.
-    # Be aware that this may log more than once per message sent to the actors
-    # of the tcp implementation.
-    trace-logging = off
-
-    # Fully qualified config path which holds the dispatcher configuration
-    # to be used for running the select() calls in the selectors
-    deploymentStrategy-dispatcher = "akka.io.pinned-dispatcher"
-
-    # Fully qualified config path which holds the dispatcher configuration
-    # for the read/write worker actors
-    worker-dispatcher = "akka.actor.default-dispatcher"
-
-    # Fully qualified config path which holds the dispatcher configuration
-    # for the deploymentStrategy management actors
-    management-dispatcher = "akka.actor.default-dispatcher"
-    }
-
-    udp-connected {
-
-    # The number of selectors to stripe the served channels over; each of
-    # these will use one select loop on the deploymentStrategy-dispatcher.
-    nr-of-selectors = 1
-
-    # Maximum number of open channels supported by this UDP module Generally
-    # UDP does not require a large number of channels, therefore it is
-    # recommended to keep this setting low.
-    max-channels = 4096
-
-    # The select loop can be used in two modes:
-    # - setting "infinite" will select without a timeout, hogging a thread
-    # - setting a positive timeout will do a bounded select call,
-    # enabling sharing of a single thread between multiple selectors
-    # (in this case you will have to use a different configuration for the
-    # deploymentStrategy-dispatcher, e.g. using "type=Dispatcher" with size 1)
-    # - setting it to zero means polling, i.e. calling selectNow()
-    select-timeout = infinite
-
-    # When trying to assign a new connection to a deploymentStrategy and the chosen
-    # deploymentStrategy is at full capacity, retry deploymentStrategy choosing and assignment
-    # this many times before giving up
-    deploymentStrategy-association-retries = 10
-
-    # The maximum number of datagrams that are read in one go,
-    # higher numbers decrease latency, lower numbers increase fairness on
-    # the worker-dispatcher
-    receive-throughput = 3
-
-    # The number of bytes per direct buffer in the pool used to read or write
-    # network data from the kernel.
-    direct-buffer-size = 128 KiB
-
-    # The maximal number of direct buffers kept in the direct buffer pool for
-    # reuse.
-    direct-buffer-pool-limit = 1000
-
-    # The maximum number of bytes delivered by a `Received` message. Before
-    # more data is read from the network the connection actor will try to
-    # do other work.
-    received-message-size-limit = unlimited
-
-    # Enable fine grained logging of what goes on inside the implementation.
-    # Be aware that this may log more than once per message sent to the actors
-    # of the tcp implementation.
-    trace-logging = off
-
-    # Fully qualified config path which holds the dispatcher configuration
-    # to be used for running the select() calls in the selectors
-    deploymentStrategy-dispatcher = "akka.io.pinned-dispatcher"
-
-    # Fully qualified config path which holds the dispatcher configuration
-    # for the read/write worker actors
-    worker-dispatcher = "akka.actor.default-dispatcher"
-
-    # Fully qualified config path which holds the dispatcher configuration
-    # for the deploymentStrategy management actors
-    management-dispatcher = "akka.actor.default-dispatcher"
-    }
-
-
-    # IMPORTANT NOTICE:
-    #
-    # The following settings belong to the deprecated akka.actor.IO
-    # implementation and will be removed once that is removed. They are not
-    # taken into account by the akka.io.* implementation, which is configured
-    # above!
-
-    # In bytes, the size of the shared read buffer. In the span 0b..2GiB.
-    #
-    read-buffer-size = 8KiB
-
-    # Specifies how many ops are done between every descriptor selection
-    select-interval = 100
-
-    # Number of connections that are allowed in the backlog.
-    # 0 or negative means that the platform default will be used.
-    default-backlog = 1000
-    }
-
-
-    }
diff --git a/n2s3/src/main/resources/application.conf.minimal b/n2s3/src/main/resources/application.conf.minimal
deleted file mode 100755
index 0152707ed379def00a7bd3561535c0a1336e0644..0000000000000000000000000000000000000000
--- a/n2s3/src/main/resources/application.conf.minimal
+++ /dev/null
@@ -1,8 +0,0 @@
-akka.log-config-on-start=on
-akka.actor.deployment {
-    /NeuronialRouter {
-    /Download
-        router = round-robin
-        nr-of-instances = 10
-    }
-}
\ No newline at end of file
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/ConnectionIndex.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/ConnectionIndex.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/ConnectionPath.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/ConnectionPath.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/GlobalTimestamp.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/GlobalTimestamp.scala
old mode 100755
new mode 100644
index 5a4c577d0462395b65266b1aa64aff11205e6d59..10712a1fae4a6960b6ebcd2711f493ee121914a5
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/GlobalTimestamp.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/GlobalTimestamp.scala
@@ -10,12 +10,10 @@ import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 object GetGlobalTimestamp extends Message
 
 class GlobalTimestamp {
-
 	var timestamp : Timestamp = 0
 }
 
 trait TimestampGenerator {
-
 	var currentMaxTimestamp : Timestamp = 0
 
 			def getGlobalTimestamp : GlobalTimestamp
@@ -29,4 +27,4 @@ def endOfStage() : Unit = {
 		getGlobalTimestamp.timestamp += currentMaxTimestamp
 				currentMaxTimestamp = 0
 }
-}
+}
\ No newline at end of file
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/InputLayer.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/InputLayer.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkActor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkActor.scala
old mode 100755
new mode 100644
index a69e6fd35610e9eb9beb4447f3928fc9516a7b31..50b82ca5c4edf1cf7d3f6a582e8bb326570f73ae
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkActor.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkActor.scala
@@ -52,6 +52,7 @@ abstract class NetworkActor extends Actor {
 }
 
 /**
+  *
   * @param refreshRate : refresh delay in milliseconds
   * @param n : number of element to update
   */
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkContainer.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkContainer.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkEntity.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkEntity.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Neuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Neuron.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NeuronConnection.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NeuronConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Path.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Path.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Property.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Property.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Synchronizer.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Synchronizer.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/SynchronizerEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/SynchronizerEvent.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/AddLoggerTo.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/AddLoggerTo.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/AskRemainInput.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/AskRemainInput.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Config.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Config.scala
old mode 100755
new mode 100644
index 477483ca85510cedb05d8866b90ac36f232a19ec..b464caabb0f9306f81db7b5a77eae405d7635f89
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Config.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Config.scala
@@ -23,5 +23,4 @@ object Config {
     * Default timeout to use in wait patterns when a long process is in progress
     */
   val longTimeout = Timeout(21474835 seconds)
-
 }
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/CurrentLabel.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/CurrentLabel.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Done.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Done.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ElectricSpike.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ElectricSpike.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ForecastFire.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ForecastFire.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/GetCurrentTime.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/GetCurrentTime.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Initialize.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Initialize.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputLayerActor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputLayerActor.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputNeuron.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/NetworkContainerActor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/NetworkContainerActor.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/NetworkEntityActor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/NetworkEntityActor.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/NoMoreInput.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/NoMoreInput.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ResetInput.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ResetInput.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ResetState.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ResetState.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ReturnCurrentTime.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ReturnCurrentTime.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SaveInFile.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SaveInFile.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInput.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInput.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInputStream.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Spike.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Spike.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SyncMessage.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SyncMessage.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WiringMessage.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WiringMessage.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WrapMessage.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WrapMessage.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/Event.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/Event.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventHolder.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventHolder.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventHolderMessage.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventHolderMessage.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventResponse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventResponse.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventTriggered.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventTriggered.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/InputRestartEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/InputRestartEvent.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/InputRestartResponse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/InputRestartResponse.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeEvent.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeResponse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeResponse.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronFireEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronFireEvent.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronFireResponse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronFireResponse.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronPotentialUpdateEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronPotentialUpdateEvent.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronUpdateEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronUpdateEvent.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/Subscribe.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/Subscribe.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SubscribeSynchronized.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SubscribeSynchronized.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynapseUpdateEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynapseUpdateEvent.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynapseWeightChange.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynapseWeightChange.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynchronizedEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynchronizedEvent.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/TimedEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/TimedEvent.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/TimedEventResponse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/TimedEventResponse.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/Unsubscribe.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/Unsubscribe.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/DuplicatedChildException.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/DuplicatedChildException.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/EventNotFoundException.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/EventNotFoundException.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/InputException.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/InputException.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/LoggingExceptions.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/LoggingExceptions.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/N2S3Exception.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/N2S3Exception.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/NetworkExceptions.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/NetworkExceptions.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/NeuronExceptions.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/NeuronExceptions.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/SynchronizerException.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/SynchronizerException.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/UnknownDestinationException.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/UnknownDestinationException.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/UnknownPathException.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/UnknownPathException.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/package.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/package.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/convolutional/SharedNeuronConnection.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/convolutional/SharedNeuronConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/AdaptiveThreshold.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/AdaptiveThreshold.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/ConnectionInputPath.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/ConnectionInputPath.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/FixedParameter.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/FixedParameter.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneInhibitionDuration.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneInhibitionDuration.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneInhibitoryDuration.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneInhibitoryDuration.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneLeak.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneLeak.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneRefractoryDuration.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneRefractoryDuration.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneRestingPotential.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneRestingPotential.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneThreshold.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneThreshold.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneThresholdType.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneThresholdType.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneTimeConstant.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneTimeConstant.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneVoltage.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/MembraneVoltage.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/RemoteWeightChange.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/RemoteWeightChange.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/SynapseLTP.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/SynapseLTP.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/SynapseTimeConstant.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/SynapseTimeConstant.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/SynapseWeightAndDelay.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/SynapseWeightAndDelay.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/SynapticDelay.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/SynapticDelay.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/SynapticWeight.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/properties/SynapticWeight.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/synapse/WeightedSynapse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/models/synapse/WeightedSynapse.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/package.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/package.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/dsl/N2S3DSLImplicits.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/dsl/N2S3DSLImplicits.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/dsl/N2S3SimulationDSL.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/dsl/N2S3SimulationDSL.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/dsl/NeuronGroupDSL.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/dsl/NeuronGroupDSL.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/BuildProperties.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/BuildProperties.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/ConnectionRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/ConnectionRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/InputNeuronGroupRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/InputNeuronGroupRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3.scala
old mode 100755
new mode 100644
index 252a173b8066d35d85c1f5eb8d6ad42387f701a2..f91c1fdeac44cf3ad5388a2b4b324228c15abbc6
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3.scala
@@ -31,14 +31,11 @@ import fr.univ_lille.cristal.emeraude.n2s3.support.actors._
 class N2S3(val system: AbstractActorSystem[ActorRef]) {
 
   def this(actorSystemName: String = "N2S3ActorSystem", config: Option[com.typesafe.config.Config] = None) {
-
     this(new N2S3ActorSystem(ActorSystem(actorSystemName, if(config.isDefined) {
-
        println("Use provided Akka configuration")
       config.get
     }
     else if(Files.exists(Paths.get("akka.conf"))) {
-
       println("Use Akka configuration in file \"akka.conf\"")
       ConfigFactory.parseFile(new File("akka.conf"))
     }
@@ -151,10 +148,11 @@ class N2S3(val system: AbstractActorSystem[ActorRef]) {
 
    this.assertSimulatorIsReady()
 
+   if(first){
      layers.foreach(layer => layer.ensureActorDeployed(this))
      buildProperties.getSynchronizerPolicy.ensureActorDeployed(this)
      layers.foreach(layer => layer.ensureConnectionsDeployed(this))
-   
+   }
 
    layerObservers = layerObservers.filter(!_.isDestroyed)
    layerObservers.foreach( observer => observer.ensureActorDeployed(this))
@@ -280,7 +278,7 @@ class N2S3(val system: AbstractActorSystem[ActorRef]) {
   ******************************************************************************************************************/
   def getNetworkEntitiesPolicy = buildProperties.getNetworkEntitiesPolicy
 
-  def setSynchronizerPolicy(policy: SynchronizerPolicy): Unit = {buildProperties.setSynchronizerPolicy(policy)}
+  def setSynchronizerPolicy(policy: SynchronizerPolicy): Unit = buildProperties.setSynchronizerPolicy(policy)
   def createSynchronizerActor(actorCompanion: ActorCompanion = SynchronizerActor) = system.actorOf(actorCompanion, LocalActorDeploymentStrategy)
 
 }
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3ActorRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3ActorRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3Simulation.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3Simulation.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/NetworkEntityRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/NetworkEntityRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/NeuronGroupObserverRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/NeuronGroupObserverRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/NeuronGroupRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/NeuronGroupRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/NeuronRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/NeuronRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/SynchronizedNeuronRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/SynchronizedNeuronRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/AbstractConnectionPolicy.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/AbstractConnectionPolicy.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/types/FullConnection.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/types/FullConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/types/ManualConnection.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/types/ManualConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/types/OneToOneConnection.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/types/OneToOneConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/types/RandomConnection.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/types/RandomConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/types/ReservoirConnection.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/connection/types/ReservoirConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/combinatorial/GeneticAlgorithm.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/combinatorial/GeneticAlgorithm.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/experiments/Experiment.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/experiments/Experiment.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/experiments/ParametersBenchmark.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/experiments/ParametersBenchmark.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/experiments/TrainingEvolution.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/experiments/TrainingEvolution.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/experiments/TrainingTesting.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/experiments/TrainingTesting.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/AERFileReader.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/AERFileReader.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/AERFileWriter.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/AERFileWriter.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/AERInputStream.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/AERInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/DigitalHexInputStream.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/DigitalHexInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/EndStageOnStreamEnd.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/EndStageOnStreamEnd.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/FontInputStream.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/FontInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/ImageAdapter.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/ImageAdapter.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/ImagePartInput.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/ImagePartInput.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/InputData.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/InputData.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/InputSampleData.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/InputSampleData.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/InputTemporalData.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/InputTemporalData.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/JitterNoise.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/JitterNoise.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/LFWReader.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/LFWReader.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/MnistFileInputStream.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/MnistFileInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/N2S3InputStream.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/N2S3InputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/OnOffCell.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/OnOffCell.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/ReshapeSample.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/ReshapeSample.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/SampledStream.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/SampledStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/SeventSegment.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/SeventSegment.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/Shape.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/Shape.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/StreamModifier.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/StreamModifier.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/StreamOperation.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/StreamOperation.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/StreamSupport.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/input/StreamSupport.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/ActivityLoad.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/ActivityLoad.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/ActivityPersistenceModel.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/ActivityPersistenceModel.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/ActivityStore.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/ActivityStore.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/NetworkLoad.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/NetworkLoad.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/NetworkPersistenceModel.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/NetworkPersistenceModel.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/NetworkSave.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/NetworkSave.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/WeightLoad.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/WeightLoad.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/WeightStore.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/persistence/WeightStore.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/Benchmark.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/Benchmark.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkHTMLView.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkHTMLView.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkListView.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkListView.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitor.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitorRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitorRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkResult.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkResult.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkSetHTMLView.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkSetHTMLView.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkSetResult.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkSetResult.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/EnergyMeasurement.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/EnergyMeasurement.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/ImageSynapsesWeight.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/ImageSynapsesWeight.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/ReconstructSynapsesWeight.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/ReconstructSynapsesWeight.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/Report.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/Report.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/ReportHTML.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/ReportHTML.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/CoincidenceDetector.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/CoincidenceDetector.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/DelayAdaptation.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/DelayAdaptation.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/DelayAdaptationExtended.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/DelayAdaptationExtended.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/DelayBackProp.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/DelayBackProp.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/ReservoirCoincidenceDetector.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/ReservoirCoincidenceDetector.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/ResetNeuronBetweenInput.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/ResetNeuronBetweenInput.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeCounter.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeCounter.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeProp.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeProp.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikePropExtended.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikePropExtended.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedLinearClassifier.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedLinearClassifier.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedSTDPLearning.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedSTDPLearning.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/TwoStepDelayBackProp.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/TwoStepDelayBackProp.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/ExportNetworkTopology.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/ExportNetworkTopology.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/ExportNetworkTopologyChange.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/ExportNetworkTopologyChange.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/LabelMonitor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/LabelMonitor.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/LogReader.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/LogReader.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/NetworkLoading.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/NetworkLoading.scala
index 4174557ed5b4dd84f1177563bd59f3c8b3d66066..2f5be1be83e1b6256d6558ffd43b454c948218a1 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/NetworkLoading.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/NetworkLoading.scala
@@ -7,7 +7,6 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.{MembranePoten
 import fr.univ_lille.cristal.emeraude.n2s3.core.{ConnectionPath, ConnectionProperty, ExternalConnectionSender, ExternalSender, NetworkEntityPath, SetConnectionProperty}
 import fr.univ_lille.cristal.emeraude.n2s3.features.builder.N2S3
 import squants.electro.ElectricPotentialConversions.ElectricPotentialConversions
-import scala.util.control.Breaks._
 
 /**
   *  Load Network information
@@ -31,17 +30,15 @@ object NetworkLoading {
     /**
       *  Loading indexes
       **/
-    println("load indexes "+System.currentTimeMillis())
+
     for (i <- 0 until br.readLine().toInt){
       buffer = br.readLine()
       indexes = indexes.::(buffer.split(" ")(0).toInt,buffer.split(" ")(1).toInt)
     }
-    println(" done load indexes "+System.currentTimeMillis())
 
     /**
       *  Loading synapses
       **/
-    println("load synapses "+System.currentTimeMillis())
 
     var x = br.readLine().toInt
 
@@ -51,60 +48,27 @@ object NetworkLoading {
       buffer = br.readLine()
       loadedSyn = loadedSyn.::(buffer.split(" ")(0).toInt,buffer.split(" ")(1),buffer.split(" ")(2).toFloat)
     }
-    var y = 0
-
-    var ii : (Int,String,Float) = (0,"",0F)
-
-    var l = List[(ConnectionPath,_,_)]()
+    x = 0
     n2s3.layers.foreach(nGroup => {
       if(nGroup.identifier.equals("Input")){
-
-         l = nGroup.neurons.head.group.connections.head.connections.list.map(item => (item,item.connectionID,item.outputNeuron.actor.path.name))(collection.breakOut)
-
-          for(i <- l) {
-            try{
-              ii =  loadedSyn.find(elt => i._2 == elt._1 && i._3 == elt._2).get
-              ExternalConnectionSender.askTo(i._1,SetConnectionProperty(SynapticWeightFloat.asInstanceOf[ConnectionProperty[Any]] ,ii._3))
-            }catch {
-              case e @ (_ : Exception ) =>
-                nGroup.neurons.head.group.connections.head.disconnectByPath(i._1)
-            }
-            y+=1
-
-            if((y % 1000) == 0) {
-              println("[ " + y + " / " + l.length + " ]")
-            }
-          }
-       //   loadedSyn = loadedSyn.drop(item)
-
-
-    //    nGroup.neurons.head.group.connections.head.connections.list.foreach(cnxPath =>{
-    //      try{
-     //       if(y <= x){
-            //loadedSynFiltered(cnxPath.connectionID).find(elt => elt._1 == cnxPath.outputNeuron.actor.path.name).get
-            //loadedSynFiltered(cnxPath.connectionID).find(elt => elt._1 == cnxPath.outputNeuron.actor.path.name)
-    //        y +=1
-    //        }else{
-    //          println("Done")
-    //          break
-    //            }
-           //targetSyn = loadedSyn.find(elt => elt._1 == cnxPath.connectionID && elt._2 == cnxPath.outputNeuron.actor.path.name).get
+        nGroup.neurons.head.group.connections.head.connections.list.foreach(cnxPath =>{
+          var i = 0
+          stop = false
+          try{
+            targetSyn = loadedSyn.find(elt => elt._1 == cnxPath.connectionID && elt._2 == cnxPath.outputNeuron.actor.path.name).get
            // ExternalConnectionSender.askTo(cnxPath,SetConnectionProperty(SynapticWeightFloat.asInstanceOf[ConnectionProperty[Any]] ,targetSyn._3))
-        //      }catch{
-            // Applying prune
-        //       case x : NoSuchElementException =>
-        //          nGroup.neurons.head.group.connections.head.disconnectByPath(cnxPath)
-        //      }
+          }catch{
+            case x : NoSuchElementException => nGroup.neurons.head.group.connections.head.disconnectByPath(cnxPath)
+          }
+        })
+
       }
     })
-    println("done load synapses "+System.currentTimeMillis())
-
+    println("Not updated : "+nu)
     /**
       *  Loading neurones threshold
       **/
 
-    println("load neurones threshold "+System.currentTimeMillis())
-
     x = br.readLine().toInt
 
     for (i <- 0 until x){
@@ -122,14 +86,33 @@ object NetworkLoading {
 
     })
 
-    println("done load neurones threshold "+System.currentTimeMillis())
+    /**
+      *  Applying prune if exists
+      *
+          bw.write(cnx.outputNeuron.actor.path.name+" "+cnx.connectionID.toString+"\n")
+      **/
+/*
+    x = br.readLine().toInt
+    nu = 0
+    for ( i <- 0 to x) {
+      try {
+        toBeCropped = n2s3.inputLayerRef.get.connections.head.connections.list.find(cnx => {
+          cnx.outputNeuron.actor.path.name == buffer.split(" ")(0) && cnx.connectionID.toString == buffer.split(" ")(1)}).get
+        n2s3.inputLayerRef.get.connections.head.disconnectByPath(toBeCropped)
+      } catch {
+        case e : NoSuchElementException => nu+=1
+      }
+      if((((i * 100).toFloat / x) % 10) == 0){
+        println(((i * 100).toFloat / x).toInt+"% ("+i+"/"+x+")")
+      }
+    }*/
 
     println("Done loading")
     br.close()
 
   }
 
-  def fromWithDefaultWeights(n2s3 : N2S3,filename : String,weights: String,loadRandomWeights:Boolean,binary:Boolean){
+  def fromWithDefaultWeights(n2s3 : N2S3,filename : String,weights: String,loadRandomWeights:Boolean){
     val file = new File(filename)
     val weightsFile = new File(weights)
     var loadRandom = loadRandomWeights
@@ -195,17 +178,8 @@ object NetworkLoading {
           try{
             loadedSyn.find(elt => elt._1 == cnxPath.connectionID && elt._2 == cnxPath.outputNeuron.actor.path.name).get
             targetSyn = loadedInitialSyn.find(elt => elt._1 == cnxPath.connectionID && elt._2 == cnxPath.outputNeuron.actor.path.name).get
-            if(!loadRandom) {
-              if(!binary){
-                ExternalConnectionSender.askTo(cnxPath, SetConnectionProperty(SynapticWeightFloat.asInstanceOf[ConnectionProperty[Any]], targetSyn._3))
-              }else{
-                if(targetSyn._3 > 0.4){
-                ExternalConnectionSender.askTo(cnxPath, SetConnectionProperty(SynapticWeightFloat.asInstanceOf[ConnectionProperty[Any]], 1F))
-                }else{
-                nGroup.neurons.head.group.connections.head.disconnectByPath(cnxPath)
-                //ExternalConnectionSender.askTo(cnxPath, SetConnectionProperty(SynapticWeightFloat.asInstanceOf[ConnectionProperty[Any]], 0F))
-                }
-              }
+            if(loadRandom) {
+              ExternalConnectionSender.askTo(cnxPath, SetConnectionProperty(SynapticWeightFloat.asInstanceOf[ConnectionProperty[Any]], targetSyn._3))
             } }catch{
             case x : NoSuchElementException => nGroup.neurons.head.group.connections.head.disconnectByPath(cnxPath)
           }
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/NeuronLog.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/NeuronLog.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/PrintNetworkTopology.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/PrintNetworkTopology.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/PropertyLogging.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/PropertyLogging.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/STDPImageGenerator.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/STDPImageGenerator.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SimMongoLog.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SimMongoLog.scala
old mode 100755
new mode 100644
index 4d3d1dad8748e1d0b59a3664dad9b0000170bd28..b935313bef6d2412d6cc6be5498b1d350e914970
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SimMongoLog.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SimMongoLog.scala
@@ -25,7 +25,7 @@ import scala.collection.immutable
   */
 
 
-    class SimMongoLog(n2s3 : N2S3,list : IndexedSeq[IndexedSeq[IndexedSeq[ConnectionPath]]],name : String, Spikes : Boolean,  Potential : Boolean, Label : Boolean,SynapticWeight : Boolean,Data:String,time: String) {
+class SimMongoLog(n2s3 : N2S3,list : IndexedSeq[IndexedSeq[IndexedSeq[ConnectionPath]]],name : String, Spikes : Boolean,  Potential : Boolean, Label : Boolean,SynapticWeight : Boolean,Data:String,time: String) {
 
   /** ******************************************************************************************************************
     * Setup DB connection & Collection
@@ -103,17 +103,17 @@ import scala.collection.immutable
     })
 
     InfoCollection.insertOne(Document(
-    "MaxS" -> (benchmark.getResult.evaluationByMaxSpiking.score * 100.00D) / benchmark.getResult.inputNumber,
-    "FirstS" -> (benchmark.getResult.evaluationByFirstSpiking.score * 100.00D) / benchmark.getResult.inputNumber,
-    "OneS" -> (benchmark.getResult.evaluationByOneSpiking.score * 100.00D) / benchmark.getResult.inputNumber,
-    "QtInput" -> benchmark.getResult.quietInputCount,
-    "NLabel" -> NeuronLabel)).subscribe(observer)
+      "MaxS" -> (benchmark.getResult.evaluationByMaxSpiking.score * 100.00D) / benchmark.getResult.inputNumber,
+      "FirstS" -> (benchmark.getResult.evaluationByFirstSpiking.score * 100.00D) / benchmark.getResult.inputNumber,
+      "OneS" -> (benchmark.getResult.evaluationByOneSpiking.score * 100.00D) / benchmark.getResult.inputNumber,
+      "QtInput" -> benchmark.getResult.quietInputCount,
+      "NLabel" -> NeuronLabel)).subscribe(observer)
 
     // adding Timestamps index to collections
 
-//    PotentialCollection.createIndex(Indexes.ascending("T"))
-//    SpikesCollection.createIndex(Indexes.ascending("T"))
-//    SynapseWeightCollection.createIndex(Indexes.ascending("T"))
+    //    PotentialCollection.createIndex(Indexes.ascending("T"))
+    //    SpikesCollection.createIndex(Indexes.ascending("T"))
+    //    SynapseWeightCollection.createIndex(Indexes.ascending("T"))
 
     mongoClient.close()
     val restartMongo = "service mongod restart" !
@@ -153,7 +153,7 @@ import scala.collection.immutable
     * Architecture Save
     * *****************************************************************************************************************/
 
- // var Neuron_id: List[Int] = List[Int]()
+  // var Neuron_id: List[Int] = List[Int]()
 
 
   //ArchiCollection.insertOne(Document("n" -> name,"i" -> n2s3.layers(0).neurons.size)).subscribe(observer)
@@ -164,8 +164,8 @@ import scala.collection.immutable
   InfoCollection.insertOne(Document("n" -> name,"L:N"->Document(layerNeron),"T"->time,"D"->Data)).subscribe(observer)
 
   n2s3.layers.foreach(elt => {
-        Layers = Layers + (elt.getIdentifier -> Lid)
-        Lid = Lid + 1})
+    Layers = Layers + (elt.getIdentifier -> Lid)
+    Lid = Lid + 1})
 
   /**
     * **************************************************
@@ -174,70 +174,70 @@ import scala.collection.immutable
   n2s3.layers.foreach(elt => {
     if(elt.getIdentifier != "Input") {
       val con = new ConnectionIndex(elt, elt).index
-    println("size: " + con.size)
-
-    con.foreach(U => {
-      U._2.foreach(connection => {
-        if (connection._1.local.head.toString.contains(":")) {
-          layerS = connection._1.actor.path.name.toString.split(":")(0)
-          neuroneS = Integer.valueOf(connection._1.local.head.toString.split(":")(1))
-        } else {
-          layerS = connection._1.actor.path.name
-          neuroneS = Integer.valueOf(connection._1.local.head.toString)
-        }
-        if (connection._2.head.outputNeuron.local.head.toString.contains(":")) {
-          layerE = connection._2.head.outputNeuron.local.head.toString.split(":")(0)
-          neuroneE = Integer.valueOf(connection._2.head.outputNeuron.local.head.toString.split(":")(1))
-        } else {
-          layerE = connection._2.head.outputNeuron.local.head.toString
-          neuroneE = Integer.valueOf(connection._2.head.outputNeuron.local.head.toString)
-        }
-        if(!layerS.equals("Input")){
-        documentArchi = documentArchi.::(Document("_id" -> id, "LS" -> Layers.get(layerS), "NS" -> neuroneS, "LE" -> Layers.get(layerE), "NE" -> neuroneE))
-        id = id + 1}
+      println("size: " + con.size)
+
+      con.foreach(U => {
+        U._2.foreach(connection => {
+          if (connection._1.local.head.toString.contains(":")) {
+            layerS = connection._1.actor.path.name.toString.split(":")(0)
+            neuroneS = Integer.valueOf(connection._1.local.head.toString.split(":")(1))
+          } else {
+            layerS = connection._1.actor.path.name
+            neuroneS = Integer.valueOf(connection._1.local.head.toString)
+          }
+          if (connection._2.head.outputNeuron.local.head.toString.contains(":")) {
+            layerE = connection._2.head.outputNeuron.local.head.toString.split(":")(0)
+            neuroneE = Integer.valueOf(connection._2.head.outputNeuron.local.head.toString.split(":")(1))
+          } else {
+            layerE = connection._2.head.outputNeuron.local.head.toString
+            neuroneE = Integer.valueOf(connection._2.head.outputNeuron.local.head.toString)
+          }
+          if(!layerS.equals("Input")){
+            documentArchi = documentArchi.::(Document("_id" -> id, "LS" -> Layers.get(layerS), "NS" -> neuroneS, "LE" -> Layers.get(layerE), "NE" -> neuroneE))
+            id = id + 1}
+        })
       })
-    })
-    if (documentArchi.nonEmpty) {
-      ArchiCollection.insertMany(documentArchi).subscribe(observer)
-      documentArchi = List.empty
-    }
-  } })
+      if (documentArchi.nonEmpty) {
+        ArchiCollection.insertMany(documentArchi).subscribe(observer)
+        documentArchi = List.empty
+      }
+    } })
 
 
   /** ******************************************************************************************************************
     * Starting Spiking & Potential monitoring
     * *****************************************************************************************************************/
 
-   if(Spikes){
-     println("Setting Spikes monitor")
-     loggerSpike = n2s3.system.actorOf(Props(new NeuronsFireLog(name,SpikesCollection,observer,Layers,step, globalTimestamps)), LocalActorDeploymentStrategy)
-     n2s3.layers.foreach(Layer =>
-       if(Layer.identifier != "Input") {
-         Layer.neuronPaths.foreach { n => {
-           ExternalSender.askTo(n, Subscribe(NeuronFireEvent, ExternalSender.getReference(loggerSpike)))
-         }}}
-     )}
-
-   if(Potential){
-     println("Setting Potential monitor")
-     loggerPotential = n2s3.system.actorOf(Props(new NeuronsPotentialLog(name,PotentialCollection,observer,Layers, globalTimestamps)), LocalActorDeploymentStrategy)
-     n2s3.layers.foreach(Layer =>
-       if(Layer.identifier != "Input"){
-       Layer.neuronPaths.foreach{ n =>{
-         ExternalSender.askTo(n, Subscribe(NeuronPotentialUpdateEvent, ExternalSender.getReference(loggerPotential)))}
-       }})}
-
-   if(Label) {
+  if(Spikes){
+    println("Setting Spikes monitor")
+    loggerSpike = n2s3.system.actorOf(Props(new NeuronsFireLog(name,SpikesCollection,observer,Layers,step, globalTimestamps)), LocalActorDeploymentStrategy)
+    n2s3.layers.foreach(Layer =>
+      if(Layer.identifier != "Input") {
+        Layer.neuronPaths.foreach { n => {
+          ExternalSender.askTo(n, Subscribe(NeuronFireEvent, ExternalSender.getReference(loggerSpike)))
+        }}}
+    )}
+
+  if(Potential){
+    println("Setting Potential monitor")
+    loggerPotential = n2s3.system.actorOf(Props(new NeuronsPotentialLog(name,PotentialCollection,observer,Layers, globalTimestamps)), LocalActorDeploymentStrategy)
+    n2s3.layers.foreach(Layer =>
+      if(Layer.identifier != "Input"){
+        Layer.neuronPaths.foreach{ n =>{
+          ExternalSender.askTo(n, Subscribe(NeuronPotentialUpdateEvent, ExternalSender.getReference(loggerPotential)))}
+        }})}
+
+  if(Label) {
     println("Setting Label monitor")
     loggerLabel = n2s3.system.actorOf(Props(new LabelMonitoring(n2s3, n2s3.layers, LabelCollection, observer, globalTimestamps)), LocalActorDeploymentStrategy)
     ExternalSender.askTo(n2s3.inputLayerRef.get.getContainer, Subscribe(LabelChangeEvent, ExternalSender.getReference(loggerLabel)))
   }
 
-   if(SynapticWeight){
-  println("Setting SynapseWeight monitor")
+  if(SynapticWeight){
+    println("Setting SynapseWeight monitor")
     synapticWeightMonitoring = new SynapticWeightMonitoring(list,500,SynapseWeightCollection,observer,"",step,globalTimestamps)
     n2s3.addNetworkObserver(synapticWeightMonitoring)}
- // ExternalSender.askTo(n2s3.inputLayerRef.get.getContainer, Subscribe(SynapseUpdateEvent, ExternalSender.getReference(loggerSynapseWeight)))
+  // ExternalSender.askTo(n2s3.inputLayerRef.get.getContainer, Subscribe(SynapseUpdateEvent, ExternalSender.getReference(loggerSynapseWeight)))
 
 }
 
@@ -245,64 +245,64 @@ import scala.collection.immutable
   * Spikes logger
   * *****************************************************************************************************************/
 
-  class NeuronsFireLog(name : String,mongoCollection: MongoCollection[Document], observer: Observer[Completed],Layers: Map[String,Int],step:Int,globalTimestamps:Timestamp) extends NetworkActor {
+class NeuronsFireLog(name : String,mongoCollection: MongoCollection[Document], observer: Observer[Completed],Layers: Map[String,Int],step:Int,globalTimestamps:Timestamp) extends NetworkActor {
   var i = 1
   var id = 0
   var time: Long = 0
   var documents : List[Document] = List.empty
 
   override def initialize(): Unit = {}
-    override def process(message: Message, sender : ActorRef): Unit = message match {
-
-      case NeuronFireResponse(timestamp, path) =>
-        if (((System.currentTimeMillis() - globalTimestamps) * 1000) - time > 250){
-            time = (System.currentTimeMillis() - globalTimestamps) * 1000
-            if(i < step){
-              documents = documents.::(Document("i" -> Document("L" -> path.actor.path.name.split(":")(0),
-              "N" -> BsonInt32.apply(Integer.valueOf(path.actor.path.name.split(":")(1)))),"T" -> time,"Input" -> GlobalLogVars.ActualInput))
-              // ,"tt" -> BsonDouble(step*i)
-            id = id + 1
-            i = i + 1
+  override def process(message: Message, sender : ActorRef): Unit = message match {
+
+    case NeuronFireResponse(timestamp, path) =>
+      if (((System.currentTimeMillis() - globalTimestamps) * 1000) - time > 250){
+        time = (System.currentTimeMillis() - globalTimestamps) * 1000
+        if(i < step){
+          documents = documents.::(Document("i" -> Document("L" -> path.actor.path.name.split(":")(0),
+            "N" -> BsonInt32.apply(Integer.valueOf(path.actor.path.name.split(":")(1)))),"T" -> time,"Input" -> GlobalLogVars.ActualInput))
+          // ,"tt" -> BsonDouble(step*i)
+          id = id + 1
+          i = i + 1
         }else{
           if(documents.nonEmpty){
             mongoCollection.insertMany(documents).subscribe(observer)
             documents = List.empty
             i = 1
           }
-            }}
-
-      case InputRestartResponse(source) =>
-      case m => if(m.toString == "Done"){println(m); destroy()} else println("[NeuronsFireLogText] another msg : "+m)
-    }
+        }}
 
-    override def destroy(): Unit = {
-      println("Destroyed")
-    }
+    case InputRestartResponse(source) =>
+    case m => if(m.toString == "Done"){println(m); destroy()} else println("[NeuronsFireLogText] another msg : "+m)
+  }
 
+  override def destroy(): Unit = {
+    println("Destroyed")
   }
 
+}
+
 
 /** ******************************************************************************************************************
   * Neuron potential Logger
   * *****************************************************************************************************************/
 
-  class NeuronsPotentialLog(name : String,mongoCollection: MongoCollection[Document], observer: Observer[Completed],Layers: Map[String,Int],globalTimestamps:Timestamp) extends NetworkActor {
-    var i = 0
-    var id = 0
+class NeuronsPotentialLog(name : String,mongoCollection: MongoCollection[Document], observer: Observer[Completed],Layers: Map[String,Int],globalTimestamps:Timestamp) extends NetworkActor {
+  var i = 0
+  var id = 0
   var time: Long = 0
   var documents : List[Document] = List.empty
-    override def initialize(): Unit = {}
-
-    override def process(message: Message, sender: ActorRef): Unit = message match {
-      case NeuronPotentialResponse(timestamp, source, value) =>
-         if (((System.currentTimeMillis() - globalTimestamps) * 1000) - time > 250){
-         time = (System.currentTimeMillis() - globalTimestamps) * 1000
-          documents = documents.::(Document("T" -> time,"L" -> Layers.get(source.actor.path.name.split(":")(0)),
-            "N" -> BsonInt32(Integer.valueOf(source.actor.path.name.split(":")(1))), "V" ->
+  override def initialize(): Unit = {}
+
+  override def process(message: Message, sender: ActorRef): Unit = message match {
+    case NeuronPotentialResponse(timestamp, source, value) =>
+      if (((System.currentTimeMillis() - globalTimestamps) * 1000) - time > 250){
+        time = (System.currentTimeMillis() - globalTimestamps) * 1000
+        documents = documents.::(Document("T" -> time,"L" -> Layers.get(source.actor.path.name.split(":")(0)),
+          "N" -> BsonInt32(Integer.valueOf(source.actor.path.name.split(":")(1))), "V" ->
             BsonDouble.apply(BigDecimal(value).setScale(6, BigDecimal.RoundingMode.HALF_UP).toDouble)))
         // "_id" -> id,
-          id = id + 1
-          i = i + 1
+        id = id + 1
+        i = i + 1
 
         if(i > 10000){
           mongoCollection.insertMany(documents).subscribe(observer)
@@ -310,16 +310,16 @@ import scala.collection.immutable
           documents = List.empty
         }}
 
-      case m => println("[NeuronsPotentialLogText] Unknown message " + m)
-      case _ => println("Err")
-    }
+    case m => println("[NeuronsPotentialLogText] Unknown message " + m)
+    case _ => println("Err")
+  }
 
-    override def destroy(): Unit = {
+  override def destroy(): Unit = {
     println("Destroyed")
-    }
-
   }
 
+}
+
 /** ******************************************************************************************************************
   * Label changement Logger for supervised learning
   * *****************************************************************************************************************/
@@ -333,29 +333,29 @@ class LabelMonitoring(n2s3 : N2S3, outputNeuron : Seq[NeuronGroupRef],mongoColle
 
     outputNeuron.foreach{Layer =>
 
-        Layer.neuronPaths.foreach { n => {
-          ExternalSender.askTo(n, Unsubscribe(NeuronFireEvent, ExternalSender.getReference(self)))
+      Layer.neuronPaths.foreach { n => {
+        ExternalSender.askTo(n, Unsubscribe(NeuronFireEvent, ExternalSender.getReference(self)))
 
-        }}}
+      }}}
 
     ExternalSender.askTo(n2s3.inputLayerRef.get.getContainer, Unsubscribe(LabelChangeEvent, ExternalSender.getReference(self)))
   }
 
   def receive = {
-     case LabelChangeResponse(start, end, label) =>
-           time = (System.currentTimeMillis() - globalTimestamps) * 1000
-           GlobalLogVars.ActualInput = label
-           GlobalLogVars.globalInput = GlobalLogVars.globalInput + 1
-           documents = documents.::(Document("L" -> BsonInt32(Integer.valueOf(label)),"T" ->time,"G" -> GlobalLogVars.globalInput))
-
-           id = id + 1
-           i = i + 1
-
-       if(i > 10){
-         mongoCollection.insertMany(documents).subscribe(observer)
-         i = 0
-         documents = List.empty
-       }
+    case LabelChangeResponse(start, end, label) =>
+      time = (System.currentTimeMillis() - globalTimestamps) * 1000
+      GlobalLogVars.ActualInput = label
+      GlobalLogVars.globalInput = GlobalLogVars.globalInput + 1
+      documents = documents.::(Document("L" -> BsonInt32(Integer.valueOf(label)),"T" ->time,"G" -> GlobalLogVars.globalInput))
+
+      id = id + 1
+      i = i + 1
+
+      if(i > 10){
+        mongoCollection.insertMany(documents).subscribe(observer)
+        i = 0
+        documents = List.empty
+      }
   }}
 
 /** ******************************************************************************************************************
@@ -370,7 +370,7 @@ class SynapticWeightMonitoring(list : IndexedSeq[IndexedSeq[IndexedSeq[Connectio
   override def deploy(n2s3: N2S3): Unit = {
 
     this.actor = Some(n2s3.system.actorOf(Props(new SynapticWeight(list, refreshRate, name,mongoCollection,observer,step,globalTimestamps)), LocalActorDeploymentStrategy))
-   // this.actor = Some(n2s3.system.actorOf(Props(new ActivityStoreActor(n2s3)), LocalActorDeploymentStrategy))
+    // this.actor = Some(n2s3.system.actorOf(Props(new ActivityStoreActor(n2s3)), LocalActorDeploymentStrategy))
 
   }
 }
@@ -412,7 +412,7 @@ class SynapticWeight(list : Seq[Seq[Seq[ConnectionPath]]], refreshRate : Int = 1
           )
           filteredconnectionList.map{ case (x, y, p) =>
             (p.connectionID, p.outputNeuron.actor.path.name.split(":")(1).toInt, values(p.connectionID).head._3)
-            }
+          }
         }
       }
       }
@@ -432,16 +432,16 @@ class SynapticWeight(list : Seq[Seq[Seq[ConnectionPath]]], refreshRate : Int = 1
         })
         valuesTmp = values
         values = List.empty
-      //  tempdocs = List.empty
+        //  tempdocs = List.empty
         i = i + 1
       } else {
-   //     println("L : "+documents.length)
+        //     println("L : "+documents.length)
         if(documents.nonEmpty){
-        mongoCollection.insertMany(documents).subscribe(observer)
-        i = 0
-        documents = List.empty}
+          mongoCollection.insertMany(documents).subscribe(observer)
+          i = 0
+          documents = List.empty}
       }
-     }
+    }
   }
 
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SpikeMonitor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SpikeMonitor.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SynapseLog.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SynapseLog.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/WaitUserBetweenInput.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/WaitUserBetweenInput.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/ActivityGraph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/ActivityGraph.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/EntryDependenceMonitor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/EntryDependenceMonitor.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/FireGraph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/FireGraph.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/Graph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/Graph.scala
old mode 100755
new mode 100644
index 0032a02c3f0eb64b1c97b412c8afa5b231607d10..2a6bfdd99fa53938cc8d7521fdbf5c66a8f92773
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/Graph.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/Graph.scala
@@ -8,11 +8,6 @@ package fr.univ_lille.cristal.emeraude.n2s3.features.logging.graph
 
 import javax.swing.JFrame
 
-import org.knowm.xchart.XChartPanel
-import org.knowm.xchart.style.Styler.LegendPosition
-
-import scalax.chart.Chart
-
 
 /***************************************************************************************************
  * trait which all Graph will extends
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/InputOutputGraph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/InputOutputGraph.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/NeuronDependenceMonitor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/NeuronDependenceMonitor.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/NeuronDependenceTikz.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/NeuronDependenceTikz.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/NeuronsGraph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/NeuronsGraph.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/Plot.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/Plot.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/ReconstructOfflineReceptiveField.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/ReconstructOfflineReceptiveField.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/ReconstructReceptiveField.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/ReconstructReceptiveField.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SampleViewer.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SampleViewer.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapseWeightLayerView.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapseWeightLayerView.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapsesConductancesGraph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapsesConductancesGraph.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapsesWeightGraphBuilderRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapsesWeightGraphBuilderRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapsesWeightsBarGraph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapsesWeightsBarGraph.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapticWeightDiffSelectGraph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapticWeightDiffSelectGraph.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapticWeightSelectAndMergeGraph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapticWeightSelectAndMergeGraph.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapticWeightSelectGraph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/SynapticWeightSelectGraph.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/TemporalInfluenceGraphic.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/TemporalInfluenceGraphic.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/TimingNeuronState.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/TimingNeuronState.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/ValuesGraph.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/graph/ValuesGraph.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/package.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/package.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/package.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/package.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/util/SpikeHistory.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/util/SpikeHistory.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/Izhikevich.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/Izhikevich.scala
old mode 100755
new mode 100644
index 39d73a4f399bfa72537d2ce71a054c83c4eb1fe8..137f3c53d961bc0687c520f954c0cd4e702c43da
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/Izhikevich.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/Izhikevich.scala
@@ -1,7 +1,7 @@
 /************************************************************************************************************
-  * Contributors:
-  * 		- created by falezp on 07/06/16
-  ***********************************************************************************************************/
+ * Contributors:
+ * 		- created by falezp on 07/06/16
+ ***********************************************************************************************************/
 package fr.univ_lille.cristal.emeraude.n2s3.models.neurons
 
 import fr.univ_lille.cristal.emeraude.n2s3.core
@@ -18,9 +18,9 @@ import squants.electro.CapacitanceConversions.CapacitanceConversions
 import squants.electro.ElectricPotentialConversions.ElectricPotentialConversions
 import squants.electro.{ElectricPotential, Millivolts}
 
-/**
+ /**
   * Implementation of the Izhikevich neuron model 
-  *
+  * 
   * More informations can be found at the following address:
   * 	- http://www.izhikevich.org/publications/spikes.htm
   *   - http://www.izhikevich.org/publications/spikes.pdf
@@ -43,9 +43,9 @@ class Izhikevich extends core.Neuron {
   var v = c
   var u = v*b
 
-  var capacitance = 1 farads
+   var capacitance = 1 farads
 
-  var th = 30 millivolts
+   var th = 30 millivolts
 
   var lastTimestamps : Timestamp = 0
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/LIF.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/LIF.scala
old mode 100755
new mode 100644
index 00df0287ed37eccbecdb7f83afcb71e0c6b727ea..19d265cc369baa5b7f85f7137f649a133dc1297b
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/LIF.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/LIF.scala
@@ -6,7 +6,6 @@ import fr.univ_lille.cristal.emeraude.n2s3.core._
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{BackwardSpike, ElectricSpike, ResetState}
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse, NeuronPotentialResponse, NeuronPotentialUpdateEvent}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties._
-import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
 import fr.univ_lille.cristal.emeraude.n2s3.support.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.support.Time
 import fr.univ_lille.cristal.emeraude.n2s3.support.UnitCast._
@@ -38,18 +37,15 @@ class LIF extends core.Neuron {
 
   private var membraneThresholdType = MembraneThresholdTypeEnum.Dynamic
   private var membranePotential = 0 millivolts
-  private var restingPotential = 0 millivolts
   private var membranePotentialThreshold = 1 millivolts
   private var membraneCapacitance = 1 farads
   private var tRefract = 1 MilliSecond
   private var tInhibit = 10 MilliSecond
   private var tLeak = 100 MilliSecond
 
-
   private var theta = 0 millivolts
   private var thetaLeak = 1e7 MilliSecond
   private var theta_step = 0.05  millivolts
-  private var inhibitionRatio = 0f
 
 
   /********************************************************************************************************************
@@ -63,7 +59,6 @@ class LIF extends core.Neuron {
     * Properties and Events
     ******************************************************************************************************************/
   addProperty[ElectricPotential](MembranePotentialThreshold, () => membranePotentialThreshold, membranePotentialThreshold = _)
-  addProperty[ElectricPotential](MembraneRestingPotential, () => restingPotential, restingPotential = _)
   addProperty[Time](MembraneLeakTime, () => tLeak, tLeak = _)
   addProperty[Time](MembraneRefractoryDuration, () => tRefract, tRefract = _)
   addProperty[Time](MembraneInhibitionDuration, () => tInhibit, tInhibit = _)
@@ -71,8 +66,7 @@ class LIF extends core.Neuron {
   addProperty[ElectricPotential](AdaptiveThreshold, () => theta, theta = _)
   addProperty[ElectricPotential](AdaptiveThresholdAdd, () => theta_step, theta_step = _)
   addProperty[Time](AdaptiveThresholdLeak, () => thetaLeak, thetaLeak = _)
-  InhibitionRatio
-
+  addProperty[ElectricPotential](MembranePotentialVoltage, () => membranePotential, membranePotential = _)
 
   addEvent(NeuronPotentialUpdateEvent)
 
@@ -86,27 +80,21 @@ class LIF extends core.Neuron {
 
       //println(membranePotentialThreshold+" + "+theta)
 
-
-      if (timestamp - tLastFire < tRefract.timestamp || timestamp - tLastInhib < tInhibit.timestamp)
+      if(timestamp-tLastFire < tRefract.timestamp || timestamp-tLastInhib < tInhibit.timestamp)
         return
 
-      //println((spikeCharge/membraneCapacitance).toMillivolts)
-      membranePotential = membranePotential * exp(-(timestamp - tLastSpike).toDouble / tLeak.timestamp.toDouble) + spikeCharge / membraneCapacitance
-
+      membranePotential = membranePotential*exp(-(timestamp - tLastSpike).toDouble / tLeak.timestamp.toDouble)+spikeCharge/membraneCapacitance
 
-      val v = membranePotential + restingPotential
-      // println(getNetworkAddress+" "+restingPotential+"+"+membranePotential+" <> "+membranePotentialThreshold+"+"+theta)
-
-      if (membraneThresholdType == MembraneThresholdTypeEnum.Dynamic && !hasFixedParameter) {
+      if(membraneThresholdType == MembraneThresholdTypeEnum.Dynamic && !hasFixedParameter) {
         this.theta = this.theta * exp(-(timestamp - this.tLastSpike).toDouble / thetaLeak.timestamp.toDouble).toFloat
         this.tLastTheta = timestamp
       }
 
-      if (v >= membranePotentialThreshold + theta) {
+      if(membranePotential >= membranePotentialThreshold+theta) {
 
         membranePotential = 0 millivolts
 
-        if (membraneThresholdType == MembraneThresholdTypeEnum.Dynamic && !hasFixedParameter) {
+        if(membraneThresholdType == MembraneThresholdTypeEnum.Dynamic && !hasFixedParameter) {
           theta += theta_step
         }
 
@@ -121,10 +109,9 @@ class LIF extends core.Neuron {
       }
 
       tLastSpike = timestamp
-
-    case Inhibition(ratio) =>
+    case Inhibition(_) =>
       tLastInhib = timestamp
-      membranePotential *= ratio
+      membranePotential = 0 millivolts
 
       triggerEventWith(NeuronPotentialUpdateEvent, NeuronPotentialResponse(timestamp, getNetworkAddress, membranePotential.toMillivolts.toFloat))
     case ResetState =>
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/SRM.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/SRM.scala
old mode 100755
new mode 100644
index 8723a37a861cd63c85acee745bf473e43f59f542..b3ea37958810f9735bff524ebced33e40558fe13
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/SRM.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/neurons/SRM.scala
@@ -89,16 +89,16 @@ class SRM extends core.Neuron {
   })
   addProperty[MembraneThresholdTypeEnum.Value](MembraneThresholdType, () => membraneThresholdType, membraneThresholdType = _)
 
-  /*
-    addConnectionProperty[Float](SynapticWeightFloat, {
-      case s : FloatSynapse => Some(s.getWeight)
-      case _ => None
-    },
-      (connection,  value) => connection match {
-        case s : FloatSynapse => s.setWeight(value)
-        case _ =>
-      })
-  */
+/*
+  addConnectionProperty[Float](SynapticWeightFloat, {
+    case s : FloatSynapse => Some(s.getWeight)
+    case _ => None
+  },
+    (connection,  value) => connection match {
+      case s : FloatSynapse => s.setWeight(value)
+      case _ =>
+    })
+*/
 
   addEvent(NeuronPotentialUpdateEvent)
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/package.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/package.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/synapses/InhibitorySynapse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/synapses/InhibitorySynapse.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/synapses/SimplifiedSTDP.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/synapses/SimplifiedSTDP.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/synapses/StandardSTDP.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/synapses/StandardSTDP.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/synapses/StaticSynapse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/synapses/StaticSynapse.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/synapses/TernarySynapse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/synapses/TernarySynapse.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/package.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/package.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/GlobalTypesAlias.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/GlobalTypesAlias.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/InputDistribution.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/InputDistribution.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/N2S3ResourceManager.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/N2S3ResourceManager.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/Units.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/Units.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/ActorCompanion.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/ActorCompanion.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/ActorDeploymentStrategy.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/ActorDeploymentStrategy.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/Message.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/Message.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/MessageSynchronizer.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/MessageSynchronizer.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/N2S3ActorSystem.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/N2S3ActorSystem.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/NetworkEntityDeploymentPolicy.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/NetworkEntityDeploymentPolicy.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/PropsBuilder.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/PropsBuilder.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/SinglePropsBuilder.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/SinglePropsBuilder.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/UnhandledMessageException.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/UnhandledMessageException.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/InputStream.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/InputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/InputStreamCombinators.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/InputStreamCombinators.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/ui/ExampleDefaultWindow.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/ui/ExampleDefaultWindow.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/ui/SynapseWeightsView.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/ui/SynapseWeightsView.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/resources/application.clustered.conf b/n2s3/src/test/resources/application.clustered.conf
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/resources/font.png b/n2s3/src/test/resources/font.png
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/resources/freeway-save.xml b/n2s3/src/test/resources/freeway-save.xml
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/resources/mnistTrained.xml b/n2s3/src/test/resources/mnistTrained.xml
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/resources/test_xml b/n2s3/src/test/resources/test_xml
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/resources/xml b/n2s3/src/test/resources/xml
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/UnitActorSpec.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/UnitActorSpec.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/UnitSpec.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/UnitSpec.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/MockNeuron.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/MockNeuron.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestInput.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestInput.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNetworkContainer.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNetworkContainer.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronActor.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronActor.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronConnection.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronLayerActorConnection.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronLayerActorConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronLayerActorConstruction.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronLayerActorConstruction.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronLayerActorSpiking.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronLayerActorSpiking.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestSynchronizer.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestSynchronizer.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/simulationRefs/TestNeuronGroupRef.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/simulationRefs/TestNeuronGroupRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/simulationRefs/TestNeuronGroupRefFullConnection.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/simulationRefs/TestNeuronGroupRefFullConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/simulationRefs/TestNeuronGroupRefOneToOneConnection.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/simulationRefs/TestNeuronGroupRefOneToOneConnection.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/synchronization/TestSynchronizedNeuronRef.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/synchronization/TestSynchronizedNeuronRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/TestActorSystem.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/TestActorSystem.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/TestAERInputStream.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/TestAERInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/TestDigitalHexInputStream.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/TestDigitalHexInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/TestInputDistribution.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/TestInputDistribution.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/TestMnistInputStream.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/TestMnistInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/integration/TestNeuronGroupRef.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/integration/TestNeuronGroupRef.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/TestNeuron.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/TestNeuron.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/TestPositionInputStream.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/TestPositionInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/TestRepeatInputStream.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/TestRepeatInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/TestTakeInputStream.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/TestTakeInputStream.scala
old mode 100755
new mode 100644
diff --git a/n2s3_daemon/build.sbt b/n2s3_daemon/build.sbt
index 945a328e6c602fe43b7728c0e4f95f12b0f9ed68..bde605f680f6885cf8a793db680283ff6eda05ed 100755
--- a/n2s3_daemon/build.sbt
+++ b/n2s3_daemon/build.sbt
@@ -10,7 +10,7 @@ name             := "N2S3-daemon"
 libraryDependencies ++= {
   val akkaV = "2.3.7"
   Seq(
-    "fr.univ-lille.cristal" %% "n2s3"     % "0.3-SNAPSHOT",
+    "fr.univ-lille.cristal" %% "n2s3"     % "1.1.1",
     "com.typesafe.akka" %% "akka-cluster"   % akkaV
   )
-}
\ No newline at end of file
+}