static void Main(string[] args)
        {
            Gardener gardener1 = new Gardener("David");
            Gardener gardener2 = new Gardener("Angelika");

            Task plantTree   = new PlantTree(gardener1);
            Task plantFlower = new PlantFlower(gardener2);

            ChiefGardener chiefGardener = new ChiefGardener(plantTree);

            chiefGardener.addTask();

            chiefGardener.setTask(plantFlower);
            chiefGardener.addTask();

            chiefGardener.undo();
            chiefGardener.undo();
            chiefGardener.redo();
            chiefGardener.undo();

            Console.ReadLine();
        }
 public PlantFlower(Gardener gardener)
 {
     this.gardener = gardener;
 }
 public PlantTree(Gardener gardener)
 {
     this.gardener = gardener;
 }