diff --git a/src/main/java/controller/Controller.java b/src/main/java/controller/Controller.java
index f1fa00410c6cc4c8f5bf0238482d5eb46bd5305d..d6b3a161e062a7f692ffc72d6c19f4e7af31537d 100644
--- a/src/main/java/controller/Controller.java
+++ b/src/main/java/controller/Controller.java
@@ -12,9 +12,9 @@ import javafx.scene.control.ToggleButton;
 import javafx.scene.control.ToggleGroup;
 import javafx.util.Duration;
 import javafx.util.Pair;
-import model.Board;
-import model.ModelElement;
-import model.FirefighterBoard;
+import model.Board.Board;
+import model.Elements.ModelElement;
+import model.Board.FirefighterBoard;
 import util.Position;
 import view.Grid;
 import view.ViewElement;
diff --git a/src/main/java/model/Board.java b/src/main/java/model/Board/Board.java
similarity index 94%
rename from src/main/java/model/Board.java
rename to src/main/java/model/Board/Board.java
index 9757c259b100eb195154b3bd739b29b39b3e9bc7..a0b89d830ecd8bef65a54b39f2de2e76df633822 100644
--- a/src/main/java/model/Board.java
+++ b/src/main/java/model/Board/Board.java
@@ -1,7 +1,7 @@
-package model;
+package model.Board;
 
-
-import model.Obstacle.Obstacle;
+import model.Elements.Fire;
+import model.Elements.Obstacle.Obstacle;
 import util.Position;
 
 import java.util.List;
diff --git a/src/main/java/model/FirefighterBoard.java b/src/main/java/model/Board/FirefighterBoard.java
similarity index 93%
rename from src/main/java/model/FirefighterBoard.java
rename to src/main/java/model/Board/FirefighterBoard.java
index e5ba2bad0547858d54be9252c01600b2590a6269..55fe8db0070efcb26d93566465cb8ea6613158c3 100644
--- a/src/main/java/model/FirefighterBoard.java
+++ b/src/main/java/model/Board/FirefighterBoard.java
@@ -1,9 +1,12 @@
-package model;
+package model.Board;
 
-import model.Extinguisher.Cloud;
-import model.Extinguisher.Extinguisher;
-import model.Extinguisher.FireFighter;
-import model.Obstacle.Obstacle;
+
+import model.Elements.Extinguisher.Cloud;
+import model.Elements.Extinguisher.Extinguisher;
+import model.Elements.Extinguisher.FireFighter;
+import model.Elements.Fire;
+import model.Elements.ModelElement;
+import model.Elements.Obstacle.Obstacle;
 import util.Position;
 
 import java.util.*;
diff --git a/src/main/java/model/Extinguisher/Cloud.java b/src/main/java/model/Elements/Extinguisher/Cloud.java
similarity index 89%
rename from src/main/java/model/Extinguisher/Cloud.java
rename to src/main/java/model/Elements/Extinguisher/Cloud.java
index 51daffca4d01fdf8f2afec5a4b86a147e9bc7556..d097e0f9c4c9c71397276dfd7701fdb7fd59970a 100644
--- a/src/main/java/model/Extinguisher/Cloud.java
+++ b/src/main/java/model/Elements/Extinguisher/Cloud.java
@@ -1,8 +1,7 @@
-package model.Extinguisher;
+package model.Elements.Extinguisher;
 
-import model.Board;
-
-import model.ModelElement;
+import model.Board.Board;
+import model.Elements.ModelElement;
 import util.Neighbour;
 import util.Position;
 
diff --git a/src/main/java/model/Extinguisher/Extinguisher.java b/src/main/java/model/Elements/Extinguisher/Extinguisher.java
similarity index 83%
rename from src/main/java/model/Extinguisher/Extinguisher.java
rename to src/main/java/model/Elements/Extinguisher/Extinguisher.java
index 5326fa07209c6e7631115103b12be393b2dbff59..13fe6e53fd2e711e08949ece1d00f4c662296a65 100644
--- a/src/main/java/model/Extinguisher/Extinguisher.java
+++ b/src/main/java/model/Elements/Extinguisher/Extinguisher.java
@@ -1,15 +1,15 @@
-package model.Extinguisher;
+package model.Elements.Extinguisher;
 
-import model.Board;
-import model.Element;
-import model.ModelElement;
+
+import model.Board.Board;
+import model.Elements.ModelElement;
 import util.Neighbour;
 import util.Position;
 import util.TargetStrategy;
 
 import java.util.List;
 
-public abstract class Extinguisher implements Element {
+public abstract class Extinguisher implements model.Elements.element {
     protected final TargetStrategy targetStrategy = new TargetStrategy();
     protected Neighbour neighbour;
 
diff --git a/src/main/java/model/Extinguisher/FireFighter.java b/src/main/java/model/Elements/Extinguisher/FireFighter.java
similarity index 87%
rename from src/main/java/model/Extinguisher/FireFighter.java
rename to src/main/java/model/Elements/Extinguisher/FireFighter.java
index 50d329fde4a2d953f22ffe4db68b91c712ec4d67..6c6080ffe152a75d84b29ade91320a363794cef2 100644
--- a/src/main/java/model/Extinguisher/FireFighter.java
+++ b/src/main/java/model/Elements/Extinguisher/FireFighter.java
@@ -1,9 +1,12 @@
-package model.Extinguisher;
+package model.Elements.Extinguisher;
 
-import model.Board;
-import model.ModelElement;
-import model.Obstacle.Mountain;
-import model.Obstacle.Obstacle;
+
+
+
+import model.Board.Board;
+import model.Elements.ModelElement;
+import model.Elements.Obstacle.Mountain;
+import model.Elements.Obstacle.Obstacle;
 import util.Neighbour;
 import util.Position;
 
diff --git a/src/main/java/model/Extinguisher/MotorizedFireFighter.java b/src/main/java/model/Elements/Extinguisher/MotorizedFireFighter.java
similarity index 89%
rename from src/main/java/model/Extinguisher/MotorizedFireFighter.java
rename to src/main/java/model/Elements/Extinguisher/MotorizedFireFighter.java
index 12df7c9a906d14ea6edcdfff7e913ddb472ddc5f..18c1fd2fa026c395204ac18f769edc029e94e622 100644
--- a/src/main/java/model/Extinguisher/MotorizedFireFighter.java
+++ b/src/main/java/model/Elements/Extinguisher/MotorizedFireFighter.java
@@ -1,10 +1,10 @@
-package model.Extinguisher;
+package model.Elements.Extinguisher;
 
-import model.Board;
 
-import model.ModelElement;
-import model.Obstacle.Mountain;
-import model.Obstacle.Obstacle;
+import model.Board.Board;
+import model.Elements.ModelElement;
+import model.Elements.Obstacle.Mountain;
+import model.Elements.Obstacle.Obstacle;
 import util.Neighbour;
 import util.Position;
 
diff --git a/src/main/java/model/Fire.java b/src/main/java/model/Elements/Fire.java
similarity index 91%
rename from src/main/java/model/Fire.java
rename to src/main/java/model/Elements/Fire.java
index 95ba7143c10483510e98ab6a21808dba328a08b3..7de2d8460beb718d8b3b765e09c41223276cdaf5 100644
--- a/src/main/java/model/Fire.java
+++ b/src/main/java/model/Elements/Fire.java
@@ -1,15 +1,17 @@
-package model;
+package model.Elements;
 
-import model.Obstacle.Mountain;
-import model.Obstacle.Obstacle;
-import model.Obstacle.Road;
+
+import model.Board.Board;
+import model.Elements.Obstacle.Mountain;
+import model.Elements.Obstacle.Obstacle;
+import model.Elements.Obstacle.Road;
 import util.Neighbour;
 import util.Position;
 
 import java.util.*;
 
 
-public class Fire implements Element {
+public class Fire implements element {
 
     private Position position;
 
diff --git a/src/main/java/model/ModelElement.java b/src/main/java/model/Elements/ModelElement.java
similarity index 70%
rename from src/main/java/model/ModelElement.java
rename to src/main/java/model/Elements/ModelElement.java
index 8d3aee5b22ded539178e28096667f80ee560504e..0d7d50ee39e4bbdd4024b4436946addde59eb95b 100644
--- a/src/main/java/model/ModelElement.java
+++ b/src/main/java/model/Elements/ModelElement.java
@@ -1,13 +1,14 @@
-package model;
-
-import model.Extinguisher.Cloud;
-import model.Extinguisher.Extinguisher;
-import model.Extinguisher.FireFighter;
-import model.Extinguisher.MotorizedFireFighter;
-import model.Obstacle.Mountain;
-import model.Obstacle.Obstacle;
-import model.Obstacle.Road;
-import model.Obstacle.Rocaille;
+package model.Elements;
+
+
+import model.Elements.Extinguisher.Cloud;
+import model.Elements.Extinguisher.Extinguisher;
+import model.Elements.Extinguisher.FireFighter;
+import model.Elements.Extinguisher.MotorizedFireFighter;
+import model.Elements.Obstacle.Mountain;
+import model.Elements.Obstacle.Obstacle;
+import model.Elements.Obstacle.Road;
+import model.Elements.Obstacle.Rocaille;
 import util.Position;
 
 
@@ -32,7 +33,7 @@ public enum ModelElement {
     return this.initialNumber;
   }
 
-  public Element getModelElementClass(Position position){
+  public element getModelElementClass(Position position){
 
     return switch (this){
       case FIRE -> new Fire(position);
diff --git a/src/main/java/model/Obstacle/Mountain.java b/src/main/java/model/Elements/Obstacle/Mountain.java
similarity index 72%
rename from src/main/java/model/Obstacle/Mountain.java
rename to src/main/java/model/Elements/Obstacle/Mountain.java
index cd9db1de19069329383cf54239c889ea96f1eac5..301c9eacd26280e9f82be9b2e59e16cbf0fc766b 100644
--- a/src/main/java/model/Obstacle/Mountain.java
+++ b/src/main/java/model/Elements/Obstacle/Mountain.java
@@ -1,6 +1,7 @@
-package model.Obstacle;
+package model.Elements.Obstacle;
 
-import model.ModelElement;
+
+import model.Elements.ModelElement;
 
 import util.Position;
 
diff --git a/src/main/java/model/Obstacle/Obstacle.java b/src/main/java/model/Elements/Obstacle/Obstacle.java
similarity index 75%
rename from src/main/java/model/Obstacle/Obstacle.java
rename to src/main/java/model/Elements/Obstacle/Obstacle.java
index 0000e54f07bcdf62a8eda7ca848aa8e4c4602885..5ad4b2fb5d9616806d9f484cd560f6de6cf94b5d 100644
--- a/src/main/java/model/Obstacle/Obstacle.java
+++ b/src/main/java/model/Elements/Obstacle/Obstacle.java
@@ -1,13 +1,13 @@
-package model.Obstacle;
+package model.Elements.Obstacle;
 
-import model.Board;
-import model.Element;
-import model.ModelElement;
+
+import model.Board.Board;
+import model.Elements.ModelElement;
 import util.Position;
 
 import java.util.List;
 
-public abstract class Obstacle implements Element {
+public abstract class Obstacle implements model.Elements.element {
     protected ModelElement element;
     protected final Position position;
     public Obstacle(Position position){
diff --git a/src/main/java/model/Obstacle/Road.java b/src/main/java/model/Elements/Obstacle/Road.java
similarity index 71%
rename from src/main/java/model/Obstacle/Road.java
rename to src/main/java/model/Elements/Obstacle/Road.java
index 939581ddc27e1f7245c47ae3fdac872a0f4d9eab..121cb96e620c328d141c561bd3b2ce19fd2203dc 100644
--- a/src/main/java/model/Obstacle/Road.java
+++ b/src/main/java/model/Elements/Obstacle/Road.java
@@ -1,6 +1,7 @@
-package model.Obstacle;
+package model.Elements.Obstacle;
 
-import model.ModelElement;
+
+import model.Elements.ModelElement;
 
 import util.Position;
 
diff --git a/src/main/java/model/Obstacle/Rocaille.java b/src/main/java/model/Elements/Obstacle/Rocaille.java
similarity index 72%
rename from src/main/java/model/Obstacle/Rocaille.java
rename to src/main/java/model/Elements/Obstacle/Rocaille.java
index 0ce657ece8965c54de20041422cb6d4b5f4dc0ea..c7fe41f38e43e082cf8e2b127704f0a922bb5856 100644
--- a/src/main/java/model/Obstacle/Rocaille.java
+++ b/src/main/java/model/Elements/Obstacle/Rocaille.java
@@ -1,6 +1,8 @@
-package model.Obstacle;
+package model.Elements.Obstacle;
 
-import model.ModelElement;
+
+
+import model.Elements.ModelElement;
 
 import util.Position;
 
diff --git a/src/main/java/model/Element.java b/src/main/java/model/Elements/element.java
similarity index 70%
rename from src/main/java/model/Element.java
rename to src/main/java/model/Elements/element.java
index 7b3aeb3a45e5de3bc302e4a26ae37e90f89245bb..f6219fb7a40666545bee7e9f3ec795f1dca1e375 100644
--- a/src/main/java/model/Element.java
+++ b/src/main/java/model/Elements/element.java
@@ -1,10 +1,11 @@
-package model;
+package model.Elements;
 
+import model.Board.Board;
 import util.Position;
 
 import java.util.List;
 
-public interface Element {
+public interface element {
 
 
 
diff --git a/src/main/java/util/Neighbour.java b/src/main/java/util/Neighbour.java
index 1e591d37d7fcdb96a130b4353f02060f68dfb7a8..6ae12365855d516668877384b105324ab37889ac 100644
--- a/src/main/java/util/Neighbour.java
+++ b/src/main/java/util/Neighbour.java
@@ -1,6 +1,6 @@
 package util;
 
-import model.Board;
+import model.Board.Board;
 
 import java.util.*;
 
diff --git a/src/main/java/util/Position.java b/src/main/java/util/Position.java
index c25f20da5b7114e47b732b0c0f6f20be43b02241..f297536e3c3ad2ae01a9a6e5b973b2ced76cc8e6 100644
--- a/src/main/java/util/Position.java
+++ b/src/main/java/util/Position.java
@@ -1,10 +1,5 @@
 package util;
 
-import model.Board;
-import model.FirefighterBoard;
-
-import java.util.Random;
-
 public record Position(int row, int column) {
 
 
diff --git a/src/test/java/model/FirefighterBoardTest.java b/src/test/java/model/FirefighterBoardTest.java
index e091ac2a6f2f39a4813245b05a73e4054349af14..7f6d825ecadc2bb93a2fc20dfa7c90473f535260 100644
--- a/src/test/java/model/FirefighterBoardTest.java
+++ b/src/test/java/model/FirefighterBoardTest.java
@@ -1,5 +1,8 @@
 package model;
 
+import model.Board.Board;
+import model.Board.FirefighterBoard;
+import model.Elements.ModelElement;
 import org.junit.jupiter.api.Test;
 import util.Position;