






"""simple docstring"""
from typing import List

from tokenizers import NormalizedString, PreTokenizedString, normalizers



class 						a_ :







      '''simple docstring'''

      def __init__(self,	lowerCamelCase_   ):

       '''simple docstring'''



       lowerCamelCase__	:     List[str]								=		vocab
       lowerCamelCase__	:     List[Any]								=		normalizers.BertNormalizer(
           clean_text=lowerCamelCase_,	handle_chinese_chars=lowerCamelCase_,	strip_accents=lowerCamelCase_,	lowercase=lowerCamelCase_,	)
       try:
        import rjieba
       except ImportError:
        raise ImportError(
            'You need to install rjieba to use RoFormerTokenizer. '
            'See https://pypi.org/project/rjieba/ for installation.'   )
       lowerCamelCase__	:     Optional[int]								=		rjieba




      def      a__				(self,	lowerCamelCase_,	lowerCamelCase_   ):

       '''simple docstring'''



       lowerCamelCase__	:     List[str]								=		[]

       # this code slice normalized_string is too slow (6s) but test_alignement_methods can pass
       for token, start, end in self.jieba.tokenize(str(lowerCamelCase_   ),	hmm=lowerCamelCase_   ):
        if token in self.vocab:
         splits.append(normalized_string[start:end]   )
        else:
         lowerCamelCase__	:     Tuple								=		self.normalizers.normalize_str(lowerCamelCase_   ).split()
         for token in token_list:
          if token:
           lowerCamelCase__	:     Any								=		start + len(lowerCamelCase_   )
           splits.append(normalized_string[start:end]   )
           lowerCamelCase__	:     List[str]								=		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      a__				(self,	lowerCamelCase_   ):

       '''simple docstring'''



       pretok.split(self.jieba_split   )









"""simple docstring"""
from itertools import combinations, product






def 			lowerCamelCase_    (		_lowerCamelCase     ,  _lowerCamelCase     ,  _lowerCamelCase     ,  _lowerCamelCase							):
 if xa == ya == 0 or xa == ya == 0:
  return False
 lowerCamelCase__	:     Tuple								=		xa * xa + ya * ya
 lowerCamelCase__	:     Union[str, Any]								=		xa * xa + ya * ya
 lowerCamelCase__	:     Optional[Any]								=		(xa - xa) * (xa - xa) + (ya - ya) * (ya - ya)
 return (
     a_square + b_square == c_square
     or a_square + c_square == b_square
     or b_square + c_square == a_square
 )






def 			lowerCamelCase_    (		_lowerCamelCase = 50							):
 return sum(
     1
     for pta, pta in combinations(product(range(limit + 1							)     ,  repeat=2							)     ,  2							)
     if is_right(*_lowerCamelCase     ,  *_lowerCamelCase							)							)


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

