
import inspect
import unittest

from transformers import ResNetConfig, is_flax_available
from transformers.testing_utils import require_flax, slow
from transformers.utils import cached_property, is_vision_available

from ...test_configuration_common import ConfigTester
from ...test_modeling_flax_common import FlaxModelTesterMixin, floats_tensor


if is_flax_available():
				import jax
				import jax.numpy as jnp

				from transformers.models.resnet.modeling_flax_resnet import FlaxResNetForImageClassification, FlaxResNetModel

if is_vision_available():
				from PIL import Image

				from transformers import AutoImageProcessor





class    _snake_case      (  unittest.TestCase       ):







			def __init__(       self		,     _a		,     _a=3		,     _a=32		,     _a=3		,     _a=10		,     _a=[10, 20, 30, 40]		,     _a=[1, 1, 2, 1]		,     _a=True		,     _a=True		,     _a="relu"		,     _a=3		,     _a=None		,     ):
				__magic_name__	:	Tuple			     =  parent
				__magic_name__	:	Optional[int]			     =  batch_size
				__magic_name__	:	Dict			     =  image_size
				__magic_name__	:	Any			     =  num_channels
				__magic_name__	:	List[Any]			     =  embeddings_size
				__magic_name__	:	Optional[int]			     =  hidden_sizes
				__magic_name__	:	Tuple			     =  depths
				__magic_name__	:	int			     =  is_training
				__magic_name__	:	str			     =  use_labels
				__magic_name__	:	str			     =  hidden_act
				__magic_name__	:	str			     =  num_labels
				__magic_name__	:	Dict			     =  scope
				__magic_name__	:	Tuple			     =  len(_a	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	str			     =  floats_tensor([self.batch_size, self.num_channels, self.image_size, self.image_size]	)

				__magic_name__	:	Dict			     =  self.get_config()

				return config, pixel_values







			def     SCREAMING_SNAKE_CASE					(       self	):
				return ResNetConfig(
				    num_channels=self.num_channels		,     embeddings_size=self.embeddings_size		,     hidden_sizes=self.hidden_sizes		,     depths=self.depths		,     hidden_act=self.hidden_act		,     num_labels=self.num_labels		,     image_size=self.image_size		,     )







			def     SCREAMING_SNAKE_CASE					(       self		,     _a		,     _a	):
				__magic_name__	:	Tuple			     =  FlaxResNetModel(config=_a	)
				__magic_name__	:	Optional[int]			     =  model(_a	)

				# Output shape (b, c, h, w)
				self.parent.assertEqual(
				    result.last_hidden_state.shape		,     (self.batch_size, self.hidden_sizes[-1], self.image_size // 32, self.image_size // 32)		,     )







			def     SCREAMING_SNAKE_CASE					(       self		,     _a		,     _a	):
				__magic_name__	:	List[Any]			     =  self.num_labels
				__magic_name__	:	List[str]			     =  FlaxResNetForImageClassification(config=_a	)
				__magic_name__	:	List[Any]			     =  model(_a	)
				self.parent.assertEqual(result.logits.shape		,     (self.batch_size, self.num_labels)	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Optional[Any]			     =  self.prepare_config_and_inputs()
				__magic_name__     ,					__magic_name__	:	Optional[Any]			     =  config_and_inputs
				__magic_name__	:	int			     =  {"pixel_values": pixel_values}
				return config, inputs_dict







@require_flax
class    _snake_case      (  snake_case       ,		unittest.TestCase       ):
			UpperCamelCase__					   =					(FlaxResNetModel, FlaxResNetForImageClassification) if is_flax_available() else ()

			UpperCamelCase__					   =					False
			UpperCamelCase__					   =					False
			UpperCamelCase__					   =					False







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Union[str, Any]			     =  FlaxResNetModelTester(self	)
				__magic_name__	:	Union[str, Any]			     =  ConfigTester(self		,     config_class=_a		,     has_text_modality=_a	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				self.create_and_test_config_common_properties()
				self.config_tester.create_and_test_config_to_json_string()
				self.config_tester.create_and_test_config_to_json_file()
				self.config_tester.create_and_test_config_from_and_save_pretrained()
				self.config_tester.create_and_test_config_with_num_labels()
				self.config_tester.check_config_can_be_init_without_params()
				self.config_tester.check_config_arguments_init()







			def     SCREAMING_SNAKE_CASE					(       self	):
				return







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Optional[int]			     =  self.model_tester.prepare_config_and_inputs()
				self.model_tester.create_and_check_model(*_a	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	str			     =  self.model_tester.prepare_config_and_inputs()
				self.model_tester.create_and_check_for_image_classification(*_a	)







			@unittest.skip(reason="ResNet does not use inputs_embeds"	)
			def     SCREAMING_SNAKE_CASE					(       self	):
				pass







			@unittest.skip(reason="ResNet does not support input and output embeddings"	)
			def     SCREAMING_SNAKE_CASE					(       self	):
				pass







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__     ,					__magic_name__	:	Union[str, Any]			     =  self.model_tester.prepare_config_and_inputs_for_common()

				for model_class in self.all_model_classes:
					__magic_name__	:	str			     =  model_class(_a	)
					__magic_name__	:	Tuple			     =  inspect.signature(model.__call__	)
					# signature.parameters is an OrderedDict => so arg_names order is deterministic
					__magic_name__	:	Tuple			     =  [*signature.parameters.keys()]

					__magic_name__	:	Optional[Any]			     =  ["pixel_values"]
					self.assertListEqual(arg_names[:1]		,     _a	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				def check_hidden_states_output(_a		,     _a		,     _a	):
					__magic_name__	:	str			     =  model_class(_a	)

					__magic_name__	:	Optional[int]			     =  model(**self._prepare_for_class(_a		,     _a	)	)

					__magic_name__	:	Any			     =  outputs.encoder_hidden_states if config.is_encoder_decoder else outputs.hidden_states

					__magic_name__	:	str			     =  self.model_tester.num_stages
					self.assertEqual(len(_a	)		,     expected_num_stages + 1	)







			@unittest.skip(reason="ResNet does not use feedforward chunking"	)
			def     SCREAMING_SNAKE_CASE					(       self	):
				pass







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__     ,					__magic_name__	:	List[Any]			     =  self.model_tester.prepare_config_and_inputs_for_common()

				for model_class in self.all_model_classes:
					with self.subTest(model_class.__name__	):
						__magic_name__	:	List[Any]			     =  self._prepare_for_class(_a		,     _a	)
						__magic_name__	:	List[Any]			     =  model_class(_a	)

						@jax.jit
						def model_jitted(_a		,     **_a	):
							return model(pixel_values=_a		,     **_a	)

						with self.subTest("JIT Enabled"	):
							__magic_name__	:	List[str]			     =  model_jitted(**_a	).to_tuple()

						with self.subTest("JIT Disabled"	):
							with jax.disable_jit():
								__magic_name__	:	Tuple			     =  model_jitted(**_a	).to_tuple()

						self.assertEqual(len(_a	)		,     len(_a	)	)
						for jitted_output, output in zip(_a		,     _a	):
							self.assertEqual(jitted_output.shape		,     output.shape	)







def 						lowerCAmelCase_		(      )       ->	int:







	'''simple docstring'''


	__magic_name__	:	List[str]			     =  Image.open("./tests/fixtures/tests_samples/COCO/000000039769.png"     )
	return image





@require_flax
class    _snake_case      (  unittest.TestCase       ):







			@cached_property
			def     SCREAMING_SNAKE_CASE					(       self	):
				return AutoImageProcessor.from_pretrained("microsoft/resnet-50"	) if is_vision_available() else None







			@slow
			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	str			     =  FlaxResNetForImageClassification.from_pretrained("microsoft/resnet-50"	)

				__magic_name__	:	List[str]			     =  self.default_image_processor
				__magic_name__	:	Tuple			     =  prepare_img()
				__magic_name__	:	List[Any]			     =  image_processor(images=_a		,     return_tensors="np"	)

				__magic_name__	:	Optional[int]			     =  model(**_a	)

				# verify the logits
				__magic_name__	:	Any			     =  (1, 1_000)
				self.assertEqual(outputs.logits.shape		,     _a	)

				__magic_name__	:	List[Any]			     =  jnp.array([-11.10_69, -9.78_77, -8.37_77]	)

				self.assertTrue(jnp.allclose(outputs.logits[0, :3]		,     _a		,     atol=1e-4	)	)


import os
import unittest

from transformers import ElectraTokenizerFast
from transformers.models.electra.tokenization_electra import (
    VOCAB_FILES_NAMES,
    BasicTokenizer,
    ElectraTokenizer,
    WordpieceTokenizer,
    _is_control,
    _is_punctuation,
    _is_whitespace,
)
from transformers.testing_utils import require_tokenizers, slow

from ...test_tokenization_common import TokenizerTesterMixin, filter_non_english





@require_tokenizers
class    _snake_case      (  snake_case       ,		unittest.TestCase       ):
			UpperCamelCase__					   =					ElectraTokenizer
			UpperCamelCase__					   =					ElectraTokenizerFast
			UpperCamelCase__					   =					True
			UpperCamelCase__					   =					True
			UpperCamelCase__					   =					filter_non_english







			def     SCREAMING_SNAKE_CASE					(       self	):
				super().setUp()

				__magic_name__	:	Optional[Any]			     =  [
				    "[UNK]",
				    "[CLS]",
				    "[SEP]",
				    "[PAD]",
				    "[MASK]",
				    "want",
				    "##want",
				    "##ed",
				    "wa",
				    "un",
				    "runn",
				    "##ing",
				    ",",
				    "low",
				    "lowest",
				]
				__magic_name__	:	Dict			     =  os.path.join(self.tmpdirname		,     VOCAB_FILES_NAMES["vocab_file"]	)
				with open(self.vocab_file		,     "w"		,     encoding="utf-8"	) as vocab_writer:
					vocab_writer.write("".join([x + "\n" for x in vocab_tokens]	)	)







			def     SCREAMING_SNAKE_CASE					(       self		,     _a	):
				__magic_name__	:	Dict			     =  "UNwant\u00E9d,running"
				__magic_name__	:	int			     =  "unwanted, running"
				return input_text, output_text







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Union[str, Any]			     =  self.tokenizer_class(self.vocab_file	)

				__magic_name__	:	Optional[int]			     =  tokenizer.tokenize("UNwant\u00E9d,running"	)
				self.assertListEqual(_a		,     ["un", "##want", "##ed", ",", "runn", "##ing"]	)
				self.assertListEqual(tokenizer.convert_tokens_to_ids(_a	)		,     [9, 6, 7, 12, 10, 11]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				if not self.test_rust_tokenizer:
					return

				__magic_name__	:	str			     =  self.get_tokenizer()
				__magic_name__	:	Optional[int]			     =  self.get_rust_tokenizer()

				__magic_name__	:	Tuple			     =  "UNwant\u00E9d,running"

				__magic_name__	:	List[Any]			     =  tokenizer.tokenize(_a	)
				__magic_name__	:	str			     =  rust_tokenizer.tokenize(_a	)
				self.assertListEqual(_a		,     _a	)

				__magic_name__	:	int			     =  tokenizer.encode(_a		,     add_special_tokens=_a	)
				__magic_name__	:	Union[str, Any]			     =  rust_tokenizer.encode(_a		,     add_special_tokens=_a	)
				self.assertListEqual(_a		,     _a	)

				__magic_name__	:	Tuple			     =  self.get_rust_tokenizer()
				__magic_name__	:	Union[str, Any]			     =  tokenizer.encode(_a	)
				__magic_name__	:	Any			     =  rust_tokenizer.encode(_a	)
				self.assertListEqual(_a		,     _a	)

				# With lower casing
				__magic_name__	:	Optional[Any]			     =  self.get_tokenizer(do_lower_case=_a	)
				__magic_name__	:	Union[str, Any]			     =  self.get_rust_tokenizer(do_lower_case=_a	)

				__magic_name__	:	Tuple			     =  "UNwant\u00E9d,running"

				__magic_name__	:	Optional[Any]			     =  tokenizer.tokenize(_a	)
				__magic_name__	:	List[Any]			     =  rust_tokenizer.tokenize(_a	)
				self.assertListEqual(_a		,     _a	)

				__magic_name__	:	Any			     =  tokenizer.encode(_a		,     add_special_tokens=_a	)
				__magic_name__	:	List[str]			     =  rust_tokenizer.encode(_a		,     add_special_tokens=_a	)
				self.assertListEqual(_a		,     _a	)

				__magic_name__	:	Dict			     =  self.get_rust_tokenizer()
				__magic_name__	:	Optional[int]			     =  tokenizer.encode(_a	)
				__magic_name__	:	Any			     =  rust_tokenizer.encode(_a	)
				self.assertListEqual(_a		,     _a	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Tuple			     =  BasicTokenizer()

				self.assertListEqual(tokenizer.tokenize("ah\u535A\u63A8zz"	)		,     ["ah", "\u535A", "\u63A8", "zz"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Optional[Any]			     =  BasicTokenizer(do_lower_case=_a	)

				self.assertListEqual(
				    tokenizer.tokenize(" \tHeLLo!how  \n Are yoU?  "	)		,     ["hello", "!", "how", "are", "you", "?"]	)
				self.assertListEqual(tokenizer.tokenize("H\u00E9llo"	)		,     ["hello"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Union[str, Any]			     =  BasicTokenizer(do_lower_case=_a		,     strip_accents=_a	)

				self.assertListEqual(
				    tokenizer.tokenize(" \tHäLLo!how  \n Are yoU?  "	)		,     ["hällo", "!", "how", "are", "you", "?"]	)
				self.assertListEqual(tokenizer.tokenize("H\u00E9llo"	)		,     ["h\u00E9llo"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	str			     =  BasicTokenizer(do_lower_case=_a		,     strip_accents=_a	)

				self.assertListEqual(
				    tokenizer.tokenize(" \tHäLLo!how  \n Are yoU?  "	)		,     ["hallo", "!", "how", "are", "you", "?"]	)
				self.assertListEqual(tokenizer.tokenize("H\u00E9llo"	)		,     ["hello"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Optional[int]			     =  BasicTokenizer(do_lower_case=_a	)

				self.assertListEqual(
				    tokenizer.tokenize(" \tHäLLo!how  \n Are yoU?  "	)		,     ["hallo", "!", "how", "are", "you", "?"]	)
				self.assertListEqual(tokenizer.tokenize("H\u00E9llo"	)		,     ["hello"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Union[str, Any]			     =  BasicTokenizer(do_lower_case=_a	)

				self.assertListEqual(
				    tokenizer.tokenize(" \tHeLLo!how  \n Are yoU?  "	)		,     ["HeLLo", "!", "how", "Are", "yoU", "?"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Dict			     =  BasicTokenizer(do_lower_case=_a		,     strip_accents=_a	)

				self.assertListEqual(
				    tokenizer.tokenize(" \tHäLLo!how  \n Are yoU?  "	)		,     ["HäLLo", "!", "how", "Are", "yoU", "?"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Any			     =  BasicTokenizer(do_lower_case=_a		,     strip_accents=_a	)

				self.assertListEqual(
				    tokenizer.tokenize(" \tHäLLo!how  \n Are yoU?  "	)		,     ["HaLLo", "!", "how", "Are", "yoU", "?"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Any			     =  BasicTokenizer(do_lower_case=_a		,     never_split=["[UNK]"]	)

				self.assertListEqual(
				    tokenizer.tokenize(" \tHeLLo!how  \n Are yoU? [UNK]"	)		,     ["HeLLo", "!", "how", "Are", "yoU", "?", "[UNK]"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	Dict			     =  ["[UNK]", "[CLS]", "[SEP]", "want", "##want", "##ed", "wa", "un", "runn", "##ing"]

				__magic_name__	:	Optional[int]			     =  {}
				for i, token in enumerate(_a	):
					__magic_name__	:	Tuple			     =  i
				__magic_name__	:	Tuple			     =  WordpieceTokenizer(vocab=_a		,     unk_token="[UNK]"	)

				self.assertListEqual(tokenizer.tokenize(""	)		,     []	)

				self.assertListEqual(tokenizer.tokenize("unwanted running"	)		,     ["un", "##want", "##ed", "runn", "##ing"]	)

				self.assertListEqual(tokenizer.tokenize("unwantedX running"	)		,     ["[UNK]", "runn", "##ing"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				self.assertTrue(_is_whitespace(" "	)	)
				self.assertTrue(_is_whitespace("\t"	)	)
				self.assertTrue(_is_whitespace("\r"	)	)
				self.assertTrue(_is_whitespace("\n"	)	)
				self.assertTrue(_is_whitespace("\u00A0"	)	)

				self.assertFalse(_is_whitespace("A"	)	)
				self.assertFalse(_is_whitespace("-"	)	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				self.assertTrue(_is_control("\u0005"	)	)

				self.assertFalse(_is_control("A"	)	)
				self.assertFalse(_is_control(" "	)	)
				self.assertFalse(_is_control("\t"	)	)
				self.assertFalse(_is_control("\r"	)	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				self.assertTrue(_is_punctuation("-"	)	)
				self.assertTrue(_is_punctuation("$"	)	)
				self.assertTrue(_is_punctuation("`"	)	)
				self.assertTrue(_is_punctuation("."	)	)

				self.assertFalse(_is_punctuation("A"	)	)
				self.assertFalse(_is_punctuation(" "	)	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	List[Any]			     =  self.get_tokenizer()
				__magic_name__	:	List[str]			     =  self.get_rust_tokenizer()

				# Example taken from the issue https://github.com/huggingface/tokenizers/issues/340
				self.assertListEqual([tokenizer.tokenize(_a	) for t in ["Test", "\xad", "test"]]		,     [["[UNK]"], [], ["[UNK]"]]	)

				self.assertListEqual(
				    [rust_tokenizer.tokenize(_a	) for t in ["Test", "\xad", "test"]]		,     [["[UNK]"], [], ["[UNK]"]]	)







			@slow
			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	int			     =  self.tokenizer_class.from_pretrained("google/electra-base-discriminator"	)

				__magic_name__	:	List[Any]			     =  tokenizer.encode("sequence builders"		,     add_special_tokens=_a	)
				__magic_name__	:	List[Any]			     =  tokenizer.encode("multi-sequence build"		,     add_special_tokens=_a	)

				__magic_name__	:	Optional[int]			     =  tokenizer.build_inputs_with_special_tokens(_a	)
				__magic_name__	:	Tuple			     =  tokenizer.build_inputs_with_special_tokens(_a		,     _a	)

				assert encoded_sentence == [101] + text + [102]
				assert encoded_pair == [101] + text + [102] + text_a + [102]







			def     SCREAMING_SNAKE_CASE					(       self	):
				for tokenizer, pretrained_name, kwargs in self.tokenizers_list:
					with self.subTest(f'''{tokenizer.__class__.__name__} ({pretrained_name})'''	):
						__magic_name__	:	str			     =  self.rust_tokenizer_class.from_pretrained(_a		,     **_a	)

						__magic_name__	:	Optional[Any]			     =  f'''A, naïve {tokenizer_r.mask_token} AllenNLP sentence.'''
						__magic_name__	:	Any			     =  tokenizer_r.encode_plus(
						    _a		,     return_attention_mask=_a		,     return_token_type_ids=_a		,     return_offsets_mapping=_a		,     add_special_tokens=_a		,     )

						__magic_name__	:	Any			     =  tokenizer_r.do_lower_case if hasattr(_a		,     "do_lower_case"	) else False
						__magic_name__	:	int			     =  (
						    [
						        ((0, 0), tokenizer_r.cls_token),
						        ((0, 1), "A"),
						        ((1, 2), ","),
						        ((3, 5), "na"),
						        ((5, 6), "##ï"),
						        ((6, 8), "##ve"),
						        ((9, 15), tokenizer_r.mask_token),
						        ((16, 21), "Allen"),
						        ((21, 23), "##NL"),
						        ((23, 24), "##P"),
						        ((25, 33), "sentence"),
						        ((33, 34), "."),
						        ((0, 0), tokenizer_r.sep_token),
						    ]
						    if not do_lower_case
						    else [
						        ((0, 0), tokenizer_r.cls_token),
						        ((0, 1), "a"),
						        ((1, 2), ","),
						        ((3, 8), "naive"),
						        ((9, 15), tokenizer_r.mask_token),
						        ((16, 21), "allen"),
						        ((21, 23), "##nl"),
						        ((23, 24), "##p"),
						        ((25, 33), "sentence"),
						        ((33, 34), "."),
						        ((0, 0), tokenizer_r.sep_token),
						    ]
						)

						self.assertEqual(
						    [e[1] for e in expected_results]		,     tokenizer_r.convert_ids_to_tokens(tokens["input_ids"]	)	)
						self.assertEqual([e[0] for e in expected_results]		,     tokens["offset_mapping"]	)







			def     SCREAMING_SNAKE_CASE					(       self	):
				__magic_name__	:	str			     =  ["的", "人", "有"]
				__magic_name__	:	List[str]			     =  "".join(_a	)
				for tokenizer, pretrained_name, kwargs in self.tokenizers_list:
					with self.subTest(f'''{tokenizer.__class__.__name__} ({pretrained_name})'''	):
						__magic_name__	:	Optional[int]			     =  True
						__magic_name__	:	Optional[int]			     =  self.tokenizer_class.from_pretrained(_a		,     **_a	)
						__magic_name__	:	Union[str, Any]			     =  self.rust_tokenizer_class.from_pretrained(_a		,     **_a	)

						__magic_name__	:	Tuple			     =  tokenizer_p.encode(_a		,     add_special_tokens=_a	)
						__magic_name__	:	List[Any]			     =  tokenizer_r.encode(_a		,     add_special_tokens=_a	)

						__magic_name__	:	List[str]			     =  tokenizer_r.convert_ids_to_tokens(_a	)
						__magic_name__	:	List[Any]			     =  tokenizer_p.convert_ids_to_tokens(_a	)

						# it is expected that each Chinese character is not preceded by "##"
						self.assertListEqual(_a		,     _a	)
						self.assertListEqual(_a		,     _a	)

						__magic_name__	:	Tuple			     =  False
						__magic_name__	:	Tuple			     =  self.rust_tokenizer_class.from_pretrained(_a		,     **_a	)
						__magic_name__	:	str			     =  self.tokenizer_class.from_pretrained(_a		,     **_a	)

						__magic_name__	:	Dict			     =  tokenizer_r.encode(_a		,     add_special_tokens=_a	)
						__magic_name__	:	Dict			     =  tokenizer_p.encode(_a		,     add_special_tokens=_a	)

						__magic_name__	:	List[str]			     =  tokenizer_r.convert_ids_to_tokens(_a	)
						__magic_name__	:	List[Any]			     =  tokenizer_p.convert_ids_to_tokens(_a	)

						# it is expected that only the first Chinese character is not preceded by "##".
						__magic_name__	:	Tuple			     =  [
						    f'''##{token}''' if idx != 0 else token for idx, token in enumerate(_a	)
						]
						self.assertListEqual(_a		,     _a	)
						self.assertListEqual(_a		,     _a	)
