def factorial_of_range(lhs, ctx):
"""Element øF
(num, num) -> factorial of range
(num, str) -> vectorised
"""
ts = vy_type(lhs)
return {
NUMBER_TYPE: lambda: math.factorial(lhs),
str: lambda: vectorise(factorial_of_range, lhs, ctx=ctx),
}.get(ts, lambda: vectorise(factorial_of_range, lhs, ctx=ctx))()