



'''simple docstring'''







import math







def  SCREAMING_SNAKE_CASE__ (				SCREAMING_SNAKE_CASE     ):
		SCREAMING_SNAKE_CASE_						:Any										=      0
		if n % 2 == 0:
				count += 1
				while n % 2 == 0:
						SCREAMING_SNAKE_CASE_						:Any										=      int(n / 2     )
    # the n input value must be odd so that
    # we can skip one element (ie i += 2)

		SCREAMING_SNAKE_CASE_						:str										=      3

		while i <= int(math.sqrt(SCREAMING_SNAKE_CASE     )     ):
				if n % i == 0:
						count += 1
						while n % i == 0:
								SCREAMING_SNAKE_CASE_						:int										=      int(n / i     )
				SCREAMING_SNAKE_CASE_						:Any										=      i + 2

		# this condition checks the prime
		# number n is greater than 2

		if n > 2:
				count += 1
		return count


if __name__ == "__main__":
							SCREAMING_SNAKE_CASE__     : int				=   51_24_21_83
							print(f"""The number of distinct prime factors is/are {exact_prime_factor_count(n)}""")
							print(f"""The value of log(log(n)) is {math.log(math.log(n)):.4f}""")





from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_speech_available,
    is_torch_available,
)


lowerCAmelCase					:				Optional[int]   	={
    'configuration_speech_to_text_2': ['SPEECH_TO_TEXT_2_PRETRAINED_CONFIG_ARCHIVE_MAP', 'Speech2Text2Config'],
    'processing_speech_to_text_2': ['Speech2Text2Processor'],
    'tokenization_speech_to_text_2': ['Speech2Text2Tokenizer'],
}


try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowerCAmelCase					:				int   	=[
		    'SPEECH_TO_TEXT_2_PRETRAINED_MODEL_ARCHIVE_LIST',
		    'Speech2Text2ForCausalLM',
		    'Speech2Text2PreTrainedModel',
		]


if TYPE_CHECKING:
		from .configuration_speech_to_text_a import SPEECH_TO_TEXT_2_PRETRAINED_CONFIG_ARCHIVE_MAP, SpeechaTextaConfig
		from .processing_speech_to_text_a import SpeechaTextaProcessor
		from .tokenization_speech_to_text_a import SpeechaTextaTokenizer

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_speech_to_text_a import (
				    SPEECH_TO_TEXT_2_PRETRAINED_MODEL_ARCHIVE_LIST,
				    SpeechaTextaForCausalLM,
				    SpeechaTextaPreTrainedModel,
				)

else:
		import sys

		lowerCAmelCase					:				Union[str, Any]   	=_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)

