
    Zj                         d dl Z d dlZd dlZd dlZd dlmZ d dlmZ dZdZ	h dZ
dZd Zd	 Zed
k    r e             dS dS )    N)Counter)Pathgacmai_20260718_075153@0ac2600ec1e964494a688426ed3f59e1bd0d46d4f34982756cfb539a29bed7a0>      Lê Quang Vinh   Phạm Ngọc Thư   Võ Thanh Hà   Trần Mộc Lan   Đỗ Minh Khang   Nguyễn Hữu Duy)u   siêu nhiênzy khoau
   dầu khíradiou   băng ghi âmu   lời bài hátc                 r    t          j        |                                                                           S )N)hashlibsha256
read_bytes	hexdigest)ps    e/data/video-pipeline/GacMaiAudio/project/gacmai_20260718_075153/artifacts/scripts/validate_outline.pyshar   
   s%    7>!,,..11;;===    c                  p
   t          t          j        d                   } t          j        |                                           }g }|                    d          t          k    r|                    d           |                    d          t          k    r|                    d           |                    dg           }t          |          dk    r%|                    dt          |                      d |D             }d	 |D             }|dgdz  k    r|                    d
|            d |D             }t          |          dk    s t          t          |                    dk    r|                    d           t          d |D                       }d|cxk    rdk    sn |                    d|            t                      }|                    d|                    dg                     D ]r}	t          |	t                    r1|	                    d          r|                    |	d                    Ht          |	t                     r|                    |	           s|t"          k    r%|                    dt%          |                      t          j        |                    di           d          }
d|
vs t)          j        d|
t(          j                  s|                    d           d i }dD ]fd|D             }t/          |          }t          |          t1          |                                d          d |<   t          |          t          t          |                    k    r|                    d!            t          j        |d                                          }t6          D ]\}||v rV|t          j        |                    d"g           d                                          vr|                    d#|            ]d$|v od%|v sd&|v od'|v pd(|v d)|v od*|v od+|v pd,|v d-|v od.|v sd/|v od0|v d1|v od2|v pd3|v d4}t9          |                                          s|                    d5|            |sd6nd7t          t!          |           t;          |           t          t          |          t          |          ||||d8}t=          t          j        |dd9:                     |rt?          d          d S );N   
project_idsource_concept_sha256concept_bindingparts   zparts=c                 D    g | ]}|                     d g           D ]}|S beats)get).0partbs      r   
<listcomp>zmain.<locals>.<listcomp>   s3    
=
=
=(<(<
=
=11
=
=
=
=r   c                 T    g | ]%}t          |                    d g                     &S r   )lenr!   )r"   r#   s     r   r%   zmain.<locals>.<listcomp>   s.    888$C$$%%888r   zbeat_counts=c                 T    g | ]%}t          |                    d d                    &S )beat_id )strr!   r"   r$   s     r   r%   zmain.<locals>.<listcomp>   s.    111aQUU9R  	!	!111r      beat_idsc              3   \   K   | ]'}t          |                    d d                    V  (dS )target_wordsr   N)intr!   r,   s     r   	<genexpr>zmain.<locals>.<genexpr>   s8      ;;s155**++;;;;;;r   i6  i:  ztarget_words=
named_castcastnamezcast=povF)ensure_asciir	   u   (chỉ|duy nhất|only)c                     |                      |d          }t          |t                    st          j        |dd          n|                                S )Nr*   FT)r7   	sort_keys)r!   
isinstancer+   jsondumpsstrip)r$   keyvs      r   valuezmain.<locals>.value    sM    
%%B--FPQRSVFWFWftz!>>>>]^]d]d]f]ffr   )scene_actioncontinuity_incontinuity_outconsent_privacyc                 (    g | ]} |          S  rF   )r"   r$   r>   r@   s     r   r%   zmain.<locals>.<listcomp>%   s#    ***qeeAcll***r   r   )default)unique
max_repeatz
duplicate:
hard_ruleszprohibited:r   u   chứng nhậnu
   mở lạiu   trìnhu   khuyến nghịr   u   kýu   điều chỉnhu   sửa tuyếnr
   u   xác nhậnu
   thẩm trau   đồng thuậnu   hội đồngu   phê duyệtu   quyết định)KhangDuyLanCouncilz
authority=passedfailed)statusr   outline_pathoutline_sha256concept_sha256r   r    r0   
duplicates	authorityerrors   )r7   indent) r   sysargvr;   loads	read_textr!   PROJECTappendCONCEPT_SHAr'   setsumr:   dictaddr+   CASTsortedr<   researchIr   maxvalueslower
PROHIBITEDallr   print
SystemExit)r   drW   r   r    countsidstargetnamesxr6   dupvalscblobtermrV   outr>   r@   s                     @@r   mainr}      s   
38A;A4:akkmm44Fuu\g%%v}}\'B'B'Buu$%%44fmmDU6V6V6V
%%

E
5zz2~~v}}%:c%jj%:%:;;;
=
=
=
=
=E88%888F"b&--(?v(?(?@@@115111C
3xx}}CHHs**FMM*,E,E,E;;U;;;;;F&%/Gv/G/G!H!H!H
%%EUU<fR 0 011 - -a 	-!%%-- 	-1V91E1E1E1E#,		!}}fmm$;F5MM$;$;<<<
155r??666Cc!!3McRTRV)W)W!Y_YfYfglYmYmYmg g g 	CR H H*****E***
$--CFFAHHJJWX@Y@Y@Y"Z"ZSt99c#d))nn$$fmm4F4F4F&G&G&G	A5	)	)	)	/	/	1	1D K K4<<D
155b3I3IW\(](](](c(c(e(eeegmgtgt  vJ  DH  vJ  vJ  hK  hK  hK"d*  V0@D0H0`L\`L`  Vgoswgw  hU  |M  QU  |U"d*wu}wBSW[B[Bv_nrv_v D(zmt.C.[|W[G[zarvzaz!T)c~/E/bIZ^bIb	 I y!!""KFMM2Jy2J2J$K$K$K"(6((hG[^_`[a[asvwxsysy  LW  `c  di  `j  `j  sv  w|  s}  s}  MS  ad  qz  DJ  	K  	KC	$*Se1
5
5
5666"Z]]"""r   __main__)r;   r   rg   rZ   collectionsr   pathlibr   r^   r`   re   rm   r   r}   __name__rF   r   r   <module>r      s                               
"Pyyy]
 = = =)# )# )#T Zr   