diff --git a/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2 b/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2
index cf1f157a3454b0ec6f50ee005c98954c2c90c7df..c7d9b5ab9fa7b10480d3168f6454f86923ab68f3 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 210a54465796d69ce26051600b849638ab7eb1e5..422629a947c86966801d35516742c52fe5f373de 100644
Binary files a/.vs/prog2-ss2020-wienkop/v16/.suo and b/.vs/prog2-ss2020-wienkop/v16/.suo differ
diff --git a/01Buergeramt/obj/Debug/netcoreapp3.1/01Uebg_Buergeramt-Mo.csprojAssemblyReference.cache b/01Buergeramt/obj/Debug/netcoreapp3.1/01Uebg_Buergeramt-Mo.csprojAssemblyReference.cache
index fb8b4de2efee802eaa6349069580d22e839ec1be..e84921a470a178d6c34a6d16975b66db84b52171 100644
Binary files a/01Buergeramt/obj/Debug/netcoreapp3.1/01Uebg_Buergeramt-Mo.csprojAssemblyReference.cache and b/01Buergeramt/obj/Debug/netcoreapp3.1/01Uebg_Buergeramt-Mo.csprojAssemblyReference.cache differ
diff --git a/01Indexer/obj/Debug/netcoreapp3.1/01Indexer.csprojAssemblyReference.cache b/01Indexer/obj/Debug/netcoreapp3.1/01Indexer.csprojAssemblyReference.cache
index 9373385b98e1b7a59f299923e290e7b415004a26..2e2e4cd48ef53623d9b1b2ede269e8059601fa08 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 d9eae35234dacaf5d718f698e8a5e7ced3ac76bd..cf534861a3640f8554f9ce25bfe11127debf486c 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/01OperatorTrueFalse/obj/Debug/netcoreapp3.1/01OperatorTrueFalse.csprojAssemblyReference.cache b/01OperatorTrueFalse/obj/Debug/netcoreapp3.1/01OperatorTrueFalse.csprojAssemblyReference.cache
index 98a1e6a32cef97cee689b7c42e40bd7555a13c6f..308f84f1bd32b1f7e1467356eb1ac40d7da08d5e 100644
Binary files a/01OperatorTrueFalse/obj/Debug/netcoreapp3.1/01OperatorTrueFalse.csprojAssemblyReference.cache and b/01OperatorTrueFalse/obj/Debug/netcoreapp3.1/01OperatorTrueFalse.csprojAssemblyReference.cache differ
diff --git a/02VerketteteListe-2/Program.cs b/02VerketteteListe-2/Program.cs
index a9e54f8d34998cdbf627695cdeb57ccc7d1f108b..1c3c255877f3f120515e183c23d5335cc6ffb9ad 100644
--- a/02VerketteteListe-2/Program.cs
+++ b/02VerketteteListe-2/Program.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections;
+using System.Security.Cryptography;
 
 namespace _02VerketteteListe_2
 {
@@ -17,11 +18,12 @@ namespace _02VerketteteListe_2
         }
 
         Element anf = null, ende = null;
-        // int anz=0;
+        int anz = 0;      // Sehr sinnvoll für Index-Ops
         //public StringListe() { }
         public void AddEnd(string name)
         {
             Element neuesElement = new Element(name);   // 1. Neues Element anlegen
+            anz++;
             if (anf == null)                            // 2. Leere Liste?
                 anf = ende = neuesElement;
             else
@@ -35,6 +37,7 @@ namespace _02VerketteteListe_2
             // 1. Leere Liste
             // 2. Es existiert mind. ein Element
             Element neuesElement = new Element(name);   // Neues Element anlegen
+            anz++;
             if (anf == null)                            // 1.Fall: Leere Liste?
                 anf = ende = neuesElement;
             else
@@ -69,25 +72,27 @@ namespace _02VerketteteListe_2
                                         // an der gespeicherten Pos. weitergemacht.
             }
         }
-        public void DeleteFront()
+        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;
+            anz--;
             if (anf == ende)  // 2. Fall
                 anf = ende = null;
             else
                 anf = anf.next;   // 3. Fall
         }
-        public void DeleteEnd()
+        public void DeleteLast()
         {
             // 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
                 throw new NullReferenceException("Die Liste ist leer");
+            anz--;
             if (anf == ende)  // 2. Fall
                 anf = ende = null;
             else              // 3. Fall
@@ -100,27 +105,114 @@ namespace _02VerketteteListe_2
                 ende = vorletzter;
             }
         }
-        public void DeleteNth(int Ind)
+        public void DeleteNth(int index)
         {
-            // 1.Fall: Liste ist leer
-            // 2.Fall: Liste besteht nur aus einem Element UND Ind == 0
-            // 3.Fall: Liste hat mehr als ein Element
-            //   a) Ind==0 --> DeleteFront()
-            //   b) Ind==max -> DeleteLast()
-            //   c) Ind < max 
-            if (anf == null)  // 1. Fall
-                throw new NullReferenceException("Die Liste ist leer");
-            if (anf == ende)  // 2. Fall
-                anf = ende = null;
-            else              // 3. Fall
-            {  // Wir wissen: Die Liste hat mehr als ein Element, d.h. es gibt ein
-               // vorletztes Element vorletzter.next == ende
+            // 1.Fall: Liste ist leer ODER Ind>=anz --> Fehler
+            // 2.Fall: Ind == 0  --> DeleteFirst
+            // 3.Fall: Ind == anz-1 --> DeleteLast
+            // 4. Bis hierher: Liste hat mind. ein Element und das zu löschende Element
+            //                 ist nicht das Erste oder Letzte
+            if (anz == 0 || index >= anz)  // 1. Fall
+                throw new ArgumentOutOfRangeException("Außerhalb der Anzahl der Listenelemente");
+            if (index == 0)  // 2. Fall
+                DeleteFirst();
+            else if (index == anz - 1) // 3. Fall
+                DeleteLast();
+            else
+            {
                 Element vorletzter = anf;
-                while (vorletzter.next != ende)
+                for (int i = 1; i < index; i++)
                     vorletzter = vorletzter.next;
-                vorletzter.next = null;
-                ende = vorletzter;
+                vorletzter.next = vorletzter.next.next;
+                anz--;
+            }
+        }
+        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)
+                {
+                    // Nächstes Element überspringen = löschen
+                    item.next = item.next.next;
+                    // Wenn letztes Element = gesuchtes 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;
+                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
+                {
+                    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)
+                throw new IndexOutOfRangeException("Listenindex außerhalb des gültigen Bereichs");
+            Element item = anf;
+            while (index > 0)
+            {
+                item = item.next;
+                index--;
             }
+            return item;
+        }
+        public string this[int index]
+        {
+            get => NthElem(index).name;
+            set { NthElem(index).name = value; }
         }
     }
     class Program
@@ -130,29 +222,12 @@ namespace _02VerketteteListe_2
             StringListe l1 = new StringListe();
             StringListe l2 = new StringListe();
 
-            //StringListe.Element e1 = new StringListe.Element("Anton");
-            //e1.next = null;
-
-            for (int i = 1; i <=3; i++)
-            {
-                l1.AddEnd("Name-" + i);
-                
-            }
-            foreach (string item in l1)
-            {
-                Console.WriteLine($"foreach: {item}");
-            }
-            //Console.WriteLine(   l1.Print2());
-            Console.WriteLine("==========");
-            l1.DeleteEnd();
-            l1.Print();
-            Console.WriteLine("----------");
-            l1.DeleteEnd();
+            l1.AddSorted("Emil ");
+            l1.AddSorted("Anton");
+            l1.AddSorted("Berta");
+            l1.AddSorted("Claudia");
+            l1.AddSorted("Dieter");
             l1.Print();
-            Console.WriteLine("----------");
-            //l1.LoescheAnf();
-            //l1.Print();
-            //Console.WriteLine($"Suche nach Name-3: {l1.Suche("Name-3")}");
         }
     }
 }
diff --git a/02VerketteteListe-2/bin/Debug/netcoreapp3.1/02VerketteteListe-2.dll b/02VerketteteListe-2/bin/Debug/netcoreapp3.1/02VerketteteListe-2.dll
index 44e3e35231ed262d45ee44b10f88be888b339e5a..d64767c8e097674a9c68f89f49ac16ff2ff1b2da 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 174d6740f21069322b211277327a0769559fad07..a3bd6cb3e5633e53ae174171f38c53c1295eaa90 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 e23245258eaf6b6145a13830bacb66ca8fd7c885..2e2e4cd48ef53623d9b1b2ede269e8059601fa08 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 44e3e35231ed262d45ee44b10f88be888b339e5a..d64767c8e097674a9c68f89f49ac16ff2ff1b2da 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 174d6740f21069322b211277327a0769559fad07..a3bd6cb3e5633e53ae174171f38c53c1295eaa90 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/03 UebgDi ZyklischeListe/03 UebgDi ZyklischeListe.csproj b/03 UebgDi ZyklischeListe/03 UebgDi ZyklischeListe.csproj
new file mode 100644
index 0000000000000000000000000000000000000000..b8d543a303da5cd20389f404183344007846d4af
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/03 UebgDi ZyklischeListe.csproj	
@@ -0,0 +1,9 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <OutputType>Exe</OutputType>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <RootNamespace>_03_UebgDi_ZyklischeListe</RootNamespace>
+  </PropertyGroup>
+
+</Project>
diff --git a/03 UebgDi ZyklischeListe/Program.cs b/03 UebgDi ZyklischeListe/Program.cs
new file mode 100644
index 0000000000000000000000000000000000000000..c516938e9f29e2f779089eb67d19f1c9e0295ffa
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/Program.cs	
@@ -0,0 +1,64 @@
+using System;
+
+namespace _03_UebgDi_ZyklischeListe
+{
+    class CycleList
+    {
+        class Element
+        {
+            public string name;
+            public Element next = null;
+            public Element(string name) { this.name = name; }
+            public override string ToString() => name;
+        }
+        Element anf = null, ende = null;
+        Element iterator = null;
+        public void AddEnd(string name)
+        {
+            Element neuesElement = new Element(name);   // 1. Neues Element anlegen
+            if (anf == null)                            // 2. Leere Liste?
+                anf = ende = neuesElement;
+            else
+                ende = ende.next = neuesElement;        // 3. Neues Element am Ende anfügen
+        }
+        public void CloseCycle()
+        {
+            ende.next = anf;
+        }
+        public void Print()
+        {
+           
+        }
+        public void SetIterator(int plus)
+        {
+            
+        }
+        public string GetName() => ;
+        public void MoveIterator() {  }
+
+
+    }
+    class Program
+    {
+        static void Main(string[] args)
+        {
+            CycleList cl = new CycleList();
+            cl.AddEnd("Anton");
+            cl.AddEnd("Berta");
+            cl.CloseCycle();
+            cl.Print();
+            Console.WriteLine("-------------");
+            cl.AddEnd("Claudia");
+            cl.AddEnd("Dieter");
+            cl.CloseCycle();
+            cl.Print();
+            Console.WriteLine("-------------");
+            //cl.SetIterator(2);
+            //for (int i = 0; i < 10; i++)
+            //{
+            //    Console.WriteLine(cl.GetName());
+            //    cl.MoveIterator();
+            //}
+        }
+    }
+}
diff --git a/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.deps.json b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.deps.json
new file mode 100644
index 0000000000000000000000000000000000000000..61dca441e3024c4c356a5e6f9f76cac9a7eceb9f
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.deps.json	
@@ -0,0 +1,23 @@
+{
+  "runtimeTarget": {
+    "name": ".NETCoreApp,Version=v3.1",
+    "signature": ""
+  },
+  "compilationOptions": {},
+  "targets": {
+    ".NETCoreApp,Version=v3.1": {
+      "03 UebgDi ZyklischeListe/1.0.0": {
+        "runtime": {
+          "03 UebgDi ZyklischeListe.dll": {}
+        }
+      }
+    }
+  },
+  "libraries": {
+    "03 UebgDi ZyklischeListe/1.0.0": {
+      "type": "project",
+      "serviceable": false,
+      "sha512": ""
+    }
+  }
+}
\ No newline at end of file
diff --git a/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.dll b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.dll
new file mode 100644
index 0000000000000000000000000000000000000000..f51a57fa7dc746b638b146affa5aae59073364f2
Binary files /dev/null and b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.dll differ
diff --git a/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.exe b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.exe
new file mode 100644
index 0000000000000000000000000000000000000000..e4cb122cb38b2a938a6f84c7d6a2710f66703b82
Binary files /dev/null and b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.exe differ
diff --git a/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.pdb b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.pdb
new file mode 100644
index 0000000000000000000000000000000000000000..781ee4801d02aff7f5a5499d5d6079a953985561
Binary files /dev/null and b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.pdb differ
diff --git a/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.runtimeconfig.dev.json b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.runtimeconfig.dev.json
new file mode 100644
index 0000000000000000000000000000000000000000..3becea41545888f98131d88ad51766e8ddde3bce
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.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/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.runtimeconfig.json b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.runtimeconfig.json
new file mode 100644
index 0000000000000000000000000000000000000000..bc456d7868bb54ec1809da30e339cd43f0a8a09c
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/bin/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.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/03 UebgDi ZyklischeListe/obj/03 UebgDi ZyklischeListe.csproj.nuget.dgspec.json b/03 UebgDi ZyklischeListe/obj/03 UebgDi ZyklischeListe.csproj.nuget.dgspec.json
new file mode 100644
index 0000000000000000000000000000000000000000..e0e1d50248502909114cf28a20dcf12333c8d076
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/obj/03 UebgDi ZyklischeListe.csproj.nuget.dgspec.json	
@@ -0,0 +1,60 @@
+{
+  "format": 1,
+  "restore": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03 UebgDi ZyklischeListe\\03 UebgDi ZyklischeListe.csproj": {}
+  },
+  "projects": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03 UebgDi ZyklischeListe\\03 UebgDi ZyklischeListe.csproj": {
+      "version": "1.0.0",
+      "restore": {
+        "projectUniqueName": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03 UebgDi ZyklischeListe\\03 UebgDi ZyklischeListe.csproj",
+        "projectName": "03 UebgDi ZyklischeListe",
+        "projectPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03 UebgDi ZyklischeListe\\03 UebgDi ZyklischeListe.csproj",
+        "packagesPath": "C:\\Users\\wienkop\\.nuget\\packages\\",
+        "outputPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03 UebgDi ZyklischeListe\\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/03 UebgDi ZyklischeListe/obj/03 UebgDi ZyklischeListe.csproj.nuget.g.props b/03 UebgDi ZyklischeListe/obj/03 UebgDi ZyklischeListe.csproj.nuget.g.props
new file mode 100644
index 0000000000000000000000000000000000000000..dcb699c0e9a92aa0db59dc7c324b470d0dce8c74
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/obj/03 UebgDi ZyklischeListe.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/03 UebgDi ZyklischeListe/obj/03 UebgDi ZyklischeListe.csproj.nuget.g.targets b/03 UebgDi ZyklischeListe/obj/03 UebgDi ZyklischeListe.csproj.nuget.g.targets
new file mode 100644
index 0000000000000000000000000000000000000000..53cfaa19b16f3769b2bfc33db3b5c0053c16fdba
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/obj/03 UebgDi ZyklischeListe.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/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.AssemblyInfo.cs b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.AssemblyInfo.cs
new file mode 100644
index 0000000000000000000000000000000000000000..2877f06df555956df966a3eedd242b5f6848ca41
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.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("03 UebgDi ZyklischeListe")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
+[assembly: System.Reflection.AssemblyProductAttribute("03 UebgDi ZyklischeListe")]
+[assembly: System.Reflection.AssemblyTitleAttribute("03 UebgDi ZyklischeListe")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Von der MSBuild WriteCodeFragment-Klasse generiert.
+
diff --git a/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.AssemblyInfoInputs.cache b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.AssemblyInfoInputs.cache
new file mode 100644
index 0000000000000000000000000000000000000000..92214561215cbc63445254243d0707b6f1ecece3
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.AssemblyInfoInputs.cache	
@@ -0,0 +1 @@
+a40562d99179935d046829fa6739a2c981e75c80
diff --git a/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.assets.cache b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.assets.cache
new file mode 100644
index 0000000000000000000000000000000000000000..d720d88fea7b1fa380de0082f5e696aac317dfa5
Binary files /dev/null and b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.assets.cache differ
diff --git a/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.csproj.CoreCompileInputs.cache b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000000000000000000000000000000000000..866b744e18d17bd43f4fc4b66cbb3dbc817b1992
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.csproj.CoreCompileInputs.cache	
@@ -0,0 +1 @@
+c0523642d3f3714f80c0cf31b3f8720f51a0bc09
diff --git a/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.csproj.FileListAbsolute.txt b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000000000000000000000000000000000000..971ff061aa4ffa7aaecd34fe5e8fb1a344d796a7
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.csproj.FileListAbsolute.txt	
@@ -0,0 +1,12 @@
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\bin\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.exe
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\bin\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.deps.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\bin\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.runtimeconfig.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\bin\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.runtimeconfig.dev.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\bin\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.dll
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\bin\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.pdb
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.csproj.CoreCompileInputs.cache
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.AssemblyInfoInputs.cache
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.AssemblyInfo.cs
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.dll
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.pdb
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.genruntimeconfig.cache
diff --git a/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.dll b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.dll
new file mode 100644
index 0000000000000000000000000000000000000000..f51a57fa7dc746b638b146affa5aae59073364f2
Binary files /dev/null and b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.dll differ
diff --git a/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.exe b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.exe
new file mode 100644
index 0000000000000000000000000000000000000000..e4cb122cb38b2a938a6f84c7d6a2710f66703b82
Binary files /dev/null and b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.exe differ
diff --git a/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.genruntimeconfig.cache b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.genruntimeconfig.cache
new file mode 100644
index 0000000000000000000000000000000000000000..34bedab819ef1631d37d6e87ef9a716c545a105e
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.genruntimeconfig.cache	
@@ -0,0 +1 @@
+86c8e15dd33445635927cfaf398408205fd11473
diff --git a/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.pdb b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.pdb
new file mode 100644
index 0000000000000000000000000000000000000000..781ee4801d02aff7f5a5499d5d6079a953985561
Binary files /dev/null and b/03 UebgDi ZyklischeListe/obj/Debug/netcoreapp3.1/03 UebgDi ZyklischeListe.pdb differ
diff --git a/03 UebgDi ZyklischeListe/obj/project.assets.json b/03 UebgDi ZyklischeListe/obj/project.assets.json
new file mode 100644
index 0000000000000000000000000000000000000000..f60f5795044c1e0ee9599dd38a99b1acd767535d
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/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\\03 UebgDi ZyklischeListe\\03 UebgDi ZyklischeListe.csproj",
+      "projectName": "03 UebgDi ZyklischeListe",
+      "projectPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03 UebgDi ZyklischeListe\\03 UebgDi ZyklischeListe.csproj",
+      "packagesPath": "C:\\Users\\wienkop\\.nuget\\packages\\",
+      "outputPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03 UebgDi ZyklischeListe\\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/03 UebgDi ZyklischeListe/obj/project.nuget.cache b/03 UebgDi ZyklischeListe/obj/project.nuget.cache
new file mode 100644
index 0000000000000000000000000000000000000000..f711a57af52ddefc50f3bf15fd9d02056eb12d5c
--- /dev/null
+++ b/03 UebgDi ZyklischeListe/obj/project.nuget.cache	
@@ -0,0 +1,8 @@
+{
+  "version": 2,
+  "dgSpecHash": "qRFuevN0NLacVpvhFL3OmJHqG/WV9IVxq3C9wQceX3LcC1W/HAbGolztAyonQA4Sc2wSfh+9Gzf3WsXthTN9aA==",
+  "success": true,
+  "projectFilePath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\03 UebgDi ZyklischeListe\\03 UebgDi ZyklischeListe.csproj",
+  "expectedPackageFiles": [],
+  "logs": []
+}
\ No newline at end of file
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
new file mode 100644
index 0000000000000000000000000000000000000000..8a5ef041ae8402be96bf3fc66b33aedfc9a2f5c5
Binary files /dev/null and b/03 UebgMo FiFoListe/obj/Debug/netcoreapp3.1/03 UebgMo FiFoListe.csprojAssemblyReference.cache differ
diff --git a/prog2-ss2020-wienkop.sln b/prog2-ss2020-wienkop.sln
index bb088c84c6fc9f1c55a5bf0bccbf294c779592d1..b3533d9e94d413581214dd6ad6ea0103460a6e86 100644
--- a/prog2-ss2020-wienkop.sln
+++ b/prog2-ss2020-wienkop.sln
@@ -32,7 +32,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "02VerketteteListe-2", "02Ve
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "02 UebgSa FiFoListe", "02 UebgSa FiFoListe\02 UebgSa FiFoListe.csproj", "{BA0D110D-7CBD-4EC0-893F-A94324066ADA}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "03 UebgMo FiFoListe", "03 UebgMo FiFoListe\03 UebgMo FiFoListe.csproj", "{8A18FA14-5B36-46B3-BB62-907E6A2855A3}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "03 UebgMo FiFoListe", "03 UebgMo FiFoListe\03 UebgMo FiFoListe.csproj", "{8A18FA14-5B36-46B3-BB62-907E6A2855A3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "03 UebgDi ZyklischeListe", "03 UebgDi ZyklischeListe\03 UebgDi ZyklischeListe.csproj", "{F1469F87-33F2-4B3B-9B7F-D373432D4EA9}"
 EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -92,6 +94,10 @@ Global
 		{8A18FA14-5B36-46B3-BB62-907E6A2855A3}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{8A18FA14-5B36-46B3-BB62-907E6A2855A3}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{8A18FA14-5B36-46B3-BB62-907E6A2855A3}.Release|Any CPU.Build.0 = Release|Any CPU
+		{F1469F87-33F2-4B3B-9B7F-D373432D4EA9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{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
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE