'Raise ``f`` to a non-negative power ``n``.'

def __pow__(f, n):

    if (n >= 0):
        return f.raw_new((f.numer ** n), (f.denom ** n))
    elif (not f):
        raise ZeroDivisionError
    else:
        return f.raw_new((f.denom ** (- n)), (f.numer ** (- n)))
