diff --git a/src/main/java/model/FirefighterBoard.java b/src/main/java/model/FirefighterBoard.java
index 16f8b2f6d0cfeb6e2477ee676e064e25da835606..e7e11915a87dab3b363164164454a1577d19b150 100644
--- a/src/main/java/model/FirefighterBoard.java
+++ b/src/main/java/model/FirefighterBoard.java
@@ -13,42 +13,23 @@ import static util.Tools.addElement;
 public class FirefighterBoard implements Board<List<ModelElement>> {
   private final int columnCount;
   private final int rowCount;
-  private final int initialFireCount;
-  private final int initialFirefighterCount;
-  private List<Position> firefighterPositions;
-  private Set<Position> firePositions;
+
   private Map<Position,List<ModelElement>>board;
+  private Map<ModelElement,Integer>intialboard;
+
   private int step = 0;
   private final Random randomGenerator = new Random();
 
-  public FirefighterBoard(int columnCount, int rowCount, int initialFireCount, int initialFirefighterCount) {
+  public FirefighterBoard(int columnCount, int rowCount, Map<ModelElement,Integer>intialboard) {
     this.columnCount = columnCount;
     this.rowCount = rowCount;
-    this.initialFireCount = initialFireCount;
-    this.initialFirefighterCount = initialFirefighterCount;
     board=new HashMap<>();
-    initializeElements();
+    initializeElements(new Fire);
   }
 
-  public void initializeElements() {
-    firefighterPositions = new ArrayList<>();
-    firePositions = new HashSet<>();
-
-    for (int index = 0; index < initialFireCount; index++)
-      firePositions.add(randomPosition());
-    for (int index = 0; index < initialFirefighterCount; index++)
-      firefighterPositions.add(randomPosition());
-    for (Position firefighterPosition:firefighterPositions
-         ) {
-      addElement(firefighterPosition, board, new FireFigther());
-
-    }
-    for (Position firePosition:firePositions
-    ) {
-      addElement(firePosition, board, new Fire());
-
-    }
-
+  public void initializeElements(ModelElement modelElement) {
+    for (int index = 0; index < intialboard.get(modelElement); index++)
+      addElement(randomPosition(),board,modelElement);
   }
 
   private Position randomPosition() {
diff --git a/src/main/java/util/Tools.java b/src/main/java/util/Tools.java
index 1005a294026ad8f6b479a68b8b2cdad6765fed52..1abf0f3705b78288c57e838188eaa50752380ad4 100644
--- a/src/main/java/util/Tools.java
+++ b/src/main/java/util/Tools.java
@@ -20,12 +20,14 @@ public class Tools {
         Set<Position> seen = new HashSet<>();
         HashMap<Position, Position> firstMove = new HashMap<>();
         Queue<Position> toVisit = new LinkedList<>(neighbors(position,rowCount,columnCount));
-        for (Position initialMove : toVisit)
+        for (Position initialMove : toVisit){
             firstMove.put(initialMove, initialMove);
+        }
         while (!toVisit.isEmpty()) {
             Position current = toVisit.poll();
             if (board.containsKey(current)) {
                     if (board.get(current).contains(new Fire())){
+                        System.out.println("ok chef 4");
                         return firstMove.get(current);
                     }
                 for (Position adjacent : neighbors(current, rowCount, columnCount)) {
@@ -34,6 +36,7 @@ public class Tools {
                     }
                     toVisit.add(adjacent);
                     seen.add(adjacent);
+        HashMap<Position, Position> firstMove = new HashMap
                     firstMove.put(adjacent, firstMove.get(current));
 
                 }
@@ -63,4 +66,5 @@ public class Tools {
         board.put(position,elements);
     }
 
+
 }