new price function