public IDrone Deliver(IRoute route) { IDrone drone = this; route.Commands.ToList().ForEach(c => drone = drone.Execute(c)); return(drone); }