added saveCost function