use Scalar::Util to check for numeric values