diff --git a/aufgabe3/freq_dict.py b/aufgabe3/freq_dict.py
index de9ccf6c6ab8f752ab31ec3191144d9389d2db93..ba9e0eecdabc09a72e8816407fdebdbf99549203 100755
--- a/aufgabe3/freq_dict.py
+++ b/aufgabe3/freq_dict.py
@@ -1,5 +1,39 @@
 #!/usr/bin/env python3
 
+import collections
+
+def create_freq_dict(tokens):
+
+    freq_dict = {}
+
+    for token in tokens:
+        if not token in freq_dict.keys():
+            freq_dict[token] = 1
+        else:
+            freq_dict[token] += 1
+
+    return freq_dict
+
+def sort_freq(fd, verbose=True, descending=True):
+
+    sorted_keys = sorted(fd, key=fd.get, reverse=descending)
+    sorted_list = list()
+
+    for k in sorted_keys:
+        sorted_list.append((k, fd[k]))
+
+        if verbose:
+            print(sorted_list)
+
+def can_write_string(want, have):
+
+        fd_want = collections.Counter(want)
+        fd_have = collections.Counter(have)
+        for k, v in fd_want.items():
+            if v > fd_have[k]:
+                return False
+
+        return True
 
 def sanitize(string):
 
@@ -17,7 +51,9 @@ def main():
         tokens = sanitize(content).split()
 
         try:
-            create_freq_dict(tokens)
+            a = create_freq_dict(tokens)
+            sort_freq(a, verbose=False)
+            #print(can_write_string('foo', 'oh california'))
         except Exception as e:
             print("Error while calling function:")
             print(e)