






'''simple docstring'''







from typing import TYPE_CHECKING

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


_A	:			Dict         ={
    '''configuration_clip''': [
        '''CLIP_PRETRAINED_CONFIG_ARCHIVE_MAP''',
        '''CLIPConfig''',
        '''CLIPOnnxConfig''',
        '''CLIPTextConfig''',
        '''CLIPVisionConfig''',
    ],
    '''processing_clip''': ['''CLIPProcessor'''],
    '''tokenization_clip''': ['''CLIPTokenizer'''],
}

try:
			if not is_tokenizers_available():
						raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
			pass
else:
			_A	:			Dict         =['''CLIPTokenizerFast''']

try:
			if not is_vision_available():
						raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
			pass
else:
			_A	:			Optional[int]         =['''CLIPFeatureExtractor''']
			_A	:			List[Any]         =['''CLIPImageProcessor''']

try:
			if not is_torch_available():
						raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
			pass
else:
			_A	:			List[str]         =[
			    '''CLIP_PRETRAINED_MODEL_ARCHIVE_LIST''',
			    '''CLIPModel''',
			    '''CLIPPreTrainedModel''',
			    '''CLIPTextModel''',
			    '''CLIPTextModelWithProjection''',
			    '''CLIPVisionModel''',
			    '''CLIPVisionModelWithProjection''',
			]

try:
			if not is_tf_available():
						raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
			pass
else:
			_A	:			Union[str, Any]         =[
			    '''TF_CLIP_PRETRAINED_MODEL_ARCHIVE_LIST''',
			    '''TFCLIPModel''',
			    '''TFCLIPPreTrainedModel''',
			    '''TFCLIPTextModel''',
			    '''TFCLIPVisionModel''',
			]

try:
			if not is_flax_available():
						raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
			pass
else:
			_A	:			Dict         =[
			    '''FlaxCLIPModel''',
			    '''FlaxCLIPPreTrainedModel''',
			    '''FlaxCLIPTextModel''',
			    '''FlaxCLIPTextPreTrainedModel''',
			    '''FlaxCLIPVisionModel''',
			    '''FlaxCLIPVisionPreTrainedModel''',
			]


if TYPE_CHECKING:
			from .configuration_clip import (
			    CLIP_PRETRAINED_CONFIG_ARCHIVE_MAP,
			    CLIPConfig,
			    CLIPOnnxConfig,
			    CLIPTextConfig,
			    CLIPVisionConfig,
			)
			from .processing_clip import CLIPProcessor
			from .tokenization_clip import CLIPTokenizer

			try:
						if not is_tokenizers_available():
									raise OptionalDependencyNotAvailable()
			except OptionalDependencyNotAvailable:
						pass
			else:
						from .tokenization_clip_fast import CLIPTokenizerFast

			try:
						if not is_vision_available():
									raise OptionalDependencyNotAvailable()
			except OptionalDependencyNotAvailable:
						pass
			else:
						from .feature_extraction_clip import CLIPFeatureExtractor
						from .image_processing_clip import CLIPImageProcessor

			try:
						if not is_torch_available():
									raise OptionalDependencyNotAvailable()
			except OptionalDependencyNotAvailable:
						pass
			else:
						from .modeling_clip import (
						    CLIP_PRETRAINED_MODEL_ARCHIVE_LIST,
						    CLIPModel,
						    CLIPPreTrainedModel,
						    CLIPTextModel,
						    CLIPTextModelWithProjection,
						    CLIPVisionModel,
						    CLIPVisionModelWithProjection,
						)

			try:
						if not is_tf_available():
									raise OptionalDependencyNotAvailable()
			except OptionalDependencyNotAvailable:
						pass
			else:
						from .modeling_tf_clip import (
						    TF_CLIP_PRETRAINED_MODEL_ARCHIVE_LIST,
						    TFCLIPModel,
						    TFCLIPPreTrainedModel,
						    TFCLIPTextModel,
						    TFCLIPVisionModel,
						)

			try:
						if not is_flax_available():
									raise OptionalDependencyNotAvailable()
			except OptionalDependencyNotAvailable:
						pass
			else:
						from .modeling_flax_clip import (
						    FlaxCLIPModel,
						    FlaxCLIPPreTrainedModel,
						    FlaxCLIPTextModel,
						    FlaxCLIPTextPreTrainedModel,
						    FlaxCLIPVisionModel,
						    FlaxCLIPVisionPreTrainedModel,
						)


else:
			import sys

			_A	:			Optional[Any]         =_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)



'''simple docstring'''







def 					UpperCAmelCase_		(__a      :    list ,	__a      :    list ,	__a      :    int ):






   """simple docstring"""

   _a				:	Optional[Any]			=   len(__a )
   _a				:	int			=   [[0] * n for i in range(__a )]
   for i in range(__a ):
      _a				:	Tuple			=   y_points[i]

   for i in range(2 ,	__a ):
      for j in range(__a ,	__a ):
         _a				:	Tuple			=   (
             (xa - x_points[j - i + 1]) * q[j][i - 1]
             - (xa - x_points[j]) * q[j - 1][i - 1]
         ) / (x_points[j] - x_points[j - i + 1])

   return [q[n - 1][n - 1], q]


if __name__ == "__main__":
  import doctest

  doctest.testmod()



