private static void PrintDetailsForInstanc_2()
        {
            LazyLoadingSingleton instance_2 = LazyLoadingSingleton.GetInstance;

            instance_2.PrintDetails("create second instance");
        }
        //private static void PrintDetailsForInstanc_1()
        //{
        //    ThreadSafeSingleton instance_1 = ThreadSafeSingleton.GetInstance;
        //    instance_1.PrintDetails("create first instance");
        //}

        //private static void PrintDetailsForInstanc_2()
        //{
        //    ThreadSafeSingleton instance_2 = ThreadSafeSingleton.GetInstance;
        //    instance_2.PrintDetails("create second instance");
        //}
        #endregion

        #region EagerLoadingSingleton
        //private static void PrintDetailsForInstanc_1()
        //{
        //    EagerLoadingSingleton instance_1 = EagerLoadingSingleton.GetInstance;
        //    instance_1.PrintDetails("create first instance");
        //}

        //private static void PrintDetailsForInstanc_2()
        //{
        //    EagerLoadingSingleton instance_2 = EagerLoadingSingleton.GetInstance;
        //    instance_2.PrintDetails("create second instance");
        //}
        #endregion

        #region LazyLoadingSingleton
        private static void PrintDetailsForInstanc_1()
        {
            LazyLoadingSingleton instance_1 = LazyLoadingSingleton.GetInstance;

            instance_1.PrintDetails("create first instance");
        }