def reduce(func,iterable,initializer=None):
    args = iter(iterable)
    if initializer is not None:
        res = initializer
    else:
        res = next(args)
    while True:
        try:
            res = func(res,next(args))
        except __HOLE__:
            return res
dataset/ETHPy150Open amrdraz/kodr/app/brython/www/src/Lib/_functools.py/reduce