public EA_POM Search_Enrolment()
        {
            Thread.Sleep(2000);
            //Clicking on DropDown

            Hash_Drop.ElementAt(0).Click();
            Thread.Sleep(3000);
            //Clicking inside the Search box
            Search_Records.ElementAt(0).Click();
            //Passing data into Search box
            Search_Records.ElementAt(0).SendKeys("1741");
            try
            {
                //Clicking on Search btn
                Search_btn.ElementAt(0).Click();
                //getting button Element
                Search_btn_bool = Search_btn.ElementAt(0).Displayed;
                Thread.Sleep(3000);
                //Search button verify
                if (Search_btn_bool == true)
                {
                    Asserts.Assert_Search_btn(true);
                }
            }
            catch
            {
                Asserts.Assert_Search_btn(false);
            }
            //Verifying Search results
            for (int i = 0; i < Search_Record_Results.Count; i++)
            {
                Id_Bool = Search_Record_Results[i].Displayed;
                Console.WriteLine(Search_Record_Results[i].Text);
            }
            if (Id_Bool == true)
            {
                Asserts.Assert_Id_Found(true);
            }
            else
            {
                Asserts.Assert_Id_Found(false);
            }

            Thread.Sleep(3000);
            Double_click[0] = true;
            // Web_Driver.driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(3);
            Double();
            //Clicking on Clear Button
            Thread.Sleep(3000);
            try
            {
                //Verifying Search_Clear button
                Clear_Btn.ElementAt(0).Click();
                Clear_Bool = Clear_Btn.ElementAt(0).Displayed;

                if (Clear_Bool == true)
                {
                    Asserts.Assert_Search_Clear(true);
                }
            }
            catch
            {
                Asserts.Assert_Search_Clear(false);
            }
            //Disapear Drop
            Thread.Sleep(3000);
            Hash_Drop.ElementAt(0).Click();
            //Verifying Search With Name

            //Clicking on DropDown
            Hash_Drop.ElementAt(1).Click();
            Thread.Sleep(3000);
            //Clicking inside the Search box
            Search_Records.ElementAt(1).Click();
            //Passing data into Search box
            Search_Records.ElementAt(1).SendKeys("Usama");
            try
            {
                //Clicking on Search btn
                Search_btn.ElementAt(1).Click();
                //getting button Element
                Search_btn1_bool = Search_btn.ElementAt(1).Displayed;
                Thread.Sleep(3000);
                //Search button verify
                if (Search_btn1_bool == true)
                {
                    Asserts.Assert_Search_btn(true);
                }
            }
            catch
            {
                Asserts.Assert_Search_btn(false);
            }
            //Verifying Search results

            try
            {
                int    i;
                bool[] Name_Bool = new bool[Search_Record_Results.Count];
                Console.WriteLine(Search_Record_Results.Count + "" +
                                  " Records");
                for (i = 0; i < Search_Record_Results.Count; i++)
                {
                    Name_Bool[i] = Search_Record_Results[i].Displayed;
                    Console.WriteLine(Search_Record_Results[i].Text);
                    if (Name_Bool[i] == true)
                    {
                        Asserts.Assert_Name_Found(Name_Bool[i]);
                    }
                }

                if (Search_Record_Results.Count == 0)
                {
                    Asserts.Assert_Name_Found(false);
                }
            }
            catch
            {
            }

            Thread.Sleep(3000);
            Double_click[1] = true;
            // Web_Driver.driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(3);
            Double();
            //Clicking on Clear Button
            Thread.Sleep(3000);
            try
            {
                //Verifying Search_Clear button
                Clear_Btn.ElementAt(1).Click();
                Clear_Bool_1 = Clear_Btn.ElementAt(1).Displayed;

                if (Clear_Bool_1 == true)
                {
                    Asserts.Assert_Search_Clear(true);
                }
            }
            catch
            {
                Asserts.Assert_Search_Clear(false);
            }
            //Disapear Drop
            Thread.Sleep(3000);
            Hash_Drop.ElementAt(1).Click();
            //Verifying email Address
            Hash_Drop.ElementAt(2).Click();
            Thread.Sleep(3000);
            //Clicking inside the Search box
            Search_Records.ElementAt(2).Click();
            //Passing data into Search box
            Search_Records.ElementAt(2).SendKeys("*****@*****.**");
            try
            {
                //Clicking on Search btn
                Search_btn2_bool = Search_btn.ElementAt(2).Displayed;
                Search_btn.ElementAt(2).Click();
                //getting button Element

                Console.WriteLine(Search_btn2_bool);
                Thread.Sleep(3000);
                //Search button verify
                if (Search_btn2_bool == true)
                {
                    Asserts.Assert_Search_btn(true);
                }
                else
                {
                    Asserts.Assert_Search_btn(false);
                }
            }
            catch
            {
            }
            try
            {
                //Verifying Search results
                int    i          = 0;
                bool[] Email_Bool = new bool[Search_Record_Results.Count];
                for (i = 0; i < Search_Record_Results.Count; i++)
                {
                    Email_Bool[i] = Search_Record_Results[i].Displayed;
                    Console.WriteLine(Search_Record_Results[i].Text);
                    Console.WriteLine(Email_Bool + "  Email bool");
                    if (Email_Bool[i] == true)
                    {
                        Asserts.Assert_Email_Found(Email_Bool[i]);
                    }
                }

                if (Search_Record_Results.Count == 0)
                {
                    Asserts.Assert_Email_Found(false);
                }
            }
            catch
            {
            }



            Thread.Sleep(3000);
            Double_click[2] = true;
            // Web_Driver.driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(3);
            Double();
            //Clicking on Clear Button
            Thread.Sleep(3000);
            try
            {
                //Verifying Search_Clear button
                Clear_Btn.ElementAt(4).Click();
                Clear_Bool_2 = Clear_Btn.ElementAt(2).Displayed;

                if (Clear_Bool_2 == true)
                {
                    Asserts.Assert_Search_Clear(true);
                }
            }
            catch
            {
                Asserts.Assert_Search_Clear(false);
            }
            //Disapear Drop
            Thread.Sleep(3000);
            Hash_Drop.ElementAt(2).Click();
            //Verifying Plan Records
            //Clicking on DropDown
            Hash_Drop.ElementAt(3).Click();
            Thread.Sleep(3000);
            //Clicking inside the Search box
            Search_Records.ElementAt(3).Click();
            //Passing data into Search box
            Search_Records.ElementAt(3).SendKeys("H7607-003-003");
            try
            {
                //Clicking on Search btn
                Search_btn.ElementAt(3).Click();
                //getting button Element
                Search_btn3_bool = Search_btn.ElementAt(3).Displayed;
                Thread.Sleep(3000);
                //Search button verify
                if (Search_btn3_bool == true)
                {
                    Asserts.Assert_Search_btn(true);
                }
            }
            catch
            {
                Asserts.Assert_Search_btn(false);
            }
            //Verifying Search results
            try
            {
                int    i;
                bool[] Plan_Bool = new bool[Search_Record_Results.Count];
                for (i = 0; i < Search_Record_Results.Count; i++)
                {
                    Plan_Bool[i] = Search_Record_Results[20].Displayed;
                    Console.WriteLine(Search_Record_Results[i].Text);
                    if (Plan_Bool[i] == true)
                    {
                        Asserts.Assert_Plan_Found(Plan_Bool[i]);
                    }
                }
                if (Search_Record_Results.Count == 0)
                {
                    Asserts.Assert_Plan_Found(false);
                }
            }
            catch
            {
            }

            Thread.Sleep(3000);
            Double_click[3] = true;
            // Web_Driver.driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(3);
            Double();
            //Clicking on Clear Button
            Thread.Sleep(3000);
            try
            {
                //Verifying Search_Clear button
                Clear_Btn.ElementAt(3).Click();
                Clear_Bool_3 = Clear_Btn.ElementAt(3).Displayed;
                Console.WriteLine(Clear_Bool_3);



                if (Clear_Bool_3 == true)
                {
                    Asserts.Assert_Search_Clear(true);
                }
            }
            catch
            {
                Asserts.Assert_Search_Clear(false);
            }
            //Disapear Drop
            Thread.Sleep(3000);
            Hash_Drop.ElementAt(3).Click();

            //Verifying Created
            //Getting Latest date
            Created_Latest_Date = Created_Date.Text;
            Console.WriteLine(Created_Latest_Date);
            Created_Click.Click();
            Thread.Sleep(3000);
            Created_Last_Date = Created_Date.Text;
            Console.WriteLine(Created_Last_Date);
            Asserts.Date_Comparison(Created_Latest_Date, Created_Last_Date);
            //Verifying Status
            Hash_Drop.ElementAt(4).Click();
            Thread.Sleep(3000);
            //Clicking inside the Search box
            Search_Records.ElementAt(4).Click();
            //Passing data into Search box
            Search_Records.ElementAt(4).SendKeys("Draft");
            try
            {
                //Clicking on Search btn

                Search_btn.ElementAt(5).Click();
                //getting button Element
                Search_btn4_bool = Search_btn.ElementAt(5).Displayed;
                Thread.Sleep(3000);
                //Search button verify
                if (Search_btn4_bool == true)
                {
                    Asserts.Assert_Search_btn(true);
                }
            }
            catch
            {
                Asserts.Assert_Search_btn(false);
            }
            //Verifying Search results
            try
            {
                int    i;
                bool[] Status_Bool = new bool[Search_Record_Results.Count];
                for (i = 67; i < Search_Record_Results.Count; i++)
                {
                    Status_Bool[i] = Search_Record_Results[i].Displayed;
                    Console.WriteLine(Search_Record_Results[i].Text);
                    if (Status_Bool[i] == true)
                    {
                        Asserts.Assert_Status_Found(Status_Bool[i]);
                    }
                }
                if (Search_Record_Results.Count == 0)
                {
                    Asserts.Assert_Status_Found(false);
                }
            }
            catch

            {
            }

            Thread.Sleep(3000);
            Double_click[4] = true;
            // Web_Driver.driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(3);
            Double();
            //Clicking on Clear Button
            Thread.Sleep(3000);
            try
            {
                //Verifying Search_Clear button
                Clear_Btn.ElementAt(5).Click();
                Clear_Bool_4 = Clear_Btn.ElementAt(5).Displayed;

                if (Clear_Bool_4 == true)
                {
                    Asserts.Assert_Search_Clear(true);
                }
            }
            catch
            {
                Asserts.Assert_Search_Clear(false);
            }
            //Disapear Drop
            Thread.Sleep(3000);
            Hash_Drop.ElementAt(4).Click();
            return(new EA_POM());
        }
        public EA_POM Edit_Enrolment()
        {
            Web_Driver.ngWebDriver.WaitForAngular();
            //Getting Records
            Edit_Record_Previous = Edit_Record.Text;
            Console.WriteLine(Edit_Record_Previous + "Previous Record");
            Edit_Id = Search_Record_Colums.Text;
            Console.WriteLine(Edit_Id + "Id");
            Edit_En_btn.Click();
            Web_Driver.ngWebDriver.WaitForAngular();
            //  Plan_Edit_Btn.Click();
            //Getting Text of previous Fields
            Plan_Edit_strng = Plan_Edit_Text.Text;
            Console.WriteLine(Plan_Edit_strng);
            //Getting First Name
            Name_strng = Name.GetAttribute("value");
            Console.WriteLine(Name_strng);
            Name.Clear();
            Name.SendKeys("Ali");
            //Getting New Values
            Name_strng1 = Name.GetAttribute("value");
            Console.WriteLine(Name_strng1);
            //Getting Last Name
            LName_strng = LName.GetAttribute("value");
            Console.WriteLine(LName_strng);
            LName.Clear();
            LName.SendKeys("Asad");
            //Getting new Values
            LName_strng1 = LName.GetAttribute("value");
            Console.WriteLine(LName_strng1);
            //Getting MidName
            MName_strng = MName.GetAttribute("value");
            Console.WriteLine(MName_strng);
            MName.Clear();
            MName.SendKeys("Asa");
            //Getting new Values
            MName_strng1 = MName.GetAttribute("value");
            Console.WriteLine(MName_strng1);
            //Getting Date of Birth
            Dob_strng = Dob.GetAttribute("value");
            Console.WriteLine(Dob_strng);
            Dob.Clear();
            Dob.SendKeys("10/11/2022");
            //Getting new Values
            Dob_strng1 = Dob.GetAttribute("value");
            Console.WriteLine(Dob_strng1);
            //Radio btn
            male_radio = Radio_M_F.ElementAt(0).GetAttribute("value");
            Console.WriteLine(male_radio);
            Radio_M_F.ElementAt(1).Click();
            Fee_Male_radio = Radio_M_F.ElementAt(1).GetAttribute("value");
            Console.WriteLine(Fee_Male_radio);
            //Phone number
            Hphone_strng = Hphone.GetAttribute("value");
            Console.WriteLine(Hphone_strng);
            Hphone.Clear();
            Hphone.SendKeys("9878564598");
            Hpnone1_strng = Hphone.GetAttribute("value");
            Console.WriteLine(Hpnone1_strng);
            //Permanent address
            P_Address_strng = P_Address.GetAttribute("value");
            Console.WriteLine(P_Address_strng);
            //New Values
            P_Address.Clear();
            P_Address.SendKeys("878# Street no5");
            P_Address_strng1 = P_Address.GetAttribute("value");
            Console.WriteLine(P_Address_strng1);
            //Permanent City
            P_City_Strng = P_City.GetAttribute("value");
            Console.WriteLine(P_City_Strng);
            //New Values
            P_City.Clear();
            P_City.SendKeys("Karachi");
            P_City_Strng1 = P_City.GetAttribute("value");
            Console.WriteLine(P_City_Strng1);
            //Permanent County
            P_County_Strng = P_County.GetAttribute("value");
            Console.WriteLine(P_County_Strng);
            //New Values
            P_County.Clear();
            P_County.SendKeys("County");
            P_County_Strng1 = P_County.GetAttribute("value");
            Console.WriteLine(P_County_Strng1);
            //Permanent State
            P_State_Strng = P_State.GetAttribute("value");
            Console.WriteLine(P_State_Strng);
            //New Values
            P_State.Clear();
            P_State.SendKeys("USA");
            P_State_Strng1 = P_State.GetAttribute("value");
            Console.WriteLine(P_State_Strng1);
            //ZipCode
            P_Zip_Strng = P_Zip.GetAttribute("value");
            Console.WriteLine(P_Zip_Strng);
            //New Values
            P_Zip.Clear();
            P_Zip.SendKeys("453454");
            P_Zip_Strng1 = P_Zip.GetAttribute("value");
            Console.WriteLine(P_Zip_Strng1);
            //MD_Number
            Md_No_strng = MD_Number.GetAttribute("value");
            Console.WriteLine(Md_No_strng);
            //New Values
            MD_Number.Clear();
            MD_Number.SendKeys("MD_9001");
            Md_No_strng1 = P_Zip.GetAttribute("value");
            Console.WriteLine(Md_No_strng1);
            //Email Address
            Email_Strng = Email_Adress.GetAttribute("value");
            Console.WriteLine(Email_Strng);
            //New Values
            Email_Adress.Clear();
            Email_Adress.SendKeys("*****@*****.**");
            Email_Strng = Email_Adress.GetAttribute("value");
            Console.WriteLine(Email_Strng1);
            //Pay List testing unchecked CheckBox


            Paylist_bool1 = Paylist.ElementAt(0).Selected;
            Paylist_bool2 = Paylist.ElementAt(1).Selected;
            Paylist_bool3 = Paylist.ElementAt(2).Selected;
            if (Paylist_bool1 == true || Paylist_bool2 == true || Paylist_bool3 == true)
            {
                if (Paylist_bool1 == true)
                {
                    Paylist.ElementAt(0).Click();
                }
                if (Paylist_bool2 == true)
                {
                    Paylist.ElementAt(1).Click();
                }
                if (Paylist_bool3 == true)
                {
                    Paylist.ElementAt(2).Click();
                }
                Asserts.Pay_list1(true);
            }

            if (Paylist_bool1 == false && Paylist_bool2 == false & Paylist_bool3 == false)
            {
                Asserts.Pay_list1(true);
            }
            //cliking on single paylist
            Paylist.ElementAt(0).Click();
            Paylist_bool1 = Paylist.ElementAt(0).Selected;
            Paylist_bool2 = Paylist.ElementAt(1).Selected;
            Paylist_bool3 = Paylist.ElementAt(2).Selected;
            if (Paylist_bool1 == true && Paylist_bool2 == false & Paylist_bool3 == false)
            {
                Asserts.Pay_list(Paylist_bool1);
            }
            else
            {
                Asserts.Pay_list(false);
            }
            //Asertion for Records inrequired fields are changed or not
            if (Name_strng != Name_strng1 && LName_strng != LName_strng1 && MName_strng != MName_strng1 && Dob_strng != Dob_strng1 && P_Address_strng != P_Address_strng1 && P_City_Strng != P_City_Strng1 && P_State_Strng != P_State_Strng1 && male_radio != Fee_Male_radio && Md_No_strng != Md_No_strng1 && Email_Strng != Email_Strng1)
            {
                Asserts.En_Search_Create_pages_Fields_Edit(true);
            }
            else
            {
                Asserts.En_Search_Create_pages_Fields_Edit(false);
            }
            //Save Draft
            Console.WriteLine("Colorsss");

            Save_Draft_Btn_Color = SaveDraft.ElementAt(0).GetCssValue("background-color");
            Console.WriteLine(Save_Draft_Btn_Color + "Color");
            Enroment_create_page_Url = Web_Driver.driver.Url;
            Console.WriteLine(Enroment_create_page_Url);
            SaveDraft.ElementAt(0).Click();


            Save_Draft_Btn_Color1 = SaveDraft.ElementAt(0).GetCssValue("background-color");
            Console.WriteLine(Save_Draft_Btn_Color1 + "Color-");
            //Draft Button cliking verifying

            Asserts.Save_Draft(Save_Draft_Btn_Color, Save_Draft_Btn_Color1);
            Web_Driver.ngWebDriver.WaitForAngular();
            Web_Driver.driver.Navigate().Refresh();


            Enroment_Search_page_Url = Web_Driver.driver.Url;

            Console.WriteLine(Enroment_Search_page_Url);
            Asserts.En_Search_Create_pages_Url(Enroment_create_page_Url, Enroment_Search_page_Url);
            //Getting New Record
            Web_Driver.ngWebDriver.WaitForAngular();


            //Search for Updated Enrolment
            Thread.Sleep(3000);
            Hash_Drop.ElementAt(0).Click();
            //Search by Id
            Search_Records.ElementAt(0).Click();
            Thread.Sleep(3000);

            Search_Records.ElementAt(0).SendKeys(Edit_Id);

            Thread.Sleep(3000);

            Search_btn.ElementAt(0).Click();
            Thread.Sleep(3000);
            //Getting text of updated record
            Edit_Record_Updated = Edit_Record.Text;
            Console.WriteLine(Edit_Record_Updated + " Updated Record");
            //Assertion For Edit Record check
            Asserts.Edit_Record_Update(Edit_Record_Previous, Edit_Record_Updated);
            return(new EA_POM());
        }