What factors determine the cost of a water heater repair?