diff --git a/.aider.chat.history.md b/.aider.chat.history.md
index 746890cf3e7d9442070a55f97e2ca1ee67d2353f..94722ea64ccca91980b737e4ff3d184620cbbd22 100644
--- a/.aider.chat.history.md
+++ b/.aider.chat.history.md
@@ -9964,3 +9964,114 @@ This JSON object represents a commit message with a type of "feat" and a descrip
 >  
 >  
 > ^C again to exit  
+
+#### Update the Unittest.py and implement a new test for the singelton pattern from mars.py  
+
+Ich werde einen neuen Test für das Singleton-Pattern der Mars-Klasse hinzufügen. Dieser Test sollte überprüfen, ob mehrere Instanziierungen der Mars-Klasse tatsächlich die gleiche Instanz zurückgeben.
+
+Unittest.py
+```python
+<<<<<<< SEARCH
+    def test_observe_returns_empty_list(self):
+        real_plateau = Plateau(3, 3)
+        telescope = Telescope(real_plateau)
+        telescope.plateau.grid = None  # Setze das Grid auf None    
+        observed_grid = telescope.observe()
+        self.assertEqual(observed_grid, [])
+        print("Test observe_returns_empty_list erfolgreich!")
+
+
+if __name__ == '__main__':
+=======
+    def test_observe_returns_empty_list(self):
+        real_plateau = Plateau(3, 3)
+        telescope = Telescope(real_plateau)
+        telescope.plateau.grid = None  # Setze das Grid auf None    
+        observed_grid = telescope.observe()
+        self.assertEqual(observed_grid, [])
+        print("Test observe_returns_empty_list erfolgreich!")
+
+    def test_mars_singleton(self):
+        """
+        Test ob Mars wirklich als Singleton implementiert ist.
+        Überprüft ob mehrere Instanziierungen die gleiche Instanz zurückgeben.
+        """
+        plateau1 = Plateau(5, 5)
+        plateau2 = Plateau(3, 3)
+        
+        # Erstelle zwei Mars-Instanzen
+        mars1 = Mars(plateau1)
+        mars2 = Mars(plateau2)
+        
+        # Überprüfe ob es sich um die gleiche Instanz handelt
+        self.assertIs(mars1, mars2, "Mars-Instanzen sollten identisch sein (Singleton)")
+        
+        # Überprüfe ob das Plateau der ersten Instanzierung beibehalten wurde
+        self.assertEqual(mars1.plateau.width, 5)
+        self.assertEqual(mars2.plateau.width, 5)
+
+
+if __name__ == '__main__':
+>>>>>>> REPLACE
+```
+
+Dieser neue Test:
+1. Erstellt zwei verschiedene Plateaus
+2. Versucht zwei Mars-Instanzen zu erstellen
+3. Prüft ob beide Instanzen identisch sind (Singleton-Verhalten)
+4. Prüft ob das erste Plateau beibehalten wurde
+
+Führen Sie die Tests aus mit:
+```cmd
+python -m unittest Unittest.py -v
+```
+
+Der neue Test sollte das Singleton-Verhalten der Mars-Klasse bestätigen.
+
+> Tokens: 27k sent, 527 received. Cost: $0.09 message, $0.79 session.  
+> Applied edit to Unittest.py  
+> Commit 26363e3 feat: Füge einen neuen Test für das Singleton-Pattern der Mars-Klasse hinzu.  
+> python -m unittest Unittest.py -v  
+> Run shell command? (Y)es/(N)o/(D)on't ask again [Yes]: y  
+> Running python -m unittest Unittest.py -v  
+> Add command output to the chat? (Y)es/(N)o/(D)on't ask again [Yes]: y  
+> Added 66 lines of output to the chat.  
+> You can use /undo to undo and discard each aider commit.  
+
+#### can you please fix the failing test  
+
+Ich werde den fehlschlagenden Test reparieren. Der Fehler liegt darin, dass wir versuchen auf das Attribut `width` zuzugreifen, aber in der Plateau-Klasse verwenden wir stattdessen `size_x`. Hier ist die Korrektur:
+
+Unittest.py
+```python
+<<<<<<< SEARCH
+        # Überprüfe ob das Plateau der ersten Instanzierung beibehalten wurde
+        self.assertEqual(mars1.plateau.width, 5)
+        self.assertEqual(mars2.plateau.width, 5)
+=======
+        # Überprüfe ob das Plateau der ersten Instanzierung beibehalten wurde
+        self.assertEqual(mars1.plateau.size_x, 5)
+        self.assertEqual(mars2.plateau.size_x, 5)
+>>>>>>> REPLACE
+```
+
+Führen Sie die Tests erneut aus mit:
+```cmd
+python -m unittest Unittest.py -v
+```
+
+Die Tests sollten jetzt alle erfolgreich durchlaufen.
+
+> Tokens: 29k sent, 213 received. Cost: $0.09 message, $0.89 session.  
+> Applied edit to Unittest.py  
+> Commit 564a782 ```json
+{
+  "commit_message": "fix: Fehlerbehebung in der Benutzeroberfläche"
+}
+```  
+> python -m unittest Unittest.py -v  
+> Run shell command? (Y)es/(N)o/(D)on't ask again [Yes]: y  
+> Running python -m unittest Unittest.py -v  
+>  
+>  
+> ^C again to exit  
diff --git a/.aider.input.history b/.aider.input.history
index a4903fe0c4933381af3b377f5ae92d1594f97e47..b91ad8ceafe99c72bf93f4f207cdbccd7ceb24cb 100644
--- a/.aider.input.history
+++ b/.aider.input.history
@@ -870,3 +870,30 @@
 
 # 2025-05-24 19:36:45.317709
 +es schagen immernoch 2 tests fehl, behebe diese 2 fehler
+
+# 2025-05-25 22:37:15.510250
++Update the Unittest.py and implement a new test for the singelton pattern from mars.py
+
+# 2025-05-25 22:37:32.464521
++y
+
+# 2025-05-25 22:37:32.472589
++/run python -m unittest Unittest.py -v
+
+# 2025-05-25 22:37:32.472589
++/run python -m unittest Unittest.py -v
+
+# 2025-05-25 22:43:57.989623
++y
+
+# 2025-05-25 22:44:10.449294
++can you please fix the failing test
+
+# 2025-05-25 22:44:26.378899
++y
+
+# 2025-05-25 22:44:26.386728
++/run python -m unittest Unittest.py -v
+
+# 2025-05-25 22:44:26.386728
++/run python -m unittest Unittest.py -v
diff --git a/Unittest.py b/Unittest.py
index 3b644e55a980aa7ceefc92b9ba20866486d504c1..dcd13ff6b7946143cc92ab844dcd300e803a2df6 100644
--- a/Unittest.py
+++ b/Unittest.py
@@ -318,6 +318,25 @@ class TestRoverMovment(unittest.TestCase):
         self.assertEqual(observed_grid, [])
         print("Test observe_returns_empty_list erfolgreich!")
 
+    def test_mars_singleton(self):
+        """
+        Test ob Mars wirklich als Singleton implementiert ist.
+        Überprüft ob mehrere Instanziierungen die gleiche Instanz zurückgeben.
+        """
+        plateau1 = Plateau(5, 5)
+        plateau2 = Plateau(3, 3)
+        
+        # Erstelle zwei Mars-Instanzen
+        mars1 = Mars(plateau1)
+        mars2 = Mars(plateau2)
+        
+        # Überprüfe ob es sich um die gleiche Instanz handelt
+        self.assertIs(mars1, mars2, "Mars-Instanzen sollten identisch sein (Singleton)")
+        
+        # Überprüfe ob das Plateau der ersten Instanzierung beibehalten wurde
+        self.assertEqual(mars1.plateau.size_x, 5)
+        self.assertEqual(mars2.plateau.size_x, 5)
+
 
 if __name__ == '__main__':
     unittest.main()
diff --git a/__pycache__/Unittest.cpython-312.pyc b/__pycache__/Unittest.cpython-312.pyc
index f33339448a8d7fc3bd69b3d71874450576363de6..1af38f4749fd023e053cce54075d26c16a174b37 100644
Binary files a/__pycache__/Unittest.cpython-312.pyc and b/__pycache__/Unittest.cpython-312.pyc differ
diff --git a/__pycache__/mars.cpython-312.pyc b/__pycache__/mars.cpython-312.pyc
index 35b6b396562a5a22ce1cad19b74e24da8df6e352..9b09376962bc66dccec427b8dd8137356eef0c80 100644
Binary files a/__pycache__/mars.cpython-312.pyc and b/__pycache__/mars.cpython-312.pyc differ