






from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


a_							=    {
    '''configuration_jukebox''': [
        '''JUKEBOX_PRETRAINED_CONFIG_ARCHIVE_MAP''',
        '''JukeboxConfig''',
        '''JukeboxPriorConfig''',
        '''JukeboxVQVAEConfig''',
    ],
    '''tokenization_jukebox''': ['''JukeboxTokenizer'''],
}

try:
	if not is_torch_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	a_							=    [
	    '''JUKEBOX_PRETRAINED_MODEL_ARCHIVE_LIST''',
	    '''JukeboxModel''',
	    '''JukeboxPreTrainedModel''',
	    '''JukeboxVQVAE''',
	    '''JukeboxPrior''',
	]

if TYPE_CHECKING:
	from .configuration_jukebox import (
	    JUKEBOX_PRETRAINED_CONFIG_ARCHIVE_MAP,
	    JukeboxConfig,
	    JukeboxPriorConfig,
	    JukeboxVQVAEConfig,
	)
	from .tokenization_jukebox import JukeboxTokenizer

	try:
		if not is_torch_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .modeling_jukebox import (
		    JUKEBOX_PRETRAINED_MODEL_ARCHIVE_LIST,
		    JukeboxModel,
		    JukeboxPreTrainedModel,
		    JukeboxPrior,
		    JukeboxVQVAE,
		)

else:
	import sys

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














def        _a  (     UpperCamelCase_					:				list    ,   UpperCamelCase_					:				list   ) ->   float:
						"""simple docstring"""







						_validate_point(UpperCamelCase_   )
						_validate_point(UpperCamelCase_   )
						if len(UpperCamelCase_   ) != len(UpperCamelCase_   ):
												raise ValueError("Both points must be in the same n-dimensional space"   )

						return float(sum(abs(a - b   ) for a, b in zip(UpperCamelCase_    ,   UpperCamelCase_   )   )   )


def        _a  (     UpperCamelCase_					:				list[float]   ) ->   None:
						"""simple docstring"""







						if point:
												if isinstance(UpperCamelCase_    ,   UpperCamelCase_   ):
																		for item in point:
																								if not isinstance(UpperCamelCase_    ,   (int, float)   ):
																														lowerCAmelCase__       =						(
																														    "Expected a list of numbers as input, found "
																														    F"{type(UpperCamelCase_   ).__name__}"
																														)
																														raise TypeError(UpperCamelCase_   )
												else:
																		lowerCAmelCase__       =						F"Expected a list of numbers as input, found {type(UpperCamelCase_   ).__name__}"
																		raise TypeError(UpperCamelCase_   )
						else:
												raise ValueError("Missing an input"   )


def        _a  (     UpperCamelCase_					:				list    ,   UpperCamelCase_					:				list   ) ->   float:
						"""simple docstring"""







						_validate_point(UpperCamelCase_   )
						_validate_point(UpperCamelCase_   )
						if len(UpperCamelCase_   ) != len(UpperCamelCase_   ):
												raise ValueError("Both points must be in the same n-dimensional space"   )

						return float(sum(abs(x - y   ) for x, y in zip(UpperCamelCase_    ,   UpperCamelCase_   )   )   )


if __name__ == "__main__":
	import doctest

	doctest.testmod()






