code: 
  
  
  
  
  """simple docstring"""
  
  from __future__ import annotations
  
  
  
  def   UpperCamelCase__     (		lowercase__  :     list   ):
  		snake_case		:						Dict								=				sorted(lowercase__   )
  		snake_case		:						Union[str, Any]								=				len(lowercase__   )
  		snake_case		:						Optional[int]								=				length >> 1
  		return (
  		    (sorted_list[mid_index] + sorted_list[mid_index - 1]) / 2
  		    if length % 2 == 0
  		    else sorted_list[mid_index]
  		)
  
  
  
  def   UpperCamelCase__     (		):
  		import doctest
  
  		doctest.testmod()
  
  
  if __name__ == "__main__":
  							main()
  
  
style_context: 
  
  
  
  
  """simple docstring"""
  
  from ...processing_utils import ProcessorMixin
  from ...tokenization_utils_base import BatchEncoding
  class 			lowerCamelCase__    (  lowerCamelCase_			):
  			a__ :      Tuple								=     ["""image_processor""", """tokenizer"""]
  			a__ :      List[Any]								=     """EfficientNetImageProcessor"""
  			a__ :      str								=     ("""BertTokenizer""", """BertTokenizerFast""")
  
  
  			def __init__(     self				, SCREAMING_SNAKE_CASE				, SCREAMING_SNAKE_CASE							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					super().__init__(SCREAMING_SNAKE_CASE				, SCREAMING_SNAKE_CASE							)
  
  
  			def __call__(     self				, SCREAMING_SNAKE_CASE=None				, SCREAMING_SNAKE_CASE=None				, SCREAMING_SNAKE_CASE="max_length"				, SCREAMING_SNAKE_CASE=64				, SCREAMING_SNAKE_CASE=None				, **SCREAMING_SNAKE_CASE							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					if text is None and images is None:
  							raise ValueError("You have to specify either text or images. Both cannot be none."							)
  
  					if text is not None:
  							snake_case		:						Dict								=				self.tokenizer(
  							    SCREAMING_SNAKE_CASE				, padding=SCREAMING_SNAKE_CASE				, max_length=SCREAMING_SNAKE_CASE				, return_tensors=SCREAMING_SNAKE_CASE				, **SCREAMING_SNAKE_CASE							)
  
  					if images is not None:
  							snake_case		:						Tuple								=				self.image_processor(SCREAMING_SNAKE_CASE				, return_tensors=SCREAMING_SNAKE_CASE				, **SCREAMING_SNAKE_CASE							)
  
  					if text is not None and images is not None:
  							snake_case		:						Dict								=				image_features.pixel_values
  							return encoding
  					elif text is not None:
  							return encoding
  					else:
  							return BatchEncoding(data=dict(**SCREAMING_SNAKE_CASE							)				, tensor_type=SCREAMING_SNAKE_CASE							)
  
  
  			def 							lowerCamelCase_				(     self				, *SCREAMING_SNAKE_CASE				, **SCREAMING_SNAKE_CASE							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					return self.tokenizer.batch_decode(*SCREAMING_SNAKE_CASE				, **SCREAMING_SNAKE_CASE							)
  
  
  			def 							lowerCamelCase_				(     self				, *SCREAMING_SNAKE_CASE				, **SCREAMING_SNAKE_CASE							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					return self.tokenizer.decode(*SCREAMING_SNAKE_CASE				, **SCREAMING_SNAKE_CASE							)
  
  
  
  			@property
  			def 							lowerCamelCase_				(     self							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					snake_case		:						Optional[Any]								=				self.tokenizer.model_input_names
  					snake_case		:						Any								=				self.image_processor.model_input_names
  					return list(dict.fromkeys(tokenizer_input_names + image_processor_input_names							)							)
  
  