public static function retry(callable $function, $attempts)
    {
        Arguments::define(Boa::func(), Boa::integer())
            ->check($function, $attempts);

        for ($ii = 0; $ii < $attempts; $ii++) {
            try {
                $result = static::call($function, $ii);

                return $result;
            } catch (Exception $e) {
                continue;
            }
        }

        return null;
    }