
'''simple docstring'''


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


__lowercase							:   Any					=     logging.get_logger(__name__)

__lowercase							:   Optional[int]					=     {
    '''weiweishi/roc-bert-base-zh''': '''https://huggingface.co/weiweishi/roc-bert-base-zh/resolve/main/config.json''',
}

class 	__lowercase				(  _lowercase    ):
			lowerCamelCase			:		List[str]	      =			"roc_bert"

			def __init__(self			,   A=3_0_5_2_2			,   A=7_6_8			,   A=1_2			,   A=1_2			,   A=3_0_7_2			,   A="gelu"			,   A=0.1			,   A=0.1			,   A=5_1_2			,   A=2			,   A=0.02			,   A=1E-12			,   A=True			,   A=0			,   A="absolute"			,   A=None			,   A=True			,   A=True			,   A=7_6_8			,   A=9_1_0			,   A=5_1_2			,   A=2_4_8_5_8			,   A=True			,   **A			,   ):
								lowerCamelCase_					:      Tuple     =		vocab_size
								lowerCamelCase_					:      int     =		max_position_embeddings
								lowerCamelCase_					:      List[Any]     =		hidden_size
								lowerCamelCase_					:      List[str]     =		num_hidden_layers
								lowerCamelCase_					:      Dict     =		num_attention_heads
								lowerCamelCase_					:      Dict     =		intermediate_size
								lowerCamelCase_					:      List[str]     =		hidden_act
								lowerCamelCase_					:      Union[str, Any]     =		hidden_dropout_prob
								lowerCamelCase_					:      str     =		attention_probs_dropout_prob
								lowerCamelCase_					:      Union[str, Any]     =		initializer_range
								lowerCamelCase_					:      Any     =		type_vocab_size
								lowerCamelCase_					:      List[Any]     =		layer_norm_eps
								lowerCamelCase_					:      Optional[Any]     =		use_cache
								lowerCamelCase_					:      Tuple     =		enable_pronunciation
								lowerCamelCase_					:      Tuple     =		enable_shape
								lowerCamelCase_					:      List[Any]     =		pronunciation_embed_dim
								lowerCamelCase_					:      List[Any]     =		pronunciation_vocab_size
								lowerCamelCase_					:      List[str]     =		shape_embed_dim
								lowerCamelCase_					:      List[Any]     =		shape_vocab_size
								lowerCamelCase_					:      str     =		concat_input
								lowerCamelCase_					:      Optional[Any]     =		position_embedding_type
								lowerCamelCase_					:      List[str]     =		classifier_dropout
								super().__init__(pad_token_id=A			,   **A      )




'''simple docstring'''


def lowercase_	(   _lowercase			,       _lowercase				)     ->							Dict:
					'''simple docstring'''

					lowerCamelCase_					:      List[Any]     =		0
					while b > 0:
										if b & 1:
															res += a

										a += a
										b >>= 1

					return res




def lowercase_	(   _lowercase			,       _lowercase			,       _lowercase				)     ->							Optional[Any]:
					'''simple docstring'''

					lowerCamelCase_					:      str     =		0
					while b > 0:
										if b & 1:
															lowerCamelCase_					:      Optional[int]     =		((res % c) + (a % c)) % c

										a += a
										b >>= 1

					return res


