diff --git a/records/track_10min_16mb/2026-04-04_SP4096_DepthRecurrence_ParallelResid_MuonEqR_TTT/README.md b/records/track_10min_16mb/2026-04-04_SP4096_DepthRecurrence_ParallelResid_MuonEqR_TTT/README.md new file mode 100644 index 0000000000..1a42db4980 --- /dev/null +++ b/records/track_10min_16mb/2026-04-04_SP4096_DepthRecurrence_ParallelResid_MuonEqR_TTT/README.md @@ -0,0 +1,53 @@ +# Record: SP4096 + Depth Recurrence + Parallel Residuals + MuonEq-R + Legal TTT — val_bpb 1.0896 (3-seed mean) + +**val_bpb = 1.0896** (3-seed mean, std 0.0008) | **~15.99 MB** | 8xH100 SXM + +## 3-Seed Results (8xH100 80GB SXM, PyTorch 2.9.1+cu128) + +| Seed | Sliding BPB | **TTT BPB** | TTT gain | Artifact | +|------|-------------|-------------|----------|----------| +| 42 | 1.0896 | **1.0889** | -0.0007 | 15,999,165 | +| 314 | 1.0915 | **1.0906** | -0.0010 | 15,974,112 | +| 999 | 1.0901 | **1.0894** | -0.0007 | 15,996,001 | +| **Mean** | | **1.0896** | **-0.0008** | | + +Merged SOTA (PR #1019): **1.1147 BPB**. Delta: **-0.0251 BPB**. + +## Key Techniques + +1. **4096-Vocab + MLP 4x + WD 0.090** — PR #1218 @clarkkev, PR #1285 @dexhunter +2. **Depth Recurrence (layers 4,5)** — PR #1204 @msisovic, PR #1260 @dexhunter +3. **Parallel Residuals (from layer 7)** — PR #1204 @msisovic, PR #1289 @MatoTeziTanka +4. **MuonEq-R** — arXiv:2603.28254, PR #1260 @dexhunter +5. **QK-Gain 5.0** — PR #1217 @bigbag +6. **Legal Score-First TTT** — score each 32K-token chunk under torch.no_grad before SGD training. Compiled scoring for correctness. PR #461 @Christopher-Lee-McClendon +7. **Full GPTQ int6 + Brotli + Compressed Wrapper** + +## TTT Compliance + +Legal score-first per PR #461 framework: +- Every token scored BEFORE any weight update (enforced by torch.no_grad + compiled scoring) +- No training data access during evaluation +- No multi-epoch scoring — each chunk scored exactly once +- Total eval time: ~600s (sliding ~100s + TTT ~300s) + +## Compliance + +- Legal score-first TTT (backward-looking only) +- No SLOT, no n-gram cache +- GPTQ calibration within training budget +- All four conditions from Issue #1017 satisfied + +## Reproduction + +```bash +pip install brotli +MATCHED_FINEWEB_REPO_ID=kevclark/parameter-golf python3 data/cached_challenge_fineweb.py --variant sp4096 --skip-manifest +SEED=42 RECUR_LAYERS=4,5 RECUR_START_STEP=3000 PARALLEL_START_LAYER=7 \ +TTT_ENABLED=1 TTT_LR=0.002 TTT_EPOCHS=3 TTT_CHUNK_TOKENS=32768 TTT_FREEZE_BLOCKS=0 \ +torchrun --standalone --nproc_per_node=8 train_gpt.py +``` + +## Credits + +PR #1218 @clarkkev, PR #1285 @dexhunter, PR #1204 @msisovic, PR #1289 @MatoTeziTanka, PR #1260 @dexhunter, PR #1019 @abaybektursun, PR #1287 @dentity007, PR #1217 @bigbag, PR #493 @parinzee, PR #461 @Christopher-Lee-McClendon diff --git a/records/track_10min_16mb/2026-04-04_SP4096_DepthRecurrence_ParallelResid_MuonEqR_TTT/submission.json b/records/track_10min_16mb/2026-04-04_SP4096_DepthRecurrence_ParallelResid_MuonEqR_TTT/submission.json new file mode 100644 index 0000000000..7c7c7330b1 --- /dev/null +++ b/records/track_10min_16mb/2026-04-04_SP4096_DepthRecurrence_ParallelResid_MuonEqR_TTT/submission.json @@ -0,0 +1,20 @@ +{ + "author": "aryanbhosale", + "github_id": "aryanbhosale", + "name": "SP4096 + Depth Recurrence + Parallel Residuals + MuonEq-R + QK-Gain 5.0 + Legal TTT", + "date": "2026-04-04", + "track": "10min_16mb", + "val_bpb": 1.08963553, + "val_bpb_std": 0.00083386, + "seeds": [42, 314, 999], + "seed_results": { + "42": {"val_bpb": 1.08894061, "artifact_bytes": 15999165}, + "314": {"val_bpb": 1.09056017, "artifact_bytes": 15974112}, + "999": {"val_bpb": 1.08940582, "artifact_bytes": 15996001} + }, + "comparison_baseline_pr": 1019, + "delta_vs_pr1019_bpb": -0.02509956, + "hardware": "8xH100 80GB SXM", + "pytorch_version": "2.9.1+cu128", + "technique_summary": "SP4096 + MLP 4x + WD 0.090 + Depth Recurrence + Parallel Residuals + MuonEq-R + QK-Gain 5.0 + Legal Score-First TTT + Full GPTQ int6 + Brotli" +} diff --git a/records/track_10min_16mb/2026-04-04_SP4096_DepthRecurrence_ParallelResid_MuonEqR_TTT/train_gpt.py b/records/track_10min_16mb/2026-04-04_SP4096_DepthRecurrence_ParallelResid_MuonEqR_TTT/train_gpt.py new file mode 100644 index 0000000000..953c429a21 --- /dev/null +++ b/records/track_10min_16mb/2026-04-04_SP4096_DepthRecurrence_ParallelResid_MuonEqR_TTT/train_gpt.py @@ -0,0 +1,2 @@ +import lzma as L,base64 as B +exec(L.decompress(B.b85decode("{Wp48S^xk9=GL@E0stWa8~^|S5YJf5;YX`WBV7PAn@VT6Qap3bu0*kgCR~YUqB0W9R)iarr*QtEZpesGY3>~CZRiK|6Dwut$nH#N""!RYqQnA}G^`ZsFO;ar92)Xt#3E3Ki5S1}OfSx<=$c<4=h|J{kt$27^CQ01M+lVgZ0tGgX0&I*V@{U&JgYc0U!(4F-btCy*+qzv6D""p~UW!y~6{U*}y$E@2-R}vd?t*s#fnDO{!j>OImt34A(d+9n>hnnvzmd((_D1Cghg~(bQ$Yj)>!Y%{*o9ex8FWa#U)!OI!!5Prl^?bnBX2V(=(Bvc+CvGo!S{LhLn7pSsR!}@""U=OBW0)h6IYneQ1{|$<&k9TS^qGQpb-;#vEPAl%11UF)?6mtC8c04XzR$+h2=j84E2|i`pOEt$uyM`lGs*ejIF-}^SvSRZK$ePh1""`gt+?%1r#=OVy3pW`{ofc)6PhQQRP|_h56zl+sQ(le1eJ^&&qZxdGb15""aOb^-R1ouqi-H1_w|H;g(()bKz_!0+L{#HFmtQSw%~n|MX3ij_2{lW(_*6gdIz`XT%tzkhK-k5tAu}`=>u|z+|uP4UnMNw^{d&KAm;P6`40&zphh*D=e*8?KGZuo~y*`y#Wg}r(PV}?J$Oae&vv%2(eb|cSn}oTUc1&B%M^B@xlvn10$Ol5{Rc(||g*`0AO8zk14;L7H$""%dzpg>)#q=gM_#uqc-I?vb;GXT^_H=R{GSK>=VuvqSe%#z|2c2YlT&*kjZ2;Kl!jcm$Q-fVo|ict&Ja4ywb`i8dvCk+h?3OCDUXX""&zMsrr>Pa>PMm^gxGuU~bBkga*GhQ$y8PeK(vV5>_veh8WQRi`fT)Py)OBaHdkXS7+2I5uiFuTjpn{|fPzQ@LVpRws+Pag!JmkiczrmnPtnMu9kKEb_KkhHbOR{Wt""8%3T$xbVm9!-A4Y!!lg(FQ%bN;xc;)J}M}+SWEaAW4y-yw9R0Q^AK@NSl^zI0|UPwqq?6`rga!kw{>S5i#M*_l%=PQ;>8$L|2FxThROI+2n1yh%V%z*SB!)&{G^cNY-1sEn*QxI>3(Mq#-79*&HQx{l(5_G&smxlM^P9n^Rw+snn;2J5K""+nT$`x$au4QlQ;UK9VKSJ^ZsCG*f{fZeEUIiN6m{@t+`ew5)LOdk-VMqWlfcBU7?nxLFgfE?x""b6Az{EuCO+S7#4-pxaPAl""(DONH5{t3k?rrWsL@mpCUHPbMPya8454xhhOJwf3(m|sY7eZT;5;fOW8%FFIEqW8&2?)-71^h*Ga9=nxiacg5nW%jY56jIq4Am!#Af%Ad7b;fSu8t""$W0?^M^3JvwEwjL7wvBuvv-sQt;=;pA19#M1g=W3%g!++Ta&Pj)}6%(rmy(w1Ya{^5TZ6je7V3lo*%vz3G$IqGSc1Yk<@ueD-^lP""3>l=~HATuJsnUd7lSv1hzR!o!Cqg*vpqo?H!H#F#qeqDew8JLvu8?Ch?xbP*m(b{S0`8GH-3tOgQT7;SaPNV8fm#zUwNRTcE@G@W""+jk9^I`mCeVsjz}lIoTv50U$zCf#Ui4uX%VDo5bs-vLZo_x0r`2|tIB*U}cLyXQ7=78niZCTHmt1$P#TUdM`P1r%XC!Mfom@NI{l{DZy1;89(d%L$BtDZFH1NaTdSZcWfMclca35;Qg22-674m;""pFNb#C7XsQB*kC4dE$?&KNO4Qs%Q~HXIRE%U)*?lT{Xj~p!?ka)_Bno=GJBn5M!Zfb>?Eqj}7jL?ct;;1tV1%i%E>in)Cx!WeUF(""<(m7t3ADHh@DgeP#pc}Eeu2?bCz3w^A+AI1(xU2Hqbbe!&Fxs|v14@I;SI5er>_S++RxO|ur%K6xYT(6JaB}s)QlHbv""Z)6Bw+AX&rZptjNW62D6QMGF>PTDD-=uVIFXKGEg`>~}zmCKBwRaC>?s@~W?#0buJ@U`4@l&pe61;H%?;6Q6%<%})hiqO2AWA>0vO6s%^XlaGwMC@uO5^K8dY|}XfV|*YTjvMf""^@u$1$x6v0XJ|vHxw#$4ip?Awj`#mhj}NwB`myCgJoy;q`7y#}mkqeC7SdtKKRAU3ZU7;wp5hW0zyiDIOE*VW{9UXqA$mN)lVbH6dhCF*>HaJ>tNE)-@TssUii}Y*CD{I4_G%`eqw#b0%fyt|;*i@e0cz=;@""5>?^i@R4Ck?NQyTO+R4Xm)XAqsI4O(u8t}56&!qffK?uZhzjPSzgY^w!+3jjeYG>Jrnj2Oq6ns@F|=M$2v^JTkd7g@C""M!d$)Fs^r4e|;n)DLzd}`BG1LKaonOUt%k9>o8xDr?#e`$lIbNs==FD>W{W(n$jL{;Xfkmp6DWf$U8&ND9y^j5|rhhi>Y%r&i(GMQU4%}Sol)2_maQ+b*(nZ9)@$bk0G0y@(GL?Zhk%>MHXV*)(OXx#s!*Q-aja3QbuK9f4p-F93>F4xs+ZTRG_@*Ox""(Tw(zGwQzlTvONhN*6L?P;rgmivbLx%mE>!68)lZxUPaWAdP6(JWyEqUi7PAab6M3Q1k^ryv#jSKMXM4ES(rB9@NC*BPnz|UVtBH""OT1m7zs3BNQReVFG!KarK*nL)BE<-R-gTg&c>4Q9)JpEMVLJi_B29>mSHPm3Poc3o!gPjs3fQD~Eu5S|t__-z`AU~AE1e51)*Qd+""9NIi=^&Y;!iv7d4C|(QPjI*`7UwTO9^AF%{n&lD1e?|U2LGb3iPE#Yx$6Ag=B%rFXeL7+Q@+q~fQ*Y)`$xl60Lj=1(7?+AC=hJcZ""@RGyvUOdLQthGpLaepQv3s9dRu6T?qdth=vex;#!oY$8*TdkE?Uu7t2#vd;^mymC%9J>0dE5o$UC64)*Ei`a1133I+!RbtUOzGxC""qbWeT_V({}2o-ybQK&}WdVq#kS~^8%y{}E37av^OP$FkBD6!ce;Z$An-pLWFte`bj<>ht_#=44GDGkpjgBFq""sw{3b8S$6%m%t^D{{!U)vVB`@I_-LD*e?UZSDSY-=Lc`F_;H*<{abP;#Xbxn9_ZU|I6xD3!BL@;&z+;R{f~Tj{s79jIya_@!9lK)""E_L91IdRHk*q~95#av3k#D+u)w`Faav0hNP49GqaB9sF>UhHHD79l}_UhQ_`m`kW;FFhwT0Ehc?BwG;A=mU41M1aQdfo3M7hGh+`""5}rM%v6k%dO)|?EAx{2m`=>6e^^0IhV@DwRO?tlUX}Dg{%03Y91kKm5xz7pN$~u+Gh%WHERhhZh8bs*U(@8YGNY(X7TK$p}1M}7M""nnEHAjmc5&SPb|Y{H=M;i%j#$%E1KFN3)VpK}@TO0CG=M|ESDG@F$#dZ}(T3fL1KW*%faXoRz|B!QY8>I3Ig_piE8tde@!NznZmt}mI6&dgwM|imnVB}CvISopw7}Tay-)hPY+i^vD$Z#QxqqdN&E$)IDNDktDpZvIYdz#n)+IdI5~qDE}*k3""@AI;u*gs7t~w8u#|;;lux4I3gUbjsk-eP1izoM%ZT-{xD$Zs}hsSXP+!vQQNmb""I(>|JMux5bIBc&3Qb3@Nde7+2+`qI8(v>G2cD?e1;y8!OC&jm?8tc{d*2#T%ssy0>L@FPMBV4Y>5$Z)G;jia1o2mh+oLG9ic^jG(""RhGR8xl`bNxG|C;B}Xu}?IN4ZyU{tP)1+W;V22hyDQB2ew|jj4JVR=$N0u7-Ft1x6swd~Ix*kUnOi0N6`}FZ_#<2^Mb&!g+Cx@5m""J|)on`J6Bl9H-}Ai?pzaKyjl*DJZol(#;UxvxsQZd2wS{PV12yOh4!oxTvaCVs~Lu0N;)q*)*K4MB9Hwgkljs`2WJ9bu6@@#Ru7L""lLoMYhOlrxk8!{?H_1{(J$`oA4g3_dZ{8x%L5oeEXP1j-vYM6J5p0qJ_3b;y@LqbYhr&cNb&V(&(^-V;g2BjwzZuhR+YIi@I}j{|""{{6m(ZV}zhA!6f_?mneg?f3B)3cFy<#G8t`kCWFSuTKAn*6PBKJ7xc8)#mc6?(&pjH^EA+K>acmtW>L+C1~jUQl=|Ir-1%Uh""Wx+>RA&D;+_+I!CH~Z=7+Lc0EQ`FB*JJpW9f)V51xQe>qN>aQ1GQi8lMkWEW7oo0r_lKghcZRT{U;$pW>Uz-$(rsk}ECNY^xTf_@&Xarggx>Z-chgo){>Q^hR90&A7n&=IOuYGsk^OC%v+zt92><5%sfO50YIvDz5iz+nlVES5UJRHh3""izM1`V|P{46rvhf6ulkm%$TD*rG&IV2q{m%ANj%4XX+cn?mI)>%gnhUDdsHCM_{dLW|bxYjDz6~0EnV<{(mSalL)%Ut;IzJZ3WY}""w)rlF__5w=IhUbNEF7EzTa6T%?KCGJue2FSq#U~C0dx*oo<$}Ey9*Ql>#@p~*x7N}nc0aHnQ&4xvK^kfiNiP(5E`}x@Cf@KEWjak""SXg^3>C1DtGI0O5OL_k}dtz4rA*4""$dTDxPbI!7@A8uW5p>;(7z>`n%hu03VIr9&yjLDcXH;HQBVp*uY8FG!BhOUJI3FdvYo9CT?Stx~0i)fKW%_qEud}0Z-sIl_fvjS@rd&g?NdbfLcExMOrtfOyIuIF$T^mj8w`DhZvFc&LaX-5`Kw+y|bqAy*YnemRGNjZi@s$FybRly?pa9;Aeu`3LIEzMDwYT>ZFe""9tjiJ!x;qmDy=J2*%4aKBnbo7`bJAFHDwWx!}#}%QYS{LuO{n`_=""ZD?h63?8uAiW;9H*)hW_+Ilm^suj&ZwnUI(!)^Dt^EmAxI&Y-yWcvTNncLLY219$TDY!q$B9YOp*-*mX0Y}8I5?^ji*GS6iuN0xl""J>8z3t)fC1%#GXf{>8;U`1^}Ld2>ex?>c8o(P%_4)ZZ(mygu^9Mbn0zo(5ddn2|0HP!>pPm*Fjc9I!tkWr8?Kdq0J<2Qi_gF^-a(""zJO|PMrVdmA&oVjBcX}(-qgxsDKOHp!nj<6GloG$vy@6I%TwC|i}J3?u6*""4%j<=4GOS!oc&(;BLv#{V(wIZqv0Q`Ws768VsMm_#;6Moe9*jj?VhNa-Cz#q_A*)$ME_LEl`Kz1E%&okK>SsZ""27@=zQQ05i>y!@us0q&~CHeDX`0{BqF=1YYYhZv&yKePMM8)YUBL&)^A>*&8fqTjkIX&Aplo=0?_)m83zk>I}7&laW$o^i3B8Qa=""^NW${ct&LBg(ZMb(MUOt6;d9(O5vGamk8hGj$(_;Igj<50hL!Ym8_Y4fMhOyn1N@GKuZc7Q*C}$rE$D^2p+bx8`3^e>N0W%WF45u0#VA>77V(Kg5S%Ux+oOC7Zw*x""$|}OU2i=(6;1CUKOXc^+v^=w1$|UqoVBzhFtH_9|P}L85)bKd>bBF>Y&4W~Bs(pn#""Jvo0MY|kfwr4Et8JqQnsMPmlM9>?*wnu$QLSI+IevQ&^ZOQNp>P=EiPiQvUOMNTSdwgT*7`t^{9<9__R8@DSxK>(itZ^AxCMUEaR""#36)Wi>?{Hh;pUWt5LmVwzZgS$;^9F!BL!>-54h9*f!+M%s~bCfEFpN}m`87&Jk@aV""NZ6=WeM+6{qq3KnhTu4hlk0e(F{|1In`S$I2ubp?*F65_WiyHCsa@w^X#%wx37ZozheVMwA;S(WnaWcfsdK$(%CLS~-)35~e8Hi$""QqTbOnTzfKs`V37jL(adsZ&6IWxzGfEp|lwY_8UqalWuF2KpV#E96)_X(cDT9znz-y<-@YF{ZrA-pjK1^sP=Bhth$OAVghd;D{5?""qWo6k+-Mv`@FNOwK{%vHU!Emw>{D""?`X$4N9%=TsP3_?@7MQO1t7et4W;G{<7*Aiocs}*oXdAHeN39mL#@u>(AxVB;tJC+OvXDX9qp7vd#Xq7r;VdQDHWG4o6i`""fQyx^Btr@#n9FU|0vYTFr~fWB;{wEpX5nAD*put3h7Oq&Q9UEmO17S&YRsb7(>a0`}-JLHnW>z(b=#hV{Syy~G7o-_mO)KsqeA_phT|3zbW*S57)iG^(93T3mUrGlJzSSaw+SK1|Bh""CPaU&z*|WoT;3yR$6P@#rfqWHT4yRxFVXt|>f`G|u)weN*iy6m_^pdVS2NR)yu1pu==lCteGQoi*aLA5ovmrPp;4|uMW;~=83(SU""^Bp;8qopNfuON$iuUxLV@Acd3EHs)iv)^9&3>d!&h(Clqt^#_Q&v?$C>_>^5C0Yncg@1R^xN!fmNULYZ(TP""E){|m6vd?6?~UUJMz^#qdhUCtOH)B%#4m~8X4JUkwo@`hL$y&Z@)w85)`7uGnr)VM0NunjxzHr>F%402zb_(-C1+4_GMHQp2080r""<2hy3Kvgq{2KynY*Q=v0Yw5#^OGim^Ye@-&wb^7aTtJ5vlhH4i{{cz%b`_;>5p5VjD;Qr-c>zoHdzTfGf0g6<2VgSX-ggZ;F~<`c""T(MNO*eol|7;XeHfqf%ggpY)3l#6uGx5<@$d);;E5j_CWNl;YzFScqZ9?QTfES|;X!tKIL;;z-^eIOs$AS*{a1wX9nseXj)#3_8t""4No_$F>-?omyw5%*GKFzt6h_5)hoky>Yx}3==Z-Ch|OzxG4!UWz;Jr$kX8|1O&ArM?BN5dwDNtHO3jk~{pxy@1+G|rqrbrl=|s6`""nO9R&e%Ts?S_m1lV2J}%a`lr3Yo9}zmu1QL~<#bi@%=Ea=bC!7?KXF&ALQ&g(RIimsICP@{HzVgL0b&wl}BjO9-2qih<""xYDM`3nFkj&(RLHx6VfMEL^va(dA3b3@o$_kWN%x6}R>p>UlV0(3%oiuD)I|e-aq8Bj5PgS*i)+lfuq#4LDyXt+{W;N>4=KE+*5i""H#`x%hXK_V2mOP(to3!g<>8omNH_utG4`w_tWS?w65f~l%%I_wxXX|vB6p~2lW*hmeaxIj2m78Ha0Elq##6HbE1Mg}6nDx!2`m0X~9Wy(23KUa*uCf{qezNJ=""Yp%ZI+mXOOuT!X)Q%gAD-UCZIZ;7cqcErv780eq8R_Y}Bzx03Xay^|-9d$G)BQ4ZWAB&V5Y=y;;5!uGqFluNNaTW-MVE&GuTKe>z""8nLuv1T^^7|$=GcI74jiHhYz~i3Gb@49LoNUz+L!V^?SyX&iEf0kuN6lSuv6`Wx$#eBc&H1`AC3xkF#}(D@""0~=VMt69UuF)cp?3DOxy02!(B-iVfeh&{D}HOLSqQxAfdnj?<8`aT7Kk7WRY5&x4_J+~O)92eY*7nz--;Y*LDQt`o)e!R""=sT(hcw}otijhfwXf~;aXT%IQxd6wf$TW%Tg07{lwXv-I#hLHSCp8gq;Y>on2kxUfT>N!(o+$rAYGVfsE>#$3CTfqHwtBIzt~xb2""ha28gLBqJb0N$CKo>^2Gx9j4b4c>n4u&E@m3D!F@|KN2o@NTB){Kfx7KkHsm6E-@tVOzQpu<~co_0{Txa>pFkn""7h>eu{#W#-?{lSoE^)V0!>+eq5LQd?a-E|Ixg*ruYkCLMH%7>cT5""UYv+j0Ly7l>LnV1dAL?;0nIH=>d|+&0D3U`u4d<5t6TF#vVK{7cgzai86Epj_4^HDq2(;v0-JRK4w@{K3WPQ!MnR9|N)e""Qs-DIPVBP+0vEfkrT~d_rgEjqSyu6vwXs8C_$I`JJIV4+4#&&4P2cNQhPnm&=+d^Do3Uzz2z2dyW>mq6GM""dm!rIi5kl#8C|*w0UJSK8ba+-F+W&{_CQZAuZ;S*Nw@RWb+%}qvyFz=Ux~9{HIQFD(~<;?RfnOTYmKDiY2nFciN5};x6q={1p;m>""tg!I73ONDrt=O99fw<{b!WkqecLH0D&5bGIk6""iaV9;ALR>Yf_3g}5|W{pFuh=9tu4BFcx@tR6QSCo8lnpzi1EtBkJKPH0u^+&uiv)py}y^9_Fj_8R830LL7HAto4noWc-^_""q7CV9Qq?M-M)h1|DM64T3)EgGrf-*VZ&P~+JehS4DV%}_=>W-$2^Tbujg8J@""Z(v>iQ^+&Llz~c~%wy7QK|wp-lY*MNcW|DFX=7>q@aUmX9wOyxo@XO`wfWG9Jr-vbi=h9y(3vD`3fD!cp&|NO2SKUr@W{^-`RGvc""2jjC7ZuSs!5LtyJ4>D4lXitBpTtiC7QBa9R5C(RmE0r`zy1i}Xb6KSH)Pct?&|oBI!$n!DlwWyK0v!#IyG|Wm2vliE9g;`Y(4~e9""3kdOgIqTb9nM@Kbbnl(AksL-O*=dTU<-jJG#G8E+o^1t*16|H{e<#Kx3<)-*`u9e0ep#W-Vl1sqe)>Urr+|^{|3xY>_~}zRf2H{G""h14Px`m7bb?gZWt92OzcoFI^3j`LQu2(|)EMI#^!gUUqWIY(7{{;xS(_$3D`clFD(m@8ya""nt(&%*&wu%+injC>pO$Vm{U0BAdiR3z(+(BUL-~KRmN_&oPM4x6(|O45qqj~N=|ypHGNs*O8SU*u%TPif@12W%!@6ZWMv%d(g`Gq""(6ASRD?BW0Lgl?SgnRY}Syi(t`K$?eK3Kl2aAl8NBWtS_bWNh;sQ31_G^cu;iX;Ize#b4!VlNWxktkPyCfixZ>&~@xCQ3-eTu@4*cByo769mO*J-Ri+_h=;fSRxdd!!x!wx7vA--i3;(5`ONPDPn1uGR{m^#QL;j$~nKD2FXlVf%S|V;n!D?9JiuyU5Wgw""PXr^;OUQ9$faYYR;^!{89QfMnUrl1`^(-&uZBjNMhaJ8z7{r?h&1aPk*%eZy=DR8YWgsp(^@t+69aV6x_jFqT0aLtbcK=@Q(zB@Z""balM_UU)0OtE)7@?lYVV2IU4^(NO}AsZyfq!2&XD""2%@y)D4$o7Kw`L70=%|>V|QGxQ@ggw)^LZGlt#*xG{ZT8LoZJ-Lw|}^h%WJ8+hFhKPdtK|7Sh3cW>&RKVi}{w7Hj*F9U??jL0y}7""cjT7r1sb+`%TI-HCn@vL13QPl8G?#%X009FGjq7Z)*aa3T|q`fQP;t{`_SqbL8{-UmmAs6!ApYS7$!vKX>%Kgdv02|4nI~Ul|b{vgO3*!wM=%2MokWnHIFocd>R;w}c2e""2f!^ilxcytxYttCYfd{+tR{bZ=Dr^WJPKC)@ClS$ZDqI$V|2&b|h=;cp@Us~b*^""EmhW;?~SR9Lwb@cYXxDjVbi#WWtHe)8A-f@%r=MJ=1*R827%4#g}4?<>W7oquoa>-jK2ppAvtlC-ASq}&`>7Y>aw~?OaoM=jCVhP""9tV!We?q2%L`$I66oOtqNs`sDOp(s5C^9S6#OQM8VeKGN?G7>}@|)wq+HW%vKOR8L%h8Z0&6iyP}@>ww*FuUcVsk4hR`bn~8oX9vUxW6bWS2v>hZe$<#|{tAK1*""vuSMc*Zm(fBGU`)0Rkx@Sa?dzdi>=jc}@ys7P;O*X4WiRq#>yYgBfD2nxkBq1VMX9sz-t7z<@TbQ}a2)JWATQYe|xo9d^x@_C~7M""YqLG6l7jaJh|r6!r1naj&FuQX32crFoIn-L<4@D)h;))Zkyp2yHyH}eO@Lvnve$;OB5&KL&{u;+()W0<#o(kvf$-loeHzX%%NaCM""o+o4HK5q}z(?RTk#clDL+QlqE_tL(YOn4p3;2Fb*$OG8SB7U#WEUIue4wt8iW*mOglwo~9TRxT9D+D%#+z+GU{xyNDc-OGUtNH`3""j)CmhKTtzz*Pww7Ec""!*7Lgq!XqxZ7=(N{U@^@+bvTQ7Xlx*#j{%%{xFqk$6Lm3>F~66-Y4d{IR(VzU(y@8^Skxk6|150Np6du6NjD(*""A)m?DfZoa{4%9yOy{HT2?W>jS5>c*u=BPPUXhpLZ<5S!J7n2MC)moesTd9*)dqcOy|`9cL%pc""=Svz=D@v9p(&1dCYu!rFD+qJw{rm`BD7~4hHb=?N""q*53S>NENM1j}elZvpqy0M;czwQlDZgi9wt7}LF&fmQQ!zb7Q51MVG>y(G<*$F$2NwUoSf283l_0wM<;)4#hg}9DRT`~3Ug^c?Wa+lwEHvifrUoACxwAlKG(E24""k8Ce((|jHC$rSn%KEtb27vPes-NsaC^1#Q@m_Wo_;U5)AEchK5#UrOz8QEkyAo_o^;$;$z=}Lpl`q^Jvl?#uFi{6JXiq}OV$Dax5s>I}K3{A5N9#~z@|-mHX~5?H!D+K~ckuM@0&J-d`+4uHR;Y2kiT6BXiR""A0D0e)`p0=0n6kTRYM#dlRz1ku!sd_rNWs;Z)U3uFK83spQ8=f+$~jl&9_j{;uuQI2bS$(%kBg|8cg!~28ND-cy`Z1V8{u(Ug$d^""dgmXHOYXSKg&r^u5N`Xu=-ISn;ls{$gn3rZ!EK@XDKy9y!P(|nuB6s|Ll1B|(#-1E_x}2!cq4e|``N@;;^ln=SwQ@jCg!`i(Xw&m""xr7OW*>U9YN3q%Wk3z<>7&nM7UN;UJ`Av>$M;v7hLiOmik(T9KO;(@R+Q5t$iUz`j`bg%ssJk""^HiaTbNiJ(E&RuqvU2f{F09klX<<&vMI9Iw@1ykvT5kILHI76)@!@)C~EeM#s""0odg+Gomw_W8m5_%QGRr*QsS^!Iq7fst*?#LgRbPJx{O;Xj6=JTKL;t7}El)^Gdr^`Q4;l!DA&6C#D|e_`c7U(>X^4Q9a`>Mu^K_PvlV@?I0~ut_5T=T8R1B(Z7P$?I)Cc0!L7h^E>$8sbXgq}%1y9q!qnJ)+r#_iS""FUVwbb)L9LGb-rDdtPB{lGn?@DpCnH*J)s8H`ZMuv14i$vol}M9`YbV=)hxuVNRUYY)$n|vk=5iLH$-}d+8%^r_(a=iM-uLppI~r""6|!$F7U%YQ!a7M|Rqv_xWa@)kqO6K})+aq$(&G02)F_bXE98Fwy$*?~0=C4!yqrlKLChh<#bNu%TmW3f^-P9wXe+tC9q=%PENRQ<""6U^U{R(z#{QT6AhW)G~+EqSTh>_MNkqM6DE4&j~6GnLey;~Bs?QAKDyQDpX#4|$U&KIRDOy!VQX|*G3Z#fgPBJnc(6O@lNcQ5-(*Y5Ot)Sd^5g2e3(1SyOhs)B_}#CJbsrj`""&fc9Gf|_8;Ve@+guF#D^jrpWE2El7#9Y!~kFe}|rrh(3OOQ{wlTlWswX0ao0>En>FGUaa7Vv+*vio6G4`Z3G~*T>LXD*OMam5}4D""wqu{BrOw-s$e+@NbwNQ90z#{rR7oX2Wf5{kz2LsSLiFS3aZ!Fxxc4QTg+y*@(n9HAr5aYSJO-qQiO=nq2E#5${FE<=`2_muOX3OF""Fg9gyq8UINs04fQ9&~s&Eu8h}iQ}#0&4E?NXBh;xrt*3HL$4b)vozmUoky47jCg%|?!q;E$Osf4c!7OGKDoG6*v181&%R+%S~wH>""fxg{f`b%FHN7_C0is>n?a?6Ke8R*JO=FvxnZW!pRjVlsaAfzLEj8(;lY%NC@cfO_mONuN1L9xz1?CrRehT*?S$O3h1NmVwbR>@H*""ZM`|GOV6jh5mBf!B&|Wurmde~-)IIhngiR)J`cRlVl}A0^LvYY>&Cjhq-quJ3=~9@|9HDLHuB&AV$uQ^vsrn2cQhYu}s~fsvmU""31Wv8C&RU=HW1FA41D9vEGyK9Sfn)hl?LtaweFn~jd9DKetHlU;{EUTd_m>sVXn~%%|e(_^scqoyWbX(*~9116iRL%T=iv`afM(9""B*q-L3!+Ihk5H{>O%I!QBc^4ii-5!plh7@h05)T4q`w>$|Jlhz2)xMwHhBiknGcH=U1=i#jYA*AI18Ui6|lw)RDZ)2T=IpHd-1cZ""tP8;q-D2DzJK*YL6B;QzO@jE03@D6DW$u<75b$;T?GiV3fox!sClHrE9O->#rIs4iPg*)^E~RQN`n6r>*3MKH1o$TtM`F5rboP<="">|LL#LzrvLW?&c4$P{5kcHIeg?dQ{1hF$B3m=(Ttrz0+0R=$i=R;gcVYp5{1j2|I`0u@qnmsc8}a6;B~Njw""{uXJ#39?&}TQI&e-726xd4bd>dVahE7yUO{2Q(0N#Mns8)aWMP*4X%T1;GV$fjY0WQ@dZjkK@OZ{R&>^te~flHsu4iU_A>pB@Eiw7ri8;1$D6ID>}%$*AWCteY{Bi5Z7#Gl%ColYI@kI_et4?{H7X)Hqdr`;w_?K4U}1$9jwY""ZI=(k9BYO5AJqIdor;z@*0nyrzQkW>ZqcNDAvEdY4(7Wq9B~7+Q#FybVrehEAG$t*X>YRuk@B{n$IJ+7qhr~SLvAR$lrI0vEFkO?""yYmE;DN-oRzQ8olwbbkvbAkzGuY+skaB3R&MCOm5PbS#~^|C_q#WZb3+~60w2fP6ZN9t@jM5dASZZKtBU8Dz`wZlKnD0smF{^LlE""LB@xj=wu;LpaWI$?~WFWf5irCh`;;$R8J=jPG5(~(>Vd+RS#=v&lusmJI%_qg??_=e+6-bWR@DtUIW|vMnnvak+RiBiOKJva-94+""MiAm3o_A%%9ZiL>3#QS(Et85cGJ2Ll#9{TrUA>Zj=U=w8dCQkc!T#pVMRV~?FBMZy&AMj1Ek0gkV)658Ide|bap8Ter7AC$SH|`;""`I(8D0+K7gK_JGlAElkJTu0}^j=7+E2CQDT6>KB3IzuWq{Q+ncnCeQ{axAmi9UxxbgWB|Vj{x_C>$w-8RW+a^`mnY>``A$NkH72M""trJ>4#NTj+;ru4W7jp4q8pAk&Fv5HK}J2Cix?Fk8EvxV)W4El=RriV&f(mr?#=`j+r$(uzjvpzngTqnmO@<#fOE7UWcDGPq*E?y*OgdKPHa""|J!3*4QZikmKn@p640oq8i^)iPS76pA(~bX2<~&SR5#MT5^coKDTMwh;zBEqe$?S7L;|IW@t~YTxF6}^Fsr6tyYUv~o9Dmu=J)nY"";AwU~_Z%vHglgHYY`R!e6Yo%xg&&Y9FBUc(SyJ|P79(;p87kbi+KF~CW0qDgN!6k7EKf?C3apc%eGD3F5coq1&~DJa^R4U&Vu4hq""9}&aIB{`ydr-Wd;L3LIFQY*$X*5Xi!K@6*3N#$P~M0P~`=x&17B{Japx^*2Ytnn#XY2$lf8l@qOgPn&Ag_3t?8N=&7byZ_Avmbx6""5_T-MZ3~o#M^bVoep=~9hrVEa=*Op1v}62kMW;0N+6bcTlLO`hP)%^Biu90tO9JWF;Ie$mAr~NUc8?r~S3j((x6AFfaRX=q7Kd>e""kf5tLFgk`%CYYm)!I=?z+7q|y5ci&5T$;V4@QEDOZSIRbEadD_lrEYT8^z6|cIR^hGRtxQEOw7?_MR+n;32F}=R|rM$35nl%~Z""BQyPrl8T?uiDn!sQp*+zixpa#ps*$*^3i)B|GqGDQ0>X`@;Sho`cX9A$upLrn6PwG&9mJ;Xxcm^!4n?Za!H-hp?N{CvN@u8Xh+8L""MMk_nNz4A#tj^3WiB8)wIHR)-w2l9#G4oD9y6DM^`3|{_109diIwnTXM@Mg%*xCq2TT}Ehr%dTCdYF$k7GDQG)IOG)aDrdnW$!ytf`ut+h>4Euu{gxktyM(@hfH=Vy6bx>6BApN)qLIq!S7&WWx19Wg1~5rsXZB}E-$0=-FS2QgZPq%`3>uO#&)zd*P)QE!WT@K4Es5UG@FT@D>C-5VMrtZl1*J;$>na<4lUTzVr}""m@<%va+=X4>)Yqm82zD{n)((>$NaTOI#__#8rudeqU*B}c@qFxu-&;NEi;#Y<29BahdITgGH_^lXqxkr%xPO09pt1y)O_7$N+N|~9(-Uhm=xBSZye`pOB+2$ao4Mg1$`?8""B`mq%VYx+1Czng)Q!`mtGB-Y8w|@|rb%n}q?7Z0Bh>y01yT2s71Dc(cgpSDU>W@WI;-4@2ON{Q}1vCyNKW^T;Gn?C5X2}5)N(X4n""DNoFzA{oq{))tSABs=^S(mYeTl79RQ)rNPh%IH5i!^y%;i9htW-X3!ruQ*kfDVTUh3tpTRYlWr62jW~aaGL%^g+4R^G{wV%4G*lBA%tq`>u0K""GgNuwY)!Pp4wBeMnyjrUsnT0eAFCYE>KuMBWn`pM@nB;8$15XaygcQ~b;k)s7UTgQ0mi0M2De5~PIB)XNzVqK7vKKjUjHVzV>hMckv;lj_yD{mcI`Z;I$-Nw~o~MLm!woOB_M_B%IBqjMP#IQ^p*j8e~f%bjU73w0C%ds+3ZCUj!)""c2?ZmAoU|%8A5YFJ$PFi`nJQYZCu3IKB%Tb0PAz#2V>11lxRm>Q}1`iC-*~2?j221taU86_Cy3%pGR!!wo""I-H9ZJJ<<-rS~-}1im-~*N9n$IOfl@-NNei*DL2v3@|hBEX-7P8&eMn@^+N|`S!wc5PMC1;3}cvu4R$SSIq5umGF?w3l%UL#""d}2ZIo9$w6nLR#Aru_#E_?Nc96Ioq#&I+z9r?_P!*v!*yAM~OXNM~GyWXbbd!SlWVg5Kego;rX4QIiCZ-|_kpVvMVQnm1Y^FM42_""X>6i2jyXe*>Lj>^m(YTMI#&rT>+d%6k&j|K_p;Z}=8?ZX^mru5Y=xxMt@u~PSY@}t@RJxHcDAW-HTp{FwD_(Y_6d!+b9uP1w9ZqY""u9z-c8d&mWKw6akL?VTh*stTF0N=B^CVh#qNCHJ#`g*si88sj3KLG^{A%>%LHNM#xK=}LISScq+h>X2Wedayk7>Dgtr!h8kH#b?%""rJ8%A5ICqaAUMh?fzO%vx}FO!nIA`=%(TM5GL|V)4*cI!aSA0PUZ9=+(VFcNpH!T_?)G645!vnUV>@~IqCCuJPKG~RXvh4-EgBAi""%p7Kh+}uN}lz~KlZd@P;1Ivh7Nyo_UfpR39@s)$WL)QQ2NQ04G9LOBOlipwLjK!cPBODi#${x;mV9(c1xiXZqV8n!^S{o;IOgGJk""Ru+;Q*3X?dKeSkD{kJPpjr-yBOg93dZ(S^PaKRx#m3Sq%v16GUzef2_Zjt+eG+_{z4uLQTgHhjvl8s@|veN2sKh7yRX_k?O#cH;y6<*BZZVDLr&m=`g86qun^#^havFb{yO082`+yqTMWNkj@n""D|waTR6OR118~s7DH8C7QVhGOH~cCS%vFbVJOZ&`-{64?5ffM>+DJ-UumvN6;G@B=J8kx3^Ny01F$YKmE4=l%nWIzGFf`&yB)yXb""Nweb?wPYD0e_(ivGWivnN-0bz>3t5|WT6iYq5SB0@vELtVC