o
    Âifd  ã                   @   sN   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„ deeƒZ
dS )é    )ÚAbbreviationReplacer)ÚCommonÚStandard)Ú	Processor)ÚTextÚRulec                   @   sF   e Zd ZdZdZG dd„ deƒZG dd„ dejƒZG dd„ deƒZd	S )
ÚKazakhÚkkzD\b[\u0400-\u0500]+(?:\.\s?[\u0400-\u0500])+[.]|b[a-z](?:\.[a-z])+[.]c                       s&   e Zd Zd‡ fdd„	Zdd„ Z‡  ZS )zKazakh.ProcessorFc                    s   t ƒ  |||¡ d S ©N©ÚsuperÚ__init__)ÚselfÚtextÚlangÚ	char_span©Ú	__class__© úJ/var/www/html/corbot_env/lib/python3.10/site-packages/pysbd/lang/kazakh.pyr      s   zKazakh.Processor.__init__c                 C   s6   |   |¡ ¡ }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Ú*ExclamationMarkFollowedByDashLowercaseRuler   r   r   Úbetween_punctuation   s   


ÿz$Kazakh.Processor.between_punctuation)F)Ú__name__Ú
__module__Ú__qualname__r   r   Ú__classcell__r   r   r   r   r      s    r   c                   @   s   e Zd Zg d¢Zg Zg ZdS )z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Úimer8   r9   ÚipÚisoÚkazÚkpoÚkpaÚkzrA   Ú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õ   Ó™Ò›Ð±Ðºr[   u   Ð°Ð°Ò›u   Ð°Ð²Ð³.u   aÐ±Ð±u   Ð°ÐµÐºu   Ð°Ðºu   Ð°Ò›u   Ð°ÐºÑ†Ð¸Ð¾Ð½.u   Ð°ÐºÑÑ€u   Ð°Ò›Ñˆu   Ð°Ð½Ð³Ð»u
   Ð°Ó©ÑÑˆÐºu   Ð°Ð¿Ñ€õ   Ð¼.u   Ð°.u   Ñ€.õ   Ò“.u   Ð°Ð¿Ñ€.u   Ð°ÑƒÐ¼.õ   Ð°Ñ†Ð°Ñ‚u   Ó™Ñ‡õ   Ñ‚. Ð±.õ   Ð±. Ð·. Ð±.r`   õ   Ð±. Ð·. Ð´.ra   u   Ð±Ð¸Ñ–ÐºÑ‚.u   Ð±. Ñ‚.u	   Ð±Ð¸Ð¾Ð».u   Ð±Ð¸Ð¾Ñ…Ð¸Ð¼u   Ð±Ó©u   Ð±. Ñ. Ð´.u   Ð±Ñ‚Ð°u   Ð±Ò±Ò±u   Ð²Ð¸Ñ‡u   Ð²ÑÐ¾Ð¾Ð½Ð»u   Ð³ÐµÐ¾Ð³Ñ€.u	   Ð³ÐµÐ¾Ð».u   Ð³Ð»ÐµÐ½ÐºÐ¾Ñ€u   Ð³ÑÑu   Ò›Ðºõ   ÐºÐ¼u   Ð³u   Ð¼Ð»Ð½u   Ð¼Ð»Ñ€Ð´õ   Ñ‚u   Ò“. Ñ.r]   u   Ò›.r]   u   Ð´ÐµÐº.u   Ð´Ð½Ò›u   Ð´ÑÒ±u   ÐµÐ°Ò›Ðºõ   ÐµÒ›Ñ‹Ò±u   ÐµÐ¼Ð±Ñ–Ð¼Ò±Ð½Ð°Ð¹Ð³Ð°Ð·u   ÐµÐ¾u   ÐµÑƒÑ€Ð°Ð·ÑÒ›u   ÐµÑƒÑ€Ð¾Ð¾Ð´Ð°Ò›u   ÐµÒ±Ñƒõ   Ð¶.re   u   Ð¶Ð¶.u   Ð¶Ð¾Ð¾u   Ð¶Ñ–Ó©u   Ð¶ÑÐ´Ð¿u   Ð¶ÑˆÑu   Ñ–Ñ–Ð¼u   Ð¸Ð½Ñ‚Ð°u   Ð¸ÑÐ°Ñ„u
   ÐºÐ°Ð¼Ð°Ð·u   ÐºÐ³Ð±u   ÐºÐµÑƒu   ÐºÐ³õ   ÐºÐ¼Â²rf   õ   ÐºÐ¼Â³rg   u
   ÐºÐ¸Ð¼ÐµÐ¿u   ÐºÑÑ€õ   ÐºÑÑ€Ð¾u   ÐºÐ¾ÐºÐ¿õ   ÐºÑ…Ð´Ñ€u   Ò›Ð°Ð·Ð°Ñ‚Ð¾Ð¼Ð¿Ñ€Ð¾Ð¼u   Ò›Ð°Ð·ÐºÑÑ€õ
   Ò›Ð°Ð·Ò±Ñƒu   Ò›Ð°Ð·Ð¼Ò±Ð½Ð°Ð¹Ð³Ð°Ð·u   Ò›Ð°Ð·Ð¿Ð¾ÑˆÑ‚Ð°u   Ò›Ð°Ð·Ñ‚Ð°Ð³rj   u   Ò›ÐºÐ¿u   Ò›Ð¼Ð´Ð±u   Ò›Ñ€u   Ò›Ñ…Ñ€u   Ð»Ð°Ñ‚.õ   Ð¼Â²rk   õ   Ð¼Â³rl   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   ÑÐ½Ð¿Ñõ	   ÑÐ¾Ð»Ñ‚.rm   u
   ÑÐ¾Ð¾Ð½Ð¾u   ÑÑÑ€Ð¾u   ÑÑÑ€u   ÑÑÑÑ€u   ÑÑÑu   ÑÑÑu   Ð´Ðºr_   rc   u   Ñ‚Ð²u   Ñ‚ÐµÑ€ÐµÒ£Ð´.u   Ñ‚ÐµÑ….u   Ñ‚Ð¶Ò›u   Ñ‚Ð¼Ð´u   Ñ‚Ó©Ð¼.u   Ñ‚Ñ€Ð»Ð½u   Ñ‚Ñ€õ   Ñ‚.u   Ð¸.r\   u   Ñ.u   Ñˆ.rn   u   Ñ‚. Ñ. Ñ.u   Ñ‚ÑÑ†u   ÑƒÐ°Ð·u   ÑƒÐµÑ„Ð°rd   u   Ò±Ò›Ðºu   Ò±Ò›ÑˆÒ±u	   Ñ„ÐµÐ²Ñ€.u   Ñ„Ò›Ò›u   Ñ„ÑÐ±u   Ñ…Ð¸Ð¼.u   Ñ…Ò›ÐºÐ¾u   ÑˆÒ±Ð°Ñ€õ   ÑˆÑ‹Ò±u	   ÑÐºÐ¾Ð½.u
   ÑÐºÑÐ¿Ð¾u   Ñ†Ñ‚Ð¿u   Ñ†Ð°Ñu   ÑÐ½Ð².Údvdu   Ð¶ÐºÑ‚u   Ò›Ò›Ñrb   r^   u   ÑŽÐ½ÐµÑÐºÐ¾u   Ð±Ð±ÑÚmgmu   Ð¶ÑÐºu   Ð·Ð¾Ð¾u   Ð±ÑÐ½u   Ó©Ò±Ò›u   Ð¾Ð°Ñ€u   Ð±Ð¾Ð°Ðºu   ÑÓ©ÐºÐºu   Ñ…Ñ‚Ò›Ð¾u   Ó™Ó©Ðºu   Ð¶ÑÐºu   Ñ…Ð´Ð¾u
   ÑÐ¿Ð±Ð¼Ñƒu   Ð°Ñ„u   ÑÐ±Ð´u   Ð°Ð¼Ñ‚u   Ð³ÑÐ´Ð¿u   Ð³ÑÐ±Ð¿u   ÑÑ‹Ð´Ò±u
   Ð½Ò±ÑÐ¶Ð¿ro   u   Ð¶Ñ‚ÑÑ…u   Ñ…Ð´Ð¿u   ÑÒ›Ðºu   Ñ„ÐºÒ›Ò›u   Ð¿Ð¸Ò›u   Ó©Ð³Ðºu   Ð¼Ð±Ñ„u   Ð¼Ð°Ð¶u   ÐºÐ¾Ñ‚Ð°u   Ñ‚Ð¶u   ÑƒÐºu   Ð¾Ð±Ð±u   ÑÐ±Ð»u   Ð¶Ñ…Ð»u   ÐºÐ¼Ñu
   Ð±Ð¼Ñ‚Ñ€Ðºu   Ð¶Ò›Ò›u
   Ð±Ñ…Ð¾Ð¾Ð¾u   Ð¼Ò›Ð¾u   Ñ€Ð¶Ð¼Ð±u
   Ð³ÑƒÐ»Ð°Ð³u   Ð¶ÐºÐ¾u   ÐµÑÑ‹u   ÐµÐ°ÑÑ‹ri   u   Ñ€Ñ„ÐºÐ¿u   Ñ€Ð»Ð´Ð¿u   Ñ…Ð²Ò›u   Ð¼Ñ€u   Ð¼Ñ‚u   ÐºÑ‚Ñƒu   Ñ€Ñ‚Ð¶u   Ñ‚Ð¸Ð¼u   Ð¼ÐµÐ¼Ð´ÑƒÐ¼rh   u   Ñ‚.Ñ.Ñu   Ñ.Ñˆ.u   Ñˆ.Ð±.u   Ð±.Ð±.u   Ñ€ÑƒÐ±u   Ð¼Ð¸Ð½u	   Ð°ÐºÐ°Ð´.r]   u   Ð¼Ð¼u   Ð¼Ð¼.N)r   r   r   ÚABBREVIATIONSÚPREPOSITIVE_ABBREVIATIONSÚNUMBER_ABBREVIATIONSr   r   r   r   ÚAbbreviation    s    ru   c                       s(   e Zd Zg Z‡ fdd„Zdd„ Z‡  ZS )zKazakh.AbbreviationReplacerc                    s   t ƒ  ||¡ d S r
   r   )r   r   r   r   r   r   r   )   s   z$Kazakh.AbbreviationReplacer.__init__c                 C   s6   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Ú!SingleUpperCaseCyrillicLetterRuler   r   r   r   ,   s   

ÿz#Kazakh.AbbreviationReplacer.replace)r   r   r   ÚSENTENCE_STARTERSr   r   r    r   r   r   r   r   %   s    r   N)	r   r   r   Úiso_codeÚMULTI_PERIOD_ABBREVIATION_REGEXr   r   ru   r   r   r   r   r   r      s    r   N)Úpysbd.abbreviation_replacerr   Úpysbd.lang.commonr   r   Úpysbd.processorr   Úpysbd.utilsr   r   r   r   r   r   r   Ú<module>   s
   