def factorial(number):
    borrowed_2s = 0
    product = 1
    for i in range(1, (number + 1)):
        if ((i % 2) == 0):
            i = int((i / 2))
            borrowed_2s += 1
        num_5s = count_5s(i)
        if num_5s:
            i = int((i / (5 ** num_5s)))
            borrowed_2s -= num_5s
        product = last_5_digits((product * i))
    product *= (2 ** borrowed_2s)
    return product
def factorial(number):
    borrowed_2s = 0
    product = 1
    for i in range(1, (number + 1)):
        if ((i % 2) == 0):
            i = int((i / 2))
            borrowed_2s += 1
        num_5s = count_5s(i)
        if num_5s:
            i = int((i / (5 ** num_5s)))
            borrowed_2s -= num_5s
        product = last_5_digits((product * i))
    product *= (2 ** borrowed_2s)
    return product