public async static Task <(List <classes.Meaning>, classes.WordForm_Overload)> FetchWordDetails(string xmlWord)
        {
            List <classes.Meaning> lmOut = new List <classes.Meaning>();

            string[] LangArray = { "LU", "DE", "FR", "EN", "PT" };
            classes.WordForm_Overload wordForm = new classes.WordForm_Overload();

            foreach (string currlang in LangArray)
            {
                EmptyClass em           = new EmptyClass();
                var        responseTask = em.HttpRequest(currlang, xmlWord);
                string     responseBody = await responseTask;

                //build wordForm
                wordForm = getWordForm(wordForm, responseBody, currlang);

                //getMeanings

                lmOut = getMeanings(lmOut, responseBody, currlang);
            }



            return(lmOut, wordForm);
        }
        private static classes.WordForm_Overload getWordForm(classes.WordForm_Overload wf_ov, string responseBody, string currentLanguage)
        {
            HtmlAgilityPack.HtmlDocument LangDocument = new HtmlAgilityPack.HtmlDocument();
            LangDocument.LoadHtml(responseBody);
            string wuertForm = null;

            if (LangDocument.DocumentNode.SelectNodes("//div[@class='uds_block']") != null)
            {
                if (LangDocument.DocumentNode.SelectSingleNode(".//span[@class='klass']").InnerText.Trim() != "♦")
                {
                    wuertForm = LangDocument.DocumentNode.SelectSingleNode(".//span[@class='klass']").InnerText.Trim();
                }
                else
                {
                    wuertForm = LangDocument.DocumentNode.SelectSingleNode(".//span[@class='klass'][2]").InnerText.Trim();
                }
                //Set Translated WordForms
                wf_ov.SetWordForm(currentLanguage, wuertForm);

                //Set Base Values (Pluriel(s), Hellefsverb, Adverb), ONLY WHEN LU
                if (currentLanguage == "LU")
                {
                    /* Get <div class="artikel" ...... until <div class="uds_block" */

                    string       trgrgrgr   = LangDocument.DocumentNode.SelectSingleNode("//div[@class='artikel']").InnerHtml;
                    HtmlDocument articleDoc = new HtmlAgilityPack.HtmlDocument();
                    articleDoc.LoadHtml(trgrgrgr);
                    var divs = articleDoc.DocumentNode.SelectNodes("//div");
                    foreach (var tag in divs)
                    {
                        tag.Remove();
                    }

                    //Gëtt schonn eischter agesaat
                    var Basiswuert = articleDoc.DocumentNode.SelectNodes("//span[@class='adress mentioun_adress']/text()");

                    /*BasisWuert(/Wieder) : //span[@class='adress mentioun_adress']/text()
                     */

                    var HV = articleDoc.DocumentNode.SelectSingleNode("//span[@class='text_gen']/span[@class='mentioun_adress']/text()");
                    if (HV != null)
                    {
                        wf_ov.WordFormHelperVerb = HV.InnerText.Trim();
                    }

                    /*HV(en) : //span[@class='text_gen']/span[@class='mentioun_adress']/text()
                     */

                    var PP = articleDoc.DocumentNode.SelectNodes("//span[contains(.,'Participe passé')]/following-sibling::span[@class='mentioun_adress']/text()");

                    if (PP != null)
                    {
                        int ppc = 0;
                        foreach (var pp in PP)
                        {
                            if (ppc == 0)
                            {
                                wf_ov.pastParticiple += pp.InnerText.Trim() + " / ";
                                ppc++;
                            }
                            else
                            {
                                wf_ov.pastParticiple += pp.InnerText.Trim();
                            }
                        }
                    }

                    //wf_ov.pastParticiple = PP.InnerText.Trim();

                    /*PP : //div[@class='artikel']/span[@class='mentioun_adress']/text()
                     */

                    var Pluriel = articleDoc.DocumentNode.SelectNodes("//span[@class='mentioun_adress popup']/text()|//span[@class='mentioun_adress']/span[@class='mentioun_adress']/text()");
                    if (Pluriel != null)
                    {
                        if (wf_ov.WordFormPlurals == null)
                        {
                            wf_ov.InitWordFormPlurals();
                        }
                        foreach (var pluriel in Pluriel)
                        {
                            wf_ov.WordFormPlurals.Add(pluriel.InnerText.Trim());
                        }
                    }

                    /* Pluriel(en): //span[@class='mentioun_adress popup']/text()|//span[@class='mentioun_adress']/span[@class='mentioun_adress']/text()
                     */

                    // substring-after(//span[@id='myPopup'][1]/text(),'ouni -n ')
                    var EiffelerTmp = articleDoc.DocumentNode.SelectSingleNode("//span[@id='myPopup'][1]/text()[1]");
                    if (EiffelerTmp != null)
                    {
                        wf_ov.eiffelerForm = EiffelerTmp.InnerText.Replace("ouni -n: ", "");
                    }

                    /* Eiffeler Reegel: substring-after(//span[@id='myPopup'][1]/text(),'ouni -n')
                     */

                    var Variant = articleDoc.DocumentNode.SelectNodes("//span[@class='lu_link']");
                    if (Variant != null)
                    {
                        wf_ov.isVariant = true;
                    }
                    else
                    {
                        wf_ov.isVariant = false;
                    }

                    /* isVariant: //span[@class='lu_link']
                     */

                    Console.WriteLine();
                }
                Console.WriteLine();
            }
            else
            {
                //Variant possible
                var vi = LangDocument.DocumentNode.SelectSingleNode(".//span[@class='klass']");
                if (vi != null)
                {
                    if (vi.InnerText.Trim() != "♦")
                    {
                        wuertForm = LangDocument.DocumentNode.SelectSingleNode(".//span[@class='klass']").InnerText.Trim();
                    }
                    else
                    {
                        wuertForm = LangDocument.DocumentNode.SelectSingleNode(".//span[@class='klass'][2]").InnerText.Trim();
                    }
                    //Set Translated WordForms
                    wf_ov.SetWordForm(currentLanguage, wuertForm);

                    if (currentLanguage == "LU")
                    {
                        /* Get <div class="artikel" ...... until <div class="uds_block" */

                        string       trgrgrgr   = LangDocument.DocumentNode.SelectSingleNode("//div[@class='artikel']").InnerHtml;
                        HtmlDocument articleDoc = new HtmlAgilityPack.HtmlDocument();
                        articleDoc.LoadHtml(trgrgrgr);

                        var Variant = articleDoc.DocumentNode.SelectNodes("//span[@class='lu_link']");
                        if (Variant != null)
                        {
                            wf_ov.isVariant = true;
                        }
                        else
                        {
                            wf_ov.isVariant = false;
                        }
                    }
                }
            }


            return(wf_ov);
        }