
__A							=[sum(int(c, 1_0) ** 2 for c in i.__str__()) for i in range(1_0_0_0_0_0)]





def      lowerCamelCase_					(							lowerCamelCase__       ):
				lowerCamelCase_         =     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] * 1_0_0_0_0_0_0_0
__A							=True
__A							=False





def      lowerCamelCase_					(							lowerCamelCase__       ):

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

				lowerCamelCase_         =     chain(next_number(lowerCamelCase__       )       )
				lowerCamelCase_         =     number_chain

				while number < 1_0_0_0_0_0_0_0:
								lowerCamelCase_         =     number_chain
								number *= 1_0

				return number_chain





def      lowerCamelCase_					(							lowerCamelCase__ = 1_0_0_0_0_0_0_0       ):
				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() = }""")




import re





def      lowerCamelCase_					(							lowerCamelCase__       ):
				return [char.split() for char in re.split(r"[^ a-z A-Z 0-9 \s]"      ,					str_       )]





def      lowerCamelCase_					(							lowerCamelCase__       ):
				lowerCamelCase_         =     split_input(str_       )
				return "".join(
				    ["".join([char.capitalize() for char in sub_str]       ) for sub_str in string_split]       )





def      lowerCamelCase_					(							lowerCamelCase__      ,					lowerCamelCase__      ,					lowerCamelCase__       ):
				try:
								lowerCamelCase_         =     split_input(lowerCamelCase__       )
								if upper:
												lowerCamelCase_         =     "".join(
												    [
												        separator.join([char.upper() for char in sub_str]       )
												        for sub_str in string_split
												    ]       )
								else:
												lowerCamelCase_         =     "".join(
												    [
												        separator.join([char.lower() for char in sub_str]       )
												        for sub_str in string_split
												    ]       )
								return res_str
				except IndexError:
								return "not valid string"





def      lowerCamelCase_					(							lowerCamelCase__       ):
				return to_simple_case(lowerCamelCase__       )





def      lowerCamelCase_					(							lowerCamelCase__       ):
				try:
								lowerCamelCase_         =     to_simple_case(lowerCamelCase__       )
								return res_str[0].lower() + res_str[1:]
				except IndexError:
								return "not valid string"





def      lowerCamelCase_					(							lowerCamelCase__      ,					lowerCamelCase__       ):
				return to_complex_case(lowerCamelCase__      ,					lowerCamelCase__      ,					"_"       )





def      lowerCamelCase_					(							lowerCamelCase__      ,					lowerCamelCase__       ):
				return to_complex_case(lowerCamelCase__      ,					lowerCamelCase__      ,					"-"       )


if __name__ == "__main__":
			__import__('''doctest''').testmod()


