diff --git a/Main.java b/Main.java
index 1cda837..2dda730 100644
--- a/Main.java
+++ b/Main.java
@@ -34,15 +34,21 @@ public class Main
         printBaum(baum.getLeft());
         printBaum(baum.getRight());
     }
-    
-    
-    
+
     public static void codes(String text)
     {
         Node wurzel = Node.erstellen(Zählen.countEachLetter(text));
         HashMap<Character, String> codes = new HashMap<Character, String>();
-        generieren(codes,wurzel,"");
-
+        
+        if(wurzel.getLeft() == null && wurzel.getRight() == null)
+        {
+            codes.put(wurzel.getBuchstabe(), "0");
+        }
+        else
+        {
+            generieren(codes,wurzel,"");
+        }
+        
         for (var entry : codes.entrySet()) 
         {
             System.out.println("->" + entry.getKey() + ", Code: " + entry.getValue());
@@ -89,25 +95,34 @@ public class Main
         Node current = baum;
         String decoded = "";
         
+        boolean hatNurEinBuchstabenart = current.getRight() == null && current.getLeft() == null;
+        if(hatNurEinBuchstabenart)
+        {
+            for(int i=0;i<code.length();i++)
+            {
+                decoded += baum.getBuchstabe();
+            }
+            System.out.println(decoded);
+            return decoded;
+            
+        }
+        
+        
         for(int i =0;i<code.length();i++)
         {
-            printBaum(current);
-            System.out.println();
-            
+            if(code.charAt(i) == '1')
+            {
+                current= current.getRight();
+            }
+            if(code.charAt(i) == '0')
+            {
+                current = current.getLeft();
+            }
             if(current.getRight() == null && current.getLeft() == null)
             {
                 decoded += current.getBuchstabe();
                 current = baum;
             }
-            
-            if(code.charAt(i) == '1')
-            {
-                current= baum.getRight();
-            }
-            if(code.charAt(i) == '0')
-            {
-                current = baum.getLeft();
-            }
         }
         System.out.println(decoded);
         return decoded;
diff --git a/Node.java b/Node.java
index 4d8f772..79604fc 100644
--- a/Node.java
+++ b/Node.java
@@ -47,6 +47,8 @@ public class Node
             node.setBuchstabe(entry.getKey());
             nodes.add(node);
         }
+        
+        
 
         while (nodes.size() > 1)
         {