}// end of class



        static void Main_1(string[] args)
        {
            CustomelinkedList <int> l_list = new CustomelinkedList <int>();

            l_list.add(5);
            l_list.add(6);
            l_list.add(7);
            l_list.add(7);
            l_list.add(8);
            l_list.add(9);
            l_list.add(5);
            l_list.add(10);
            l_list.add(11);
            System.Console.WriteLine(l_list.ToString());
            System.Console.WriteLine("*****************");
            // l_list.Remve_duplication_V1();
            l_list.Remve_duplication_V2();
            System.Console.WriteLine(l_list.ToString());


            /* #resion O(n^2) implementation V1 */
            // Console.WriteLine(IsUninqe_V1(non_unique));
            // Console.WriteLine(IsUninqe_V1(unique));
            /* #endregion */

            System.Console.WriteLine("**********************");
        }
        }// end of class



        static void Main_3(string[] args)
        {
            CustomelinkedList <int> l_list = new CustomelinkedList <int>();

            l_list.add(5);
            l_list.add(6);
            l_list.add(7);
            l_list.add(8);
            l_list.add(9);
            l_list.add(10);
            // l_list.add(11);
            System.Console.WriteLine("*****************");
            System.Console.WriteLine(l_list.ToString());
            l_list.Delete_Middel_element_V1();
            System.Console.WriteLine(l_list.ToString());
            System.Console.WriteLine("**********************");
        }
        static void Main_4(string[] args)
        {
            CustomelinkedList <int> l_list = new CustomelinkedList <int>();

            l_list.add(3);
            l_list.add(5);
            l_list.add(8);
            l_list.add(5);
            l_list.add(10);
            l_list.add(2);
            l_list.add(1);
            System.Console.WriteLine("*****************");
            System.Console.WriteLine(l_list.ToString());
            // CustomelinkedList<int> newOne =  Linked_List_Partitioning_V1(l_list,5);
            // System.Console.WriteLine(newOne.ToString());
            Linked_List_Partitioning_V2(l_list, 5);
            System.Console.WriteLine(l_list.ToString());
            System.Console.WriteLine("**********************");
        }