"""simple docstring"""






from typing import List, Optional, Union

from ...processing_utils import ProcessorMixin
from ...tokenization_utils_base import BatchEncoding, PaddingStrategy, PreTokenizedInput, TextInput, TruncationStrategy
from ...utils import TensorType
class 				snake_case       ( __UpperCAmelCase				):




					"""simple docstring"""

					snake_case__				    = ["image_processor", "tokenizer"]
					snake_case__				    = "BridgeTowerImageProcessor"
					snake_case__				    = ("RobertaTokenizer", "RobertaTokenizerFast")







					def __init__(				self   :	List[str]    ,lowerCamelCase__   :	Dict    ,lowerCamelCase__   :	Union[str, Any]			):
									super().__init__(lowerCamelCase__    ,lowerCamelCase__			)







					def __call__(				self   :	Optional[int]    ,lowerCamelCase__   :	Tuple    ,lowerCamelCase__   :	Union[TextInput, PreTokenizedInput, List[TextInput], List[PreTokenizedInput]] = None    ,lowerCamelCase__   :	bool = True    ,lowerCamelCase__   :	Union[bool, str, PaddingStrategy] = False    ,lowerCamelCase__   :	Union[bool, str, TruncationStrategy] = None    ,lowerCamelCase__   :	Optional[int] = None    ,lowerCamelCase__   :	int = 0    ,lowerCamelCase__   :	Optional[int] = None    ,lowerCamelCase__   :	Optional[bool] = None    ,lowerCamelCase__   :	Optional[bool] = None    ,lowerCamelCase__   :	bool = False    ,lowerCamelCase__   :	bool = False    ,lowerCamelCase__   :	bool = False    ,lowerCamelCase__   :	bool = False    ,lowerCamelCase__   :	bool = True    ,lowerCamelCase__   :	Optional[Union[str, TensorType]] = None    ,**lowerCamelCase__   :	Tuple    ,):
									UpperCAmelCase__             =							self.tokenizer(
									    text=lowerCamelCase__    ,add_special_tokens=lowerCamelCase__    ,padding=lowerCamelCase__    ,truncation=lowerCamelCase__    ,max_length=lowerCamelCase__    ,stride=lowerCamelCase__    ,pad_to_multiple_of=lowerCamelCase__    ,return_token_type_ids=lowerCamelCase__    ,return_attention_mask=lowerCamelCase__    ,return_overflowing_tokens=lowerCamelCase__    ,return_special_tokens_mask=lowerCamelCase__    ,return_offsets_mapping=lowerCamelCase__    ,return_length=lowerCamelCase__    ,verbose=lowerCamelCase__    ,return_tensors=lowerCamelCase__    ,**lowerCamelCase__    ,)
									# add pixel_values + pixel_mask
									UpperCAmelCase__             =							self.image_processor(
									    lowerCamelCase__    ,return_tensors=lowerCamelCase__    ,do_normalize=lowerCamelCase__    ,do_center_crop=lowerCamelCase__    ,**lowerCamelCase__			)
									encoding.update(lowerCamelCase__			)

									return encoding







					def 		__lowerCAmelCase						(				self   :	Union[str, Any]    ,*lowerCamelCase__   :	Optional[int]    ,**lowerCamelCase__   :	Optional[Any]			):
									return self.tokenizer.batch_decode(*lowerCamelCase__    ,**lowerCamelCase__			)







					def 		__lowerCAmelCase						(				self   :	List[str]    ,*lowerCamelCase__   :	Union[str, Any]    ,**lowerCamelCase__   :	List[str]			):
									return self.tokenizer.decode(*lowerCamelCase__    ,**lowerCamelCase__			)







					@property
					def 		__lowerCAmelCase						(				self   :	int			):
									UpperCAmelCase__             =							self.tokenizer.model_input_names
									UpperCAmelCase__             =							self.image_processor.model_input_names
									return list(dict.fromkeys(tokenizer_input_names + image_processor_input_names			)			)








def 			_lowerCAmelCase       (					__lowerCAmelCase  ,  __lowerCAmelCase      )   ->					int:


				"""simple docstring"""

				return int((input_a, input_a).count(1      ) != 0      )



def 			_lowerCAmelCase       (					)   ->					None:


				"""simple docstring"""

				assert or_gate(0  ,  0      ) == 0
				assert or_gate(0  ,  1      ) == 1
				assert or_gate(1  ,  0      ) == 1
				assert or_gate(1  ,  1      ) == 1


if __name__ == "__main__":
				print(or_gate(0, 1))
				print(or_gate(1, 0))
				print(or_gate(0, 0))
				print(or_gate(1, 1))

