diff --git a/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2 b/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2
index 55c85a233a14d3c44a0bf34c0a2b294acae35924..29b951b956da37c240fe4b1f4bc820f87e3e258c 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 ff9ce1fceb793457e6b22408fda581121b22be1c..39b77dba8444eaa94b49ee5f1c0357b268865c91 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 2e2e4cd48ef53623d9b1b2ede269e8059601fa08..09f733cba816ea75758c5185c8e79a12110d4074 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 d9eae35234dacaf5d718f698e8a5e7ced3ac76bd..cf534861a3640f8554f9ce25bfe11127debf486c 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/01OperatorOverloading/obj/Debug/netcoreapp3.1/01OperatorOverloading.csprojAssemblyReference.cache b/01OperatorOverloading/obj/Debug/netcoreapp3.1/01OperatorOverloading.csprojAssemblyReference.cache
index 00119747933cfa150bdd3f7e944bf1d16b8f70dd..50beef42e5ef19628fe73d78013cf307822ef6ea 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/01OperatorTrueFalse/obj/Debug/netcoreapp3.1/01OperatorTrueFalse.csprojAssemblyReference.cache b/01OperatorTrueFalse/obj/Debug/netcoreapp3.1/01OperatorTrueFalse.csprojAssemblyReference.cache
index b1a2ab00e21075ae3f51a0172d319459c031d264..50beef42e5ef19628fe73d78013cf307822ef6ea 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/01WPF_Demo/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/01WPF_Demo/obj/Debug/DesignTimeResolveAssemblyReferences.cache
index a8085e851b21311119fe9791b40f67170dfcba87..a8ec8df2f43e93a2dd1b8774dfda5924b6abc9bd 100644
Binary files a/01WPF_Demo/obj/Debug/DesignTimeResolveAssemblyReferences.cache and b/01WPF_Demo/obj/Debug/DesignTimeResolveAssemblyReferences.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 7c4934efa789ae0c72b5608c744eb228ecdeac61..308f84f1bd32b1f7e1467356eb1ac40d7da08d5e 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/02 UebgSa FiFoListe/obj/Debug/netcoreapp3.1/02 UebgSa FiFoListe.csprojAssemblyReference.cache b/02 UebgSa FiFoListe/obj/Debug/netcoreapp3.1/02 UebgSa FiFoListe.csprojAssemblyReference.cache
index e23245258eaf6b6145a13830bacb66ca8fd7c885..75c16613d637ba1aee3feac158410536d13849e8 100644
Binary files a/02 UebgSa FiFoListe/obj/Debug/netcoreapp3.1/02 UebgSa FiFoListe.csprojAssemblyReference.cache and b/02 UebgSa FiFoListe/obj/Debug/netcoreapp3.1/02 UebgSa FiFoListe.csprojAssemblyReference.cache differ
diff --git a/02VerketteteListe/obj/Debug/netcoreapp3.1/02VerketteteListe-1Intro.csprojAssemblyReference.cache b/02VerketteteListe/obj/Debug/netcoreapp3.1/02VerketteteListe-1Intro.csprojAssemblyReference.cache
index 7c4934efa789ae0c72b5608c744eb228ecdeac61..09f733cba816ea75758c5185c8e79a12110d4074 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/03Praktikumsaufgabe2Liste/obj/Debug/netcoreapp3.1/03Praktikumsaufgabe2Liste.csprojAssemblyReference.cache b/03Praktikumsaufgabe2Liste/obj/Debug/netcoreapp3.1/03Praktikumsaufgabe2Liste.csprojAssemblyReference.cache
index 74fe67b1ca671095970d4a7fbcae2417231e8f41..a0fbfd12797557adefa2aaaacd9d5126dec64303 100644
Binary files a/03Praktikumsaufgabe2Liste/obj/Debug/netcoreapp3.1/03Praktikumsaufgabe2Liste.csprojAssemblyReference.cache and b/03Praktikumsaufgabe2Liste/obj/Debug/netcoreapp3.1/03Praktikumsaufgabe2Liste.csprojAssemblyReference.cache differ
diff --git a/05HTMLEngine/HTMLEngine.csproj b/05HTMLEngine/06HTMLEngine.csproj
similarity index 100%
rename from 05HTMLEngine/HTMLEngine.csproj
rename to 05HTMLEngine/06HTMLEngine.csproj
diff --git a/05HTMLEngine/obj/Debug/06HTMLEngine.csprojAssemblyReference.cache b/05HTMLEngine/obj/Debug/06HTMLEngine.csprojAssemblyReference.cache
new file mode 100644
index 0000000000000000000000000000000000000000..2ccb88b97552ae15afdcd5effc3c7f157699cb6f
Binary files /dev/null and b/05HTMLEngine/obj/Debug/06HTMLEngine.csprojAssemblyReference.cache differ
diff --git a/07 MethodeSplitArray/obj/Debug/netcoreapp3.1/07 MethodeSplitArray.csprojAssemblyReference.cache b/07 MethodeSplitArray/obj/Debug/netcoreapp3.1/07 MethodeSplitArray.csprojAssemblyReference.cache
index d7dd684443de8ada82f92a8e0cf14a64b9096fd6..a0fbfd12797557adefa2aaaacd9d5126dec64303 100644
Binary files a/07 MethodeSplitArray/obj/Debug/netcoreapp3.1/07 MethodeSplitArray.csprojAssemblyReference.cache and b/07 MethodeSplitArray/obj/Debug/netcoreapp3.1/07 MethodeSplitArray.csprojAssemblyReference.cache differ
diff --git a/07 UebgSaKeyValueList/07 UebgSa_KeyValueList.csproj b/07 UebgSaKeyValueList/07 UebgSa_KeyValueList.csproj
new file mode 100644
index 0000000000000000000000000000000000000000..6b4cfc1fe251e10d3548387a115b420b78e7288d
--- /dev/null
+++ b/07 UebgSaKeyValueList/07 UebgSa_KeyValueList.csproj	
@@ -0,0 +1,9 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <OutputType>Exe</OutputType>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <RootNamespace>_07KeyValueList</RootNamespace>
+  </PropertyGroup>
+
+</Project>
diff --git a/07 UebgSaKeyValueList/KeyValuePaar.cs b/07 UebgSaKeyValueList/KeyValuePaar.cs
new file mode 100644
index 0000000000000000000000000000000000000000..2c25c6ee5eabf90e075331fb1930b020a3b2ccf0
--- /dev/null
+++ b/07 UebgSaKeyValueList/KeyValuePaar.cs	
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
+using System.Text;
+
+namespace _07KeyValueList
+{
+    class KeyValuePaar<K, V> : IComparable<KeyValuePaar<K, V>>
+        where K : IComparable<K>
+    {
+        public K key;
+        public V val;
+        public KeyValuePaar(K key, V val) { this.key = key; this.val = val; }
+        public int CompareTo(KeyValuePaar<K, V> other)
+            => key.CompareTo(other.key);
+        public override string ToString() => $"{key}: {val}";
+    }
+}
diff --git a/07 UebgSaKeyValueList/Program.cs b/07 UebgSaKeyValueList/Program.cs
new file mode 100644
index 0000000000000000000000000000000000000000..6e9eca14c77f8bf7e0ed101757354158be6fabbd
--- /dev/null
+++ b/07 UebgSaKeyValueList/Program.cs	
@@ -0,0 +1,67 @@
+using System;
+using System.Collections.Generic;
+
+// Modifizieren/Erweitern Sie die KeyValue Klassen bzw. das Main()-Programm
+// derart, dass Sie eine weitergehende Kalenderverwaltung realisieren. In
+// Main erstellen Sie bitte eine Menü mit Auswahl:
+// 1 - Termin eintragen (tt.mm.jjjj|Thema|Projekt|Teilnehmer)
+// 2 - Monatstermine auflisten; Eingabe Monat mm
+// 3 - Jahrestermine auflisten
+// 4 - Alle Termine eines Projekts im Monat mm; Eingabe mm|Projektname
+
+
+namespace _07KeyValueList
+{
+    class Termin
+    {
+        public string was;
+        public string wer;
+        public Termin(string was, string wer) { this.was = was;this.wer = wer; }
+        public override string ToString() => $"Termin: {was} mit {wer}";
+    }
+    class Program
+    {
+        static void Main(string[] args)
+        {
+            KeyValueListe<string, int> kvListe = new KeyValueListe<string, int>();
+            kvListe["Wienkop"] = 1614;
+            kvListe["Otsa"] = 1855;
+
+            kvListe.Print();
+            Console.WriteLine("-----------");
+            kvListe["Otsa"] = 9999;
+            kvListe.Print();
+            Console.WriteLine("-----------");
+
+            KeyValueListe<string, Termin> termine = new KeyValueListe<string, Termin>();
+            termine["Wienkop"] = new Termin("IT-Proj", "Digitale Visitenkarte");
+            termine.Print();
+            //foreach (var item in termine)
+            //{
+            //    Console.WriteLine(item.val);
+            //}
+
+            List<Termin> termineMi = new List<Termin>();
+            termineMi.Add(new Termin("08:00 Prog2-Vorlesung", "Gruppe-Wienkop"));
+            termineMi.Add(new Termin ("09:45 Dig Bildbearbeitung","MA-MIN"));
+
+            List<Termin> termineDi = new List<Termin>();
+            termineDi.Add(new Termin("08:00 Prog2-Übung", "Gruppe-Wienkop"));
+            termineDi.Add(new Termin("09:45 Prog2-Vorlesung", "Gruppe-Wienkop"));
+            termineDi.Add(new Termin("11:30 Mitarbeiterbesprechung","Jobbörse"));
+
+            KeyValueListe<string, List<Termin>> terminverwaltung = new KeyValueListe<string, List<Termin>>();
+            terminverwaltung["03.06.2020"] = termineMi;
+            terminverwaltung["02.06.2020"] = termineDi;
+
+            foreach (var tag in terminverwaltung)
+            {
+                Console.WriteLine($"\nTermine am {tag.key}:");
+                foreach (var item in tag.val)
+                {
+                    Console.WriteLine(item);
+                }
+            }
+        }
+    }
+}
diff --git a/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.deps.json b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.deps.json
new file mode 100644
index 0000000000000000000000000000000000000000..8ab081369cca2804f23c29f9fc195787a8896660
--- /dev/null
+++ b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.deps.json	
@@ -0,0 +1,23 @@
+{
+  "runtimeTarget": {
+    "name": ".NETCoreApp,Version=v3.1",
+    "signature": ""
+  },
+  "compilationOptions": {},
+  "targets": {
+    ".NETCoreApp,Version=v3.1": {
+      "07KeyValueList/1.0.0": {
+        "runtime": {
+          "07KeyValueList.dll": {}
+        }
+      }
+    }
+  },
+  "libraries": {
+    "07KeyValueList/1.0.0": {
+      "type": "project",
+      "serviceable": false,
+      "sha512": ""
+    }
+  }
+}
\ No newline at end of file
diff --git a/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.dll b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.dll
new file mode 100644
index 0000000000000000000000000000000000000000..b74c9e26aafb644daacbe3ef2443017974f4c7a7
Binary files /dev/null and b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.dll differ
diff --git a/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.exe b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.exe
new file mode 100644
index 0000000000000000000000000000000000000000..125fff834c88827cb90c01cdb811e27f38cc1155
Binary files /dev/null and b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.exe differ
diff --git a/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.pdb b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.pdb
new file mode 100644
index 0000000000000000000000000000000000000000..e7deb1bcbcf9d68261b1a844950cdc3947ab5a3e
Binary files /dev/null and b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.pdb differ
diff --git a/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.runtimeconfig.dev.json b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.runtimeconfig.dev.json
new file mode 100644
index 0000000000000000000000000000000000000000..3becea41545888f98131d88ad51766e8ddde3bce
--- /dev/null
+++ b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.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/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.runtimeconfig.json b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.runtimeconfig.json
new file mode 100644
index 0000000000000000000000000000000000000000..bc456d7868bb54ec1809da30e339cd43f0a8a09c
--- /dev/null
+++ b/07 UebgSaKeyValueList/bin/Debug/netcoreapp3.1/07KeyValueList.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/07 UebgSaKeyValueList/liste.cs b/07 UebgSaKeyValueList/liste.cs
new file mode 100644
index 0000000000000000000000000000000000000000..2288bfe63b200229eec70081fd5a7901e1ed7570
--- /dev/null
+++ b/07 UebgSaKeyValueList/liste.cs	
@@ -0,0 +1,253 @@
+using System;
+using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
+using System.Text;
+
+namespace _07KeyValueList
+{
+    class KeyValueListe<K,V> /*: IComparable<KeyValueListe<K,V>>*/ where K : IComparable<K>
+    {
+        // Die Klasse Element ist nun eine *private* Klasse der Klasse StringListe
+        // Die Methoden von StringListe dürfen auf private Member zugreifen
+        // Methoden außerhalb von StringListe dürfen dies nicht!
+        private class Element  // Element ist eine private Hilfsklasse der Klasse StringListe
+        {
+            public K key;
+            public V val;
+            public Element next = null;
+            public Element(K key, V val) { this.key = key; this.val = val ; }
+            public override string ToString() => $"{key}: {val}";
+        }
+
+        Element anf = null, ende = null;
+        int anz = 0;      // Sehr sinnvoll für Index-Ops
+        //public StringListe() { }
+        public void AddEnd(K key, V val)
+        {
+            Element neuesElement = new Element(key,val);   // 1. Neues Element anlegen
+            anz++;
+            if (anf == null)                            // 2. Leere Liste?
+                anf = ende = neuesElement;
+            else
+            {
+                ende.next = neuesElement;               // 3. Neues Element am Ende anfügen
+                ende = ende.next;
+            }
+        }
+        #region Weitere Methoden
+        //public void AddFront(T daten)
+        //{
+        //    // 1. Leere Liste
+        //    // 2. Es existiert mind. ein Element
+        //    Element neuesElement = new Element(daten);   // Neues Element anlegen
+        //    anz++;
+        //    if (anf == null)                            // 1.Fall: Leere Liste?
+        //        anf = ende = neuesElement;
+        //    else
+        //    {
+        //        neuesElement.next = anf;                // 2. Fall
+        //        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(T daten)
+        //{
+        //    // 1. Fall: Leere Liste oder Anfügen am Listenende
+        //    if (anf == null || ende.key.CompareTo(daten) <= 0)
+        //        AddEnd(daten);
+        //    else
+        //    {
+        //        if (daten.CompareTo(anf.key) <= 0)
+        //            AddFront(daten);
+        //        else
+        //        {
+        //            // Wir wissen: Das neue Element ist nicht das erste und nicht das letzte Element
+        //            Element neu = new Element(daten);
+        //            anz++;
+
+        //            Element item = anf;
+        //            while (item.next.key.CompareTo(daten) < 0)
+        //                item = item.next;
+        //            neu.next = item.next;
+        //            item.next = neu;
+        //        }
+        //    }
+        //}
+        //public bool Suche(T daten)
+        //{
+        //    for (Element item = anf; item != null; item = item.next)
+        //    {
+        //        if (item.key.CompareTo(daten) == 0)
+        //            return true;
+        //    }
+        //    return false;
+        //}
+        //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 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
+        //    {  // Wir wissen: Die Liste hat mehr als ein Element, d.h. es gibt ein
+        //       // vorletztes Element vorletzter.next == ende
+        //        Element vorletzter = anf;
+        //        while (vorletzter.next != ende)
+        //            vorletzter = vorletzter.next;
+        //        vorletzter.next = null;
+        //        ende = vorletzter;
+        //    }
+        //}
+        //public void DeleteNth(int index)
+        //{
+        //    // 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;
+        //        for (int i = 0; i < index - 1; i++)  // Liste bis zum n-1-ten Element durchlaufen
+        //            vorletzter = vorletzter.next;
+        //        vorletzter.next = vorletzter.next.next;
+        //        anz--;
+        //    }
+        //}
+        //public void DeleteByName(T other)
+        //{
+        //    // leere Liste ohne Elemente
+        //    if (anf == null)
+        //        return;
+        //    // erstes Element = gesuchtes Element
+        //    if (anf.key.CompareTo(other) == 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.key.CompareTo(other) != 0)
+        //            item = item.next;
+        //        // Wenn gesuchtes Element in Liste vorhanden
+        //        // item = "B"
+        //        if (item.next != null)  // "C"
+        //        {
+        //            anz--;
+        //            // Nächstes Element überspringen = löschen
+        //            item.next = item.next.next;  // item.next = null
+        //            // Wenn gesuchtes Element == letztes Element:
+        //            if (item.next == null)
+        //                ende = item;
+        //        }
+        //    }
+        //}
+        #endregion
+        public void Print()
+        {
+            for (Element item = anf; item != null; item = item.next)
+            {
+                Console.WriteLine(item);
+            }
+        }
+        public IEnumerator<KeyValuePaar<K,V>> GetEnumerator()
+        {
+            for (Element item = anf; item != null; item = item.next)
+            {
+                yield return new KeyValuePaar<K, V>(item.key, item.val);
+            }
+        }
+
+        //public IEnumerable<T> Filter(string pattern)
+        //{
+        //    for (Element item = anf; item != null; item = item.next)
+        //    {
+        //        if (item.daten.Contains(pattern))
+        //            yield return item.daten; // Merken dieser Ausführungsposition
+        //                                    // UND Zurückliefern von item.name
+        //                                    // Beim nächsten Aufruf von GetEnumerator() wird
+        //                                    // an der gespeicherten Pos. weitergemacht.
+        //    }
+        //}
+
+
+        
+        private Element ElementSearch(K key)
+        {
+            for (Element item = anf; item != null; item=item.next)
+            {
+                if (item.key.CompareTo(key) == 0)
+                    return item;
+            }
+            return null;
+        }
+        public V this[K key]
+        {
+            get
+            {
+                Element item = ElementSearch(key);
+                if (item != null)
+                    return item.val;
+                throw new Exception($"Der Schlüssel {key} wurde nicht gefunden!");
+            }
+            set 
+            {
+                Element item = ElementSearch(key);
+                if (item != null)   // Existiert der Schlüssel schon in der Liste?
+                    item.val = value;  // JA: Wert aktualisieren
+                else
+                    AddEnd(key, value); // NEIN: Neues Schlüssel|Wert-Objekt der Liste hinzufügen
+            }
+        }
+
+        
+
+        //public int CompareTo(KeyValueListe<K, V> other)
+        //{
+        //    throw new NotImplementedException();
+        //}
+    }
+}
diff --git a/07 UebgSaKeyValueList/obj/07 UebgKeyValueList.csproj.nuget.dgspec.json b/07 UebgSaKeyValueList/obj/07 UebgKeyValueList.csproj.nuget.dgspec.json
new file mode 100644
index 0000000000000000000000000000000000000000..20e2e1d65371e7a78a9451d11aa9d89f61fc7d07
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/07 UebgKeyValueList.csproj.nuget.dgspec.json	
@@ -0,0 +1,66 @@
+{
+  "format": 1,
+  "restore": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07 UebgKeyValueList.csproj": {}
+  },
+  "projects": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07 UebgKeyValueList.csproj": {
+      "version": "1.0.0",
+      "restore": {
+        "projectUniqueName": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07 UebgKeyValueList.csproj",
+        "projectName": "07 UebgKeyValueList",
+        "projectPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07 UebgKeyValueList.csproj",
+        "packagesPath": "C:\\Users\\wienkop\\.nuget\\packages\\",
+        "outputPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\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,
+          "downloadDependencies": [
+            {
+              "name": "Microsoft.AspNetCore.App.Ref",
+              "version": "[3.1.2, 3.1.2]"
+            }
+          ],
+          "frameworkReferences": {
+            "Microsoft.NETCore.App": {
+              "privateAssets": "all"
+            }
+          },
+          "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\3.1.300\\RuntimeIdentifierGraph.json"
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/07 UebgSaKeyValueList/obj/07 UebgKeyValueList.csproj.nuget.g.props b/07 UebgSaKeyValueList/obj/07 UebgKeyValueList.csproj.nuget.g.props
new file mode 100644
index 0000000000000000000000000000000000000000..71e2560680d6cba0b1c8f0e4f5c188f730659b86
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/07 UebgKeyValueList.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.6.0</NuGetToolVersion>
+  </PropertyGroup>
+  <PropertyGroup>
+    <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/07 UebgSaKeyValueList/obj/07 UebgKeyValueList.csproj.nuget.g.targets b/07 UebgSaKeyValueList/obj/07 UebgKeyValueList.csproj.nuget.g.targets
new file mode 100644
index 0000000000000000000000000000000000000000..53cfaa19b16f3769b2bfc33db3b5c0053c16fdba
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/07 UebgKeyValueList.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/07 UebgSaKeyValueList/obj/07 UebgSa_KeyValueList.csproj.nuget.dgspec.json b/07 UebgSaKeyValueList/obj/07 UebgSa_KeyValueList.csproj.nuget.dgspec.json
new file mode 100644
index 0000000000000000000000000000000000000000..64c5e7647a5bf69145ca85cf9445360fe69a0e74
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/07 UebgSa_KeyValueList.csproj.nuget.dgspec.json	
@@ -0,0 +1,66 @@
+{
+  "format": 1,
+  "restore": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07 UebgSa_KeyValueList.csproj": {}
+  },
+  "projects": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07 UebgSa_KeyValueList.csproj": {
+      "version": "1.0.0",
+      "restore": {
+        "projectUniqueName": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07 UebgSa_KeyValueList.csproj",
+        "projectName": "07 UebgSa_KeyValueList",
+        "projectPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07 UebgSa_KeyValueList.csproj",
+        "packagesPath": "C:\\Users\\wienkop\\.nuget\\packages\\",
+        "outputPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\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,
+          "downloadDependencies": [
+            {
+              "name": "Microsoft.AspNetCore.App.Ref",
+              "version": "[3.1.2, 3.1.2]"
+            }
+          ],
+          "frameworkReferences": {
+            "Microsoft.NETCore.App": {
+              "privateAssets": "all"
+            }
+          },
+          "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\3.1.300\\RuntimeIdentifierGraph.json"
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/07 UebgSaKeyValueList/obj/07 UebgSa_KeyValueList.csproj.nuget.g.props b/07 UebgSaKeyValueList/obj/07 UebgSa_KeyValueList.csproj.nuget.g.props
new file mode 100644
index 0000000000000000000000000000000000000000..71e2560680d6cba0b1c8f0e4f5c188f730659b86
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/07 UebgSa_KeyValueList.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.6.0</NuGetToolVersion>
+  </PropertyGroup>
+  <PropertyGroup>
+    <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/07 UebgSaKeyValueList/obj/07 UebgSa_KeyValueList.csproj.nuget.g.targets b/07 UebgSaKeyValueList/obj/07 UebgSa_KeyValueList.csproj.nuget.g.targets
new file mode 100644
index 0000000000000000000000000000000000000000..53cfaa19b16f3769b2bfc33db3b5c0053c16fdba
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/07 UebgSa_KeyValueList.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/07 UebgSaKeyValueList/obj/07KeyValueList.csproj.nuget.dgspec.json b/07 UebgSaKeyValueList/obj/07KeyValueList.csproj.nuget.dgspec.json
new file mode 100644
index 0000000000000000000000000000000000000000..fda0866f3e8814d685c2a458b20791cb794ced96
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/07KeyValueList.csproj.nuget.dgspec.json	
@@ -0,0 +1,66 @@
+{
+  "format": 1,
+  "restore": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07KeyValueList.csproj": {}
+  },
+  "projects": {
+    "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07KeyValueList.csproj": {
+      "version": "1.0.0",
+      "restore": {
+        "projectUniqueName": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07KeyValueList.csproj",
+        "projectName": "07KeyValueList",
+        "projectPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07KeyValueList.csproj",
+        "packagesPath": "C:\\Users\\wienkop\\.nuget\\packages\\",
+        "outputPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\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,
+          "downloadDependencies": [
+            {
+              "name": "Microsoft.AspNetCore.App.Ref",
+              "version": "[3.1.2, 3.1.2]"
+            }
+          ],
+          "frameworkReferences": {
+            "Microsoft.NETCore.App": {
+              "privateAssets": "all"
+            }
+          },
+          "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\3.1.300\\RuntimeIdentifierGraph.json"
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/07 UebgSaKeyValueList/obj/07KeyValueList.csproj.nuget.g.props b/07 UebgSaKeyValueList/obj/07KeyValueList.csproj.nuget.g.props
new file mode 100644
index 0000000000000000000000000000000000000000..71e2560680d6cba0b1c8f0e4f5c188f730659b86
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/07KeyValueList.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.6.0</NuGetToolVersion>
+  </PropertyGroup>
+  <PropertyGroup>
+    <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/07 UebgSaKeyValueList/obj/07KeyValueList.csproj.nuget.g.targets b/07 UebgSaKeyValueList/obj/07KeyValueList.csproj.nuget.g.targets
new file mode 100644
index 0000000000000000000000000000000000000000..53cfaa19b16f3769b2bfc33db3b5c0053c16fdba
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/07KeyValueList.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/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/.NETCoreApp,Version=v3.1.AssemblyAttributes.cs b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/.NETCoreApp,Version=v3.1.AssemblyAttributes.cs
new file mode 100644
index 0000000000000000000000000000000000000000..ad8dfe1a6310302587a2d0c0111d81b250eb4105
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/.NETCoreApp,Version=v3.1.AssemblyAttributes.cs	
@@ -0,0 +1,4 @@
+// <autogenerated />
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v3.1", FrameworkDisplayName = "")]
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgKeyValueList.AssemblyInfo.cs b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgKeyValueList.AssemblyInfo.cs
new file mode 100644
index 0000000000000000000000000000000000000000..7e96677877b400ff51ced90c1d735388a9942006
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgKeyValueList.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("07 UebgKeyValueList")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
+[assembly: System.Reflection.AssemblyProductAttribute("07 UebgKeyValueList")]
+[assembly: System.Reflection.AssemblyTitleAttribute("07 UebgKeyValueList")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Von der MSBuild WriteCodeFragment-Klasse generiert.
+
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgKeyValueList.AssemblyInfoInputs.cache b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgKeyValueList.AssemblyInfoInputs.cache
new file mode 100644
index 0000000000000000000000000000000000000000..7d960bc81a888d3574a87ef9bc76969d85151664
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgKeyValueList.AssemblyInfoInputs.cache	
@@ -0,0 +1 @@
+a776e2f87f8a28177fa3c067ad4efa70f6d803cb
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgKeyValueList.assets.cache b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgKeyValueList.assets.cache
new file mode 100644
index 0000000000000000000000000000000000000000..3c5fc8f6d81e20c5c0d4576011aa85a7d6c2202b
Binary files /dev/null and b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgKeyValueList.assets.cache differ
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgSa_KeyValueList.AssemblyInfo.cs b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgSa_KeyValueList.AssemblyInfo.cs
new file mode 100644
index 0000000000000000000000000000000000000000..43f6c14bdb2a2494e859cc0d2933a99ae1a0ff0b
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgSa_KeyValueList.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("07 UebgSa_KeyValueList")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
+[assembly: System.Reflection.AssemblyProductAttribute("07 UebgSa_KeyValueList")]
+[assembly: System.Reflection.AssemblyTitleAttribute("07 UebgSa_KeyValueList")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Von der MSBuild WriteCodeFragment-Klasse generiert.
+
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgSa_KeyValueList.AssemblyInfoInputs.cache b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgSa_KeyValueList.AssemblyInfoInputs.cache
new file mode 100644
index 0000000000000000000000000000000000000000..40ae51dc08d30f268ad0060156770bc5667d91f5
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgSa_KeyValueList.AssemblyInfoInputs.cache	
@@ -0,0 +1 @@
+71ce959a69698b43c54a09df5ffbf26f24487695
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgSa_KeyValueList.assets.cache b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgSa_KeyValueList.assets.cache
new file mode 100644
index 0000000000000000000000000000000000000000..e0381a2f3b1efbb5a15eaebb277dc668ed3d510f
Binary files /dev/null and b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07 UebgSa_KeyValueList.assets.cache differ
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.AssemblyInfo.cs b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.AssemblyInfo.cs
new file mode 100644
index 0000000000000000000000000000000000000000..6c5fb8293cc079ee1f8cc3ec87adce82e0839c94
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.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("07KeyValueList")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
+[assembly: System.Reflection.AssemblyProductAttribute("07KeyValueList")]
+[assembly: System.Reflection.AssemblyTitleAttribute("07KeyValueList")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Von der MSBuild WriteCodeFragment-Klasse generiert.
+
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.AssemblyInfoInputs.cache b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.AssemblyInfoInputs.cache
new file mode 100644
index 0000000000000000000000000000000000000000..d45834b4e48550f3f4ec87283e1220248f0b6b83
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.AssemblyInfoInputs.cache	
@@ -0,0 +1 @@
+ee080a0dd2797719d84430492bb327e242d6c997
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.assets.cache b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.assets.cache
new file mode 100644
index 0000000000000000000000000000000000000000..76f953df6f19681395df89dbee5ee64022090ec6
Binary files /dev/null and b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.assets.cache differ
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.csproj.CoreCompileInputs.cache b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000000000000000000000000000000000000..5b4c5ef652ac1f641968d7f882b541f8daa439fb
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.csproj.CoreCompileInputs.cache	
@@ -0,0 +1 @@
+f8b0ec365030a8006743282e0105ee637814682b
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.csproj.FileListAbsolute.txt b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000000000000000000000000000000000000..22f16afb3fc0f40154588b654d1b9dc4966a356b
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.csproj.FileListAbsolute.txt	
@@ -0,0 +1,13 @@
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\bin\Debug\netcoreapp3.1\07KeyValueList.exe
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\bin\Debug\netcoreapp3.1\07KeyValueList.deps.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\bin\Debug\netcoreapp3.1\07KeyValueList.runtimeconfig.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\bin\Debug\netcoreapp3.1\07KeyValueList.runtimeconfig.dev.json
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\bin\Debug\netcoreapp3.1\07KeyValueList.dll
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\bin\Debug\netcoreapp3.1\07KeyValueList.pdb
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\obj\Debug\netcoreapp3.1\07KeyValueList.AssemblyInfoInputs.cache
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\obj\Debug\netcoreapp3.1\07KeyValueList.AssemblyInfo.cs
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\obj\Debug\netcoreapp3.1\07KeyValueList.csproj.CoreCompileInputs.cache
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\obj\Debug\netcoreapp3.1\07KeyValueList.dll
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\obj\Debug\netcoreapp3.1\07KeyValueList.pdb
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\obj\Debug\netcoreapp3.1\07KeyValueList.genruntimeconfig.cache
+C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\07KeyValueList\obj\Debug\netcoreapp3.1\07KeyValueList.csprojAssemblyReference.cache
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.csprojAssemblyReference.cache b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.csprojAssemblyReference.cache
new file mode 100644
index 0000000000000000000000000000000000000000..74fe67b1ca671095970d4a7fbcae2417231e8f41
Binary files /dev/null and b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.csprojAssemblyReference.cache differ
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.dll b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.dll
new file mode 100644
index 0000000000000000000000000000000000000000..b74c9e26aafb644daacbe3ef2443017974f4c7a7
Binary files /dev/null and b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.dll differ
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.exe b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.exe
new file mode 100644
index 0000000000000000000000000000000000000000..125fff834c88827cb90c01cdb811e27f38cc1155
Binary files /dev/null and b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.exe differ
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.genruntimeconfig.cache b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.genruntimeconfig.cache
new file mode 100644
index 0000000000000000000000000000000000000000..34bedab819ef1631d37d6e87ef9a716c545a105e
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.genruntimeconfig.cache	
@@ -0,0 +1 @@
+86c8e15dd33445635927cfaf398408205fd11473
diff --git a/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.pdb b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.pdb
new file mode 100644
index 0000000000000000000000000000000000000000..e7deb1bcbcf9d68261b1a844950cdc3947ab5a3e
Binary files /dev/null and b/07 UebgSaKeyValueList/obj/Debug/netcoreapp3.1/07KeyValueList.pdb differ
diff --git a/07 UebgSaKeyValueList/obj/project.assets.json b/07 UebgSaKeyValueList/obj/project.assets.json
new file mode 100644
index 0000000000000000000000000000000000000000..6b10348a9b715c88c5b359f6ebd3dcd9065bd2a5
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/project.assets.json	
@@ -0,0 +1,71 @@
+{
+  "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\\07 UebgSaKeyValueList\\07 UebgSa_KeyValueList.csproj",
+      "projectName": "07 UebgSa_KeyValueList",
+      "projectPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07 UebgSa_KeyValueList.csproj",
+      "packagesPath": "C:\\Users\\wienkop\\.nuget\\packages\\",
+      "outputPath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\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,
+        "downloadDependencies": [
+          {
+            "name": "Microsoft.AspNetCore.App.Ref",
+            "version": "[3.1.2, 3.1.2]"
+          }
+        ],
+        "frameworkReferences": {
+          "Microsoft.NETCore.App": {
+            "privateAssets": "all"
+          }
+        },
+        "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\3.1.300\\RuntimeIdentifierGraph.json"
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/07 UebgSaKeyValueList/obj/project.nuget.cache b/07 UebgSaKeyValueList/obj/project.nuget.cache
new file mode 100644
index 0000000000000000000000000000000000000000..ce5033b5249060541c5e04bfcc44003813d1fb6b
--- /dev/null
+++ b/07 UebgSaKeyValueList/obj/project.nuget.cache	
@@ -0,0 +1,10 @@
+{
+  "version": 2,
+  "dgSpecHash": "nEPP82sf4BVifdQhElULY5HKcskRnjIBjHz8YHYfWvAPOhisF+In3k8TH/FyJLEODqPXHAwUj3gGeiTJh8yd/Q==",
+  "success": true,
+  "projectFilePath": "C:\\Users\\wienkop\\source\\repos\\prog2-ss2020-wienkop\\07 UebgSaKeyValueList\\07 UebgSa_KeyValueList.csproj",
+  "expectedPackageFiles": [
+    "C:\\Users\\wienkop\\.nuget\\packages\\microsoft.aspnetcore.app.ref\\3.1.2\\microsoft.aspnetcore.app.ref.3.1.2.nupkg.sha512"
+  ],
+  "logs": []
+}
\ No newline at end of file
diff --git a/07KeyValueList/Program.cs b/07KeyValueList/Program.cs
index f57e8f137d1f147e1ad34f78b018113b8947e3be..8f0823dbac5500c3cdb4749f6de1cd9be1e7a9fb 100644
--- a/07KeyValueList/Program.cs
+++ b/07KeyValueList/Program.cs
@@ -34,12 +34,12 @@ namespace _07KeyValueList
 
             List<Termin> termineMi = new List<Termin>();
             termineMi.Add(new Termin("08:00 Prog2-Vorlesung", "Gruppe-Wienkop"));
-            termineMi.Add(new Termin ("09:45 Dig Bildbearbeitung","MA-MIN"));
+            termineMi.Add(new Termin("09:45 Dig Bildbearbeitung", "MA-MIN"));
 
             List<Termin> termineDi = new List<Termin>();
             termineDi.Add(new Termin("08:00 Prog2-Übung", "Gruppe-Wienkop"));
             termineDi.Add(new Termin("09:45 Prog2-Vorlesung", "Gruppe-Wienkop"));
-            termineDi.Add(new Termin("11:30 Mitarbeiterbesprechung","Jobbörse"));
+            termineDi.Add(new Termin("11:30 Mitarbeiterbesprechung", "Jobbörse"));
 
             KeyValueListe<string, List<Termin>> terminverwaltung = new KeyValueListe<string, List<Termin>>();
             terminverwaltung["03.06.2020"] = termineMi;
diff --git a/prog2-ss2020-wienkop.sln b/prog2-ss2020-wienkop.sln
index 41bb942838354f86a638686eac650f8eb1d1c2bf..32a65a659801ec3d19bfa640338feda41ea08962 100644
--- a/prog2-ss2020-wienkop.sln
+++ b/prog2-ss2020-wienkop.sln
@@ -48,7 +48,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "04 UebgDi Vererbung", "04 U
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "04VererbungGrafischeObjekte", "04VererbungGrafischeObjekte\04VererbungGrafischeObjekte.csproj", "{7E54DCD9-0FAE-42BD-AC56-ED65E6AA60EE}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HTMLEngine", "05HTMLEngine\HTMLEngine.csproj", "{BCED82D0-F95F-4D82-9019-2C63D6B3CC8A}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "06HTMLEngine", "05HTMLEngine\06HTMLEngine.csproj", "{BCED82D0-F95F-4D82-9019-2C63D6B3CC8A}"
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "05 UebgMo Warenwirtschaft", "05 UebgMo Warenwirtschaft\05 UebgMo Warenwirtschaft.csproj", "{2CFDBE8A-4925-4E0C-A686-7554394003A6}"
 EndProject
@@ -78,11 +78,13 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "06GenericList", "06GenericL
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "06 UebgSaGenerics", "06 UebgSaGenerics\06 UebgSaGenerics.csproj", "{E177C278-2083-4221-A614-8AAFC194745D}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "07ObjectVsT", "07ObjectVsT\07ObjectVsT.csproj", "{1C7727A9-0975-45FA-AD72-B81FEB7572A8}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "07ObjectVsT", "07ObjectVsT\07ObjectVsT.csproj", "{1C7727A9-0975-45FA-AD72-B81FEB7572A8}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "07 MethodeSplitArray", "07 MethodeSplitArray\07 MethodeSplitArray.csproj", "{2BFE8B77-52C4-4AF5-A77F-3C7A52D1C713}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "07 MethodeSplitArray", "07 MethodeSplitArray\07 MethodeSplitArray.csproj", "{2BFE8B77-52C4-4AF5-A77F-3C7A52D1C713}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "07KeyValueList", "07KeyValueList\07KeyValueList.csproj", "{0EBEF67A-606F-448B-A7BF-AE2D5FE46CA7}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "07KeyValueList", "07KeyValueList\07KeyValueList.csproj", "{0EBEF67A-606F-448B-A7BF-AE2D5FE46CA7}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "07 UebgSa_KeyValueList", "07 UebgSaKeyValueList\07 UebgSa_KeyValueList.csproj", "{D164DF7F-E646-4754-B78C-FF95A9263874}"
 EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -242,6 +244,10 @@ Global
 		{0EBEF67A-606F-448B-A7BF-AE2D5FE46CA7}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{0EBEF67A-606F-448B-A7BF-AE2D5FE46CA7}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{0EBEF67A-606F-448B-A7BF-AE2D5FE46CA7}.Release|Any CPU.Build.0 = Release|Any CPU
+		{D164DF7F-E646-4754-B78C-FF95A9263874}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{D164DF7F-E646-4754-B78C-FF95A9263874}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{D164DF7F-E646-4754-B78C-FF95A9263874}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{D164DF7F-E646-4754-B78C-FF95A9263874}.Release|Any CPU.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE