import unittest
import warnings
from dataclasses import dataclass

from transformers.convert_slow_tokenizer import SpmConverter
from transformers.testing_utils import get_tests_dir


@dataclass
class _lowercase					:





							"""simple docstring"""




							lowerCAmelCase__       =					42






class _lowercase					(       unittest.TestCase						):





							"""simple docstring"""




							def     _UpperCAmelCase       (    self  ):







														'''simple docstring'''






														_lowercase				=	get_tests_dir("""fixtures/test_sentencepiece.model"""  )
														_lowercase				=	get_tests_dir("""fixtures/test_sentencepiece_with_bytefallback.model"""  )

														_lowercase				=	FakeOriginalTokenizer(vocab_file=UpperCAmelCase  )

														with warnings.catch_warnings(record=UpperCAmelCase  ) as w:
																					_lowercase				=	SpmConverter(UpperCAmelCase  )
														self.assertEqual(len(UpperCAmelCase  )     ,   0  )

														_lowercase				=	FakeOriginalTokenizer(vocab_file=UpperCAmelCase  )

														with warnings.catch_warnings(record=UpperCAmelCase  ) as w:
																					_lowercase				=	SpmConverter(UpperCAmelCase  )
														self.assertEqual(len(UpperCAmelCase  )     ,   1  )

														self.assertIn(
														    """The sentencepiece tokenizer that you are converting to a fast tokenizer uses the byte fallback option"""
														    """ which is not implemented in the fast tokenizers."""     ,   str(w[0].message  )     ,   )



def 					__lowerCAmelCase			(  _A = 998_001					):



							"""simple docstring"""


							_lowercase				=	0
							for i in range(999 ,99 ,-1					):  # 3 digit numbers range from 999 down to 100
														for j in range(999 ,99 ,-1					):
																					_lowercase				=	str(i * j					)
																					if product_string == product_string[::-1] and i * j < n:
																												_lowercase				=	max(_A ,i * j					)
							return answer


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


