"""simple docstring"""


from ...processing_utils import ProcessorMixin
from ...tokenization_utils_base import BatchEncoding






class   __UpperCAmelCase		(      _a      ):
				A__ :  Dict    				=			['''image_processor''', '''tokenizer''']
				A__ :  Optional[int]    				=			'''AutoImageProcessor'''
				A__ :  Optional[Any]    				=			'''AutoTokenizer'''

				def __init__( self      ,					_lowerCamelCase      ,					_lowerCamelCase ):
										super().__init__(A_      ,					A_ )
										lowerCamelCase__   =self.image_processor

				def __call__( self      ,					_lowerCamelCase=None      ,					_lowerCamelCase=None      ,					_lowerCamelCase=None      ,					**_lowerCamelCase ):




										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:
																lowerCamelCase__   =self.tokenizer(A_      ,					return_tensors=A_      ,					**A_ )

										if images is not None:
																lowerCamelCase__   =self.image_processor(A_      ,					return_tensors=A_      ,					**A_ )

										if text is not None and images is not None:
																lowerCamelCase__   =image_features.pixel_values
																return encoding
										elif text is not None:
																return encoding
										else:
																return BatchEncoding(data=dict(**A_ )      ,					tensor_type=A_ )

				def 						_a      ( self      ,					*_lowerCamelCase      ,					**_lowerCamelCase ):
										return self.tokenizer.batch_decode(*A_      ,					**A_ )

				def 						_a      ( self      ,					*_lowerCamelCase      ,					**_lowerCamelCase ):
										return self.tokenizer.decode(*A_      ,					**A_ )






				@property
				def 						_a      ( self ):
										return ["input_ids", "attention_mask", "pixel_values"]






import string






def 		_A		(		_lowercase )					-> None:


     """simple docstring"""


     for key in range(len(string.ascii_uppercase ) ):
          __UpperCamelCase =			''
          for symbol in message:
               if symbol in string.ascii_uppercase:
                    __UpperCamelCase =			string.ascii_uppercase.find(_lowercase )
                    __UpperCamelCase =			num - key
                    if num < 0:
                         __UpperCamelCase =			num + len(string.ascii_uppercase )
                    __UpperCamelCase =			translated + string.ascii_uppercase[num]
               else:
                    __UpperCamelCase =			translated + symbol
          print(f'''Decryption using Key #{key}: {translated}''' )






def 		_A		(		)					-> None:


     """simple docstring"""


     __UpperCamelCase =			input('Encrypted message: ' )
     __UpperCamelCase =			message.upper()
     decrypt(_lowercase )


if __name__ == "__main__":
    import doctest

    doctest.testmod()
    main()


