//the client in this scenario
        static void Main(string[] args)
        {
            //instead of having to instantiate objects here with if(desiredEmoji == EmojiType.CLOWN){emoji = new ClownEmoji();} else if ... etc.
            //we can just pass in the associated type enum of the object we want to create
            EmojiTypes desiredEmoji = EmojiTypes.CLOWN;
            Emoji      emoji        = EmojiFactory.CreateEmoji(desiredEmoji);

            emoji.SayLine();
            Console.WriteLine("Okay, their part is done, let us reuse this object and replace it with our next desired emoji.");
            desiredEmoji = EmojiTypes.SMILE;
            emoji        = EmojiFactory.CreateEmoji(desiredEmoji);
            emoji.SayLine();
            Console.ReadKey();
        }