unit conversion is functional