"""simple docstring"""




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


__lowerCAmelCase    :							Any													=						logging.get_logger(__name__)

__lowerCAmelCase    :							List[str]													=						{
    "weiweishi/roc-bert-base-zh": "https://huggingface.co/weiweishi/roc-bert-base-zh/resolve/main/config.json",
}

class       a_      (     __UpperCamelCase			):
					UpperCamelCase_ :	List[str]			=    "roc_bert"




					def __init__(	self						:     List[str]  ,						snake_case__						:     int=30522  ,						snake_case__						:     Tuple=768  ,						snake_case__						:     Union[str, Any]=12  ,						snake_case__						:     Any=12  ,						snake_case__						:     int=3072  ,						snake_case__						:     List[Any]="gelu"  ,						snake_case__						:     List[str]=0.1  ,						snake_case__						:     Any=0.1  ,						snake_case__						:     List[str]=512  ,						snake_case__						:     Any=2  ,						snake_case__						:     List[str]=0.02  ,						snake_case__						:     Optional[int]=1E-12  ,						snake_case__						:     Dict=True  ,						snake_case__						:     List[Any]=0  ,						snake_case__						:     List[Any]="absolute"  ,						snake_case__						:     int=None  ,						snake_case__						:     Optional[Any]=True  ,						snake_case__						:     Any=True  ,						snake_case__						:     str=768  ,						snake_case__						:     Union[str, Any]=910  ,						snake_case__						:     Any=512  ,						snake_case__						:     Tuple=24858  ,						snake_case__						:     Optional[Any]=True  ,						**snake_case__						:     Union[str, Any]  ,						):
							lowerCAmelCase__        =   vocab_size
							lowerCAmelCase__        =   max_position_embeddings
							lowerCAmelCase__        =   hidden_size
							lowerCAmelCase__        =   num_hidden_layers
							lowerCAmelCase__        =   num_attention_heads
							lowerCAmelCase__        =   intermediate_size
							lowerCAmelCase__        =   hidden_act
							lowerCAmelCase__        =   hidden_dropout_prob
							lowerCAmelCase__        =   attention_probs_dropout_prob
							lowerCAmelCase__        =   initializer_range
							lowerCAmelCase__        =   type_vocab_size
							lowerCAmelCase__        =   layer_norm_eps
							lowerCAmelCase__        =   use_cache
							lowerCAmelCase__        =   enable_pronunciation
							lowerCAmelCase__        =   enable_shape
							lowerCAmelCase__        =   pronunciation_embed_dim
							lowerCAmelCase__        =   pronunciation_vocab_size
							lowerCAmelCase__        =   shape_embed_dim
							lowerCAmelCase__        =   shape_vocab_size
							lowerCAmelCase__        =   concat_input
							lowerCAmelCase__        =   position_embedding_type
							lowerCAmelCase__        =   classifier_dropout
							super().__init__(pad_token_id=snake_case__  ,						**snake_case__     )





"""simple docstring"""




def 							_UpperCAmelCase		(       lowerCamelCase__ = 50     ):





		"""simple docstring"""




		lowerCAmelCase__        =   [[0] * 3 for _ in range(length + 1     )]

		for row_length in range(length + 1     ):
				for tile_length in range(2			,  5     ):
						for tile_start in range(row_length - tile_length + 1     ):
								different_colour_ways_number[row_length][tile_length - 2] += (
								    different_colour_ways_number[row_length - tile_start - tile_length][
								        tile_length - 2
								    ]
								    + 1
								)

		return sum(different_colour_ways_number[length]     )


if __name__ == "__main__":
			print(F"{solution() = }")




