





'''simple docstring'''






import copy

from transformers.configuration_utils import PretrainedConfig
from transformers.utils import logging


A :			List[str]							   =      logging.get_logger(__name__)







class       lowerCamelCase       (    __UpperCAmelCase	):
					_SCREAMING_SNAKE_CASE				 =     "hybrid-clip"
					_SCREAMING_SNAKE_CASE				 =     True


					def __init__(       self						:	str							,  __snake_case						:	Dict=5_12							,  **__snake_case						:	Optional[Any]							):





											'''simple docstring'''





											super().__init__(**__snake_case							)

											if "text_config" not in kwargs:
																	raise ValueError('`text_config` can not be `None`.'							)

											if "vision_config" not in kwargs:
																	raise ValueError('`vision_config` can not be `None`.'							)

											_snake_case: List[str]	       =		kwargs.pop('text_config'							)
											_snake_case: Tuple	       =		kwargs.pop('vision_config'							)

											_snake_case: int	       =		text_config.pop('model_type'							)
											_snake_case: int	       =		vision_config.pop('model_type'							)

											from transformers import AutoConfig

											_snake_case: str	       =		AutoConfig.for_model(__snake_case							,  **__snake_case							)

											if vision_model_type == "clip":
																	_snake_case: List[Any]	       =		AutoConfig.for_model(__snake_case							,  **__snake_case							).vision_config
											elif vision_model_type == "clip_vision_model":
																	from transformers import CLIPVisionConfig

																	_snake_case: Optional[int]	       =		CLIPVisionConfig(**__snake_case							)
											else:
																	_snake_case: Any	       =		AutoConfig.for_model(__snake_case							,  **__snake_case							)

											_snake_case: Tuple	       =		projection_dim
											_snake_case: Tuple	       =		1.0


					@classmethod
					def  SCREAMING_SNAKE_CASE_		(       cls						:	List[Any]							,  __snake_case						:	PretrainedConfig							,  __snake_case						:	PretrainedConfig							,  **__snake_case						:	Union[str, Any]							):





											'''simple docstring'''





											return cls(text_config=text_config.to_dict()							,  vision_config=vision_config.to_dict()							,  **__snake_case							)




					def  SCREAMING_SNAKE_CASE_		(       self						:	int							):





											'''simple docstring'''





											_snake_case: str	       =		copy.deepcopy(self.__dict__							)
											_snake_case: Optional[int]	       =		self.text_config.to_dict()
											_snake_case: int	       =		self.vision_config.to_dict()
											_snake_case: List[Any]	       =		self.__class__.model_type
											return output












'''simple docstring'''






def    lowercase_   (		lowercase__ = 400_0000    ) ->int:

						if n <= 1:
												return 0
						_snake_case: Union[str, Any]	       =		0
						_snake_case: List[Any]	       =		2
						_snake_case: Any	       =		0
						while 4 * b + a <= n:
												_snake_case       ,    _snake_case: int	       =		b, 4 * b + a
												count += a
						return count + b


if __name__ == "__main__":
		print(F'{solution() = }')





