def persistence(n):
    print("Entered persistence function with n =", n)
    if 0 <= n <= 9:
        print("n is a single digit number, returning n")
        return n

    result = 0
    counter = 0
    while True:
        print("Previous result:", result)
        print("Previous counter:", counter)
        p = persistence(n // 10)
        print("Current persistence:", p)
        result += n % 10 * p
        counter += 1
        print("Current result:", result)
        print("Current counter:", counter)
        if result > 9:
            n = result
            result = 0
            print("Result is greater than 9, resetting result to 0 and continuing loop")
            continue
        print("Result is not greater than 9, returning counter")
        return counter


print(persistence(999))
