§
    ‰ßÉjmM  ã                   óî  — d Z ddlZddlZddlZddlmZ  ee¦  «                             ¦   «         j        j        j        Z	e	dz  Z
e	dz  Ze	dz  Ze	dz  Zedz  Zd	„ Zd
„ Zd„ Zd„ Zdefd„Zd„ Zdefd„Zedk    rz ed e¦   «         d         ¦  «          ed e e¦   «         ¦  «        ¦  «          e¦   «         Z ed ee¦  «        ¦  «          e¦   «         Z eded         d         ¦  «         dS dS )zu
Data Service for Historical-2d Review Dashboard.
Extracts and structures project data from markdown and json files.
é    N)ÚPathÚoutputÚepisodesÚdataÚassetszproducer_feedback.jsonc                  ó–  — t           dz  dz  dz  } dddddd	d
dddddddt          dz                       ¦   «         r8t          t          j                             t          dz  ¦  «        dz  d¦  «        ndddddœd|                      ¦   «         r0t          t          j                             | ¦  «        dz  d¦  «        ndddddddddœ	d œS )!z-Returns real-time system and hardware status.ÚEP01_Cannae_216BCÚ06_Master_OutputzEP01_Cannae_Master_Seamless.mp4zHistorical-2dzhistorical-2dz!Seven Nguyen (Executive Producer)z$Amy (Studio CEO & Lead Orchestrator)z100.121.197.18iì  zhttp://100.121.197.18:1516zhttp://localhost:1516z<Dual Intel Xeon E5-2680 v4 (28 Cores / 56 Threads, 2.40 GHz)z0NVIDIA GeForce GTX 1660 Super (6GB NVENC Turing)z64 GB ECC DDR4z2026-10-10T08:05:00+07:00ÚONLINEz%the_historical_vault_intro_master.mp4i   é   r   z30.98sz1920x1080 (1080p@30fps NVENC)zaDual Tracks (EN: Christopher Baritone / VI: NamMinh Epic) + Binaural War Drum Ambience (-14 LUFS))ÚnameÚsize_mbÚdurationÚ
resolutionÚaudioz271.90s (~4m32s)zCOMPLETED & READY FOR REVIEWuL   cannae_prologue_master.mp4 (175.9s, 11.2 MB â€¢ English Historical Briefing)u9   cannae_cinematic_bridge.mp4 (5.0s, 10.8 MB â€¢ Match-Cut)uA   cannae_tactical_map_master.mp4 (60.0s, 29.5 MB â€¢ Soldier Icons)za100% English Master Track (en-US-ChristopherNeural) + Pure Ambient Soundbed (-14.0 LUFS EBU R128))	r   r   r   r   ÚstatusÚprologueÚbridgeÚtacticalr   )ÚstudioÚproject_scopeÚownerÚceoÚtailscale_ipÚportÚ
access_urlÚ	local_urlÚcpuÚgpuÚramÚ	timestampr   Úvideo_masterÚep01_master)ÚEPISODES_DIRÚ
OUTPUT_DIRÚexistsÚroundÚosÚpathÚgetsize)Úep01_seamlesss    ú8C:\Projects\Historical 2d\src\web_review\data_service.pyÚget_system_statusr-      s  € å Ð#6Ñ6Ð9KÑKÐNoÑo€Mà!Ø(Ø4Ø5Ø(ØØ2Ø,ØMØAØØ0Øà;åÐDÑD×LÒLÑNÔNðV•u�RœWŸ_š_­ZÐ:aÑ-aÑbÔbÐfoÑpÐrsÑtÔtÐtØTUØ Ø9Øxð
ð 
ð 6ØQ^×QeÒQeÑQgÔQgÐn•u�RœWŸ_š_¨]Ñ;Ô;¸yÑIÈ1ÑMÔMÐMÐmnØ*Ø9Ø4ØfØQØ[Øxð

ð 

ð-!ð !ð !ó    c                  ój   — ddddddddd	œd
dddddddd	œddddddddd	œddddddd d!d	œd"d#d$d%d&d'd(d)d	œgS )*z+Returns scene breakdown of the intro video.é   z Opening Hook & Host Introductionz00:00 - 00:06z/media/output/final_snap_s1.jpgz /media/output/master_snap_s1.jpgzPose 1 (Authoritative Welcome)u›   Host Seven Nguyen xuáº¥t hiá»‡n táº¡i War Room Tabletop, chÃ o má»«ng khÃ¡n giáº£ tá»›i The Historical Vault vá»›i phong cÃ¡ch Obsidian Gold Ä‘iá»‡n áº£nh.z+War Drum Accent + Binaural Ambience Fade-in)ÚsceneÚtitleÚtimecodeÚpreview_imgÚ
master_imgÚposeÚdescriptionÚ	audio_cuer   z(The Strategic Conundrum (Cannae Preview)z00:06 - 00:13z/media/output/final_snap_s2.jpgz /media/output/master_snap_s2.jpgzPose 2 (Tactical Explanation)uw   Giá»›i thiá»‡u cÃ¢u há»�i quÃ¢n sá»± hÃ³c bÃºa cá»§a Hannibal: 50.000 quÃ¢n Carthage chá»‘ng láº¡i 86.000 lÃ­nh La MÃ£.z)Voiceover: Hannibal's convex line dilemmaé   z,Tactical Micro-Terrain & Encirclement Vectorz00:13 - 00:19z/media/output/final_snap_s3.jpgz /media/output/master_snap_s3.jpgzPose 3 (Analytical Breakdown)uw   Sa bÃ n nghiÃªng 3D hiá»ƒn thá»‹ sÃ´ng Aufidus vÃ  thung lÅ©ng Cannae. Ä�á»™i hÃ¬nh biáº¿n Ä‘á»•i tá»« lá»“i sang lÃµm.u7   BÃ©zier vector sound cue, high-precision tactical sweepé   z(War Room Command Rail & Casualty Metricsz00:19 - 00:25z/media/output/final_snap_s4.jpgz /media/output/master_snap_s4.jpgzPose 4 (Command Presence)u‘   Host Seven Nguyen Ä‘á»©ng cáº¡nh thanh ray chá»‰ huy (Command Rail), bá»™ Ä‘áº¿m thÆ°Æ¡ng vong thá»�i gian thá»±c cÃ¡n má»‘c 70.000 lÃ­nh La MÃ£.z(Deep sub-bass impact, casualty HUD alerté   z(Climax Call-to-Action & Channel Brandingz00:25 - 00:30.98z/media/output/final_snap_s5.jpgz /media/output/master_snap_s5.jpgz Pose 6 (Decisive Call-to-Action)u~   Biá»ƒu tÆ°á»£ng The Historical Vault tá»�a sÃ¡ng Chiaroscuro, lá»�i kÃªu gá»�i Ä‘Äƒng kÃ½ phÃ¢n tÃ­ch 30 chiáº¿n dá»‹ch lá»›n.z,Crescendo orchestral war drums & outro sweep© r<   r.   r,   Úget_intro_scenesr=   :   sÐ   € ð Ø7Ø'Ø<Ø<Ø4ð yØFð		
ð 		
ð Ø?Ø'Ø<Ø<Ø3ð UØDð		
ð 		
ð ØCØ'Ø<Ø<Ø3ð UØRð		
ð 		
ð Ø?Ø'Ø<Ø<Ø/ð oØCð		
ð 		
ð Ø?Ø*Ø<Ø<Ø6ð \ØGð		
ð 		
ðS3ð 3r.   c                  ó´  ‡— t           dz  } g }|                      ¦   «         �r5t          | dd¬¦  «        5 }|                     ¦   «         }ddd¦  «         n# 1 swxY w Y   |                     d¦  «        }|dd…         D �]Ö}d„ |                     d	¦  «        D ¦   «         }|sŒ%|d
         }|                     dd¦  «        }	 t          |d
                              ¦   «         ¦  «        }	n# t          $ r Y Œxw xY wt          |¦  «        dk    r|d                              ¦   «         n|}
d}d}d}d}|dd…         D �]Q}| 	                    d¦  «        r)| 
                    dd¦  «                             ¦   «         }ŒA| 	                    d¦  «        r)| 
                    dd¦  «                             ¦   «         }Œ| 	                    d¦  «        r)| 
                    dd¦  «                             ¦   «         }Œ½| 	                    d¦  «        r6d|v r.|                     dd¦  «        d                              ¦   «         nd}�Œ|rG| 	                    d¦  «        s2| 	                    d¦  «        s| 	                    d¦  «        s|d|z   z  }�ŒS|	dk    rdn	|	dk    rdnd}|	dk    rdn	|	dk    rdnd}d|	d›d�Št                               ¦   «         r%ˆfd „t          j        t          ¦  «        D ¦   «         ng }|r|d
         nd}|	dk    rd!nd"}|                     |	d|	d›�|
|||||t          |¦  «        d#k    r|dd#…         d$z   n|||d%œ¦  «         �ŒØ|S )&z_Extracts all 30 episodes from MASTER_PRODUCTION_PLAN_30_EPISODES.md without regex backtracking.ú%MASTER_PRODUCTION_PLAN_30_EPISODES.mdÚrúutf-8©ÚencodingNu
   ### Táº­p r0   c                 ó^   — g | ]*}|                      ¦   «         ¯|                      ¦   «         ‘Œ+S r<   )Ústrip)Ú.0Úls     r,   ú
<listcomp>z%get_episodes_list.<locals>.<listcomp>}   s-   € ÐGÐGÐG 1¸Q¿WºW¹Y¼YÐG�Q—W’W‘Y”YÐGÐGÐGr.   ú
r   ú:Ú u   * **NiÃªn Ä‘áº¡i:**u   * **Thá»�i lÆ°á»£ng chuáº©n:**u   * **Dá»± bÃ¡o RPM:**u(   * **Ä�Ã²n Ä‘iá»ƒm nháº¥n chiáº¿n thuáº­tz* **Hookz---ú#ú é
   u%   MÃ¹a 1: The Vanguard & Ancient Titansé   u(   MÃ¹a 2: Gunpowder & The Napoleonic Stormu.   MÃ¹a 3: Modern Firestorms & Asymmetric Warfareu   Cá»• Ä‘áº¡i & Trung cá»•u   Há»�a khÃ­ & Tháº¿ ká»· 19u   Tháº¿ chiáº¿n & Hiá»‡n Ä‘áº¡iÚEPÚ02dÚ_c                 ó>   •— g | ]}|                      ‰¦  «        ¯|‘ŒS r<   )Ú
startswith)rF   ÚfÚfolder_names     €r,   rH   z%get_episodes_list.<locals>.<listcomp>¦   s+   ø€ Ð`Ð`Ð` QÀaÇlÂlÐS^ÑF_ÔF_Ð`˜qÐ`Ð`Ð`r.   u:   Sáºµn sÃ ng sáº£n xuáº¥t (Script + 4K Map + Timeline xong)u%   Ä�Ã£ thiáº¿t láº­p khung kiáº¿n trÃºci�  z...)ÚnumberÚcoder2   ÚseasonÚeraÚdater   Ú
target_rpmÚcore_tacticsr   Úfolder)ÚDATA_DIRr&   ÚopenÚreadÚsplitÚintrE   Ú
ValueErrorÚlenrT   Úreplacer$   r(   ÚlistdirÚappend)Ú	plan_pathr   rU   ÚcontentÚblocksÚblockÚlinesÚheaderÚpartsÚep_numÚep_titler[   r   ÚrpmÚtacticsÚlinerY   rZ   Úmatched_foldersÚfolder_pathr   rV   s                        @r,   Úget_episodes_listrw   r   s1  ø€ åÐBÑB€IØ€Hà×ÒÑÔñ @Ý�)˜S¨7Ð3Ñ3Ô3ð 	°qØ—f’f‘h”hˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð —’˜|Ñ,Ô,ˆØ˜A˜B˜B”Zð ;	ñ ;	ˆEØGÐG¨¯ª°DÑ(9Ô(9ÐGÑGÔGˆEØð Øà˜1”XˆFà—L’L  aÑ(Ô(ˆEðÝ˜U 1œXŸ^š^Ñ-Ô-Ñ.Ô.��øÝð ð ð Ø�ðøøøå+.¨u©:¬:¸ª>¨>�u˜Q”x—~’~Ñ'Ô'Ð'¸vˆHàˆDØˆHØˆCØˆGà˜a˜b˜bœ	ð *ñ *�Ø—?’?Ð#8Ñ9Ô9ð 
*ØŸ<š<Ð(=¸rÑBÔB×HÒHÑJÔJ�D�DØ—_’_Ð%EÑFÔFð *Ø#Ÿ|š|Ð,LÈbÑQÔQ×WÒWÑYÔY�H�HØ—_’_Ð%;Ñ<Ô<ð *ØŸ,š,Ð'=¸rÑBÔB×HÒHÑJÔJ�C�CØ—_’_Ð%OÑPÔPð *à?BÀd¸{¸{˜dŸjšj¨¨aÑ0Ô0°Ô3×9Ò9Ñ;Ô;Ð;ÐPR�G‘GØð * T§_¢_°ZÑ%@Ô%@ð *ÈÏÊÐY^ÑI_ÔI_ð *Ðhl×hwÒhwÐx{Ñh|Ôh|ð *Ø˜s T™zÑ)�Gùà@FÈ"ÂÀÐ<Ð<Ø>DÈºl¸lÐ:Ð:Ø@ð ð 17¸"²°Ð,Ð,Ø06¸"²°Ð,Ð,Ø/ð ð
 -˜vÐ,Ð,Ð,Ð,ˆKÝdp×dwÒdwÑdyÔdyð  BÐ`Ð`Ð`Ð`­"¬*µ\Ñ*BÔ*BÐ`Ñ`Ô`Ð`ð  @BˆOØ0?ÐG˜/¨!Ô,Ð,ÀRˆKàU[Ð_`ÒU`ÐU`ÐQÐQð  gNˆFà�OŠOØ Ø)˜VÐ)Ð)Ð)Ø!Ø ØØØ$Ø!Ý9<¸W¹¼ÈÒ9KÐ9K ¨¨¨¤°Ñ 5Ð 5ÐQXØ Ø%ðð ñ ô ð ñ ð €Os#   µAÁAÁAÃ'C,Ã,
C9Ã8C9c                  ó~  — t           dz  } | dz  dz  }i }|                     ¦   «         r>t          |dd¬¦  «        5 }t          j        |¦  «        }ddd¦  «         n# 1 swxY w Y   | dz  d	z  }d
}|                     ¦   «         r>t          |dd¬¦  «        5 }|                     ¦   «         }ddd¦  «         n# 1 swxY w Y   ddddddœdddœdœddddœddddœddddœddd dœgd!d"d#d$d%d&d'd(œd)d*d+d,d-d.d/d(œd0d1d2d3d4d5d6d(œd7d8d9d$d:d;d<d(œd=œd>d,d?d@œdAd3dBd@œdCd$dDd@œdEdFdGd@œdHdIdJd@œgdKdLdMdœdNdOdPdœdQdRdSdœdTdUdVdœg||dWœS )Xz3Returns comprehensive detail of EP01 Cannae 216 BC.r	   Ú03_Timeline_Dataz cannae_operational_timeline.jsonr@   rA   rB   NÚ	01_Scriptzscript_cannae_30m.mdrK   uC   Battle of Cannae (216 BC) â€“ The Anatomy of a Perfect Encirclementz02/08/216 TCNu9   Cannae, Apulia, Ä�Ã´ng Nam Ã� (Venosa / Canosa di Puglia)u2   Hannibal Barca, Hasdrubal, Maharbal (50.000 quÃ¢n)u=   Lucius Aemilius Paullus, Gaius Terentius Varro (86.400 quÃ¢n))ÚcarthageÚromeu;   5.700 (4.000 lÃ­nh Celt, 1.500 lÃ­nh Iberia, 200 ká»µ binh)uK   70.000 tá»­ tráº­n, 10.000 bá»‹ báº¯t (bao gá»“m Paullus & 80 NguyÃªn lÃ£o))r2   r[   ÚlocationÚ
commandersÚ
casualtiesu5   Báº£n Ä‘á»“ Ä�á»‹a hÃ¬nh 4K (Cannae Shaded Relief 4K)zC/media/episodes/EP01_Cannae_216BC/02_Map_Data/cannae_terrain_4k.pnguP   3840x2160 Shaded relief káº¿t há»£p DEM Ä‘á»™ cao thá»±c táº¿ vÃ  sÃ´ng Aufidus.)r   ÚfileÚdescu4   Báº£n Ä‘á»“ Ä�á»™ cao BÃ³ng Ä�á»• (Cannae Hillshade)zB/media/episodes/EP01_Cannae_216BC/02_Map_Data/cannae_hillshade.pnguG   Báº£n Ä‘á»“ bÃ³ng Ä‘á»‹a hÃ¬nh SRTM tÃ¡ch biá»‡t lÃ m ná»�n sa bÃ n 3D.u2   Sa bÃ n Vector TÃ¡c chiáº¿n SVG (NATO APP-6 Icons)zH/media/episodes/EP01_Cannae_216BC/02_Map_Data/cannae_tactical_vector.svguS   MÅ©i tÃªn chiáº¿n thuáº­t BÃ©zier vÃ  khá»‘i quÃ¢n bÃ i gá»— Carthaginian vs Roman.u.   Báº£n Ä‘á»“ TiÃªu chuáº©n 1080p (Cannae 1080p)zF/media/episodes/EP01_Cannae_216BC/02_Map_Data/cannae_terrain_1080p.pngu)   1920x1080 tá»‘i Æ°u render trá»±c tiáº¿p.Úseamlessu‚   Báº£n Master Liá»�n Máº¡ch 4 PhÃ¢n Ä�oáº¡n (271.9s: Intro + Dáº«n Nháº­p 176s + Cáº§u Ná»‘i + Sa BÃ n TÃ¡c Chiáº¿n - 100% English)zR/media/episodes/EP01_Cannae_216BC/06_Master_Output/EP01_Cannae_Master_Seamless.mp4zF/media/episodes/EP01_Cannae_216BC/05_Renders/cannae_master_preview.jpgu;   1080p NVENC â€¢ 271.9s SEAMLESS (~4m32s) â€¢ ENGLISH MASTERgÍÌÌÌÌP@uÝ  Báº£n Master hoÃ n chá»‰nh 4 phÃ¢n Ä‘oáº¡n chuáº©n tiáº¿ng Anh Tier 1: 01. Intro The Historical Vault (31s) -> 02. Dáº«n nháº­p bá»‘i cáº£nh lá»‹ch sá»­ tiáº¿ng Anh (Trebia, Trasimene, Fabius Cunctator, Varro & Paullus - 176s) -> 03. Cáº§u ná»‘i Ä‘iá»‡n áº£nh bÃ£o cÃ¡t Volturnus (5s) -> 04. Sa bÃ n chiáº¿n thuáº­t 12 khá»‘i quÃ¢n vá»›i Icon Chiáº¿n Binh Lá»‹ch Sá»­ Ä‘áº·c trÆ°ng & Host Seven Nguyen chá»‰ Ä‘iá»ƒm (60s). Ã‚m thanh Ambient thuáº§n khiáº¿t, 0% chá»“ng giá»�ng.)Úidr2   r€   ÚposterÚbadger   r�   r   uT   Dáº«n Nháº­p Lá»‹ch Sá»­ Tiáº¿ng Anh (Trebia, Trasimene, Fabius & Canh Báº¡c Cannae)zG/media/episodes/EP01_Cannae_216BC/05_Renders/cannae_prologue_master.mp4zA/media/episodes/EP01_Cannae_216BC/05_Renders/prologue_preview.jpgu:   1080p â€¢ 5,277 FRAMES â€¢ 2m56s (175.9s) ENGLISH BRIEFINGgffffff&@ux  PhÃ¢n Ä‘oáº¡n dáº«n nháº­p Ä‘iá»‡n áº£nh tiáº¿ng Anh (175.9s) theo chá»‰ Ä‘áº¡o cá»§a Producer Seven Nguyen: Bá»‘i cáº£nh Ä�á»‡ nhá»‹ Chiáº¿n tranh Punic, vÆ°á»£t dÃ£y Alps, cÃ¡c tháº¥t báº¡i Trebia, Trasimene, há»�c thuyáº¿t trÃ¬ hoÃ£n Fabius vÃ  cá»— xe á»§i cá»§a 2 Cháº¥p chÃ­nh quan Varro & Paullus trÆ°á»›c khi vÃ o sa bÃ n. Giá»�ng Ä‘á»�c Christopher Baritone EBU R128.r   uH   Cáº§u Ná»‘i Ä�iá»‡n áº¢nh 5s (Match-Cut Tilt-down & BÃ£o CÃ¡t Volturnus)zH/media/episodes/EP01_Cannae_216BC/05_Renders/cannae_cinematic_bridge.mp4zC/media/episodes/EP01_Cannae_216BC/05_Renders/bridge_preview_mid.jpgu"   1080p â€¢ 150 FRAMES â€¢ MATCH-CUTgš™™™™™%@uú   Cáº§u ná»‘i chuyá»ƒn cáº£nh Ä‘iá»‡n áº£nh: MÃ¡y quay háº¡ gÃ³c nhÃ¬n tá»« bÃ n chá»‰ huy phÃ²ng tÃ¡c chiáº¿n xuá»‘ng lÃ²ng sÃ´ng Aufidus, 750 háº¡t bá»¥i cÃ¡t Volturnus thá»•i xiÃªn 45 Ä‘á»™, Ã¢m thanh bÃ£o cÃ¡t vÃ  tiáº¿ng tÃ¹ vÃ  cornu vang vá»�ng.r   uT   Sa BÃ n TÃ¡c Chiáº¿n 60s (Icon Chiáº¿n Binh Lá»‹ch Sá»­ & Host Seven Nguyen Docking)zK/media/episodes/EP01_Cannae_216BC/05_Renders/cannae_tactical_map_master.mp4u(   1080p â€¢ 1,800 FRAMES â€¢ SOLDIER ICONSgš™™™™=@u<  MÃ´ phá»�ng cÆ¡ há»�c vÃ¢y bá»�c kinh Ä‘iá»ƒn vá»›i 6 Icon QuÃ¢n chá»§ng Lá»‹ch sá»­ Ä‘áº·c trÆ°ng (LÃª dÆ°Æ¡ng La MÃ£, Cá»±u binh Libya, Ká»µ binh Numidia, Chiáº¿n binh Gallic, Falcata Iberia, Ká»µ binh Equites), 7 mÅ©i tÃªn BÃ©zier xung lá»±c phÃ¡t quang, vÃ  Host Seven Nguyen chá»‰ Ä‘iá»ƒm uá»‘n cong cÃ¡nh cung.)r‚   r   r   r   uE   Dáº«n Nháº­p Lá»‹ch Sá»­ 3 PhÃºt (Trebia, Trasimene, Fabius & Cannae)uy   PhÃ¢n cáº£nh dáº«n nháº­p 182.5s bá»‘i cáº£nh Ä�á»‡ nhá»‹ Chiáº¿n tranh Punic vÃ  há»�c thuyáº¿t trÃ¬ hoÃ£n cá»§a Fabius.)r2   r€   r�   u4   Cáº§u Ná»‘i KhÃºc Quanh SÃ´ng Aufidus (Match-Cut 5s)uX   Háº¡ gÃ³c quay 3D xuá»‘ng thung lÅ©ng Aufidus vá»›i 750 háº¡t bá»¥i bÃ£o cÃ¡t Volturnus.uF   Sa BÃ n Cannae Vá»›i Icon Chiáº¿n Binh Lá»‹ch Sá»­ Ä�áº·c TrÆ°ng (60s)u‰   12 khá»‘i quÃ¢n bÃ i gá»— tÃ­ch há»£p phÃ¹ hiá»‡u binh chá»§ng lá»‹ch sá»­ (LÃª dÆ°Æ¡ng, Ká»µ binh Numidia, Cá»±u binh Carthage, Gallic).u0   Host Seven Nguyen Docking Táº¡i Tráº¡m Chá»‰ HuyzB/media/episodes/EP01_Cannae_216BC/05_Renders/preview_cue2_host.jpguy   Host Seven Nguyen docked táº¡i Tráº¡m B chá»‰ Ä‘iá»ƒm khoáº£nh kháº¯c cÃ¡nh cung lá»“i biáº¿n dáº¡ng thÃ nh lÃ²ng cháº£o.uF   Bá»™ PhÃ¹ Hiá»‡u Binh Chá»§ng Lá»‹ch Sá»­ 216 TCN (LÃª DÆ°Æ¡ng La MÃ£)zL/media/episodes/EP01_Cannae_216BC/02_Map_Data/unit_icons/roman_legionary.pnguk   Máº«u phÃ¹ hiá»‡u LÃª dÆ°Æ¡ng La MÃ£ (Lorica Hamata, KhiÃªn Scutum Ä‘á»� cÃ¡nh sÃ©t máº¡ vÃ ng, Lao Pilum).u6   1. Master Ä�a Ã‚m Tiáº¿ng Viá»‡t 30 PhÃºt (-14.6 LUFS)z_/media/episodes/EP01_Cannae_216BC/04_Audio_Voice/master_mix/cannae_soundtrack_vi_30m_master.mp3uy   Báº£n Master Ã¢m thanh hoÃ n chá»‰nh: Voiceover NamMinh Sá»­ Thi + SFX tiáº¿ng cá»� gá»—, vÃ³ ngá»±a + Binaural Soundbed.u3   2. Master Ä�a Ã‚m Tiáº¿ng Anh 30 PhÃºt (-14.6 LUFS)z_/media/episodes/EP01_Cannae_216BC/04_Audio_Voice/master_mix/cannae_soundtrack_en_30m_master.mp3uo   Báº£n Master Ã¢m thanh tiáº¿ng Anh: Voiceover Christopher Baritone chuáº©n phim tÃ i liá»‡u quá»‘c táº¿ Tier 1.u/   3. Voiceover Tiáº¿ng Viá»‡t (Host Seven Nguyen)z\/media/episodes/EP01_Cannae_216BC/04_Audio_Voice/voice_vi/cannae_voiceover_vi_30m_master.mp3us   Giá»�ng Ä‘á»�c truyá»�n cáº£m, Ä‘Ä©nh Ä‘áº¡c cá»§a Host Seven Nguyen dáº«n dáº¯t toÃ n bá»™ 30 phÃºt tráº­n Ä‘Ã¡nh.u/   4. Voiceover Tiáº¿ng Anh (Christopher Baritone)z\/media/episodes/EP01_Cannae_216BC/04_Audio_Voice/voice_en/cannae_voiceover_en_30m_master.mp3u\   Track giá»�ng Ä‘á»�c tiáº¿ng Anh trá»�n váº¹n 30 phÃºt phá»¥c vá»¥ khÃ¡n giáº£ US/UK/Canada.)ÚmetadataÚ
map_assetsÚvideo_assetsÚ	snapshotsÚaudio_assetsÚtimelineÚscript)r$   r&   r`   ÚjsonÚloadra   )Úep_dirÚtimeline_fileÚtimeline_datarU   Úscript_fileÚscript_contents         r,   Úget_ep01_detailr”   ½   s~  € åÐ/Ñ/€FØÐ/Ñ/Ð2TÑT€MØ€MØ×ÒÑÔð )Ý�- ¨wÐ7Ñ7Ô7ð 	)¸1Ý œI a™LœLˆMð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð ˜;Ñ&Ð)?Ñ?€KØ€NØ×ÒÑÔð &Ý�+˜s¨WÐ5Ñ5Ô5ð 	&¸ØŸVšV™XœXˆNð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&ð
 [Ø#ØSàPØWðð ð
 ZØeðð ð
ð 
ð PØ]Øjðð ð OØ\Øaðð ð MØbØmðð ð IØ`ØCðð ð!
ð0 !ð ^ØlØbØVØð xðð ð !ØoØaØ]ØUØð Sðð ð ØcØbØ_Ø=Øð Uðð ð !ØoØeØbØCØð Wðð ð9%
ð %
ðP aØ[ð Tðð ð PØ]Ørðð ð bØ`ð dðð ð LØ\ð Tðð ð bØfð Fðð ð+
ð: QØyð Tðð ð NØyð Jðð ð JØvð Nðð ð JØvØvðð ð!
ð, "Ø ðy}ð }ð }s#   »AÁA Á#A ÂB8Â8B<Â?B<Údoc_idc                 ó^  — t           dz  t           dz  t          dz  t          dz  t          dz  dz  dz  dœ}|                     | ¦  «        }|r[|                     ¦   «         rGt          |d	d
¬¦  «        5 }| |j        |                     ¦   «         dœcddd¦  «         S # 1 swxY w Y   | dddœS )z1Returns markdown content for specified documents.z)STRATEGY_HOST_AVATAR_ANTI_AI_SLOP_2026.mdz(RD_REPORT_HIGH_RPM_TACTICAL_MAPS_2026.mdr?   z	AGENTS.mdr	   rz   zHOST_INTEGRATION_BLUEPRINT.md)Ú	anti_slopÚ	rd_reportÚmaster_planÚagents_specÚhost_blueprintr@   rA   rB   )rƒ   r2   rj   Nz	Not Foundu    # TÃ i liá»‡u khÃ´ng tá»“n táº¡i)	r%   r_   ÚBASE_DIRr$   Úgetr&   r`   r   ra   )r•   Údoc_mapÚtargetrU   s       r,   Úget_documentr    L  s  € õ  Ð"MÑMÝÐ"LÑLÝÐ"IÑIÝ +Ñ-Ý&Ð)<Ñ<¸{ÑJÐMlÑlðð €Gð �[Š[˜Ñ Ô €FØð M�&—-’-‘/”/ð MÝ�&˜#¨Ð0Ñ0Ô0ð 	M°AØ ¨6¬;À1Ç6Â6Á8Ä8ÐLÐLð	Mð 	Mð 	Mð 	Mñ 	Mô 	Mð 	Mð 	Mð 	Mð 	Mð 	Mð 	Møøøð 	Mð 	Mð 	Mð 	Mà ;Ð;]Ð^Ð^Ð^s   Á4BÂB"Â%B"c                  óè   — t                                ¦   «         sg S 	 t          t           dd¬¦  «        5 } t          j        | ¦  «        cddd¦  «         S # 1 swxY w Y   dS # t
          $ r g cY S w xY w)zGets saved feedback notes.r@   rA   rB   N)ÚFEEDBACK_FILEr&   r`   r�   rŽ   Ú	Exception)rU   s    r,   Úget_feedback_listr¤   ]  sÅ   € å×ÒÑ!Ô!ð Øˆ	ðÝ•- ¨wÐ7Ñ7Ô7ð 	 ¸1Ý”9˜Q‘<”<ð	 ð 	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øåð ð ð Øˆ	ˆ	ˆ	ðøøøs4   �A" ´AÁA" ÁAÁA" ÁAÁA" Á"A1Á0A1c                 óü   — t          ¦   «         }|                     d| ¦  «         t          t          dd¬¦  «        5 }t	          j        ||dd¬¦  «         ddd¦  «         n# 1 swxY w Y   d	t          |¦  «        d
œS )z>Saves new feedback entry from Executive Producer Seven Nguyen.r   ÚwrA   rB   Fr   )Úensure_asciiÚindentNÚsuccess)r   Úcount)r¤   Úinsertr`   r¢   r�   Údumpre   )r   ÚnotesrU   s      r,   Úsave_feedbackr®   h  sµ   € åÑÔ€EØ	‡L‚L��DÑÔÐÝ	�m˜S¨7Ð	3Ñ	3Ô	3ð :°qÝŒ	�%˜¨°qÐ9Ñ9Ô9Ð9ð:ð :ð :ñ :ô :ð :ð :ð :ð :ð :ð :øøøð :ð :ð :ð :à­#¨e©*¬*Ð5Ð5Ð5s   ¼A!Á!A%Á(A%Ú__main__zStatus:r   zScenes:z	Episodes:zEP01:r†   r2   )Ú__doc__r(   Úrer�   Úpathlibr   Ú__file__ÚresolveÚparentrœ   r%   r$   r_   Ú
ASSETS_DIRr¢   r-   r=   rw   r”   Ústrr    r¤   Údictr®   Ú__name__Úprintre   ÚepsÚep01r<   r.   r,   ú<module>r½      sÖ  ððð ð
 
€	€	€	Ø 	€	€	€	Ø €€€Ø Ð Ð Ð Ð Ð àˆ4�‰>Œ>×!Ò!Ñ#Ô#Ô*Ô1Ô8€Ø˜Ñ €
Ø˜*Ñ$€Ø�fÑ€Ø˜Ñ €
ØÐ3Ñ3€ð$ð $ð $ðN5ð 5ð 5ðpGð Gð GðVLð Lð Lð^_˜ð _ð _ð _ð _ð"ð ð ð6˜ð 6ð 6ð 6ð 6ð ˆzÒÐØ	€Eˆ)Ð&Ð&Ñ(Ô(¨Ô2Ñ3Ô3Ð3Ø	€Eˆ)�S�SÐ)Ð)Ñ+Ô+Ñ,Ô,Ñ-Ô-Ð-Ø
Ð
Ñ
Ô
€CØ	€Eˆ+�s�s˜3‘x”xÑ Ô Ð Øˆ?ÑÔ€DØ	€Eˆ'�4˜
Ô# GÔ,Ñ-Ô-Ð-Ð-Ð-ð Ðr.   