


"""simple docstring"""






from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_flax_available,
    is_tf_available,
    is_tokenizers_available,
    is_torch_available,
)


_lowerCamelCase     =  {
    'configuration_whisper': ['WHISPER_PRETRAINED_CONFIG_ARCHIVE_MAP', 'WhisperConfig', 'WhisperOnnxConfig'],
    'feature_extraction_whisper': ['WhisperFeatureExtractor'],
    'processing_whisper': ['WhisperProcessor'],
    'tokenization_whisper': ['WhisperTokenizer'],
}

try:
	if not is_tokenizers_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	_lowerCamelCase     =  ['WhisperTokenizerFast']

try:
	if not is_torch_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	_lowerCamelCase     =  [
	    'WHISPER_PRETRAINED_MODEL_ARCHIVE_LIST',
	    'WhisperForConditionalGeneration',
	    'WhisperModel',
	    'WhisperPreTrainedModel',
	    'WhisperForAudioClassification',
	]

try:
	if not is_tf_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	_lowerCamelCase     =  [
	    'TF_WHISPER_PRETRAINED_MODEL_ARCHIVE_LIST',
	    'TFWhisperForConditionalGeneration',
	    'TFWhisperModel',
	    'TFWhisperPreTrainedModel',
	]

try:
	if not is_flax_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	_lowerCamelCase     =  [
	    'FlaxWhisperForConditionalGeneration',
	    'FlaxWhisperModel',
	    'FlaxWhisperPreTrainedModel',
	    'FlaxWhisperForAudioClassification',
	]


if TYPE_CHECKING:
	from .configuration_whisper import WHISPER_PRETRAINED_CONFIG_ARCHIVE_MAP, WhisperConfig, WhisperOnnxConfig
	from .feature_extraction_whisper import WhisperFeatureExtractor
	from .processing_whisper import WhisperProcessor
	from .tokenization_whisper import WhisperTokenizer

	try:
		if not is_tokenizers_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .tokenization_whisper_fast import WhisperTokenizerFast

	try:
		if not is_torch_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .modeling_whisper import (
		    WHISPER_PRETRAINED_MODEL_ARCHIVE_LIST,
		    WhisperForAudioClassification,
		    WhisperForConditionalGeneration,
		    WhisperModel,
		    WhisperPreTrainedModel,
		)

	try:
		if not is_tf_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .modeling_tf_whisper import (
		    TF_WHISPER_PRETRAINED_MODEL_ARCHIVE_LIST,
		    TFWhisperForConditionalGeneration,
		    TFWhisperModel,
		    TFWhisperPreTrainedModel,
		)

	try:
		if not is_flax_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .modeling_flax_whisper import (
		    FlaxWhisperForAudioClassification,
		    FlaxWhisperForConditionalGeneration,
		    FlaxWhisperModel,
		    FlaxWhisperPreTrainedModel,
		)

else:
	import sys

	_lowerCamelCase     =  _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)




"""simple docstring"""






from maths.is_square_free import is_square_free
from maths.prime_factors import prime_factors


def __lowercase     (      lowerCamelCase_  :      int  ):
				SCREAMING_SNAKE_CASE__     							=				prime_factors(lowerCamelCase_  )
				if is_square_free(lowerCamelCase_  ):
								return -1 if len(lowerCamelCase_  ) % 2 else 1
				return 0


if __name__ == "__main__":
	import doctest

	doctest.testmod()
