
    OZj                        d dl Z d dlZd dlZd dlZd dlmZ  eej        d                   Z eej        d                   Z	 eej        d                   Z
 e j        e                                          Zg Zg dZdZe                    dg           Zd	 eD              e ee	e
dz                       k    re                    d
           g ZeD ]Ze                    dg           Z ee          dk    r,e                    de                    d           d           e                    e           e                    de          ek    r,e                    de                    d           d            ee          dk    re                    d           d Zd eD             Z ed eD                       re                    d            ed eD                       Zdecxk    rdk    sn e                    de            d                     e          Z!dD ]1Z" ej#        e"e!ej$                  re                    de"z              2 e% ej&        de!                    Z' e(d  e'D                       Z)e)r3e                    d!d"                     e)dd#                   z               e e%e                     ee          k    re                    d$           esd%nd& ej*        e+                                          ,                                e	e
g ee           ee          eed'Z- e. e j/        e-d()                      e0erdnd           )*    N)Path         )   Nguyễn Lam Chiu   Trần Vĩnh Phúcu   Lê Thu Nguyệtu   Phạm Hữu Tườngu   Đỗ Khánh Anu   Vũ Minh Triếtr   partsc                 8    g | ]}|                     d           S )part)get.0xs     c/data/video-pipeline/GacMaiAudio/project/gacmai_20260717_184527/artifacts/scripts/validate_batch.py
<listcomp>r      s"    !!!aAEE&MM!!!    
part_range
paragraphs   Pr
   _paragraph_countpov_pov0   paragraph_totalc                     t          | t                    r| n+|                     d          p|                     d          pdS )Ntext	narration )
isinstancestrr   )r   s    r   r   r      s;    
1S))X11quuV}}/Xk@R@R/XVXXr   c                 P    g | ]#}t          |                                          $S  )r   stripr   s     r   r   r      s&    &&&1tAww}}&&&r   c              #      K   | ]}| V  d S )Nr"   r   s     r   	<genexpr>r%      s$      1ur   empty_paragraphc              #   p   K   | ]1}t          t          j        d |t          j                            V  2dS )z\b\w+\bN)lenrefindallUNICODEr   s     r   r%   r%      s:      	B	Bq#bjAbj11
2
2	B	B	B	B	B	Br   i*  i  zword_count:
)z\bE0[1-9]\bz\bA0[1-6]\bzcannot.supportplaceholder	Aftercareu   không teaserzP\d+D\d+zmeta:u^   \b[A-ZĐÀ-Ỹ][\wÀ-ỹĐđ]+\s+[A-ZĐÀ-Ỹ][\wÀ-ỹĐđ]+\s+[A-ZĐÀ-Ỹ][\wÀ-ỹĐđ]+\bc              #   V   K   | ]$}|t           v|                    d            |V  %dS ))u   Hội Đồngu   Ngân Hàngu   Cơ Quanu	   Mùa NởN)CAST
startswithr   s     r   r%   r%      s7      ||1$q||Dz7{7{Q||r   zextra_names:,
   exact_paragraph_duplicatepassedfailed)statussha256r   r   r   wordserrorsF)ensure_ascii)1jsonr)   syshashlibpathlibr   argvpintstartendloads	read_textderrsr0   POVr   r   listrangeappendparasr   psr(   extendr   textsanysumr9   joinblobtokensearchIsetr*   foundsortedextrar8   
read_bytes	hexdigestoutprintdumps
SystemExitr"   r   r   <module>rb      s                        $sx{##chqk**Ess38A;/?/?3*$*Q[[]]B[B[ac\`~~~  DV  @CeeGB!!5!!!44eCE(:(:#;#;;;DKK<U<U<U	 ? ?AEE,rCGGRKK?f???@@@bEE%c$++&=!%%--&=&=&=>>>3u::r>>$++/000 X X X&&&&&3e ;T[[):;;;	c	B	BE	B	B	BBBUD%:5%:%:;;;	YYuw : :EBIeD9t{{75=999	c*"*vw{
|
|}}f||||||| 9^CHHU3B3Z$8$88	9	9	93ss5zz??CCJJt{{+FGGG"0hh.'.:X:X:b:b:d:dsxy|r}  GJ  GJ  KP  GQ  GQ  _b  _b  ch  _i  _i  rw  AE  F  F  GL  GL  MW  MQ  MW  X[  in  Mo  Mo  Mo  Gp  Gp  Gp  wA  wA  GK  BR  BC  BC  QR  wS  wS  qSr   