

a		=[sum(int(c, 10) ** 2 for c in i.__str__()) for i in range(100000)]






def    SCREAMING_SNAKE_CASE__       (  lowerCamelCase__			)  ->     int:
	__lowerCamelCase				:				Optional[int]					       = 0
	while number:
		# Increased Speed Slightly by checking every 5 digits together.
		sum_of_digits_squared += DIGITS_SQUARED[number % 1_0_0_0_0_0]
		number //= 1_0_0_0_0_0

	return sum_of_digits_squared


# There are 2 Chains made,
# One ends with 89 with the chain member 58 being the one which when declared first,
# there will be the least number of iterations for all the members to be checked.

# The other one ends with 1 and has only one element 1.

# So 58 and 1 are chosen to be declared at the starting.

# Changed dictionary to an array to quicken the solution
a		=[None] * 10000000
a		=True
a		=False






def    SCREAMING_SNAKE_CASE__       (  lowerCamelCase__			)  ->     bool:

	if CHAINS[number - 1] is not None:
		return CHAINS[number - 1]  # type: ignore

	__lowerCamelCase				:				Dict					       = chain(next_number(lowerCamelCase__			)			)
	__lowerCamelCase				:				Optional[int]					       = number_chain

	while number < 1_0_0_0_0_0_0_0:
		__lowerCamelCase				:				List[Any]					       = number_chain
		number *= 1_0

	return number_chain






def    SCREAMING_SNAKE_CASE__       (  lowerCamelCase__ = 1_0_0_0_0_0_0_0			)  ->     int:
	for i in range(1	, lowerCamelCase__			):
		if CHAINS[i] is None:
			chain(i + 1			)

	return CHAINS[:number].count(lowerCamelCase__			)


if __name__ == "__main__":
					import doctest

					doctest.testmod()
					print(F"""{solution() = }""")









"""simple docstring"""
import re
def    A_  (			_lowercase	):







						'''simple docstring'''


						snake_case_ :Optional[int]						=			re.compile(
						    r"""^(?:0|94|\+94|0{2}94)""" r"""7(0|1|2|4|5|6|7|8)""" r"""(-| |)""" r"""\d{7}$"""	)

						return bool(re.search(_lowercase,					_lowercase	)	)


if __name__ == "__main__":
						__a      =				"0094702343221"

						print(is_sri_lankan_phone_number(phone))
