





from ...processing_utils import ProcessorMixin





class 				A_				(      UpperCAmelCase	):







       """simple docstring"""





       SCREAMING_SNAKE_CASE_      : Optional[int]      =  ['''image_processor''', '''feature_extractor''']
       SCREAMING_SNAKE_CASE_      : Optional[Any]      =  '''TvltImageProcessor'''
       SCREAMING_SNAKE_CASE_      : List[Any]      =  '''TvltFeatureExtractor'''







       def __init__(    self	:	Optional[Any]						,__A	:	Union[str, Any]						,__A	:	Optional[Any]  )						->					Union[str, Any]:
         super().__init__(image_processor=__A						,feature_extractor=__A  )

         _lowercase							= image_processor
         _lowercase							= feature_extractor







       def __call__(    self	:	Dict						,__A	:	Optional[Any]=None						,__A	:	Any=None						,__A	:	str=None						,__A	:	Optional[Any]=None						,__A	:	Optional[int]=False						,__A	:	List[str]=False						,*__A	:	Tuple						,**__A	:	str						,)						->					Any:

         if images is None and audio is None:
           raise ValueError('You need to specify either an `images` or `audio` input to process.'  )

         _lowercase							= None
         if images is not None:
           _lowercase							= self.image_processor(__A						,mask_pixel=__A						,*__A						,**__A  )
         if images_mixed is not None:
           _lowercase							= self.image_processor(__A						,is_mixed=__A						,*__A						,**__A  )
         if audio is not None:
           _lowercase							= self.feature_extractor(
               __A						,*__A						,sampling_rate=__A						,mask_audio=__A						,**__A  )

         _lowercase							= {}
         if audio is not None:
           output_dict.update(__A  )
         if images is not None:
           output_dict.update(__A  )
         if images_mixed_dict is not None:
           output_dict.update(__A  )
         return output_dict







       @property
       def    __UpperCAmelCase (    self	:	List[str]  )						->					Tuple:
         _lowercase							= self.image_processor.model_input_names
         _lowercase							= self.feature_extractor.model_input_names
         return list(dict.fromkeys(image_processor_input_names + feature_extractor_input_names  )  )






snake_case 				=       8.3_144_598

def 							SCREAMING_SNAKE_CASE__       (  snake_case__  :float			,							snake_case__  :float     )      ->						float:
  if temperature < 0:
    raise Exception('Temperature cannot be less than 0 K'     )
  if molar_mass <= 0:
    raise Exception('Molar mass cannot be less than or equal to 0 kg/mol'     )
  else:
    return (3 * UNIVERSAL_GAS_CONSTANT * temperature / molar_mass) ** 0.5


if __name__ == "__main__":
      import doctest

      # run doctest
      doctest.testmod()

      # example
      snake_case 				=       3_0_0
      snake_case 				=       2_8
      snake_case 				=       rms_speed_of_molecule(temperature, molar_mass)
      print(F"""Vrms of Nitrogen gas at 300 K is {vrms} m/s""")