def timeit(log_level=logging.INFO, alternative_title=None):
    def wrap(f):
        @wraps(f)  # keeps the f.__name__ outside the wrapper
        def wrapped_f(*args, **kwargs):
            t0 = time()
            result = f(*args, **kwargs)
            ts = round(time() - t0, 3)

            title = alternative_title or f.__name__
            logging.getLogger().log(log_level, (title, ts) % " %s took: %f seconds")

            return result

        return wrapped_f
    return wrap
dataset/ETHPy150Open sevamoo/SOMPY/decorators.py/timeit/swapped operands of `%`