internal void EditShareSkill()
        {
            //Call CheckExistingSkillPresent method to check if any Share Skill is present, if not add a Share Skill
            CheckExistingSkillPresent();

            //Creating Share Skill Object
            ShareSkill shareSkill = new ShareSkill();

            //Populate the excel data
            GlobalDefinitions.ExcelLib.PopulateInCollection(Base.ExcelPathManageListing, "EditShareSkill");

            //Call SearchListings Method to get count for existing records with same category,title and description as we are going to update
            int MatchingRecordsBeforeEdit = SearchListings(GlobalDefinitions.ExcelLib.ReadData(2, "Category"), GlobalDefinitions.ExcelLib.ReadData(2, "Title"), GlobalDefinitions.ExcelLib.ReadData(2, "Description"));

            //Navigate to Manage Listing
            NavigateToManageListing();

            Thread.Sleep(2000);

            //Click the Edit icon
            Edit.Click();

            //Call EditShareSkillData method to add Edit data
            shareSkill.EditShareSkillData();

            //Call SaveShareSkill Method to save the Share Skill
            shareSkill.SaveShareSkill();

            //Call SearchListings Method to get count for records with same category,title and description as we edited
            int MatchingRecordsAfterEdit = SearchListings(GlobalDefinitions.ExcelLib.ReadData(2, "Category"), GlobalDefinitions.ExcelLib.ReadData(2, "Title"), GlobalDefinitions.ExcelLib.ReadData(2, "Description"));

            //checking if number of records with same category,title and description is 1 more than it has before
            int ExpectedRecords = MatchingRecordsBeforeEdit + 1;

            GlobalDefinitions.ValidateBoolean(ExpectedRecords == MatchingRecordsAfterEdit, "Share Skill Edited");
        }
        internal void EditShareSkill(string CategoryToSearch, string TitleToSearch, string DescriptionToSearch)
        {
            GenericWait.ElementIsVisible(GlobalDefinitions.driver, "LinkText", "Manage Listings", 8);

            //Navigate to Manage Listing page
            manageListingsLink.Click();

            int RecordFound = 0;

            GenericWait.ElementIsVisible(GlobalDefinitions.driver, "XPath", "//div[@id='listing-management-section']/div/div[1]/div[1]", 8);

            // GlobalDefinitions.WaitForElement(GlobalDefinitions.driver, By.XPath("//div[@id='listing-management-section']/div/div[1]/div[1]"), 5);
            Thread.Sleep(2000);

            // Searching for the added share skill record in the Manage Listing and validating is it available or not
            for (int i = 0; i < paginationButtons.Count - 2; i++)
            {
                Thread.Sleep(2000);

                //Loop for searching the added share skill through the pages
                foreach (IWebElement listingRecord in tableRows)
                {
                    string Category    = listingRecord.FindElement(By.XPath("td[2]")).Text;
                    string Title       = listingRecord.FindElement(By.XPath("td[3]")).Text;
                    string Description = listingRecord.FindElement(By.XPath("td[4]")).Text;

                    //Comparing Category,title,description to find out corresponding Edit button and Editing item
                    if (Category == CategoryToSearch && Title == TitleToSearch && Description == DescriptionToSearch)
                    {
                        //Editing a matched record
                        int rowToBeEdited = tableRows.IndexOf(listingRecord) + 1;
                        listingRecord.FindElement(By.XPath("//tr[" + rowToBeEdited + "]/td[8]/div/button[2]/i")).Click();
                        Thread.Sleep(2000);

                        //log after editing
                        Base.test.Log(LogStatus.Pass, "Share skill with titlename" + " " + Title + " " + "edit button is clicked and navigated to Edit share skill page");
                        RecordFound++;

                        GlobalDefinitions.ExcelLib.PopulateInCollection(Base.ExcelPathAddShareSkill, "EditShareSkill");

                        //Calling EnterShareSkill() for adding share skill data
                        ShareSkill shareSkill = new ShareSkill();
                        //shareSkill.EnterShareSkill();
                        shareSkill.EditShareSkillData();

                        Thread.Sleep(2000);
                        //Clicking Save button
                        Save.Click();

                        //Validating edited record
                        int MatchingRecordFoundAfterAdding = SearchListings(GlobalDefinitions.ExcelLib.ReadData(2, "Category"), GlobalDefinitions.ExcelLib.ReadData(2, "Title"), GlobalDefinitions.ExcelLib.ReadData(2, "Description"));
                        int ExpectedRecords = MatchingRecordFoundAfterAdding + 1;
                        try
                        {
                            if (MatchingRecordFoundAfterAdding > 0)
                            {
                                Base.test.Log(LogStatus.Pass, "Edited and saved a Share Skill Successfully");
                                Assert.IsTrue(true);
                            }
                            else
                            {
                                Base.test.Log(LogStatus.Fail, "Edit and adding a Share Skill is unsuccessful" + " " + "Screenshot Image " + GlobalDefinitions.SaveScreenShotClass.SaveScreenshot(GlobalDefinitions.driver, "ShareSkillScreenshot"));
                            }
                        }
                        catch (Exception e)
                        {
                            Base.test.Log(LogStatus.Fail, "Edit and adding a Share Skill is unsuccessful", e.Message);
                        }
                        return;
                    }
                }

                if (nextButton.Enabled == true)
                {
                    nextButton.Click();
                }
            }
        }