
    jd                     \    d dl mZ d dlmZmZ d dlmZ d dlmZm	Z	  G d dee          Z
dS )    )AbbreviationReplacer)CommonStandard)	Processor)TextRulec                   t    e Zd ZdZdZ G d de          Z G d dej                  Z G d de          Zd	S )
KazakhkkzD\b[\u0400-\u0500]+(?:\.\s?[\u0400-\u0500])+[.]|b[a-z](?:\.[a-z])+[.]c                   &     e Zd Zd fd	Zd Z xZS )Kazakh.ProcessorFc                 N    t                                          |||           d S Nsuper__init__)selftextlang	char_span	__class__s       [/lsinfo/ai/hellotax_ai/base_platform/venv/lib/python3.11/site-packages/pysbd/lang/kazakh.pyr   zKazakh.Processor.__init__   s%    GGT433333    c                     |                      |                                          }t          dd          }t          dd          }t          |                              ||          }|S )Nu   (?<=)\?(?=\s*[-—]\s*)u   &ᓷ&u   (?<=)!(?=\s*[-—]\s*)u   &ᓴ&)between_punctuation_processorreplacer   r   apply)r   txt'QuestionMarkFollowedByDashLowercaseRule*ExclamationMarkFollowedByDashLowercaseRules       r   between_punctuationz$Kazakh.Processor.between_punctuation   sk    44S99AACCC6:;UW^6_6_39=>WY`9a9a6s))//"I"LN NCJr   )F)__name__
__module____qualname__r   r!   __classcell__r   s   @r   r   r      sL        	4 	4 	4 	4 	4 	4		 		 		 		 		 		 		r   r   c                       e Zd Zg dZg Zg ZdS )Kazakh.Abbreviation(9  afpanpatpbaebgbpcamcctvcdcezcgicnpcfarcfbieitiepoergpgpshashivhrhhttpicuidfimdimer@   rA   ipisokazkpokpakzrI   mrinasanbanbcndsohlomltppmpdapkkpsmpsprafrssrtlsassmesmstntudfuefausbutcxzdf   әқбкrc   u   аақu   авг.u   aббu   аекu   акu   ақu   акцион.u   аксрu   ақшu   англu
   аөсшкu   апр   м.u   а.u   р.   ғ.u   апр.u   аум.   ацатu   әч   т. б.   б. з. б.rh      б. з. д.ri   u   биікт.u   б. т.u	   биол.u   биохимu   бөu   б. э. д.u   бтаu   бұұu   вичu   всоонлu   геогр.u	   геол.u   гленкорu   гэсu   қк   кмu   гu   млнu   млрд   тu   ғ. с.re   u   қ.re   u   дек.u   днқu   дсұu   еақк   еқыұu   ембімұнайгазu   еоu   еуразэқu   еуроодақu   еұу   ж.rm   u   жж.u   жооu   жіөu   жсдпu   жшсu   іімu   интаu   исафu
   камазu   кгбu   кеуu   кг   км²rn      км³ro   u
   кимепu   кср   ксроu   кокп   кхдрu   қазатомпромu   қазкср
   қазұуu   қазмұнайгазu   қазпоштаu   қазтагrr   u   қкпu   қмдбu   қрu   қхрu   лат.   м²rs      м³rt   u   магатэu   май.u   максамu   мбu   мвтu   мемлu   мu   мсопu   мткu   мыс.u   насаu   натоu   нквдu	   нояб.u   обл.u   огпуu   окт.u   оңт.u   опекu   оебu   өзенмұнайгазu   өфu   пәкu   пед.u
   ркфсрu   рнқu
   рсфсрu   рфu   свсu   свуu   сдуu   сесu	   сент.u   смu   снпс	   солт.ru   u
   сооноu   ссроu   ссрu   сссрu   сссu   сэсu   дкrg   rk   u   твu   тереңд.u   тех.u   тжқu   тмдu   төм.u   трлнu   тр   т.u   и.rd   u   с.u   ш.rv   u   т. с. с.u   тэцu   уазu   уефаrl   u   ұқкu   ұқшұu	   февр.u   фққu   фсбu   хим.u   хқкоu   шұар   шыұu	   экон.u
   экспоu   цтпu   цасu   янв.dvdu   жктu   ққсrj   rf   u   юнескоu   ббсmgmu   жскu   зооu   бснu   өұқu   оарu   боакu   эөккu   хтқоu   әөкu   жэкu   хдоu
   спбмуu   афu   сбдu   амтu   гсдпu   гсбпu   эыдұu
   нұсжпrw   u   жтсхu   хдпu   эқкu   фкққu   пиқu   өгкu   мбфu   мажu   котаu   тжu   укu   оббu   сблu   жхлu   кмсu
   бмтркu   жққu
   бхоооu   мқоu   ржмбu
   гулагu   жкоu   еэыu   еаэыrq   u   рфкпu   рлдпu   хвқu   мрu   мтu   ктуu   ртжu   тимu   мемдумrp   u   т.с.сu   с.ш.u   ш.б.u   б.б.u   рубu   минu	   акад.re   u   ммu   мм.N)r"   r#   r$   ABBREVIATIONSPREPOSITIVE_ABBREVIATIONSNUMBER_ABBREVIATIONS r   r   Abbreviationr(       s0         o2  o2  o2$&!!r   r~   c                   (     e Zd Zg Z fdZd Z xZS )Kazakh.AbbreviationReplacerc                 L    t                                          ||           d S r   r   )r   r   r   r   s      r   r   z$Kazakh.AbbreviationReplacer.__init__)   s#    GGT4(((((r   c                     t          dd          }t          dd          }t          | j                                      ||          | _        |                                  | j        S )Nu   (?<=^[А-ЯЁ])\.(?=\s)u   ∯u   (?<=\s[А-ЯЁ])\.(?=\s))r   r   r   r   "replace_multi_period_abbreviations)r   .SingleUpperCaseCyrillicLetterAtStartOfLineRule!SingleUpperCaseCyrillicLetterRules      r   r   z#Kazakh.AbbreviationReplacer.replace,   sg    =AB\^c=d=d:045PRW0X0X-TY--.\.OQ QDI335559r   )r"   r#   r$   SENTENCE_STARTERSr   r   r%   r&   s   @r   r   r   %   sM        	) 	) 	) 	) 	)	 	 	 	 	 	 	r   r   N)	r"   r#   r$   iso_codeMULTI_PERIOD_ABBREVIATION_REGEXr   r   r~   r   r}   r   r   r
   r
      s        H 'n#    I    " " " " "x, " " "
    3     r   r
   N)pysbd.abbreviation_replacerr   pysbd.lang.commonr   r   pysbd.processorr   pysbd.utilsr   r   r
   r}   r   r   <module>r      s    < < < < < < . . . . . . . . % % % % % % " " " " " " " "* * * * *VX * * * * *r   