diff --git a/.gradle/8.10.2/checksums/checksums.lock b/.gradle/8.10.2/checksums/checksums.lock
new file mode 100644
index 0000000000000000000000000000000000000000..362bc68d8a750d6cb2e379d339d81337182066e7
Binary files /dev/null and b/.gradle/8.10.2/checksums/checksums.lock differ
diff --git a/.gradle/8.10.2/dependencies-accessors/gc.properties b/.gradle/8.10.2/dependencies-accessors/gc.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.gradle/8.10.2/executionHistory/executionHistory.lock b/.gradle/8.10.2/executionHistory/executionHistory.lock
new file mode 100644
index 0000000000000000000000000000000000000000..66d287d3b823619b05e3e0405201e0476d56d0bb
Binary files /dev/null and b/.gradle/8.10.2/executionHistory/executionHistory.lock differ
diff --git a/.gradle/8.10.2/fileChanges/last-build.bin b/.gradle/8.10.2/fileChanges/last-build.bin
new file mode 100644
index 0000000000000000000000000000000000000000..f76dd238ade08917e6712764a16a22005a50573d
Binary files /dev/null and b/.gradle/8.10.2/fileChanges/last-build.bin differ
diff --git a/.gradle/8.10.2/fileHashes/fileHashes.lock b/.gradle/8.10.2/fileHashes/fileHashes.lock
new file mode 100644
index 0000000000000000000000000000000000000000..6ff3a415c6023cab4336fc709e46d5153dca2c9a
Binary files /dev/null and b/.gradle/8.10.2/fileHashes/fileHashes.lock differ
diff --git a/.gradle/8.10.2/gc.properties b/.gradle/8.10.2/gc.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.gradle/8.8/checksums/checksums.lock b/.gradle/8.8/checksums/checksums.lock
new file mode 100644
index 0000000000000000000000000000000000000000..8a45a7084553486969a0e333e25707ca7f09aa8d
Binary files /dev/null and b/.gradle/8.8/checksums/checksums.lock differ
diff --git a/.gradle/8.8/dependencies-accessors/gc.properties b/.gradle/8.8/dependencies-accessors/gc.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.gradle/8.8/executionHistory/executionHistory.bin b/.gradle/8.8/executionHistory/executionHistory.bin
new file mode 100644
index 0000000000000000000000000000000000000000..31d2a1839cbee614a0ff816d1d8bba3e57db218d
Binary files /dev/null and b/.gradle/8.8/executionHistory/executionHistory.bin differ
diff --git a/.gradle/8.8/executionHistory/executionHistory.lock b/.gradle/8.8/executionHistory/executionHistory.lock
new file mode 100644
index 0000000000000000000000000000000000000000..28dcf5f95f3b8611411e632c8e70bb832e839ade
Binary files /dev/null and b/.gradle/8.8/executionHistory/executionHistory.lock differ
diff --git a/.gradle/8.8/fileChanges/last-build.bin b/.gradle/8.8/fileChanges/last-build.bin
new file mode 100644
index 0000000000000000000000000000000000000000..f76dd238ade08917e6712764a16a22005a50573d
Binary files /dev/null and b/.gradle/8.8/fileChanges/last-build.bin differ
diff --git a/.gradle/8.8/fileHashes/fileHashes.bin b/.gradle/8.8/fileHashes/fileHashes.bin
new file mode 100644
index 0000000000000000000000000000000000000000..54cad51c13f406f7c097b1a5990d97a41d4bf162
Binary files /dev/null and b/.gradle/8.8/fileHashes/fileHashes.bin differ
diff --git a/.gradle/8.8/fileHashes/fileHashes.lock b/.gradle/8.8/fileHashes/fileHashes.lock
new file mode 100644
index 0000000000000000000000000000000000000000..3b21749594fbc6d5f3d5df219da1355f3213846b
Binary files /dev/null and b/.gradle/8.8/fileHashes/fileHashes.lock differ
diff --git a/.gradle/8.8/gc.properties b/.gradle/8.8/gc.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock
new file mode 100644
index 0000000000000000000000000000000000000000..964c60967a2b63f66ae399dfea332826c256aeeb
Binary files /dev/null and b/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ
diff --git a/.gradle/buildOutputCleanup/cache.properties b/.gradle/buildOutputCleanup/cache.properties
new file mode 100644
index 0000000000000000000000000000000000000000..3979684f119113c8414413770dcd4af3bb3d7838
--- /dev/null
+++ b/.gradle/buildOutputCleanup/cache.properties
@@ -0,0 +1,2 @@
+#Sat Nov 09 17:23:07 CET 2024
+gradle.version=8.10.2
diff --git a/.gradle/vcs-1/gc.properties b/.gradle/vcs-1/gc.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/main/java/model/Fire.java b/src/main/java/model/Fire.java
new file mode 100644
index 0000000000000000000000000000000000000000..335315ed9b8af9e3cc5aaf335a94103c7495a14d
--- /dev/null
+++ b/src/main/java/model/Fire.java
@@ -0,0 +1,29 @@
+package model;
+
+import util.Position;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+public class Fire {
+    private Set<Position> positions;
+
+    public Fire(Set<Position> initialPositions) {
+        this.positions = initialPositions;
+    }
+
+    public Set<Position> getPositions() {
+        return positions;
+    }
+
+    public List<Position> spread(Set<Position> neighbors) {
+        // Logique de propagation de l'incendie
+        List<Position> newFirePositions = new ArrayList<>(neighbors);
+        positions.addAll(newFirePositions);
+        return newFirePositions;
+    }
+
+    public void extinguish(Position position) {
+        positions.remove(position);
+    }}
\ No newline at end of file
diff --git a/src/main/java/model/Firefighter.java b/src/main/java/model/Firefighter.java
new file mode 100644
index 0000000000000000000000000000000000000000..70237fbdafd860dd9e5fab78c3da0754fc9f34da
--- /dev/null
+++ b/src/main/java/model/Firefighter.java
@@ -0,0 +1,37 @@
+package model;
+
+import util.Position;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import model.TargetStrategy;
+
+public class Firefighter {
+    private List<Position> positions;
+    private TargetStrategy targetStrategy;
+
+    public Firefighter(List<Position> initialPositions, TargetStrategy targetStrategy) {
+        this.positions = initialPositions;
+        this.targetStrategy = targetStrategy;
+    }
+
+    public List<Position> moveToClosestFire(Set<Position> firePositions, Map<Position, List<Position>> neighbors) {
+        List<Position> modifiedPositions = new ArrayList<>();
+        List<Position> newPositions = new ArrayList<>();
+
+        for (Position position : positions) {
+            Position newPosition = targetStrategy.neighborClosestToFire(position, firePositions, neighbors);
+            newPositions.add(newPosition);
+            modifiedPositions.add(position);
+            modifiedPositions.add(newPosition);
+        }
+        this.positions = newPositions;
+        return modifiedPositions;
+    }
+
+    public List<Position> getPositions() {
+        return positions;
+    }
+}
\ No newline at end of file