





def        SCREAMING_SNAKE_CASE      (       _UpperCAmelCase )			->     int:
    lowerCamelCase__    :      List[Any]					 =		abs(_UpperCAmelCase )
    lowerCamelCase__    :      Union[str, Any]					 =		0
    while n > 0:
        res += n % 10
        n //= 10
    return res


def        SCREAMING_SNAKE_CASE      (       _UpperCAmelCase )			->     int:
    lowerCamelCase__    :      Any					 =		abs(_UpperCAmelCase )
    return n if n < 10 else n % 10 + sum_of_digits(n // 10 )


def        SCREAMING_SNAKE_CASE      (       _UpperCAmelCase )			->     int:
    return sum(int(_UpperCAmelCase ) for c in str(abs(_UpperCAmelCase ) ) )


def        SCREAMING_SNAKE_CASE      (       )			->     None:
    from collections.abc import Callable
    from timeit import timeit

    def benchmark_a_function(_UpperCAmelCase						,	_UpperCAmelCase ) -> None:
        lowerCamelCase__    :      Dict					 =		F"""{func.__name__}({value})"""
        lowerCamelCase__    :      Union[str, Any]					 =		timeit(F"""__main__.{call}"""						,	setup='import __main__' )
        print(F"""{call:56} = {func(_UpperCAmelCase )} -- {timing:.4f} seconds""" )

    for value in (26_2144, 1125_8999_0684_2624, 126_7650_6002_2822_9401_4967_0320_5376):
        for func in (sum_of_digits, sum_of_digits_recursion, sum_of_digits_compact):
            benchmark_a_function(_UpperCAmelCase						,	_UpperCAmelCase )
        print()


if __name__ == "__main__":
    import doctest

    doctest.testmod()
    benchmark()













from itertools import permutations
def 					snake_case_						(   lowerCAmelCase_				:  tuple					):
							if num[3] % 2 != 0:
														return False

							if (num[2] + num[3] + num[4]) % 3 != 0:
														return False

							if num[5] % 5 != 0:
														return False

							__lowercase					:							Dict			=   [7, 11, 13, 17]
							for i, test in enumerate(lowerCAmelCase_					):
														if (num[i + 4] * 100 + num[i + 5] * 10 + num[i + 6]) % test != 0:
																					return False
							return True
def 					snake_case_						(   lowerCAmelCase_				:  int = 10					):
							return sum(
							    int("""""".join(map(lowerCAmelCase_				,				lowerCAmelCase_					)					)					)
							    for num in permutations(range(lowerCAmelCase_					)					)
							    if is_substring_divisible(lowerCAmelCase_					)					)


if __name__ == "__main__":
	print(f'''{solution() = }''')