diff --git a/.gradle/8.10.2/executionHistory/executionHistory.bin b/.gradle/8.10.2/executionHistory/executionHistory.bin
index c2c1a8d7c31fc61d3bc769c5b59b9c1b73bf8111..3d10d841a99272782ddf282c4b0b29cb55371420 100644
Binary files a/.gradle/8.10.2/executionHistory/executionHistory.bin and b/.gradle/8.10.2/executionHistory/executionHistory.bin differ
diff --git a/.gradle/8.10.2/executionHistory/executionHistory.lock b/.gradle/8.10.2/executionHistory/executionHistory.lock
index 747eec4f7100b3f5a1ba035749a032f07e14a96c..d462db45c4d7c86d8dede5dd9486e44dd8f78e98 100644
Binary files a/.gradle/8.10.2/executionHistory/executionHistory.lock and b/.gradle/8.10.2/executionHistory/executionHistory.lock differ
diff --git a/.gradle/8.10.2/fileHashes/fileHashes.bin b/.gradle/8.10.2/fileHashes/fileHashes.bin
index 7a1ddb364a2d65bf861ef355db3a9b7dd8a041dd..3e8d4326b4822a700794d3a64e23eb54f2571c57 100644
Binary files a/.gradle/8.10.2/fileHashes/fileHashes.bin and b/.gradle/8.10.2/fileHashes/fileHashes.bin differ
diff --git a/.gradle/8.10.2/fileHashes/fileHashes.lock b/.gradle/8.10.2/fileHashes/fileHashes.lock
index 7a739fb80125287ddcb20dca2b583a29cd2e4378..db77305cf79235e825e81164a24609e0e6a27510 100644
Binary files a/.gradle/8.10.2/fileHashes/fileHashes.lock and b/.gradle/8.10.2/fileHashes/fileHashes.lock differ
diff --git a/.gradle/8.10.2/fileHashes/resourceHashesCache.bin b/.gradle/8.10.2/fileHashes/resourceHashesCache.bin
index 6a8f1f0b0d267adfae143b2e5a4dea5df9582a81..edb634cebcfa9c75ef210f68711974592d3302de 100644
Binary files a/.gradle/8.10.2/fileHashes/resourceHashesCache.bin and b/.gradle/8.10.2/fileHashes/resourceHashesCache.bin differ
diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock
index 0a67f955cb299cb61c8a86cdfd23471d339f7746..97aa507909944c5e6a8483e7ca506d18bff5e745 100644
Binary files a/.gradle/buildOutputCleanup/buildOutputCleanup.lock and b/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ
diff --git a/.gradle/file-system.probe b/.gradle/file-system.probe
index 792688fb82fda3818c7c298bd6b450d1187332ce..03c0d8421f990ae962b0bc7ae603ecef67a88649 100644
Binary files a/.gradle/file-system.probe and b/.gradle/file-system.probe differ
diff --git a/build/classes/java/main/controller/Controller.class b/build/classes/java/main/controller/Controller.class
index e2208ff57eb1732291ab47e26e4e73038fd3ede1..6a04f4e1dcb90af98351b81bb8c0a5fe71e3561a 100644
Binary files a/build/classes/java/main/controller/Controller.class and b/build/classes/java/main/controller/Controller.class differ
diff --git a/build/classes/java/main/model/Behavior.class b/build/classes/java/main/model/Behavior.class
index c897b796de06d6cd168542456f55c6b6c5c870e3..d86121cbe423c6d1029c44d360bbf96c1d64988d 100644
Binary files a/build/classes/java/main/model/Behavior.class and b/build/classes/java/main/model/Behavior.class differ
diff --git a/build/classes/java/main/model/Cloud.class b/build/classes/java/main/model/Cloud.class
new file mode 100644
index 0000000000000000000000000000000000000000..156cea833bbe8aa84054ee652a14bcc4cb4dd6af
Binary files /dev/null and b/build/classes/java/main/model/Cloud.class differ
diff --git a/build/classes/java/main/model/CloudBehavior.class b/build/classes/java/main/model/CloudBehavior.class
new file mode 100644
index 0000000000000000000000000000000000000000..1abcacc1dbe2ee98e7ace5ae399d9f2cc8a1f621
Binary files /dev/null and b/build/classes/java/main/model/CloudBehavior.class differ
diff --git a/build/classes/java/main/model/FFBoard.class b/build/classes/java/main/model/FFBoard.class
index f57c1a9057f799b0def008417b2bd77d2256259d..36e503aaff8943f07c8ce851dbb75ec7b49a47fd 100644
Binary files a/build/classes/java/main/model/FFBoard.class and b/build/classes/java/main/model/FFBoard.class differ
diff --git a/build/classes/java/main/model/FirefighterBehavior.class b/build/classes/java/main/model/FirefighterBehavior.class
index 172fa9bf5ea653a0aab02f70a8f0018ef474b98d..4fe3de1c4aa61d2e8673433518ea2ca897113584 100644
Binary files a/build/classes/java/main/model/FirefighterBehavior.class and b/build/classes/java/main/model/FirefighterBehavior.class differ
diff --git a/build/classes/java/main/model/Mountain.class b/build/classes/java/main/model/Mountain.class
new file mode 100644
index 0000000000000000000000000000000000000000..d03d1d321fde0d670495882678f21db6b4ca2e15
Binary files /dev/null and b/build/classes/java/main/model/Mountain.class differ
diff --git a/build/classes/java/main/model/NoBehavior.class b/build/classes/java/main/model/NoBehavior.class
new file mode 100644
index 0000000000000000000000000000000000000000..e135fb71734fca1d064d5780df7d8300728f0d2e
Binary files /dev/null and b/build/classes/java/main/model/NoBehavior.class differ
diff --git a/build/classes/java/main/model/RemoverBehavior.class b/build/classes/java/main/model/RemoverBehavior.class
new file mode 100644
index 0000000000000000000000000000000000000000..2e8e64a409aef234ab281df7163aa7559ce659e0
Binary files /dev/null and b/build/classes/java/main/model/RemoverBehavior.class differ
diff --git a/build/classes/java/main/util/TargetStrategy.class b/build/classes/java/main/util/TargetStrategy.class
new file mode 100644
index 0000000000000000000000000000000000000000..91ebbd6ca418ec914ccf852cf42b85aa1df23be1
Binary files /dev/null and b/build/classes/java/main/util/TargetStrategy.class differ
diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/Cloud.class.uniqueId0 b/build/tmp/compileJava/compileTransaction/stash-dir/Cloud.class.uniqueId0
new file mode 100644
index 0000000000000000000000000000000000000000..156cea833bbe8aa84054ee652a14bcc4cb4dd6af
Binary files /dev/null and b/build/tmp/compileJava/compileTransaction/stash-dir/Cloud.class.uniqueId0 differ
diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/CloudBehavior.class.uniqueId1 b/build/tmp/compileJava/compileTransaction/stash-dir/CloudBehavior.class.uniqueId1
new file mode 100644
index 0000000000000000000000000000000000000000..3ad38aa3bff7463d78172a67ea3690988776ca78
Binary files /dev/null and b/build/tmp/compileJava/compileTransaction/stash-dir/CloudBehavior.class.uniqueId1 differ
diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin
index ae916a368146158e57dab4511ee930cbb133e667..adfdf01ff14dd739f86daea19c6ec049490b0f9f 100644
Binary files a/build/tmp/compileJava/previous-compilation-data.bin and b/build/tmp/compileJava/previous-compilation-data.bin differ
diff --git a/model(complex).png b/model(complex).png
new file mode 100644
index 0000000000000000000000000000000000000000..e328c4a535f8f0dcaee76c2c38c934a55c35a55c
Binary files /dev/null and b/model(complex).png differ
diff --git a/model(simple).png b/model(simple).png
new file mode 100644
index 0000000000000000000000000000000000000000..68f7e8dce0727b2d67d8dc89b4cfe366d4ac9201
Binary files /dev/null and b/model(simple).png differ
diff --git a/src/main/java/controller/Controller.java b/src/main/java/controller/Controller.java
index b6813ffe3f958a814654f7c931fb4a9953438e15..ed7b402790efacbd667f72231d2da851095f4621 100644
--- a/src/main/java/controller/Controller.java
+++ b/src/main/java/controller/Controller.java
@@ -96,22 +96,14 @@ public class Controller {
       for(int row = 0; row < rowCount; row++)
         viewElements[row][column] = getViewElement(board.getState(new Position(row, column)));
     grid.repaint(viewElements);
-    System.out.println(toString(viewElements));
     updateGenerationLabel(board.stepNumber());
   }
 
   private ViewElement getViewElement(List<ModelElement> squareState) {
-    if (squareState.contains(ModelElement.FIRE)){
-    return ViewElement.FIRE;
-  }
-    if(squareState.contains(ModelElement.FIREFIGHTER)){
-      return ViewElement.FIREFIGHTER;
-    }
-    if(squareState.contains(ModelElement.CLOUD)){
-      return ViewElement.CLOUD;
-    }
-    if (squareState.contains(ModelElement.MOUNTAIN)){
-      return ViewElement.MOUNTAIN;
+    for (ModelElement element:ModelElement.values()) {
+        if (squareState.contains(element)){
+        return ViewElement.values()[element.ordinal()];
+      }
     }
     return ViewElement.EMPTY;
   }
diff --git a/src/main/java/model/Behavior.java b/src/main/java/model/Behavior.java
index d6e2a1b6031e3603656d741cb1ae53336351ec34..3e5c114d47d48d52f59228ea86b0ba1e53ca5068 100644
--- a/src/main/java/model/Behavior.java
+++ b/src/main/java/model/Behavior.java
@@ -3,10 +3,9 @@ package model;
 import util.Position;
 
 import java.util.List;
+import java.util.Map;
 
 public interface Behavior {
     public List<Position> getNext(BoardData boardData);
-    public default Boolean isLegalMove(){
-        return true;
-    }
-}
+    public Map<Position,List<Position>> legalNeighbors(BoardData boardData);
+}
\ No newline at end of file
diff --git a/src/main/java/model/CloudBehavior.java b/src/main/java/model/CloudBehavior.java
index 5efbc14edcf77685b579eab99609ec17ff10fbd6..44636179318b1351c678d13f4b471b872cb109d1 100644
--- a/src/main/java/model/CloudBehavior.java
+++ b/src/main/java/model/CloudBehavior.java
@@ -6,12 +6,11 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Random;
 
-public class CloudBehavior implements RemoverBehavior<ModelElement> {
-    private ModelElement element;
-    private ModelElement removedElement=ModelElement.FIRE;
-    private Random random=new Random();
+public class CloudBehavior extends FFBehavior implements RemoverBehavior<ModelElement> {
+    private final ModelElement removedElement=ModelElement.FIRE;
+    private final Random random=new Random();
     public CloudBehavior(ModelElement modelElement) {
-        this.element=modelElement;
+        super(ModelElement.CLOUD);
     }
 
     @Override
diff --git a/src/main/java/model/FFBehavior.java b/src/main/java/model/FFBehavior.java
index 90d3d7c8bf6a60b3c2d6b07d649ebe4f363dd39f..d8abbdf1c7949e25e89e243b03e2be34af33f0db 100644
--- a/src/main/java/model/FFBehavior.java
+++ b/src/main/java/model/FFBehavior.java
@@ -1,11 +1,24 @@
 package model;
 
+import util.Position;
+
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 public abstract class FFBehavior implements Behavior {
     public ModelElement element;
     public FFBehavior(ModelElement element) {
         this.element = element;
     }
-}
+
+    @Override
+    public Map<Position, List<Position>> legalNeighbors(BoardData boardData) {
+        Map<Position,List<Position>> neighbors=new HashMap<>();
+        for (Map.Entry<Position,List<Position>> entry: boardData.getNeighbors().entrySet()) {
+                neighbors.put(entry.getKey(),new ArrayList<Position>(List.copyOf(entry.getValue())));
+        }
+        return neighbors;
+    }
+}
\ No newline at end of file
diff --git a/src/main/java/model/FFBoard.java b/src/main/java/model/FFBoard.java
index 261e4b08f9f281536ef683701f8f54b23f8f8ddb..5f143a5bab00577b83a0d40fabb4c8149337d157 100644
--- a/src/main/java/model/FFBoard.java
+++ b/src/main/java/model/FFBoard.java
@@ -45,10 +45,13 @@ public class FFBoard implements Board<List<ModelElement>> {
     FFUpdater= new FFUpdater();
     for (int index = 0; index < initialFireCount; index++)
       boardData.getPositions().get(ModelElement.FIRE.ordinal()).add(randomPosition());
-    //for (int index = 0; index < initialFireCount; index++)
-      //boardData.getPositions().get(ModelElement.CLOUD.ordinal()).add(randomPosition());
-    for (int index = 0; index < initialFirefighterCount; index++)
+     for (int index = 0; index < initialFirefighterCount; index++)
       boardData.getPositions().get(ModelElement.FIREFIGHTER.ordinal()).add(randomPosition());
+    for (int index = 0; index < 10; index++)
+      boardData.getPositions().get(ModelElement.CLOUD.ordinal()).add(randomPosition());
+    for (int index = 0; index < 50; index++)
+      boardData.getPositions().get(ModelElement.MOUNTAIN.ordinal()).add(randomPosition());
+
   }
 
   private Position randomPosition() {
@@ -57,18 +60,12 @@ public class FFBoard implements Board<List<ModelElement>> {
 
   @Override
   public List<ModelElement> getState(Position position) {
-    List<Position> firefighterPositions=boardData.getPositions().get(ModelElement.FIREFIGHTER.ordinal());
-    List<Position> cloudPositions=boardData.getPositions().get(ModelElement.CLOUD.ordinal());
-    List<Position> firePositions =boardData.getPositions().get(ModelElement.FIRE.ordinal());
     List<ModelElement> result = new ArrayList<>();
-    for (Position firefighterPosition : firefighterPositions)
-      if (firefighterPosition.equals(position))
-        result.add(ModelElement.FIREFIGHTER);
-    for (Position cloudPosition : cloudPositions)
-      if (cloudPosition.equals(position))
-        result.add(ModelElement.CLOUD);
-    if (firePositions.contains(position))
-      result.add(ModelElement.FIRE);
+    for (ModelElement e:ModelElement.values()) {
+      for (Position p : boardData.getPositions().get(e.ordinal()))
+        if (p.equals(position))
+          result.add(e);
+    }
     return result;
   }
 
@@ -83,10 +80,6 @@ public class FFBoard implements Board<List<ModelElement>> {
   }
 
   public List<Position> updateToNextGeneration() {
-    /*List<Position> modifiedPositions = updateFirefighters();
-    modifiedPositions.addAll(updateFires());
-    boardData.setStep(boardData.getStep()+1);
-    return modifiedPositions;*/
 
     List<Position> modifiedPositions = FFUpdater.updateAll(boardData);
     boardData.setStep(boardData.getStep()+1);
@@ -99,8 +92,8 @@ public class FFBoard implements Board<List<ModelElement>> {
     return boardData.getStep();
   }
 
-  private List<Position> updateFirefighters() {
-    List<Position> modifiedPosition = new ArrayList<>();/*
+  /*private List<Position> updateFirefighters() {
+    List<Position> modifiedPosition = new ArrayList<>();
     List<Position> firefighterPositions = boardData.getPositions().get(ModelElement.FIREFIGHTER.ordinal());
     List<Position> firePositions = boardData.getPositions().get(ModelElement.FIRE.ordinal());
     List<Position> firefighterNewPositions = new ArrayList<>();
@@ -118,9 +111,9 @@ public class FFBoard implements Board<List<ModelElement>> {
         extinguish(firePosition);
       modifiedPosition.addAll(neighborFirePositions);
     }
-    firefighterPositions = firefighterNewPositions;*/
+    firefighterPositions = firefighterNewPositions;
     return modifiedPosition;
-  }
+  }*/
 
   @Override
   public void reset() {
@@ -130,7 +123,7 @@ public class FFBoard implements Board<List<ModelElement>> {
 
   @Override
   public void setState(List<ModelElement> state, Position position) {
-    for (ModelElement e:state) {
+    for (ModelElement e:ModelElement.values()) {
         boardData.getPositions().get(e.ordinal()).remove(position);
     }
     for (ModelElement e:state) {
diff --git a/src/main/java/model/FFUpdater.java b/src/main/java/model/FFUpdater.java
index 8710d56ade74658b18644eab181fd9cc4f95064f..7760f02d35b84da4b3c7ed50fac246352c8436d5 100644
--- a/src/main/java/model/FFUpdater.java
+++ b/src/main/java/model/FFUpdater.java
@@ -20,7 +20,6 @@ public class FFUpdater implements Updater {
         List<Position> modifiedList=new ArrayList<Position>();
         for (int i = 0; i < ModelElement.values().length; i++) {
             modifiedList=this.elements[i].Update(boardData,modifiedList);
-            System.out.println(modifiedList.toString());
         }
         return modifiedList;
     }
diff --git a/src/main/java/model/FireBehavior.java b/src/main/java/model/FireBehavior.java
index dce1e0e7072ab8ec097c6071130032c5ed2884c9..2fe93b5b4b149551abde263395926b9b430a790b 100644
--- a/src/main/java/model/FireBehavior.java
+++ b/src/main/java/model/FireBehavior.java
@@ -4,9 +4,10 @@ import util.Position;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 
-public class FireBehavior extends FFBehavior {
-
+public class FireBehavior extends FFBehavior implements TangibleBehavior<ModelElement> {
+    private List<ModelElement> obstacles=List.of(ModelElement.MOUNTAIN);
 
     public FireBehavior(ModelElement element) {
         super(element);
@@ -18,7 +19,7 @@ public class FireBehavior extends FFBehavior {
         List<Position> newFirePositions = new ArrayList<>();
         if (boardData.getStep() % 2 == 0) {
             for (Position fire : firePositions) {
-                for (Position neighbor:boardData.getNeighbors().get(fire)) {
+                for (Position neighbor:legalNeighbors(boardData).get(fire)) {
                 if (!newFirePositions.contains(neighbor))
                     newFirePositions.add(neighbor);
                 }
@@ -26,4 +27,20 @@ public class FireBehavior extends FFBehavior {
         }
         return newFirePositions;
     }
+
+    @Override
+    public List<ModelElement> getObstacles() {
+        return obstacles;
+    }
+
+    @Override
+    public Map<Position, List<Position>> legalNeighbors(BoardData boardData) {
+        Map<Position,List<Position>> neigbors= super.legalNeighbors(boardData);
+        for (Map.Entry<Position,List<Position>> entry: neigbors.entrySet()) {
+            for (ModelElement e:getObstacles()) {
+                entry.getValue().removeAll(boardData.getPositions().get(e.ordinal()));
+            }
+        }
+        return neigbors;
+    }
 }
diff --git a/src/main/java/model/FirefighterBehavior.java b/src/main/java/model/FirefighterBehavior.java
index 1c99215c0ef9717afc719af171426f2d8fe2e2c3..ca3fe1a519dc11e899a0487fbdd801a280880886 100644
--- a/src/main/java/model/FirefighterBehavior.java
+++ b/src/main/java/model/FirefighterBehavior.java
@@ -3,12 +3,10 @@ package model;
 import util.Position;
 import util.TargetStrategy;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.ListIterator;
+import java.util.*;
 
 public class FirefighterBehavior extends FFBehavior implements TangibleBehavior<ModelElement>,RemoverBehavior<ModelElement> {
-    List<ModelElement> obstacles=new ArrayList<>(List.of(ModelElement.MOUNTAIN));
+    List<ModelElement> obstacles=List.of(ModelElement.MOUNTAIN);
     ModelElement removedElement=ModelElement.FIRE;
     TargetStrategy targetStrategy=new TargetStrategy();
 
@@ -22,8 +20,9 @@ public class FirefighterBehavior extends FFBehavior implements TangibleBehavior<
         List<Position> firefighterPositions = boardData.getPositions().get(element.ordinal());
         List<Position> firePositions = new ArrayList<>(List.copyOf(boardData.getPositions().get(ModelElement.FIRE.ordinal())));
         List<Position> firefighterNewPositions = new ArrayList<>();
+        Map<Position,List<Position>> neigbours=legalNeighbors(boardData);
         for (Position firefighterPosition : firefighterPositions) {
-            Position newFirefighterPosition = targetStrategy.neighborClosestToFire(firefighterPosition,firePositions, boardData.getNeighbors());
+            Position newFirefighterPosition = targetStrategy.neighborClosestToFire(firefighterPosition,firePositions, neigbours);
             firefighterNewPositions.add(newFirefighterPosition);
             firePositions.remove(newFirefighterPosition);
             firePositions.remove(boardData.getNeighbors().get(newFirefighterPosition));
@@ -40,10 +39,6 @@ public class FirefighterBehavior extends FFBehavior implements TangibleBehavior<
         return neighborFirePositions;
     }
 
-    @Override
-    public Boolean isLegalMove() {
-        return super.isLegalMove();
-    }
 
     @Override
     public List<ModelElement> getObstacles() {
@@ -56,6 +51,17 @@ public class FirefighterBehavior extends FFBehavior implements TangibleBehavior<
         firePositions.remove(p);
     }
 
+    @Override
+    public Map<Position, List<Position>> legalNeighbors(BoardData boardData) {
+        Map<Position,List<Position>> neigbours= Map.copyOf(super.legalNeighbors(boardData));
+        for (Map.Entry<Position,List<Position>> entry: neigbours.entrySet()) {
+            for (ModelElement e:getObstacles()) {
+                entry.getValue().removeAll(boardData.getPositions().get(e.ordinal()));
+            }
+        }
+        return neigbours;
+    }
+
     @Override
     public ModelElement getElementToRemove() {
         return removedElement;
diff --git a/src/main/java/model/ModelElement.java b/src/main/java/model/ModelElement.java
index cb200e5f0412f99ef80ab8f5ef5ecc280966565c..3b1ee918593447f552b5ef951020e1f0ac2c44da 100644
--- a/src/main/java/model/ModelElement.java
+++ b/src/main/java/model/ModelElement.java
@@ -3,6 +3,8 @@ package model;
 import java.lang.reflect.InvocationTargetException;
 
 public enum ModelElement {
+
+
   FIREFIGHTER(StandardFirefighter.class),
   FIRE(Fire.class),
   CLOUD(Cloud.class),
diff --git a/src/main/java/model/RemoverBehavior.java b/src/main/java/model/RemoverBehavior.java
index d148013dc74ebaf511fdab021964d5ce5d6a32a0..0c3e3c2a417138a5d67a3b9aee027a4dee92cb74 100644
--- a/src/main/java/model/RemoverBehavior.java
+++ b/src/main/java/model/RemoverBehavior.java
@@ -7,6 +7,5 @@ import java.util.List;
 public interface RemoverBehavior<E> extends Behavior {
     public void removePartial(BoardData boardData,Position p);
     public  List<Position> remove(BoardData boardData,Position p);
-
     public E getElementToRemove();
 }
diff --git a/src/main/java/model/StandardFirefighter.java b/src/main/java/model/StandardFirefighter.java
index 82ef1e6430b91d818f264764e8bb3e074c99c36d..86855259ed4d067a3e93df17df02483770fb9c48 100644
--- a/src/main/java/model/StandardFirefighter.java
+++ b/src/main/java/model/StandardFirefighter.java
@@ -17,14 +17,6 @@ public class StandardFirefighter extends Element {
 
     @Override
     public List<Position> Update(BoardData boardData, List<Position> modifiedPositions) {
-        /*
-        List<Position> firefighterPositions = boardData.getPositions().get(ModelElement.FIREFIGHTER.ordinal());
-        List<Position> firePositions = boardData.getPositions().get(ModelElement.FIRE.ordinal());
-        modifiedList =behavior.getNext(boardData,modifiedList);
-        firePositions.removeAll(modifiedList);
-        firefighterPositions.removeAll(modifiedList);
-        firePositions.addAll(modifiedList);
-        return modifiedList;*/
         List<Position> firefighterPositions = boardData.getPositions().get(type.ordinal());
         List<Position> firefighterNewPositions = behavior.getNext(boardData);
         List<Position> neighborFirePositions = new ArrayList<>();
diff --git a/src/main/java/model/TangibleBehavior.java b/src/main/java/model/TangibleBehavior.java
index 7abcfbf0906602690c21eb42a045ed7ae8d0a5ea..73aba905b5cf7a5bae2323b449ca7e01978a89cf 100644
--- a/src/main/java/model/TangibleBehavior.java
+++ b/src/main/java/model/TangibleBehavior.java
@@ -1,7 +1,10 @@
 package model;
 
+import util.Position;
+
 import java.util.List;
 
 public interface TangibleBehavior<E> extends Behavior {
     public List<E> getObstacles();
+
 }