diff --git a/src/main/java/model/Firefighter.java b/src/main/java/model/Firefighter.java
index 43fc7e50393b5a459e4ac278648a24e8e1eb6f5d..5b1e562c6348cb3d05035aaf0533f7cf8d590c02 100644
--- a/src/main/java/model/Firefighter.java
+++ b/src/main/java/model/Firefighter.java
@@ -43,4 +43,8 @@ public class Firefighter {
     public void extinguish(Position position, Set<Position> firePositions) {
         firePositions.remove(position);
     }
+    public void reset(Position initialPosition) {
+        this.position = initialPosition;
+    }
+
 }
diff --git a/src/main/java/model/FirefighterBoard.java b/src/main/java/model/FirefighterBoard.java
index 7c1960c76b002008d2c45118e3fcbf3a9497bb9b..65c222600e6d2a94246de9b759ab9f7730e0f4eb 100644
--- a/src/main/java/model/FirefighterBoard.java
+++ b/src/main/java/model/FirefighterBoard.java
@@ -48,7 +48,6 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
     this.initialCloudCount = initialCloudCount;
     initializeElements();
 
-    // Initialisation des Updaters
     nextGenerationUpdater = new NextGenerationUpdater(fire, clouds, firefighters, mountains, neighbors);
 
     terrainElements = new ArrayList<>();
@@ -68,7 +67,16 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
     clouds = new ArrayList<>();
     mountains = new ArrayList<>();
     Set<Position> firePositions = new HashSet<>();
+    terrainElements = new ArrayList<>();
+
+   // List<Position> initialFirefighterPositions = new ArrayList<>();
 
+    int targetColumn = 9;
+
+    for (int row = 0; row < rowCount; row++) {
+      Position position = new Position(row, targetColumn);
+        terrainElements.add(new Route(position));
+    }
 
     for (int index = 0; index < initialCloudCount; index++) {
       clouds.add(new Cloud(randomPosition(), neighbors));
@@ -76,8 +84,11 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
     for (int index = 0; index < initialFireCount; index++)
       firePositions.add(randomPosition());
     fire = new Fire(firePositions, neighbors);
-    for (int index = 0; index < initialFirefighterCount; index++)
+
+    for (int index = 0; index < initialFirefighterCount; index++) {
       firefighters.add(new Firefighter(randomPosition()));
+    }
+
     for (int index = 0; index < initialCloudCount; index++) {
       clouds.add(new Cloud(randomPosition(), neighbors));
     }
@@ -155,13 +166,17 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
   }
 
   public List<Position> updateToNextGeneration() {
-    return nextGenerationUpdater.updateToNextGeneration();
+    List<Position> updatedPositions = nextGenerationUpdater.updateToNextGeneration();
+    step++;  // Incrémentation du compteur de génération
+    return updatedPositions;
+    //return nextGenerationUpdater.updateToNextGeneration();
   }
 
   @Override
   public void reset() {
-    nextGenerationUpdater.resetStep();
     initializeElements();
+    nextGenerationUpdater.resetStep();
+
   }
 
   @Override