private void DemoAnimal()
        {
            Animal animal = _tracker.GenerateProxyFrom(
                new Animal
            {
                Age  = 1,
                Type = "dog"
            });

            animal.Age  = 2;
            animal.Type = "cat";

            if (animal.IsDirty)
            {
                Console.WriteLine(animal.GetChangeLog());
            }

            animal.MarkAsClean();
        }