public virtual void PrepareForSale(IVehicle vehicle) { var reg = new Registration(vehicle); reg.AllocateLicensePlate(); Documentation.PrintBrochure(vehicle); vehicle.CleanInterior(); vehicle.ClearExteriorBody(); vehicle.PolishWindows(); vehicle.TakeForTestDrive(); }