

__a    :Optional[int]      =			[sum(int(c, 10) ** 2 for c in i.__str__()) for i in range(10_0000)]

def       __snake_case						( __UpperCamelCase	: int    ):



      """simple docstring"""

      A_						  =				0
      while number:
            # Increased Speed Slightly by checking every 5 digits together.
            sum_of_digits_squared += DIGITS_SQUARED[number % 10_0000]
            number //= 10_0000

      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    :list[bool | None]      =			[None] * 1000_0000
__a    :Optional[Any]      =			True
__a    :List[Any]      =			False

def       __snake_case						( __UpperCamelCase	: int    ):



      """simple docstring"""

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

      A_						  =				chain(next_number(__UpperCamelCase    )    )
      A_						  =				number_chain

      while number < 1000_0000:
            A_						  =				number_chain
            number *= 10

      return number_chain

def       __snake_case						( __UpperCamelCase	: int = 1000_0000    ):



      """simple docstring"""

      for i in range(1				,__UpperCamelCase    ):
            if CHAINS[i] is None:
                  chain(i + 1    )

      return CHAINS[:number].count(__UpperCamelCase    )


if __name__ == "__main__":
      import doctest

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






'''simple docstring'''






from typing import TYPE_CHECKING

from ...utils import _LazyModule


lowerCAmelCase									=   {"""tokenization_wav2vec2_phoneme""": ["""Wav2Vec2PhonemeCTCTokenizer"""]}


if TYPE_CHECKING:
					from .tokenization_wavaveca_phoneme import WavaVecaPhonemeCTCTokenizer
else:
					import sys

					lowerCAmelCase									=   _LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)



