





"""simple docstring"""






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


A	     =					logging.get_logger(__name__)

A	     =					{
    '''facebook/dpr-ctx_encoder-single-nq-base''': (
        '''https://huggingface.co/facebook/dpr-ctx_encoder-single-nq-base/resolve/main/config.json'''
    ),
    '''facebook/dpr-question_encoder-single-nq-base''': (
        '''https://huggingface.co/facebook/dpr-question_encoder-single-nq-base/resolve/main/config.json'''
    ),
    '''facebook/dpr-reader-single-nq-base''': (
        '''https://huggingface.co/facebook/dpr-reader-single-nq-base/resolve/main/config.json'''
    ),
    '''facebook/dpr-ctx_encoder-multiset-base''': (
        '''https://huggingface.co/facebook/dpr-ctx_encoder-multiset-base/resolve/main/config.json'''
    ),
    '''facebook/dpr-question_encoder-multiset-base''': (
        '''https://huggingface.co/facebook/dpr-question_encoder-multiset-base/resolve/main/config.json'''
    ),
    '''facebook/dpr-reader-multiset-base''': (
        '''https://huggingface.co/facebook/dpr-reader-multiset-base/resolve/main/config.json'''
    ),
}




class 			__lowercase     (     _UpperCamelCase							):







					'''simple docstring'''




					__lowerCAmelCase					=					'''dpr'''







					def __init__(  self		,     _UpperCAmelCase=30522		,     _UpperCAmelCase=768		,     _UpperCAmelCase=12		,     _UpperCAmelCase=12		,     _UpperCAmelCase=3072		,     _UpperCAmelCase="gelu"		,     _UpperCAmelCase=0.1		,     _UpperCAmelCase=0.1		,     _UpperCAmelCase=512		,     _UpperCAmelCase=2		,     _UpperCAmelCase=0.0_2		,     _UpperCAmelCase=1e-1_2		,     _UpperCAmelCase=0		,     _UpperCAmelCase="absolute"		,     _UpperCAmelCase = 0		,     **_UpperCAmelCase		,     ):
									super().__init__(pad_token_id=_UpperCAmelCase		,     **_UpperCAmelCase       )

									__a	:  List[Any]         =					vocab_size
									__a	:  int         =					hidden_size
									__a	:  str         =					num_hidden_layers
									__a	:  Any         =					num_attention_heads
									__a	:  Dict         =					hidden_act
									__a	:  Any         =					intermediate_size
									__a	:  Dict         =					hidden_dropout_prob
									__a	:  List[str]         =					attention_probs_dropout_prob
									__a	:  List[str]         =					max_position_embeddings
									__a	:  List[str]         =					type_vocab_size
									__a	:  Union[str, Any]         =					initializer_range
									__a	:  List[Any]         =					layer_norm_eps
									__a	:  Tuple         =					projection_dim
									__a	:  List[str]         =					position_embedding_type






"""simple docstring"""






def       __A (     a_  :int				,    a_  :int)						->						str:
				if a < 0 or b < 0:
								raise ValueError('''the value of both inputs must be positive''')

				__a	:  Union[str, Any]         =					str(bin(a_))[2:]  # remove the leading "0b"
				__a	:  Union[str, Any]         =					str(bin(a_))[2:]  # remove the leading "0b"

				__a	:  Optional[Any]         =					max(len(a_)				,    len(a_))

				return "0b" + "".join(
				    str(int(char_a != char_b))
				    for char_a, char_b in zip(a_binary.zfill(a_)				,    b_binary.zfill(a_)))


if __name__ == "__main__":
		import doctest

		doctest.testmod()