



'''simple docstring'''





from typing import List

from tokenizers import NormalizedString, PreTokenizedString, normalizers






class       lowerCamelCase_					:
  """simple docstring"""




  def __init__(				self   :			int    ,			_a   :			str     )      ->      None:
    __lowerCamelCase : int					 =				vocab
    __lowerCamelCase : Union[str, Any]					 =				normalizers.BertNormalizer(
        clean_text=_a    ,			handle_chinese_chars=_a    ,			strip_accents=_a    ,			lowercase=_a    ,			)
    try:
      import rjieba
    except ImportError:
      raise ImportError(
          'You need to install rjieba to use RoFormerTokenizer. '
          'See https://pypi.org/project/rjieba/ for installation.'     )
    __lowerCamelCase : Tuple					 =				rjieba




  def 		_lowercase  (				self   :			Optional[int]    ,			_a   :			int    ,			_a   :			NormalizedString     )      ->      List[NormalizedString]:
    __lowerCamelCase : Optional[Any]					 =				[]

    # this code slice normalized_string is too slow (6s) but test_alignement_methods can pass
    for token, start, end in self.jieba.tokenize(str(_a     )    ,			hmm=_a     ):
      if token in self.vocab:
        splits.append(normalized_string[start:end]     )
      else:
        __lowerCamelCase : Optional[int]					 =				self.normalizers.normalize_str(_a     ).split()
        for token in token_list:
          if token:
            __lowerCamelCase : Optional[int]					 =				start + len(_a     )
            splits.append(normalized_string[start:end]     )
            __lowerCamelCase : Tuple					 =				end

        # this code test_alignement_methods can't pass but fast (300ms)
        # for token in self.jieba.cut(str(normalized_string), False):
        #     if token in self.vocab:
        #         splits.append(NormalizedString(token))
        #     else:
        #         token_list = self.normalizers.normalize_str(token).split()
        #         for token in token_list:
        #             if token:
        #                 splits.append(NormalizedString(token))

    return splits




  def 		_lowercase  (				self   :			Optional[Any]    ,			_a   :			PreTokenizedString     )      ->      Union[str, Any]:
    pretok.split(self.jieba_split     )











'''simple docstring'''





def  a_  (							_lowerCAmelCase = 1000 )   ->   int:
  return sum(i for i in range(_lowerCAmelCase ) if i % 3 == 0 or i % 5 == 0 )


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






