diff --git a/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2 b/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2
index c7d9b5ab9fa7b10480d3168f6454f86923ab68f3..bee1c5bdc8dee421f32307a0e19ea806f3c66819 100644
Binary files a/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2 and b/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2 differ
diff --git a/.vs/prog2-ss2020-wienkop/v16/.suo b/.vs/prog2-ss2020-wienkop/v16/.suo
index d8db7970dab549e77c40556899ee32b34d1a72e1..7b93ab37885499bb4f546507ed84667a745085f7 100644
Binary files a/.vs/prog2-ss2020-wienkop/v16/.suo and b/.vs/prog2-ss2020-wienkop/v16/.suo differ
diff --git a/01Buergeramt-Di/obj/Debug/netcoreapp3.1/01Uebg_Buergeramt-Di.csprojAssemblyReference.cache b/01Buergeramt-Di/obj/Debug/netcoreapp3.1/01Uebg_Buergeramt-Di.csprojAssemblyReference.cache
index a0fbfd12797557adefa2aaaacd9d5126dec64303..e23245258eaf6b6145a13830bacb66ca8fd7c885 100644
Binary files a/01Buergeramt-Di/obj/Debug/netcoreapp3.1/01Uebg_Buergeramt-Di.csprojAssemblyReference.cache and b/01Buergeramt-Di/obj/Debug/netcoreapp3.1/01Uebg_Buergeramt-Di.csprojAssemblyReference.cache differ
diff --git a/01Indexer/obj/Debug/netcoreapp3.1/01Indexer.csprojAssemblyReference.cache b/01Indexer/obj/Debug/netcoreapp3.1/01Indexer.csprojAssemblyReference.cache
index 2e2e4cd48ef53623d9b1b2ede269e8059601fa08..09f733cba816ea75758c5185c8e79a12110d4074 100644
Binary files a/01Indexer/obj/Debug/netcoreapp3.1/01Indexer.csprojAssemblyReference.cache and b/01Indexer/obj/Debug/netcoreapp3.1/01Indexer.csprojAssemblyReference.cache differ
diff --git a/01KlassenWiederholung/obj/Debug/netcoreapp3.1/01KlassenWiederholung.csprojAssemblyReference.cache b/01KlassenWiederholung/obj/Debug/netcoreapp3.1/01KlassenWiederholung.csprojAssemblyReference.cache
index cf534861a3640f8554f9ce25bfe11127debf486c..b5214f35120e32e54563c1c022ea640ba350567a 100644
Binary files a/01KlassenWiederholung/obj/Debug/netcoreapp3.1/01KlassenWiederholung.csprojAssemblyReference.cache and b/01KlassenWiederholung/obj/Debug/netcoreapp3.1/01KlassenWiederholung.csprojAssemblyReference.cache differ
diff --git a/01OperatorOverloading/obj/Debug/netcoreapp3.1/01OperatorOverloading.csprojAssemblyReference.cache b/01OperatorOverloading/obj/Debug/netcoreapp3.1/01OperatorOverloading.csprojAssemblyReference.cache
index 4604200e8108358ecfd89e86f2787c9523eed2ff..ed51084113c37d43a99e791dd0a169f2b0c6b55a 100644
Binary files a/01OperatorOverloading/obj/Debug/netcoreapp3.1/01OperatorOverloading.csprojAssemblyReference.cache and b/01OperatorOverloading/obj/Debug/netcoreapp3.1/01OperatorOverloading.csprojAssemblyReference.cache differ
diff --git a/02 UebgDi Klassse TimeOpOverloading/obj/Debug/netcoreapp3.1/02 UebgDi Klassse TimeOpOverloading.csprojAssemblyReference.cache b/02 UebgDi Klassse TimeOpOverloading/obj/Debug/netcoreapp3.1/02 UebgDi Klassse TimeOpOverloading.csprojAssemblyReference.cache
index 9b0e710fb7587c1bf9b43414d9232508a4786d6e..e23245258eaf6b6145a13830bacb66ca8fd7c885 100644
Binary files a/02 UebgDi Klassse TimeOpOverloading/obj/Debug/netcoreapp3.1/02 UebgDi Klassse TimeOpOverloading.csprojAssemblyReference.cache and b/02 UebgDi Klassse TimeOpOverloading/obj/Debug/netcoreapp3.1/02 UebgDi Klassse TimeOpOverloading.csprojAssemblyReference.cache differ
diff --git a/02VerketteteListe-2/Program.cs b/02VerketteteListe-2/Program.cs
index b48ff0b8a75e61d33251e7122ab29fe2b5a090b3..e02fa9d7e8a7e11f493c89af8f83454385c27c5d 100644
--- a/02VerketteteListe-2/Program.cs
+++ b/02VerketteteListe-2/Program.cs
@@ -46,6 +46,48 @@ namespace _02VerketteteListe_2
                 anf = neuesElement;
             }
         }
+        public void AddBeforeNth(int index, string name)
+        {
+            if (index < 0 || index > anz)
+                throw new ArgumentOutOfRangeException("Index außerhalb der Listengröße");
+            if (index == 0)
+                AddFront(name);
+            else if (index == anz)
+                AddEnd(name);
+            else
+            {
+                Element neu = new Element(name);
+                anz++;
+                Element item = anf;
+                for (int i = 1; i < index; i++)
+                    item = item.next;
+                neu.next = item.next;    // Die Reihenfolge dieses und des nächsten Befehls ist ENTSCHEIDEND!
+                item.next = neu;
+            }
+        }
+        public void AddSorted(string name)
+        {
+            // 1. Fall: Leere Liste oder Anfügen am Listenende
+            if (anf == null || ende.name.CompareTo(name) <= 0)
+                AddEnd(name);
+            else
+            {
+                if (name.CompareTo(anf.name) <= 0)
+                    AddFront(name);
+                else
+                {
+                    // Wir wissen: Das neue Element ist nicht das erste und nicht das letzte Element
+                    Element neu = new Element(name);
+                    anz++;
+
+                    Element item = anf;
+                    while (item.next.name.CompareTo(name) < 0)
+                        item = item.next;
+                    neu.next = item.next;
+                    item.next = neu;
+                }
+            }
+        }
         public bool Suche(string name)
         {
             for (Element item = anf; item != null; item = item.next)
@@ -72,6 +114,25 @@ namespace _02VerketteteListe_2
                                         // an der gespeicherten Pos. weitergemacht.
             }
         }
+        public IEnumerable Filter(string pattern)
+        {
+            for (Element item = anf; item != null; item = item.next)
+            {
+                if (item.name.Contains(pattern))
+                    yield return item.name; // Merken dieser Ausführungsposition
+                                            // UND Zurückliefern von item.name
+                                            // Beim nächsten Aufruf von GetEnumerator() wird
+                                            // an der gespeicherten Pos. weitergemacht.
+            }
+        }
+
+            // foreach --> GetEnumerator() merkt sich die Pos nach yield return und liefert ("Anton")
+            // item = "Anton"
+            // foreach --> GetEnumerator(), überprüft, ob noch eine Ausführungspos. gespeichert ist
+            //                  JA: --> hier geht die Ausführung weiter
+            //                          item=item.next, merkt sich die Pos nach yield return und liefert ("Berta")
+            // item = "Berta"
+            // ... bis GetEnumerator() am Methodenende angelangt ist.
         public void DeleteFirst()
         {
             // 1.Fall: Liste ist leer
@@ -145,59 +206,18 @@ namespace _02VerketteteListe_2
                 while (item.next != null && item.next.name.CompareTo(name) != 0)
                     item = item.next;
                 // Wenn gesuchtes Element in Liste vorhanden
-                if (item.next != null)
+                // item = "B"
+                if (item.next != null)  // "C"
                 {
                     anz--;
                     // Nächstes Element überspringen = löschen
-                    item.next = item.next.next;
-                    // Wenn letztes Element = gesuchtes Element
+                    item.next = item.next.next;  // item.next = null
+                    // Wenn gesuchtes Element == letztes Element:
                     if (item.next == null)
                         ende = item;
                 }
             }
         }
-        public void AddBeforeNth(int index, string name)
-        {
-            if (index < 0 || index > anz)
-                throw new ArgumentOutOfRangeException("Index außerhalb der Listengröße");
-            if (index == 0)
-                AddFront(name);
-            else if (index == anz)
-                AddEnd(name);
-            else
-            {
-                Element neu = new Element(name);
-                anz++;
-                Element item = anf;
-                for (int i = 1; i < index; i++)
-                    item = item.next;
-                neu.next = item.next;    // Die Reihenfolge dieses und des nächsten Befehls ist ENTSCHEIDEND!
-                item.next = neu;
-            }
-        }
-        public void AddSorted(string name)
-        {
-            // 1. Fall: Leere Liste oder Anfügen am Listenende
-            if (anf == null || ende.name.CompareTo(name) <= 0)
-                AddEnd(name);
-            else
-            {
-                if (name.CompareTo(anf.name) <= 0)
-                    AddFront(name);
-                else
-                {
-                    // Wir wissen: Das neue Element ist nicht das erste und nicht das letzte Element
-                    Element neu = new Element(name);
-                    anz++;
-
-                    Element item = anf;
-                    while (item.next.name.CompareTo(name) < 0)
-                        item = item.next;
-                    neu.next = item.next;
-                    item.next = neu;
-                }
-            }
-        }
         private Element NthElem(int index)
         {
             if (index < 0 || index >= anz)
@@ -229,6 +249,7 @@ namespace _02VerketteteListe_2
             l1.AddSorted("Claudia");
             l1.AddSorted("Dieter");
             l1.Print();
+            Console.WriteLine(l1[3]);
             Console.WriteLine("==================");
             //l1.DeleteFirst();
             //l1.DeleteLast();
@@ -236,6 +257,10 @@ namespace _02VerketteteListe_2
             //l1.Print();
             l1.AddBeforeNth(2, "Bodo");
             l1.Print();
+            foreach (string item in l1.Filter("er"))
+            {
+                Console.WriteLine($"foreach: {item}");
+            }
         }
     }
 }
diff --git a/02VerketteteListe-2/bin/Debug/netcoreapp3.1/02VerketteteListe-2.dll b/02VerketteteListe-2/bin/Debug/netcoreapp3.1/02VerketteteListe-2.dll
index 75f23b8711f5ec75a47be7a516cf296181a1ee6e..f82246a4263adcdb6554af4cfc6f4b20b3597a4b 100644
Binary files a/02VerketteteListe-2/bin/Debug/netcoreapp3.1/02VerketteteListe-2.dll and b/02VerketteteListe-2/bin/Debug/netcoreapp3.1/02VerketteteListe-2.dll differ
diff --git a/02VerketteteListe-2/bin/Debug/netcoreapp3.1/02VerketteteListe-2.pdb b/02VerketteteListe-2/bin/Debug/netcoreapp3.1/02VerketteteListe-2.pdb
index 95802a5290103410b11d98663597830eb04e6b13..d44804dc685170134f1f5c67cd5d428081473ed4 100644
Binary files a/02VerketteteListe-2/bin/Debug/netcoreapp3.1/02VerketteteListe-2.pdb and b/02VerketteteListe-2/bin/Debug/netcoreapp3.1/02VerketteteListe-2.pdb differ
diff --git a/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.csprojAssemblyReference.cache b/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.csprojAssemblyReference.cache
index 09f733cba816ea75758c5185c8e79a12110d4074..308f84f1bd32b1f7e1467356eb1ac40d7da08d5e 100644
Binary files a/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.csprojAssemblyReference.cache and b/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.csprojAssemblyReference.cache differ
diff --git a/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.dll b/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.dll
index 75f23b8711f5ec75a47be7a516cf296181a1ee6e..f82246a4263adcdb6554af4cfc6f4b20b3597a4b 100644
Binary files a/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.dll and b/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.dll differ
diff --git a/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.pdb b/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.pdb
index 95802a5290103410b11d98663597830eb04e6b13..d44804dc685170134f1f5c67cd5d428081473ed4 100644
Binary files a/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.pdb and b/02VerketteteListe-2/obj/Debug/netcoreapp3.1/02VerketteteListe-2.pdb differ
diff --git a/02VerketteteListe/obj/Debug/netcoreapp3.1/02VerketteteListe-1Intro.csprojAssemblyReference.cache b/02VerketteteListe/obj/Debug/netcoreapp3.1/02VerketteteListe-1Intro.csprojAssemblyReference.cache
index a0fbfd12797557adefa2aaaacd9d5126dec64303..9b0e710fb7587c1bf9b43414d9232508a4786d6e 100644
Binary files a/02VerketteteListe/obj/Debug/netcoreapp3.1/02VerketteteListe-1Intro.csprojAssemblyReference.cache and b/02VerketteteListe/obj/Debug/netcoreapp3.1/02VerketteteListe-1Intro.csprojAssemblyReference.cache differ
diff --git a/03 UebgMo FiFoListe/obj/Debug/netcoreapp3.1/03 UebgMo FiFoListe.csprojAssemblyReference.cache b/03 UebgMo FiFoListe/obj/Debug/netcoreapp3.1/03 UebgMo FiFoListe.csprojAssemblyReference.cache
index 8a5ef041ae8402be96bf3fc66b33aedfc9a2f5c5..74fe67b1ca671095970d4a7fbcae2417231e8f41 100644
Binary files a/03 UebgMo FiFoListe/obj/Debug/netcoreapp3.1/03 UebgMo FiFoListe.csprojAssemblyReference.cache and b/03 UebgMo FiFoListe/obj/Debug/netcoreapp3.1/03 UebgMo FiFoListe.csprojAssemblyReference.cache differ
diff --git a/03BinTree/03BinTree.csproj b/03BinTree/03BinTree.csproj
new file mode 100644
index 0000000000000000000000000000000000000000..862be908244ec4fd33f96560603fa8afde805283
--- /dev/null
+++ b/03BinTree/03BinTree.csproj
@@ -0,0 +1,9 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <OutputType>Exe</OutputType>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <RootNamespace>_03BinTree</RootNamespace>
+  </PropertyGroup>
+
+</Project>
diff --git a/03BinTree/Program.cs b/03BinTree/Program.cs
new file mode 100644
index 0000000000000000000000000000000000000000..713edfdeb4babe22782e806484b1fcc5d8823d2d
--- /dev/null
+++ b/03BinTree/Program.cs
@@ -0,0 +1,99 @@
+using System;
+
+namespace _03BinTree
+{
+    class BinTree
+    {
+        private class BItem
+        {
+            public int zahl;
+            public BItem kleiner = null, groesser = null;
+            public override string ToString()
+            {
+                string linksText = (kleiner == null) ? "null" : kleiner.zahl.ToString();
+                string rechtsText = (groesser == null) ? "null" : groesser.zahl.ToString();
+
+                return $"  {linksText}-{zahl}-{rechtsText}  ";
+            }
+        }
+        BItem root = null;
+
+        public void InsertItem(int Zahl)
+        {
+            BItem neu = new BItem() { zahl = Zahl };
+            if (root == null)
+                root = neu;
+            else
+            {
+                bool gefunden = false;
+                BItem lfd = root;
+                do
+                {
+                    if (Zahl < lfd.zahl)        // links oder rechts?
+                    {   // Linker Teilbaum
+                        if (lfd.kleiner == null)  // ist "links" frei?
+                        {
+                            lfd.kleiner = neu;
+                            gefunden = true;
+                        }                       // nein --> links weitersuchen
+                        else
+                            lfd = lfd.kleiner;
+                    }
+                    else
+                    {
+                        if (lfd.groesser == null)  // ist "rechts" frei?
+                        {
+                            lfd.groesser = neu;
+                            gefunden = true;
+                        }                       // nein --> rechts weitersuchen
+                        else
+                            lfd = lfd.groesser;
+                    }
+                } while (!gefunden);
+            }
+        }
+        public bool FindItem(int zahl)
+        {
+            BItem item = root;
+            while (item != null)
+            {
+                if (zahl == item.zahl)
+                    return true;
+                item = (zahl < item.zahl) ? item.kleiner : item.groesser;
+            }
+            return false;
+        }
+        private void Ausgeben(BItem lfd)
+        {
+            if (lfd != null)
+            {
+                Ausgeben(lfd.kleiner);
+                Console.Write(lfd.zahl + " ");
+                Ausgeben(lfd.groesser);
+            }
+        }
+        public void Ausgeben()
+        {
+            Ausgeben(root);
+            Console.WriteLine();
+        }
+    }
+    class Program
+    {
+        static void Main(string[] args)
+        {
+            BinTree bt = new BinTree();
+            bt.InsertItem(50);
+            bt.InsertItem(25);
+            bt.InsertItem(75);
+            bt.InsertItem(60);
+            bt.InsertItem(80);
+            bt.InsertItem(77);
+            bt.InsertItem(70);
+
+            bt.Ausgeben();
+            Console.WriteLine($"Find(77): {bt.FindItem(77)}");
+            Console.WriteLine($"Find(78): {bt.FindItem(78)}");
+        }
+    }
+}
diff --git a/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.deps.json b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.deps.json
new file mode 100644
index 0000000000000000000000000000000000000000..e375dfee1f708d07eceb519b6e4a4ece4b02f440
--- /dev/null
+++ b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.deps.json
@@ -0,0 +1,23 @@
+{
+  "runtimeTarget": {
+    "name": ".NETCoreApp,Version=v3.1",
+    "signature": ""
+  },
+  "compilationOptions": {},
+  "targets": {
+    ".NETCoreApp,Version=v3.1": {
+      "03BinTree/1.0.0": {
+        "runtime": {
+          "03BinTree.dll": {}
+        }
+      }
+    }
+  },
+  "libraries": {
+    "03BinTree/1.0.0": {
+      "type": "project",
+      "serviceable": false,
+      "sha512": ""
+    }
+  }
+}
\ No newline at end of file
diff --git a/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.dll b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.dll
new file mode 100644
index 0000000000000000000000000000000000000000..c9aeb088a148bacb66b19c6c078af78c69e1c396
Binary files /dev/null and b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.dll differ
diff --git a/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.exe b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.exe
new file mode 100644
index 0000000000000000000000000000000000000000..09b6248b1d709b4b614fb425f6c58e10f3959e9a
Binary files /dev/null and b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.exe differ
diff --git a/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.pdb b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.pdb
new file mode 100644
index 0000000000000000000000000000000000000000..16cef18a11d2c902f9349fb685ad97feb3e56794
Binary files /dev/null and b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.pdb differ
diff --git a/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.runtimeconfig.dev.json b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.runtimeconfig.dev.json
new file mode 100644
index 0000000000000000000000000000000000000000..3becea41545888f98131d88ad51766e8ddde3bce
--- /dev/null
+++ b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.runtimeconfig.dev.json
@@ -0,0 +1,8 @@
+{
+  "runtimeOptions": {
+    "additionalProbingPaths": [
+      "C:\\Users\\wienkop\\.dotnet\\store\\|arch|\\|tfm|",
+      "C:\\Users\\wienkop\\.nuget\\packages"
+    ]
+  }
+}
\ No newline at end of file
diff --git a/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.runtimeconfig.json b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.runtimeconfig.json
new file mode 100644
index 0000000000000000000000000000000000000000..bc456d7868bb54ec1809da30e339cd43f0a8a09c
--- /dev/null
+++ b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.runtimeconfig.json
@@ -0,0 +1,9 @@
+{
+  "runtimeOptions": {
+    "tfm": "netcoreapp3.1",
+    "framework": {
+      "name": "Microsoft.NETCore.App",
+      "version": "3.1.0"
+    }
+  }
+}
\ No newline at end of file
diff --git a/03BinTree/obj/03BinTree.csproj.nuget.dgspec.json b/03BinTree/obj/03BinTree.csproj.nuget.dgspec.json
new file mode 100644
index 0000000000000000000000000000000000000000..5abe0fcf2274d773f8c089d6c9b6701526d3b4f9
--- /dev/null
+++ b/03BinTree/obj/03BinTree.csproj.nuget.dgspec.json
@@ -0,0 +1,60 @@
+{
+  "format": 1,
+  "restore": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03BinTree\\03BinTree.csproj": {}
+  },
+  "projects": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03BinTree\\03BinTree.csproj": {
+      "version": "1.0.0",
+      "restore": {
+        "projectUniqueName": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03BinTree\\03BinTree.csproj",
+        "projectName": "03BinTree",
+        "projectPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03BinTree\\03BinTree.csproj",
+        "packagesPath": "C:\\Users\\wienkop\\.nuget\\packages\\",
+        "outputPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03BinTree\\obj\\",
+        "projectStyle": "PackageReference",
+        "configFilePaths": [
+          "C:\\Users\\wienkop\\AppData\\Roaming\\NuGet\\NuGet.Config",
+          "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
+        ],
+        "originalTargetFrameworks": [
+          "netcoreapp3.1"
+        ],
+        "sources": {
+          "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
+          "https://api.nuget.org/v3/index.json": {}
+        },
+        "frameworks": {
+          "netcoreapp3.1": {
+            "projectReferences": {}
+          }
+        },
+        "warningProperties": {
+          "warnAsError": [
+            "NU1605"
+          ]
+        }
+      },
+      "frameworks": {
+        "netcoreapp3.1": {
+          "imports": [
+            "net461",
+            "net462",
+            "net47",
+            "net471",
+            "net472",
+            "net48"
+          ],
+          "assetTargetFallback": true,
+          "warn": true,
+          "frameworkReferences": {
+            "Microsoft.NETCore.App": {
+              "privateAssets": "all"
+            }
+          },
+          "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\3.1.201\\RuntimeIdentifierGraph.json"
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/03BinTree/obj/03BinTree.csproj.nuget.g.props b/03BinTree/obj/03BinTree.csproj.nuget.g.props
new file mode 100644
index 0000000000000000000000000000000000000000..dcb699c0e9a92aa0db59dc7c324b470d0dce8c74
--- /dev/null
+++ b/03BinTree/obj/03BinTree.csproj.nuget.g.props
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
+    <RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
+    <RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
+    <ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
+    <NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
+    <NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\wienkop\.nuget\packages\</NuGetPackageFolders>
+    <NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
+    <NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">5.5.0</NuGetToolVersion>
+  </PropertyGroup>
+  <PropertyGroup>
+    <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/03BinTree/obj/03BinTree.csproj.nuget.g.targets b/03BinTree/obj/03BinTree.csproj.nuget.g.targets
new file mode 100644
index 0000000000000000000000000000000000000000..53cfaa19b16f3769b2bfc33db3b5c0053c16fdba
--- /dev/null
+++ b/03BinTree/obj/03BinTree.csproj.nuget.g.targets
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.AssemblyInfo.cs b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.AssemblyInfo.cs
new file mode 100644
index 0000000000000000000000000000000000000000..7e204759e559d2f0984fba8856379eb53fdeed71
--- /dev/null
+++ b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.AssemblyInfo.cs
@@ -0,0 +1,23 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     Dieser Code wurde von einem Tool generiert.
+//     Laufzeitversion:4.0.30319.42000
+//
+//     Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
+//     der Code erneut generiert wird.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: System.Reflection.AssemblyCompanyAttribute("03BinTree")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
+[assembly: System.Reflection.AssemblyProductAttribute("03BinTree")]
+[assembly: System.Reflection.AssemblyTitleAttribute("03BinTree")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Von der MSBuild WriteCodeFragment-Klasse generiert.
+
diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.AssemblyInfoInputs.cache b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.AssemblyInfoInputs.cache
new file mode 100644
index 0000000000000000000000000000000000000000..10d3ffaec4be7dbeeedfc5f54ab20fbafff33f60
--- /dev/null
+++ b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+69fa13290e2bd34c0fd46c22de109fd9e52f1bda
diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.assets.cache b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.assets.cache
new file mode 100644
index 0000000000000000000000000000000000000000..5e4753ddcf793e2d229f86a95358bc69a9bb8765
Binary files /dev/null and b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.assets.cache differ
diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.csproj.CoreCompileInputs.cache b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000000000000000000000000000000000000..866b744e18d17bd43f4fc4b66cbb3dbc817b1992
--- /dev/null
+++ b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+c0523642d3f3714f80c0cf31b3f8720f51a0bc09
diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.csproj.FileListAbsolute.txt b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d5a3d2950b6e5b7d4ab109e97092daaeb7a3fceb
--- /dev/null
+++ b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.csproj.FileListAbsolute.txt
@@ -0,0 +1,12 @@
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\bin\Debug\netcoreapp3.1\03BinTree.exe
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\bin\Debug\netcoreapp3.1\03BinTree.deps.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\bin\Debug\netcoreapp3.1\03BinTree.runtimeconfig.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\bin\Debug\netcoreapp3.1\03BinTree.runtimeconfig.dev.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\bin\Debug\netcoreapp3.1\03BinTree.dll
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\bin\Debug\netcoreapp3.1\03BinTree.pdb
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\obj\Debug\netcoreapp3.1\03BinTree.csproj.CoreCompileInputs.cache
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\obj\Debug\netcoreapp3.1\03BinTree.AssemblyInfoInputs.cache
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\obj\Debug\netcoreapp3.1\03BinTree.AssemblyInfo.cs
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\obj\Debug\netcoreapp3.1\03BinTree.dll
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\obj\Debug\netcoreapp3.1\03BinTree.pdb
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03BinTree\obj\Debug\netcoreapp3.1\03BinTree.genruntimeconfig.cache
diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.dll b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.dll
new file mode 100644
index 0000000000000000000000000000000000000000..c9aeb088a148bacb66b19c6c078af78c69e1c396
Binary files /dev/null and b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.dll differ
diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.exe b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.exe
new file mode 100644
index 0000000000000000000000000000000000000000..09b6248b1d709b4b614fb425f6c58e10f3959e9a
Binary files /dev/null and b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.exe differ
diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.genruntimeconfig.cache b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.genruntimeconfig.cache
new file mode 100644
index 0000000000000000000000000000000000000000..34bedab819ef1631d37d6e87ef9a716c545a105e
--- /dev/null
+++ b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.genruntimeconfig.cache
@@ -0,0 +1 @@
+86c8e15dd33445635927cfaf398408205fd11473
diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.pdb b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.pdb
new file mode 100644
index 0000000000000000000000000000000000000000..16cef18a11d2c902f9349fb685ad97feb3e56794
Binary files /dev/null and b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.pdb differ
diff --git a/03BinTree/obj/project.assets.json b/03BinTree/obj/project.assets.json
new file mode 100644
index 0000000000000000000000000000000000000000..af6fdf2b302638a99da3492a54df476310c9d067
--- /dev/null
+++ b/03BinTree/obj/project.assets.json
@@ -0,0 +1,65 @@
+{
+  "version": 3,
+  "targets": {
+    ".NETCoreApp,Version=v3.1": {}
+  },
+  "libraries": {},
+  "projectFileDependencyGroups": {
+    ".NETCoreApp,Version=v3.1": []
+  },
+  "packageFolders": {
+    "C:\\Users\\wienkop\\.nuget\\packages\\": {}
+  },
+  "project": {
+    "version": "1.0.0",
+    "restore": {
+      "projectUniqueName": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03BinTree\\03BinTree.csproj",
+      "projectName": "03BinTree",
+      "projectPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03BinTree\\03BinTree.csproj",
+      "packagesPath": "C:\\Users\\wienkop\\.nuget\\packages\\",
+      "outputPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03BinTree\\obj\\",
+      "projectStyle": "PackageReference",
+      "configFilePaths": [
+        "C:\\Users\\wienkop\\AppData\\Roaming\\NuGet\\NuGet.Config",
+        "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
+      ],
+      "originalTargetFrameworks": [
+        "netcoreapp3.1"
+      ],
+      "sources": {
+        "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
+        "https://api.nuget.org/v3/index.json": {}
+      },
+      "frameworks": {
+        "netcoreapp3.1": {
+          "projectReferences": {}
+        }
+      },
+      "warningProperties": {
+        "warnAsError": [
+          "NU1605"
+        ]
+      }
+    },
+    "frameworks": {
+      "netcoreapp3.1": {
+        "imports": [
+          "net461",
+          "net462",
+          "net47",
+          "net471",
+          "net472",
+          "net48"
+        ],
+        "assetTargetFallback": true,
+        "warn": true,
+        "frameworkReferences": {
+          "Microsoft.NETCore.App": {
+            "privateAssets": "all"
+          }
+        },
+        "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\3.1.201\\RuntimeIdentifierGraph.json"
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/03BinTree/obj/project.nuget.cache b/03BinTree/obj/project.nuget.cache
new file mode 100644
index 0000000000000000000000000000000000000000..5f71767725baea69610ba7fc527287a27afbf38d
--- /dev/null
+++ b/03BinTree/obj/project.nuget.cache
@@ -0,0 +1,8 @@
+{
+  "version": 2,
+  "dgSpecHash": "jlbmx+pxcijt76hPkEl0Nt6zyBnPWC0+Udv/qaMsv7jWeZxcCB2CjPTVNL15Gcf88yRMp9rzpRLXB+wFkV+pDA==",
+  "success": true,
+  "projectFilePath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03BinTree\\03BinTree.csproj",
+  "expectedPackageFiles": [],
+  "logs": []
+}
\ No newline at end of file
diff --git a/03DoppeltverketteteListe/03DoppeltverketteteListe.csproj b/03DoppeltverketteteListe/03DoppeltverketteteListe.csproj
new file mode 100644
index 0000000000000000000000000000000000000000..ae59fb0b08ce82e453a5f44c0604f4f77f50f016
--- /dev/null
+++ b/03DoppeltverketteteListe/03DoppeltverketteteListe.csproj
@@ -0,0 +1,9 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <OutputType>Exe</OutputType>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <RootNamespace>_03DoppeltverketteteListe</RootNamespace>
+  </PropertyGroup>
+
+</Project>
diff --git a/03DoppeltverketteteListe/Program.cs b/03DoppeltverketteteListe/Program.cs
new file mode 100644
index 0000000000000000000000000000000000000000..a23cf8a3221c38a83a2fbc8c9a0d30d88f0a1619
--- /dev/null
+++ b/03DoppeltverketteteListe/Program.cs
@@ -0,0 +1,140 @@
+using System;
+
+namespace _03DoppeltverketteteListe
+{
+    class Personenliste
+    {
+        class Element
+        {
+            public string name;
+            public Element next=null, prev=null;
+            public Element(string name) { this.name = name; }
+            public override string ToString() => $"Name: {name},  prev: {(prev == null ? "null" : prev.name)}, next: {(next == null ? "null" : next.name)}";
+        }
+        Element anf, ende;
+        public void AddEnd(string name)
+        {
+            Element neu = new Element(name);
+            if (anf == null)
+                anf = ende = neu;
+            else
+            {
+                ende.next = neu;
+                neu.prev = ende;
+                ende = neu;
+            }
+        }
+        public void AddFront(string name)
+        {
+            // 1. Leere Liste
+            // 2. Es existiert mind. ein Element
+            Element neuesElement = new Element(name);   // Neues Element anlegen
+
+            if (anf == null)                            // 1.Fall: Leere Liste?
+                anf = ende = neuesElement;
+            else
+            {
+                neuesElement.next = anf;                // 2. Fall
+                anf = anf.prev = neuesElement;
+            }
+        }
+
+        public void AddSorted(string name)
+        {
+            // 1. Fall: Leere Liste oder Anfügen am Listenende
+            if (anf == null || ende.name.CompareTo(name) <= 0)
+                AddEnd(name);
+            else
+            {
+                if (name.CompareTo(anf.name) <= 0)
+                    AddFront(name);
+                else
+                {
+                    // Wir wissen: Das neue Element ist nicht das erste und nicht das letzte Element
+                    Element neu = new Element(name);
+
+                    Element item = anf;
+                    while (item.next.name.CompareTo(name) < 0)
+                        item = item.next;
+                    // bis hierher identisch zur einfach-verketteten Liste
+                    item.next.prev = neu; // Rückwärtsverkettung vom nachfolgenden Listenelement
+                    neu.next = item.next; // Vorwärtsverkettung vom neuen Element zur Restliste
+                    neu.prev = item;      // Rückwärtsverkettung vom neuen Elenent zum Listenanfangsstück
+                    item.next = neu;      // Vorwärtsverkettung zum neuen Element
+                }
+            }
+        }
+        public void DeleteFirst()
+        {
+            // 1.Fall: Liste ist leer
+            // 2.Fall: Liste besteht nur aus einem Element
+            // 3.Fall: Liste hat mehr als ein Element
+            if (anf == null)  // 1. Fall
+                return;
+            if (anf == ende)  // 2. Fall
+                anf = ende = null;
+            else
+            {
+                anf = anf.next;   // 3. Fall
+                anf.prev = null;
+            }
+        }
+        public void DeleteByName(string name)
+        {
+            // leere Liste ohne Elemente
+            if (anf == null)
+                return;
+            // erstes Element = gesuchtes Element
+            if (anf.name.CompareTo(name) == 0)
+                DeleteFirst();
+            // Wir wissen jetzt:
+            // Liste hat mind. ein Element UND das erste Element ist nicht das gesuchte Element
+            else
+            {
+                Element item = anf;
+                // Durchlaufen der Liste
+                // solange Elemente in Liste vorhanden und gesuchtes Element noch nicht gefunden
+                while (item.next != null && item.next.name.CompareTo(name) != 0)
+                    item = item.next;
+                // Wenn gesuchtes Element in Liste vorhanden
+                if (item.next != null)
+                {
+                    if (item.next.next != null)
+                    {
+                        // Nächstes Element überspringen = löschen
+                        item.next.next.prev = item;
+                        item.next = item.next.next;
+                    }
+                    else
+                    {
+                        // Wenn gesuchtes Element == letztes Element:
+                        item.next = null;
+                        ende = item;
+                    }
+                }
+            }
+        }
+        public void Print()
+        {
+            for (Element item = anf; item != null; item = item.next)
+                Console.WriteLine(item);
+        }
+        public void PrintReverse()
+        {
+            for (Element item = ende; item != null; item = item.prev)
+                Console.WriteLine(item);
+        }
+    }
+    class Program
+    {
+        static void Main(string[] args)
+        {
+            Personenliste freunde = new Personenliste();
+            freunde.AddSorted("Claudia");
+            freunde.AddSorted("Berta");
+            freunde.AddSorted("Anton");
+            //freunde.DeleteByName("Anton");
+            freunde.PrintReverse();
+        }
+    }
+}
diff --git a/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.deps.json b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.deps.json
new file mode 100644
index 0000000000000000000000000000000000000000..5b289d50b7330a74178fb5da22d398aea4d6eb83
--- /dev/null
+++ b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.deps.json
@@ -0,0 +1,23 @@
+{
+  "runtimeTarget": {
+    "name": ".NETCoreApp,Version=v3.1",
+    "signature": ""
+  },
+  "compilationOptions": {},
+  "targets": {
+    ".NETCoreApp,Version=v3.1": {
+      "03DoppeltverketteteListe/1.0.0": {
+        "runtime": {
+          "03DoppeltverketteteListe.dll": {}
+        }
+      }
+    }
+  },
+  "libraries": {
+    "03DoppeltverketteteListe/1.0.0": {
+      "type": "project",
+      "serviceable": false,
+      "sha512": ""
+    }
+  }
+}
\ No newline at end of file
diff --git a/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.dll b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.dll
new file mode 100644
index 0000000000000000000000000000000000000000..51b062198c0fe18a67a37128ce06eeb5a4475a67
Binary files /dev/null and b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.dll differ
diff --git a/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.exe b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.exe
new file mode 100644
index 0000000000000000000000000000000000000000..803977cd6e6e9e2566bb51a3030a87342de108b3
Binary files /dev/null and b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.exe differ
diff --git a/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.pdb b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.pdb
new file mode 100644
index 0000000000000000000000000000000000000000..65c1ce6853dc9022fdebcc95c540bff1043ca047
Binary files /dev/null and b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.pdb differ
diff --git a/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.runtimeconfig.dev.json b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.runtimeconfig.dev.json
new file mode 100644
index 0000000000000000000000000000000000000000..3becea41545888f98131d88ad51766e8ddde3bce
--- /dev/null
+++ b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.runtimeconfig.dev.json
@@ -0,0 +1,8 @@
+{
+  "runtimeOptions": {
+    "additionalProbingPaths": [
+      "C:\\Users\\wienkop\\.dotnet\\store\\|arch|\\|tfm|",
+      "C:\\Users\\wienkop\\.nuget\\packages"
+    ]
+  }
+}
\ No newline at end of file
diff --git a/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.runtimeconfig.json b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.runtimeconfig.json
new file mode 100644
index 0000000000000000000000000000000000000000..bc456d7868bb54ec1809da30e339cd43f0a8a09c
--- /dev/null
+++ b/03DoppeltverketteteListe/bin/Debug/netcoreapp3.1/03DoppeltverketteteListe.runtimeconfig.json
@@ -0,0 +1,9 @@
+{
+  "runtimeOptions": {
+    "tfm": "netcoreapp3.1",
+    "framework": {
+      "name": "Microsoft.NETCore.App",
+      "version": "3.1.0"
+    }
+  }
+}
\ No newline at end of file
diff --git a/03DoppeltverketteteListe/obj/03DoppeltverketteteListe.csproj.nuget.dgspec.json b/03DoppeltverketteteListe/obj/03DoppeltverketteteListe.csproj.nuget.dgspec.json
new file mode 100644
index 0000000000000000000000000000000000000000..e7269323dc2f1c2b806d4df5fefe8c03b01e17b6
--- /dev/null
+++ b/03DoppeltverketteteListe/obj/03DoppeltverketteteListe.csproj.nuget.dgspec.json
@@ -0,0 +1,60 @@
+{
+  "format": 1,
+  "restore": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03DoppeltverketteteListe\\03DoppeltverketteteListe.csproj": {}
+  },
+  "projects": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03DoppeltverketteteListe\\03DoppeltverketteteListe.csproj": {
+      "version": "1.0.0",
+      "restore": {
+        "projectUniqueName": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03DoppeltverketteteListe\\03DoppeltverketteteListe.csproj",
+        "projectName": "03DoppeltverketteteListe",
+        "projectPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03DoppeltverketteteListe\\03DoppeltverketteteListe.csproj",
+        "packagesPath": "C:\\Users\\wienkop\\.nuget\\packages\\",
+        "outputPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03DoppeltverketteteListe\\obj\\",
+        "projectStyle": "PackageReference",
+        "configFilePaths": [
+          "C:\\Users\\wienkop\\AppData\\Roaming\\NuGet\\NuGet.Config",
+          "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
+        ],
+        "originalTargetFrameworks": [
+          "netcoreapp3.1"
+        ],
+        "sources": {
+          "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
+          "https://api.nuget.org/v3/index.json": {}
+        },
+        "frameworks": {
+          "netcoreapp3.1": {
+            "projectReferences": {}
+          }
+        },
+        "warningProperties": {
+          "warnAsError": [
+            "NU1605"
+          ]
+        }
+      },
+      "frameworks": {
+        "netcoreapp3.1": {
+          "imports": [
+            "net461",
+            "net462",
+            "net47",
+            "net471",
+            "net472",
+            "net48"
+          ],
+          "assetTargetFallback": true,
+          "warn": true,
+          "frameworkReferences": {
+            "Microsoft.NETCore.App": {
+              "privateAssets": "all"
+            }
+          },
+          "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\3.1.201\\RuntimeIdentifierGraph.json"
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/03DoppeltverketteteListe/obj/03DoppeltverketteteListe.csproj.nuget.g.props b/03DoppeltverketteteListe/obj/03DoppeltverketteteListe.csproj.nuget.g.props
new file mode 100644
index 0000000000000000000000000000000000000000..dcb699c0e9a92aa0db59dc7c324b470d0dce8c74
--- /dev/null
+++ b/03DoppeltverketteteListe/obj/03DoppeltverketteteListe.csproj.nuget.g.props
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
+    <RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
+    <RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
+    <ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
+    <NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
+    <NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\wienkop\.nuget\packages\</NuGetPackageFolders>
+    <NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
+    <NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">5.5.0</NuGetToolVersion>
+  </PropertyGroup>
+  <PropertyGroup>
+    <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/03DoppeltverketteteListe/obj/03DoppeltverketteteListe.csproj.nuget.g.targets b/03DoppeltverketteteListe/obj/03DoppeltverketteteListe.csproj.nuget.g.targets
new file mode 100644
index 0000000000000000000000000000000000000000..53cfaa19b16f3769b2bfc33db3b5c0053c16fdba
--- /dev/null
+++ b/03DoppeltverketteteListe/obj/03DoppeltverketteteListe.csproj.nuget.g.targets
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.AssemblyInfo.cs b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.AssemblyInfo.cs
new file mode 100644
index 0000000000000000000000000000000000000000..bf805f0e5872d776a7f11b63bac45b99332aec2c
--- /dev/null
+++ b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.AssemblyInfo.cs
@@ -0,0 +1,23 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     Dieser Code wurde von einem Tool generiert.
+//     Laufzeitversion:4.0.30319.42000
+//
+//     Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
+//     der Code erneut generiert wird.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: System.Reflection.AssemblyCompanyAttribute("03DoppeltverketteteListe")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
+[assembly: System.Reflection.AssemblyProductAttribute("03DoppeltverketteteListe")]
+[assembly: System.Reflection.AssemblyTitleAttribute("03DoppeltverketteteListe")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Von der MSBuild WriteCodeFragment-Klasse generiert.
+
diff --git a/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.AssemblyInfoInputs.cache b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.AssemblyInfoInputs.cache
new file mode 100644
index 0000000000000000000000000000000000000000..71284ef05a18f0e0ad75d35e21e034b015cdb794
--- /dev/null
+++ b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+afd1b0c180c4b43f7a71e036da567d64ba59cc6b
diff --git a/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.assets.cache b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.assets.cache
new file mode 100644
index 0000000000000000000000000000000000000000..fd1ba0aa291802cbc26717d6584c6b2197425dcd
Binary files /dev/null and b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.assets.cache differ
diff --git a/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.csproj.CoreCompileInputs.cache b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000000000000000000000000000000000000..866b744e18d17bd43f4fc4b66cbb3dbc817b1992
--- /dev/null
+++ b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+c0523642d3f3714f80c0cf31b3f8720f51a0bc09
diff --git a/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.csproj.FileListAbsolute.txt b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000000000000000000000000000000000000..368b44a16c06a33d89bf67437ee1a593e2d378da
--- /dev/null
+++ b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.csproj.FileListAbsolute.txt
@@ -0,0 +1,13 @@
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\obj\Debug\netcoreapp3.1\03DoppeltverketteteListe.csproj.CoreCompileInputs.cache
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\obj\Debug\netcoreapp3.1\03DoppeltverketteteListe.AssemblyInfoInputs.cache
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\obj\Debug\netcoreapp3.1\03DoppeltverketteteListe.AssemblyInfo.cs
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\bin\Debug\netcoreapp3.1\03DoppeltverketteteListe.exe
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\bin\Debug\netcoreapp3.1\03DoppeltverketteteListe.deps.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\bin\Debug\netcoreapp3.1\03DoppeltverketteteListe.runtimeconfig.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\bin\Debug\netcoreapp3.1\03DoppeltverketteteListe.runtimeconfig.dev.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\bin\Debug\netcoreapp3.1\03DoppeltverketteteListe.dll
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\bin\Debug\netcoreapp3.1\03DoppeltverketteteListe.pdb
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\obj\Debug\netcoreapp3.1\03DoppeltverketteteListe.dll
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\obj\Debug\netcoreapp3.1\03DoppeltverketteteListe.pdb
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\obj\Debug\netcoreapp3.1\03DoppeltverketteteListe.genruntimeconfig.cache
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03DoppeltverketteteListe\obj\Debug\netcoreapp3.1\03DoppeltverketteteListe.csprojAssemblyReference.cache
diff --git a/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.csprojAssemblyReference.cache b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.csprojAssemblyReference.cache
new file mode 100644
index 0000000000000000000000000000000000000000..a0fbfd12797557adefa2aaaacd9d5126dec64303
Binary files /dev/null and b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.csprojAssemblyReference.cache differ
diff --git a/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.dll b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.dll
new file mode 100644
index 0000000000000000000000000000000000000000..51b062198c0fe18a67a37128ce06eeb5a4475a67
Binary files /dev/null and b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.dll differ
diff --git a/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.exe b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.exe
new file mode 100644
index 0000000000000000000000000000000000000000..803977cd6e6e9e2566bb51a3030a87342de108b3
Binary files /dev/null and b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.exe differ
diff --git a/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.genruntimeconfig.cache b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.genruntimeconfig.cache
new file mode 100644
index 0000000000000000000000000000000000000000..34bedab819ef1631d37d6e87ef9a716c545a105e
--- /dev/null
+++ b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.genruntimeconfig.cache
@@ -0,0 +1 @@
+86c8e15dd33445635927cfaf398408205fd11473
diff --git a/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.pdb b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.pdb
new file mode 100644
index 0000000000000000000000000000000000000000..65c1ce6853dc9022fdebcc95c540bff1043ca047
Binary files /dev/null and b/03DoppeltverketteteListe/obj/Debug/netcoreapp3.1/03DoppeltverketteteListe.pdb differ
diff --git a/03DoppeltverketteteListe/obj/project.assets.json b/03DoppeltverketteteListe/obj/project.assets.json
new file mode 100644
index 0000000000000000000000000000000000000000..593df82725280bc54a8e8579d381f082098f0502
--- /dev/null
+++ b/03DoppeltverketteteListe/obj/project.assets.json
@@ -0,0 +1,65 @@
+{
+  "version": 3,
+  "targets": {
+    ".NETCoreApp,Version=v3.1": {}
+  },
+  "libraries": {},
+  "projectFileDependencyGroups": {
+    ".NETCoreApp,Version=v3.1": []
+  },
+  "packageFolders": {
+    "C:\\Users\\wienkop\\.nuget\\packages\\": {}
+  },
+  "project": {
+    "version": "1.0.0",
+    "restore": {
+      "projectUniqueName": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03DoppeltverketteteListe\\03DoppeltverketteteListe.csproj",
+      "projectName": "03DoppeltverketteteListe",
+      "projectPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03DoppeltverketteteListe\\03DoppeltverketteteListe.csproj",
+      "packagesPath": "C:\\Users\\wienkop\\.nuget\\packages\\",
+      "outputPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03DoppeltverketteteListe\\obj\\",
+      "projectStyle": "PackageReference",
+      "configFilePaths": [
+        "C:\\Users\\wienkop\\AppData\\Roaming\\NuGet\\NuGet.Config",
+        "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
+      ],
+      "originalTargetFrameworks": [
+        "netcoreapp3.1"
+      ],
+      "sources": {
+        "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
+        "https://api.nuget.org/v3/index.json": {}
+      },
+      "frameworks": {
+        "netcoreapp3.1": {
+          "projectReferences": {}
+        }
+      },
+      "warningProperties": {
+        "warnAsError": [
+          "NU1605"
+        ]
+      }
+    },
+    "frameworks": {
+      "netcoreapp3.1": {
+        "imports": [
+          "net461",
+          "net462",
+          "net47",
+          "net471",
+          "net472",
+          "net48"
+        ],
+        "assetTargetFallback": true,
+        "warn": true,
+        "frameworkReferences": {
+          "Microsoft.NETCore.App": {
+            "privateAssets": "all"
+          }
+        },
+        "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\3.1.201\\RuntimeIdentifierGraph.json"
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/03DoppeltverketteteListe/obj/project.nuget.cache b/03DoppeltverketteteListe/obj/project.nuget.cache
new file mode 100644
index 0000000000000000000000000000000000000000..d3f380b94366896610e2016d58c7fe4a9f2462b1
--- /dev/null
+++ b/03DoppeltverketteteListe/obj/project.nuget.cache
@@ -0,0 +1,8 @@
+{
+  "version": 2,
+  "dgSpecHash": "tArc2v0bm8zJAEYFMMuJ6L2hVrT6uvieJoMu4UDBmJ/nEC5mR0exKrsYoioIy0jtj5nyB0qmRGa5e9FGVlRXtw==",
+  "success": true,
+  "projectFilePath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03DoppeltverketteteListe\\03DoppeltverketteteListe.csproj",
+  "expectedPackageFiles": [],
+  "logs": []
+}
\ No newline at end of file
diff --git a/prog2-ss2020-wienkop.sln b/prog2-ss2020-wienkop.sln
index b3533d9e94d413581214dd6ad6ea0103460a6e86..d3d2f3164f1b9ffb3d65898c9c1302badcd13632 100644
--- a/prog2-ss2020-wienkop.sln
+++ b/prog2-ss2020-wienkop.sln
@@ -36,6 +36,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "03 UebgMo FiFoListe", "03 U
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "03 UebgDi ZyklischeListe", "03 UebgDi ZyklischeListe\03 UebgDi ZyklischeListe.csproj", "{F1469F87-33F2-4B3B-9B7F-D373432D4EA9}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "03DoppeltverketteteListe", "03DoppeltverketteteListe\03DoppeltverketteteListe.csproj", "{96A196B5-6BC6-4E70-A39A-2F742293DB75}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "03BinTree", "03BinTree\03BinTree.csproj", "{70444B5D-4C58-44B3-B3D4-7F324DA215F5}"
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
@@ -98,6 +102,14 @@ Global
 		{F1469F87-33F2-4B3B-9B7F-D373432D4EA9}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{F1469F87-33F2-4B3B-9B7F-D373432D4EA9}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{F1469F87-33F2-4B3B-9B7F-D373432D4EA9}.Release|Any CPU.Build.0 = Release|Any CPU
+		{96A196B5-6BC6-4E70-A39A-2F742293DB75}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{96A196B5-6BC6-4E70-A39A-2F742293DB75}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{96A196B5-6BC6-4E70-A39A-2F742293DB75}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{96A196B5-6BC6-4E70-A39A-2F742293DB75}.Release|Any CPU.Build.0 = Release|Any CPU
+		{70444B5D-4C58-44B3-B3D4-7F324DA215F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{70444B5D-4C58-44B3-B3D4-7F324DA215F5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{70444B5D-4C58-44B3-B3D4-7F324DA215F5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{70444B5D-4C58-44B3-B3D4-7F324DA215F5}.Release|Any CPU.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE