public static function step($value, $step, $default = 0)
    {
        if (!self::valid($step, 'rational')
            || !self::valid($default, 'rational')
            || !self::valid($value, 'rational')
        ) {
            return false;
        }

        $check = (abs($value) -abs($default)) % $step;

        if ($check) {
            return false;
        }

        return true;
    }