+
    ig                    d   ^ RI Ht ^ RIHt ^ RIHt ^ RIt^ RIt^RIH	t	 ^RI
Ht ^RIHtHtHtHt ^RIHt ^R	IHt ^R
IHtHtHt ]! ]4      P5                  4       P6                  ^,          t]R,          t]R,          t]R,          t]R,          t R R lt!R R lt"]#R8X  d
   ]"! 4        R# R# )    )annotations)Path)replaceN)config)DEFAULT_BRANDING)load_movementsload_participants
load_picksload_results)build_leaderboard)calculate_penalties)export_leaderboard_jsonexport_penalty_packetsrender_leaderboard_markdowndataoutcompletions.jsonbracket.jsonc                    V ^8  d   QhRRRR/# )   pathr   returnNone )formats   "ځ/Users/lancenlachance/Library/Mobile Documents/com~apple~CloudDocs/PortMadness/MarchMadness/prototype/src/portmadness/simulate.py__annotate__r      s      E E(,E	E    c           	         V P                  4        Uu/ uF  qD/ bK  	  ppV F  pVP                  VP                  4      pV'       d   VP                  MR pRp	V'       d   V'       d   VP                  V8X  d   RMRp	RVP                  RTRV'       d   VP
                  MR RV	/VP                  VP                  / 4      VP                  &   K  	  VP                  \        P                  ! V^R7      R	R
7       R # u upi )Npendingwinlosspicked_teamwinnerroundstatus)indentzutf-8)encoding)keysgetgame_idwinning_teamr#   round_label
setdefaultparticipant_id
write_textjsondumps)
participantspicksresultsr   r/   payloadpickresultr$   r&   s
   &&&&      r   export_user_picksr9      s     2>1B1B1D<1D~1D  < T\\*(.$$Df"..&8UfF4++f6V''tf	E
4..3DLLA  	OODJJwq1GOD<s   C;c                   V ^8  d   QhRR/# )r   r   r   r   )r   s   "r   r   r   /   s     4@ 4@d 4@r   c                 d   \        \        R ,          4      p \        \        R,          4      p\        \        R,          4      p\	        \        R,          4      p\
        P                  ! 4       p\        Vn        VP                  P                  P                  4        \        VVVVR7      pRpRR0p. pV FW  p	V	P                  V9   g   K  VP                  \        V	VR7      4       VP!                  V	P                  4       V'       d   KW   M	  VP#                  V4       \%        V VVVVR	7      p
\&        P)                  R
R7       \+        W\&        R,          4       \-        V
\&        R,          4       \/        WP\&        R,          4       \1        WV\&        R,          4       \2        P5                  4       '       d'   \6        P8                  ! \2        \&        R,          4       \:        P5                  4       '       d'   \6        P8                  ! \:        \&        R,          4       \=        R4       R# )zparticipants.csvz	picks.csvzgame_results.csvzmovements.json)r4   r5   	movementsr   u   2026-03-16→2026-03-21P4P6)settlement_window)r3   r4   r5   	penaltiesr   T)exist_okzleaderboard.mdzleaderboard.jsonzpenalties_weekly.jsonzuser_picks.jsonr   r   u2   Simulation complete → outputs in 'prototype/out'N)r	   	DATA_PATHr
   r   r   r   Configr   brandingcommunicationsenabled_channelsclearr   r/   appendr   removeextendr   OUT_PATHmkdirr   r   r   r9   COMPLETIONS_SRCexistsshutilcopyfileBRACKET_SRCprint)r3   r4   r5   r<   cfgr@   backlog_windowbacklog_participantsextraspenaltyleaderboards              r   mainrY   /   s   $Y1C%CDLy;./E9'99:Gy+;;<I
--/C#CL''--/#	I /N $<F!!%99MM&4 !''(>(>?''  V#!K NNDN!8FV;VWK4F)FG9H?V4VWl7H?P4PQ4F)FGX%>?	
>?r   __main__)$
__future__r   pathlibr   dataclassesr   r1   rO    r   rD   r   data_loaderr   r	   r
   r   rX   r   penalty_enginer   rendererr   r   r   __file__resolveparents	BASE_PATHrB   rK   rM   rQ   r9   rY   __name__r   r   r   <module>rg      s    "      & T T * /  N""$,,Q/		u00.(E*4@n zF r   