





import argparse
import json
import pickle
from pathlib import Path

import requests
import torch
from huggingface_hub import hf_hub_download
from PIL import Image

from transformers import MaskFormerConfig, MaskFormerForInstanceSegmentation, MaskFormerImageProcessor, SwinConfig
from transformers.utils import logging


logging.set_verbosity_info()
lowerCAmelCase_    =				logging.get_logger(__name__)






def      lowerCamelCase_						(				_UpperCamelCase )		->						Dict:






				"""simple docstring"""


				snake_case_						:    Optional[int]				=  SwinConfig.from_pretrained(
				    '''microsoft/swin-tiny-patch4-window7-224''' ,				out_features=['''stage1''', '''stage2''', '''stage3''', '''stage4'''] )
				snake_case_						:    Tuple				=  MaskFormerConfig(backbone_config=_UpperCamelCase )

				snake_case_						:    Dict				=  '''huggingface/label-files'''
				if "ade20k-full" in model_name:
								# this should be ok
								snake_case_						:    Optional[Any]				=  847
								snake_case_						:    Tuple				=  '''maskformer-ade20k-full-id2label.json'''
				elif "ade" in model_name:
								# this should be ok
								snake_case_						:    Optional[int]				=  150
								snake_case_						:    List[str]				=  '''ade20k-id2label.json'''
				elif "coco-stuff" in model_name:
								# this should be ok
								snake_case_						:    Optional[Any]				=  171
								snake_case_						:    Dict				=  '''maskformer-coco-stuff-id2label.json'''
				elif "coco" in model_name:
								# TODO
								snake_case_						:    Tuple				=  133
								snake_case_						:    Union[str, Any]				=  '''coco-panoptic-id2label.json'''
				elif "cityscapes" in model_name:
								# this should be ok
								snake_case_						:    str				=  19
								snake_case_						:    Dict				=  '''cityscapes-id2label.json'''
				elif "vistas" in model_name:
								# this should be ok
								snake_case_						:    List[Any]				=  65
								snake_case_						:    Optional[Any]				=  '''mapillary-vistas-id2label.json'''

				snake_case_						:    List[Any]				=  json.load(open(hf_hub_download(_UpperCamelCase ,				_UpperCamelCase ,				repo_type='''dataset''' ) ,				'''r''' ) )
				snake_case_						:    Tuple				=  {int(_UpperCamelCase ): v for k, v in idalabel.items()}

				return config






def      lowerCamelCase_						(				_UpperCamelCase )		->						Optional[int]:






				"""simple docstring"""


				snake_case_						:    str				=  []
				# stem
				# fmt: off
				rename_keys.append(('''backbone.patch_embed.proj.weight''', '''model.pixel_level_module.encoder.model.embeddings.patch_embeddings.projection.weight''') )
				rename_keys.append(('''backbone.patch_embed.proj.bias''', '''model.pixel_level_module.encoder.model.embeddings.patch_embeddings.projection.bias''') )
				rename_keys.append(('''backbone.patch_embed.norm.weight''', '''model.pixel_level_module.encoder.model.embeddings.norm.weight''') )
				rename_keys.append(('''backbone.patch_embed.norm.bias''', '''model.pixel_level_module.encoder.model.embeddings.norm.bias''') )
				# stages
				for i in range(len(config.backbone_config.depths ) ):
								for j in range(config.backbone_config.depths[i] ):
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.norm1.weight''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.layernorm_before.weight''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.norm1.bias''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.layernorm_before.bias''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.attn.relative_position_bias_table''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.attention.self.relative_position_bias_table''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.attn.relative_position_index''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.attention.self.relative_position_index''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.attn.proj.weight''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.attention.output.dense.weight''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.attn.proj.bias''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.attention.output.dense.bias''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.norm2.weight''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.layernorm_after.weight''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.norm2.bias''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.layernorm_after.bias''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.mlp.fc1.weight''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.intermediate.dense.weight''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.mlp.fc1.bias''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.intermediate.dense.bias''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.mlp.fc2.weight''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.output.dense.weight''') )
												rename_keys.append((f'''backbone.layers.{i}.blocks.{j}.mlp.fc2.bias''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.blocks.{j}.output.dense.bias''') )

								if i < 3:
												rename_keys.append((f'''backbone.layers.{i}.downsample.reduction.weight''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.downsample.reduction.weight''') )
												rename_keys.append((f'''backbone.layers.{i}.downsample.norm.weight''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.downsample.norm.weight''') )
												rename_keys.append((f'''backbone.layers.{i}.downsample.norm.bias''', f'''model.pixel_level_module.encoder.model.encoder.layers.{i}.downsample.norm.bias''') )
								rename_keys.append((f'''backbone.norm{i}.weight''', f'''model.pixel_level_module.encoder.hidden_states_norms.{i}.weight''') )
								rename_keys.append((f'''backbone.norm{i}.bias''', f'''model.pixel_level_module.encoder.hidden_states_norms.{i}.bias''') )

				# FPN
				rename_keys.append(('''sem_seg_head.layer_4.weight''', '''model.pixel_level_module.decoder.fpn.stem.0.weight''') )
				rename_keys.append(('''sem_seg_head.layer_4.norm.weight''', '''model.pixel_level_module.decoder.fpn.stem.1.weight''') )
				rename_keys.append(('''sem_seg_head.layer_4.norm.bias''', '''model.pixel_level_module.decoder.fpn.stem.1.bias''') )
				for source_index, target_index in zip(range(3 ,				0 ,				-1 ) ,				range(0 ,				3 ) ):
								rename_keys.append((f'''sem_seg_head.adapter_{source_index}.weight''', f'''model.pixel_level_module.decoder.fpn.layers.{target_index}.proj.0.weight''') )
								rename_keys.append((f'''sem_seg_head.adapter_{source_index}.norm.weight''', f'''model.pixel_level_module.decoder.fpn.layers.{target_index}.proj.1.weight''') )
								rename_keys.append((f'''sem_seg_head.adapter_{source_index}.norm.bias''', f'''model.pixel_level_module.decoder.fpn.layers.{target_index}.proj.1.bias''') )
								rename_keys.append((f'''sem_seg_head.layer_{source_index}.weight''', f'''model.pixel_level_module.decoder.fpn.layers.{target_index}.block.0.weight''') )
								rename_keys.append((f'''sem_seg_head.layer_{source_index}.norm.weight''', f'''model.pixel_level_module.decoder.fpn.layers.{target_index}.block.1.weight''') )
								rename_keys.append((f'''sem_seg_head.layer_{source_index}.norm.bias''', f'''model.pixel_level_module.decoder.fpn.layers.{target_index}.block.1.bias''') )
				rename_keys.append(('''sem_seg_head.mask_features.weight''', '''model.pixel_level_module.decoder.mask_projection.weight''') )
				rename_keys.append(('''sem_seg_head.mask_features.bias''', '''model.pixel_level_module.decoder.mask_projection.bias''') )

				# Transformer decoder
				for idx in range(config.decoder_config.decoder_layers ):
								# self-attention out projection
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.self_attn.out_proj.weight''', f'''model.transformer_module.decoder.layers.{idx}.self_attn.out_proj.weight''') )
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.self_attn.out_proj.bias''', f'''model.transformer_module.decoder.layers.{idx}.self_attn.out_proj.bias''') )
								# cross-attention out projection
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.multihead_attn.out_proj.weight''', f'''model.transformer_module.decoder.layers.{idx}.encoder_attn.out_proj.weight''') )
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.multihead_attn.out_proj.bias''', f'''model.transformer_module.decoder.layers.{idx}.encoder_attn.out_proj.bias''') )
								# MLP 1
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.linear1.weight''', f'''model.transformer_module.decoder.layers.{idx}.fc1.weight''') )
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.linear1.bias''', f'''model.transformer_module.decoder.layers.{idx}.fc1.bias''') )
								# MLP 2
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.linear2.weight''', f'''model.transformer_module.decoder.layers.{idx}.fc2.weight''') )
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.linear2.bias''', f'''model.transformer_module.decoder.layers.{idx}.fc2.bias''') )
								# layernorm 1 (self-attention layernorm)
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.norm1.weight''', f'''model.transformer_module.decoder.layers.{idx}.self_attn_layer_norm.weight''') )
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.norm1.bias''', f'''model.transformer_module.decoder.layers.{idx}.self_attn_layer_norm.bias''') )
								# layernorm 2 (cross-attention layernorm)
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.norm2.weight''', f'''model.transformer_module.decoder.layers.{idx}.encoder_attn_layer_norm.weight''') )
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.norm2.bias''', f'''model.transformer_module.decoder.layers.{idx}.encoder_attn_layer_norm.bias''') )
								# layernorm 3 (final layernorm)
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.norm3.weight''', f'''model.transformer_module.decoder.layers.{idx}.final_layer_norm.weight''') )
								rename_keys.append((f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.norm3.bias''', f'''model.transformer_module.decoder.layers.{idx}.final_layer_norm.bias''') )

				rename_keys.append(('''sem_seg_head.predictor.transformer.decoder.norm.weight''', '''model.transformer_module.decoder.layernorm.weight''') )
				rename_keys.append(('''sem_seg_head.predictor.transformer.decoder.norm.bias''', '''model.transformer_module.decoder.layernorm.bias''') )

				# heads on top
				rename_keys.append(('''sem_seg_head.predictor.query_embed.weight''', '''model.transformer_module.queries_embedder.weight''') )

				rename_keys.append(('''sem_seg_head.predictor.input_proj.weight''', '''model.transformer_module.input_projection.weight''') )
				rename_keys.append(('''sem_seg_head.predictor.input_proj.bias''', '''model.transformer_module.input_projection.bias''') )

				rename_keys.append(('''sem_seg_head.predictor.class_embed.weight''', '''class_predictor.weight''') )
				rename_keys.append(('''sem_seg_head.predictor.class_embed.bias''', '''class_predictor.bias''') )

				for i in range(3 ):
								rename_keys.append((f'''sem_seg_head.predictor.mask_embed.layers.{i}.weight''', f'''mask_embedder.{i}.0.weight''') )
								rename_keys.append((f'''sem_seg_head.predictor.mask_embed.layers.{i}.bias''', f'''mask_embedder.{i}.0.bias''') )
				# fmt: on

				return rename_keys






def      lowerCamelCase_						(				_UpperCamelCase ,				_UpperCamelCase ,				_UpperCamelCase )		->						Union[str, Any]:






				"""simple docstring"""


				snake_case_						:    Tuple				=  dct.pop(_UpperCamelCase )
				snake_case_						:    str				=  val






def      lowerCamelCase_						(				_UpperCamelCase ,				_UpperCamelCase )		->						Any:






				"""simple docstring"""


				snake_case_						:    Optional[int]				=  [int(backbone_config.embed_dim * 2**i ) for i in range(len(backbone_config.depths ) )]
				for i in range(len(backbone_config.depths ) ):
								snake_case_						:    int				=  num_features[i]
								for j in range(backbone_config.depths[i] ):
												# fmt: off
												# read in weights + bias of input projection layer (in original implementation, this is a single matrix + bias)
												snake_case_						:    Dict				=  state_dict.pop(f'''backbone.layers.{i}.blocks.{j}.attn.qkv.weight''' )
												snake_case_						:    Union[str, Any]				=  state_dict.pop(f'''backbone.layers.{i}.blocks.{j}.attn.qkv.bias''' )
												# next, add query, keys and values (in that order) to the state dict
												snake_case_						:    Optional[int]				=  in_proj_weight[:dim, :]
												snake_case_						:    str				=  in_proj_bias[: dim]
												snake_case_						:    int				=  in_proj_weight[
												    dim : dim * 2, :
												]
												snake_case_						:    Any				=  in_proj_bias[
												    dim : dim * 2
												]
												snake_case_						:    List[str]				=  in_proj_weight[
												    -dim :, :
												]
												snake_case_						:    List[Any]				=  in_proj_bias[-dim :]
												# fmt: on






def      lowerCamelCase_						(				_UpperCamelCase ,				_UpperCamelCase )		->						str:






				"""simple docstring"""


				snake_case_						:    Any				=  config.decoder_config.hidden_size
				for idx in range(config.decoder_config.decoder_layers ):
								# read in weights + bias of self-attention input projection layer (in the original implementation, this is a single matrix + bias)
								snake_case_						:    Dict				=  state_dict.pop(f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.self_attn.in_proj_weight''' )
								snake_case_						:    Optional[Any]				=  state_dict.pop(f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.self_attn.in_proj_bias''' )
								# next, add query, keys and values (in that order) to the state dict
								snake_case_						:    Union[str, Any]				=  in_proj_weight[: hidden_size, :]
								snake_case_						:    Dict				=  in_proj_bias[:config.hidden_size]
								snake_case_						:    str				=  in_proj_weight[hidden_size : hidden_size * 2, :]
								snake_case_						:    List[Any]				=  in_proj_bias[hidden_size : hidden_size * 2]
								snake_case_						:    int				=  in_proj_weight[-hidden_size :, :]
								snake_case_						:    List[Any]				=  in_proj_bias[-hidden_size :]
								# read in weights + bias of cross-attention input projection layer (in the original implementation, this is a single matrix + bias)
								snake_case_						:    List[str]				=  state_dict.pop(f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.multihead_attn.in_proj_weight''' )
								snake_case_						:    List[str]				=  state_dict.pop(f'''sem_seg_head.predictor.transformer.decoder.layers.{idx}.multihead_attn.in_proj_bias''' )
								# next, add query, keys and values (in that order) to the state dict
								snake_case_						:    str				=  in_proj_weight[: hidden_size, :]
								snake_case_						:    List[str]				=  in_proj_bias[:config.hidden_size]
								snake_case_						:    Optional[Any]				=  in_proj_weight[hidden_size : hidden_size * 2, :]
								snake_case_						:    Optional[Any]				=  in_proj_bias[hidden_size : hidden_size * 2]
								snake_case_						:    Any				=  in_proj_weight[-hidden_size :, :]
								snake_case_						:    Union[str, Any]				=  in_proj_bias[-hidden_size :]
				# fmt: on






def      lowerCamelCase_						(				)		->						torch.Tensor:






				"""simple docstring"""


				snake_case_						:    str				=  '''http://images.cocodataset.org/val2017/000000039769.jpg'''
				snake_case_						:    Tuple				=  Image.open(requests.get(_UpperCamelCase ,				stream=_UpperCamelCase ).raw )
				return im






@torch.no_grad()
def      lowerCamelCase_						(				_UpperCamelCase ,				_UpperCamelCase ,				_UpperCamelCase ,				_UpperCamelCase = False )		->						int:






				"""simple docstring"""


				snake_case_						:    Tuple				=  get_maskformer_config(_UpperCamelCase )

				# load original state_dict
				with open(_UpperCamelCase ,				'''rb''' ) as f:
								snake_case_						:    Optional[Any]				=  pickle.load(_UpperCamelCase )
				snake_case_						:    Optional[int]				=  data['''model''']

				# for name, param in state_dict.items():
				#     print(name, param.shape)

				# rename keys
				snake_case_						:    str				=  create_rename_keys(_UpperCamelCase )
				for src, dest in rename_keys:
								rename_key(_UpperCamelCase ,				_UpperCamelCase ,				_UpperCamelCase )
				read_in_swin_q_k_v(_UpperCamelCase ,				config.backbone_config )
				read_in_decoder_q_k_v(_UpperCamelCase ,				_UpperCamelCase )

				# update to torch tensors
				for key, value in state_dict.items():
								snake_case_						:    str				=  torch.from_numpy(_UpperCamelCase )

				# load 🤗 model
				snake_case_						:    Tuple				=  MaskFormerForInstanceSegmentation(_UpperCamelCase )
				model.eval()

				for name, param in model.named_parameters():
								print(_UpperCamelCase ,				param.shape )

				snake_case_			,							snake_case_						:    Tuple				=  model.load_state_dict(_UpperCamelCase ,				strict=_UpperCamelCase )
				assert missing_keys == [
				    "model.pixel_level_module.encoder.model.layernorm.weight",
				    "model.pixel_level_module.encoder.model.layernorm.bias",
				]
				assert len(_UpperCamelCase ) == 0, f'''Unexpected keys: {unexpected_keys}'''

				# verify results
				snake_case_						:    Optional[Any]				=  prepare_img()
				if "vistas" in model_name:
								snake_case_						:    List[str]				=  65
				elif "cityscapes" in model_name:
								snake_case_						:    Dict				=  65_535
				else:
								snake_case_						:    Optional[int]				=  255
				snake_case_						:    Dict				=  True if '''ade''' in model_name else False
				snake_case_						:    Optional[int]				=  MaskFormerImageProcessor(ignore_index=_UpperCamelCase ,				reduce_labels=_UpperCamelCase )

				snake_case_						:    str				=  image_processor(_UpperCamelCase ,				return_tensors='''pt''' )

				snake_case_						:    Any				=  model(**_UpperCamelCase )

				print('''Logits:''' ,				outputs.class_queries_logits[0, :3, :3] )

				if model_name == "maskformer-swin-tiny-ade":
								snake_case_						:    Optional[int]				=  torch.tensor(
								    [[3.6_353, -4.4_770, -2.6_065], [0.5_081, -4.2_394, -3.5_343], [2.1_909, -5.0_353, -1.9_323]] )
				assert torch.allclose(outputs.class_queries_logits[0, :3, :3] ,				_UpperCamelCase ,				atol=1E-4 )
				print('''Looks ok!''' )

				if pytorch_dump_folder_path is not None:
								print(f'''Saving model and image processor to {pytorch_dump_folder_path}''' )
								Path(_UpperCamelCase ).mkdir(exist_ok=_UpperCamelCase )
								model.save_pretrained(_UpperCamelCase )
								image_processor.save_pretrained(_UpperCamelCase )

				if push_to_hub:
								print('''Pushing model and image processor to the hub...''' )
								model.push_to_hub(f'''nielsr/{model_name}''' )
								image_processor.push_to_hub(f'''nielsr/{model_name}''' )


if __name__ == "__main__":
	lowerCAmelCase_    =				argparse.ArgumentParser()
	# Required parameters
	parser.add_argument(
	    '''--model_name''',
	    default='''maskformer-swin-tiny-ade''',
	    type=str,
	    help=('''Name of the MaskFormer model you\'d like to convert''',),
	)
	parser.add_argument(
	    '''--checkpoint_path''',
	    default='''/Users/nielsrogge/Documents/MaskFormer_checkpoints/MaskFormer-Swin-tiny-ADE20k/model.pkl''',
	    type=str,
	    help='''Path to the original state dict (.pth file).''',
	)
	parser.add_argument(
	    '''--pytorch_dump_folder_path''', default=None, type=str, help='''Path to the output PyTorch model directory.'''
	)
	parser.add_argument(
	    '''--push_to_hub''', action='''store_true''', help='''Whether or not to push the converted model to the 🤗 hub.'''
	)

	lowerCAmelCase_    =				parser.parse_args()
	convert_maskformer_checkpoint(
	    args.model_name, args.checkpoint_path, args.pytorch_dump_folder_path, args.push_to_hub
	)







import unittest

from transformers import SPIECE_UNDERLINE
from transformers.models.speechta import SpeechTaTokenizer
from transformers.testing_utils import get_tests_dir, require_sentencepiece, require_tokenizers, slow
from transformers.tokenization_utils import AddedToken

from ...test_tokenization_common import TokenizerTesterMixin


lowerCAmelCase_    =				get_tests_dir('''fixtures/test_sentencepiece_bpe_char.model''')



@require_sentencepiece
@require_tokenizers
class 					__lowerCAmelCase       (			_a,     unittest.TestCase     ):
			lowerCamelCase_     :     Optional[int]       			=      SpeechTaTokenizer
			lowerCamelCase_     :     int       			=      False
			lowerCamelCase_     :     Dict       			=      True






			def 			lowerCamelCase  (self    )     ->   Optional[Any]:


							'''simple docstring'''



							super().setUp()

							# We have a SentencePiece fixture for testing
							snake_case_						:    Tuple				=  SpeechTaTokenizer(__magic_name__    )

							snake_case_						:    Any				=  AddedToken('''<mask>'''					,							lstrip=__magic_name__					,							rstrip=__magic_name__    )
							snake_case_						:    int				=  mask_token
							tokenizer.add_special_tokens({'''mask_token''': mask_token}    )
							tokenizer.add_tokens(['''<ctc_blank>''']    )

							tokenizer.save_pretrained(self.tmpdirname    )






			def 			lowerCamelCase  (self					,							__magic_name__    )     ->   Dict:


							'''simple docstring'''



							snake_case_						:    Dict				=  '''this is a test'''
							snake_case_						:    int				=  '''this is a test'''
							return input_text, output_text






			def 			lowerCamelCase  (self					,							__magic_name__					,							__magic_name__=False					,							__magic_name__=20					,							__magic_name__=5    )     ->   List[Any]:


							'''simple docstring'''



							snake_case_			,							snake_case_						:    int				=  self.get_input_output_texts(__magic_name__    )
							snake_case_						:    Optional[Any]				=  tokenizer.encode(__magic_name__					,							add_special_tokens=__magic_name__    )
							snake_case_						:    Any				=  tokenizer.decode(__magic_name__					,							clean_up_tokenization_spaces=__magic_name__    )
							return text, ids






			def 			lowerCamelCase  (self    )     ->   Optional[int]:


							'''simple docstring'''



							snake_case_						:    List[str]				=  '''<pad>'''
							snake_case_						:    Any				=  1

							self.assertEqual(self.get_tokenizer()._convert_token_to_id(__magic_name__    )					,							__magic_name__    )
							self.assertEqual(self.get_tokenizer()._convert_id_to_token(__magic_name__    )					,							__magic_name__    )






			def 			lowerCamelCase  (self    )     ->   Any:


							'''simple docstring'''



							snake_case_						:    Any				=  list(self.get_tokenizer().get_vocab().keys()    )

							self.assertEqual(vocab_keys[0]					,							'''<s>'''    )
							self.assertEqual(vocab_keys[1]					,							'''<pad>'''    )
							self.assertEqual(vocab_keys[-4]					,							'''œ'''    )
							self.assertEqual(vocab_keys[-2]					,							'''<mask>'''    )
							self.assertEqual(vocab_keys[-1]					,							'''<ctc_blank>'''    )
							self.assertEqual(len(__magic_name__    )					,							81    )






			def 			lowerCamelCase  (self    )     ->   Dict:


							'''simple docstring'''



							self.assertEqual(self.get_tokenizer().vocab_size					,							79    )






			def 			lowerCamelCase  (self    )     ->   Tuple:


							'''simple docstring'''



							snake_case_						:    int				=  self.get_tokenizers(do_lower_case=__magic_name__    )
							for tokenizer in tokenizers:
											with self.subTest(F'''{tokenizer.__class__.__name__}'''    ):
															snake_case_						:    int				=  tokenizer.vocab_size
															snake_case_						:    Optional[Any]				=  len(__magic_name__    )

															self.assertNotEqual(__magic_name__					,							0    )

															# We usually have added tokens from the start in tests because our vocab fixtures are
															# smaller than the original vocabs - let's not assert this
															# self.assertEqual(vocab_size, all_size)

															snake_case_						:    List[Any]				=  ['''aaaaa bbbbbb''', '''cccccccccdddddddd''']
															snake_case_						:    List[Any]				=  tokenizer.add_tokens(__magic_name__    )
															snake_case_						:    Dict				=  tokenizer.vocab_size
															snake_case_						:    Optional[Any]				=  len(__magic_name__    )

															self.assertNotEqual(__magic_name__					,							0    )
															self.assertEqual(__magic_name__					,							__magic_name__    )
															self.assertEqual(__magic_name__					,							len(__magic_name__    )    )
															self.assertEqual(__magic_name__					,							all_size + len(__magic_name__    )    )

															snake_case_						:    Union[str, Any]				=  tokenizer.encode('''aaaaa bbbbbb low cccccccccdddddddd l'''					,							add_special_tokens=__magic_name__    )

															self.assertGreaterEqual(len(__magic_name__    )					,							4    )
															self.assertGreater(tokens[0]					,							tokenizer.vocab_size - 1    )
															self.assertGreater(tokens[-3]					,							tokenizer.vocab_size - 1    )

															snake_case_						:    Union[str, Any]				=  {'''eos_token''': '''>>>>|||<||<<|<<''', '''pad_token''': '''<<<<<|||>|>>>>|>'''}
															snake_case_						:    List[str]				=  tokenizer.add_special_tokens(__magic_name__    )
															snake_case_						:    Dict				=  tokenizer.vocab_size
															snake_case_						:    Dict				=  len(__magic_name__    )

															self.assertNotEqual(__magic_name__					,							0    )
															self.assertEqual(__magic_name__					,							__magic_name__    )
															self.assertEqual(__magic_name__					,							len(__magic_name__    )    )
															self.assertEqual(__magic_name__					,							all_size_a + len(__magic_name__    )    )

															snake_case_						:    Tuple				=  tokenizer.encode(
															    '''>>>>|||<||<<|<< aaaaabbbbbb low cccccccccdddddddd <<<<<|||>|>>>>|> l'''					,							add_special_tokens=__magic_name__    )

															self.assertGreaterEqual(len(__magic_name__    )					,							6    )
															self.assertGreater(tokens[0]					,							tokenizer.vocab_size - 1    )
															self.assertGreater(tokens[0]					,							tokens[1]    )
															self.assertGreater(tokens[-3]					,							tokenizer.vocab_size - 1    )
															self.assertGreater(tokens[-3]					,							tokens[-4]    )
															self.assertEqual(tokens[0]					,							tokenizer.eos_token_id    )
															self.assertEqual(tokens[-3]					,							tokenizer.pad_token_id    )






			def 			lowerCamelCase  (self    )     ->   Union[str, Any]:


							'''simple docstring'''



							pass






			def 			lowerCamelCase  (self    )     ->   List[str]:


							'''simple docstring'''



							pass






			def 			lowerCamelCase  (self    )     ->   int:


							'''simple docstring'''



							snake_case_						:    Dict				=  self.get_tokenizer()

							snake_case_						:    Optional[Any]				=  tokenizer.tokenize('''This is a test'''    )
							# fmt: off
							self.assertListEqual(__magic_name__					,							[SPIECE_UNDERLINE, '''T''', '''h''', '''i''', '''s''', SPIECE_UNDERLINE, '''i''', '''s''', SPIECE_UNDERLINE, '''a''', SPIECE_UNDERLINE, '''t''', '''e''', '''s''', '''t''']    )
							# fmt: on

							self.assertListEqual(
							    tokenizer.convert_tokens_to_ids(__magic_name__    )					,							[4, 32, 11, 10, 12, 4, 10, 12, 4, 7, 4, 6, 5, 12, 6]					,							)

							snake_case_						:    List[Any]				=  tokenizer.tokenize('''I was born in 92000, and this is falsé.'''    )
							self.assertListEqual(
							    __magic_name__					,							[SPIECE_UNDERLINE, '''I''', SPIECE_UNDERLINE, '''w''', '''a''', '''s''', SPIECE_UNDERLINE, '''b''', '''o''', '''r''', '''n''', SPIECE_UNDERLINE, '''i''', '''n''', SPIECE_UNDERLINE, '''92000''', ''',''', SPIECE_UNDERLINE, '''a''', '''n''', '''d''', SPIECE_UNDERLINE, '''t''', '''h''', '''i''', '''s''', SPIECE_UNDERLINE, '''i''', '''s''', SPIECE_UNDERLINE, '''f''', '''a''', '''l''', '''s''', '''é''', '''.''']    )

							snake_case_						:    List[str]				=  tokenizer.convert_tokens_to_ids(__magic_name__    )
							# fmt: off
							self.assertListEqual(__magic_name__					,							[4, 30, 4, 20, 7, 12, 4, 25, 8, 13, 9, 4, 10, 9, 4, 3, 23, 4, 7, 9, 14, 4, 6, 11, 10, 12, 4, 10, 12, 4, 19, 7, 15, 12, 73, 26]    )
							# fmt: on

							snake_case_						:    int				=  tokenizer.convert_ids_to_tokens(__magic_name__    )
							self.assertListEqual(
							    __magic_name__					,							[SPIECE_UNDERLINE, '''I''', SPIECE_UNDERLINE, '''w''', '''a''', '''s''', SPIECE_UNDERLINE, '''b''', '''o''', '''r''', '''n''', SPIECE_UNDERLINE, '''i''', '''n''', SPIECE_UNDERLINE, '''<unk>''', ''',''', SPIECE_UNDERLINE, '''a''', '''n''', '''d''', SPIECE_UNDERLINE, '''t''', '''h''', '''i''', '''s''', SPIECE_UNDERLINE, '''i''', '''s''', SPIECE_UNDERLINE, '''f''', '''a''', '''l''', '''s''', '''é''', '''.''']    )






			@slow
			def 			lowerCamelCase  (self    )     ->   Tuple:


							'''simple docstring'''



							snake_case_						:    Tuple				=  [
							    '''Transformers (formerly known as pytorch-transformers and pytorch-pretrained-bert) provides '''
							    '''general-purpose architectures (BERT, GPT, RoBERTa, XLM, DistilBert, XLNet...) for Natural '''
							    '''Language Understanding (NLU) and Natural Language Generation (NLG) with over thirty-two pretrained '''
							    '''models in one hundred plus languages and deep interoperability between Jax, PyTorch and TensorFlow.''',
							    '''BERT is designed to pre-train deep bidirectional representations from unlabeled text by jointly '''
							    '''conditioning on both left and right context in all layers.''',
							    '''The quick brown fox jumps over the lazy dog.''',
							]

							# fmt: off
							snake_case_						:    List[Any]				=  {
							    '''input_ids''': [
							        [4, 32, 13, 7, 9, 12, 19, 8, 13, 18, 5, 13, 12, 4, 64, 19, 8, 13, 18, 5, 13, 15, 22, 4, 28, 9, 8, 20, 9, 4, 7, 12, 4, 24, 22, 6, 8, 13, 17, 11, 39, 6, 13, 7, 9, 12, 19, 8, 13, 18, 5, 13, 12, 4, 7, 9, 14, 4, 24, 22, 6, 8, 13, 17, 11, 39, 24, 13, 5, 6, 13, 7, 10, 9, 5, 14, 39, 25, 5, 13, 6, 63, 4, 24, 13, 8, 27, 10, 14, 5, 12, 4, 21, 5, 9, 5, 13, 7, 15, 39, 24, 16, 13, 24, 8, 12, 5, 4, 7, 13, 17, 11, 10, 6, 5, 17, 6, 16, 13, 5, 12, 4, 64, 40, 47, 54, 32, 23, 4, 53, 49, 32, 23, 4, 54, 8, 40, 47, 54, 32, 7, 23, 4, 69, 52, 43, 23, 4, 51, 10, 12, 6, 10, 15, 40, 5, 13, 6, 23, 4, 69, 52, 48, 5, 6, 26, 26, 26, 63, 4, 19, 8, 13, 4, 48, 7, 6, 16, 13, 7, 15, 4, 52, 7, 9, 21, 16, 7, 21, 5, 4, 61, 9, 14, 5, 13, 12, 6, 7, 9, 14, 10, 9, 21, 4, 64, 48, 52, 61, 63, 4, 7, 9, 14, 4, 48, 7, 6, 16, 13, 7, 15, 4, 52, 7, 9, 21, 16, 7, 21, 5, 4, 53, 5, 9, 5, 13, 7, 6, 10, 8, 9, 4, 64, 48, 52, 53, 63, 4, 20, 10, 6, 11, 4, 8, 27, 5, 13, 4, 6, 11, 10, 13, 6, 22, 39, 6, 20, 8, 4, 24, 13, 5, 6, 13, 7, 10, 9, 5, 14, 4, 18, 8, 14, 5, 15, 12, 4, 10, 9, 4, 8, 9, 5, 4, 11, 16, 9, 14, 13, 5, 14, 4, 24, 15, 16, 12, 4, 15, 7, 9, 21, 16, 7, 21, 5, 12, 4, 7, 9, 14, 4, 14, 5, 5, 24, 4, 10, 9, 6, 5, 13, 8, 24, 5, 13, 7, 25, 10, 15, 10, 6, 22, 4, 25, 5, 6, 20, 5, 5, 9, 4, 58, 7, 37, 23, 4, 49, 22, 32, 8, 13, 17, 11, 4, 7, 9, 14, 4, 32, 5, 9, 12, 8, 13, 55, 15, 8, 20, 26, 2],
							        [4, 40, 47, 54, 32, 4, 10, 12, 4, 14, 5, 12, 10, 21, 9, 5, 14, 4, 6, 8, 4, 24, 13, 5, 39, 6, 13, 7, 10, 9, 4, 14, 5, 5, 24, 4, 25, 10, 14, 10, 13, 5, 17, 6, 10, 8, 9, 7, 15, 4, 13, 5, 24, 13, 5, 12, 5, 9, 6, 7, 6, 10, 8, 9, 12, 4, 19, 13, 8, 18, 4, 16, 9, 15, 7, 25, 5, 15, 5, 14, 4, 6, 5, 37, 6, 4, 25, 22, 4, 46, 8, 10, 9, 6, 15, 22, 4, 17, 8, 9, 14, 10, 6, 10, 8, 9, 10, 9, 21, 4, 8, 9, 4, 25, 8, 6, 11, 4, 15, 5, 19, 6, 4, 7, 9, 14, 4, 13, 10, 21, 11, 6, 4, 17, 8, 9, 6, 5, 37, 6, 4, 10, 9, 4, 7, 15, 15, 4, 15, 7, 22, 5, 13, 12, 26, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
							        [4, 32, 11, 5, 4, 45, 16, 10, 17, 28, 4, 25, 13, 8, 20, 9, 4, 19, 8, 37, 4, 46, 16, 18, 24, 12, 4, 8, 27, 5, 13, 4, 6, 11, 5, 4, 15, 7, 57, 22, 4, 14, 8, 21, 26, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
							    ],
							    '''attention_mask''': [
							        [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
							        [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
							        [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
							    ]
							}
							# fmt: on

							self.tokenizer_integration_test_util(
							    expected_encoding=__magic_name__					,							model_name='''microsoft/speecht5_asr'''					,							revision='''c5ef64c71905caeccde0e4462ef3f9077224c524'''					,							sequences=__magic_name__					,							)
