From a0d49b454d143371f8ddfb52177a4ecd997e6c0f Mon Sep 17 00:00:00 2001
From: NicolasVD <5943045+nicolasvd@users.noreply.github.com>
Date: Fri, 25 Sep 2026 18:20:39 +0200
Subject: [PATCH] chore(hygiene): remove legacy SecondBrain residues, generate
social preview, and link Project v2 in README (closes #22)
---
.agent/playbooks/compose-theming.md | 6 +-
.agent/playbooks/roborazzi-export.md | 4 +-
.github/ISSUE_TEMPLATE/crashlytics_triage.yml | 2 +-
README.md | 12 +
design-system.md | 4 +-
scripts/upload-screenshots.py | 2 +-
social-preview.png | Bin 0 -> 443746 bytes
social-preview.svg | 266 ++++++++++++++++++
8 files changed, 287 insertions(+), 9 deletions(-)
create mode 100644 social-preview.png
create mode 100644 social-preview.svg
diff --git a/.agent/playbooks/compose-theming.md b/.agent/playbooks/compose-theming.md
index 0de0410..a87b324 100644
--- a/.agent/playbooks/compose-theming.md
+++ b/.agent/playbooks/compose-theming.md
@@ -7,15 +7,15 @@ triggers: Any UI component change, new screen, token update in DESIGN.md or Colo
# Skill: Compose Theming & 4-State UI Matrix
-> Extracted from `Theme.kt`, `Color.kt`, `Type.kt`, `design-system.md` (Material 3 token table), and project `SecondBrainTheme` / `SereneCustomColors` implementations.
+> Extracted from `Theme.kt`, `Color.kt`, `Type.kt`, `design-system.md` (Material 3 token table), and project `AgenticAndroidStarterTheme` / `SereneCustomColors` implementations.
---
## 1. Theme Entry Point
```kotlin
-// Always wrap the root content in SecondBrainTheme (never AppTheme in new code)
-SecondBrainTheme(
+// Always wrap the root content in AgenticAndroidStarterTheme (never AppTheme in new code)
+AgenticAndroidStarterTheme(
darkTheme = isSystemInDarkTheme(),
dynamicColor = false // DISABLED project-wide โ Serene palette is locked
) {
diff --git a/.agent/playbooks/roborazzi-export.md b/.agent/playbooks/roborazzi-export.md
index a8beae8..0982055 100644
--- a/.agent/playbooks/roborazzi-export.md
+++ b/.agent/playbooks/roborazzi-export.md
@@ -41,7 +41,7 @@ class YourScreenSnapshotTest {
@Test
fun snapshot_YourScreen_Default_Light() {
composeTestRule.setContent {
- SecondBrainTheme(darkTheme = false) {
+ AgenticAndroidStarterTheme(darkTheme = false) {
YourScreen(uiState = YourUiState.Content(items = fakeItems))
}
}
@@ -54,7 +54,7 @@ class YourScreenSnapshotTest {
@Test
fun snapshot_YourScreen_Loading_Dark() {
composeTestRule.setContent {
- SecondBrainTheme(darkTheme = true) {
+ AgenticAndroidStarterTheme(darkTheme = true) {
YourScreen(uiState = YourUiState.Loading)
}
}
diff --git a/.github/ISSUE_TEMPLATE/crashlytics_triage.yml b/.github/ISSUE_TEMPLATE/crashlytics_triage.yml
index d4bb8da..227a408 100644
--- a/.github/ISSUE_TEMPLATE/crashlytics_triage.yml
+++ b/.github/ISSUE_TEMPLATE/crashlytics_triage.yml
@@ -60,7 +60,7 @@ body:
placeholder: |
Exception: java.lang.IllegalStateException: ...
Thread: main
- at com.secondbrain.app...
+ at com.example.kernel.starter...
validations:
required: true
- type: textarea
diff --git a/README.md b/README.md
index a00a763..05bcc9c 100644
--- a/README.md
+++ b/README.md
@@ -6,6 +6,7 @@
+
r+8yU`Vp=#oA{wcNEXp^_2V!ie zuSGem<~$FOIi7#S4%QBI%fraM-^c`pb> l1sGr$ggi?Xj}<3R4TTIR zkFqtM^+) zp#Wa+WEYaF!!d)Jdu;{39M)hOFAD`>r+1m4r=4Bpb_P5(DLz@Pq z(<128Hx4rC{dZKUqk!KmHi32rAAd9Y6Iz@Y{#t+Dg+@~DtbZtN)ba9yn;T0as;~?W z;X^%iDM9d+Y{c@~ Ckk1<*Mt4S&=%s2U10eG#R zRx&C}BYbI%CHn^3a86L+1XJZo9-1=3EGaQpWZr(h>Od1rOM5=+P&sSa5E|$WvV+}s ztBi?blqa?z?ZV?&IT74ImULcKQKO8r_Qx^ zR0OR?ECG0h^yE>E-f-kb2%*1H0`)wn2KpE~Z@G|WFYZEFplOucHzv_mi5uhc)rO?< zm8&vj%Q%XlB!Wksk$@65K7cY3TH??(=`L0MLqAWQ7TB_6PjNItoXbWqos^nCKu{}8 z_ze$iWEdXrL1sGG(GrdXlt~~fyd_&6o*~|9dn5Y}8pJ}#7$&~SYqLf15;#H4%xaPt zs8>F}r!0rC0s#%WYq{6-NcoGe`ASPBxnnE67289XL+ H!mJHE0$EJtaS&BUNhWo(lE1Hjw`u{uQL5-|0P9UiD@h=5@2pMst%d-Yz z-Aqha$W$~0E}imgaFm+fODq{jQf*LyaL+~P2uzN^Dfcjb>FG|sS^0eROR7y5)8OIO z-uF%lTB 7D8OzKh3tRWs z$K#$A|ASSI*J*H(FFpun9!`Bxw#gDlY X4f>Q=}VyZeBj(xL0y(in<(jm+^1T+L$y#w|`A08%d9mLYx8$3MZx> zuzEU$E8@p4>c-xNJGy7!>0;SbWDpV2TO`BaqmL8zgKCnak*{Qx5UEO~lQs%dJ_DNg zR+A|*_o8NEE0zh^`ZwqUef|vnOl)WZ{R5(4yN-G 3ee z%zM{}8ah2-=3T#t^>R44o7~B|TP?}bpLm+3Y!clW_$3iutK3AgF1el5tv4DO-_m%t zd>hcIw)D8~%%%}qd8a@&g!9RdkA<)!b`Nu2yk&A jUoc#kvP#>nC gnXK zoL}_zAPb^G4Zv!7^DrLc+%A w; zj?MhniOg`bEb%OQ&9SVK6-Kv(AUF-K05?I{JHukm78b)?8Qq;&oMRPsv!6%tMpccb z0g|O?SjF0+m?ruxB$QnJ29Txo*&E;U=$-Z;6XIq6LU|`Ah7x7&Gd}KLT|%yV-_y (!j*qP0v z!dX8V^$4082GSmqOHmrV)8j6?@cz{Efe-ZZgaD`TtQ%zAQR)pLVuoKTt0N)cH(mc6 zd>2~By8DZU=wA^s76D`K|8!v8{p_D-X-|FoP0?qT9OMye41_x(&4!Ym99{ ?_! zzE%x_V`UJIOHiB?Kqc^3aaUq>5jNF_=z5GeWzoeA65~$_V6YoXle&Lo3du&7eZSz^ zH))X9DSW8PnSk<3ecrmvoY!d^XYxaChQ4~;@Ls=stdq3QPv3)jb!mjyvifPx2xGd^ zcPT_Mrp6mSQ%0+gG!xC_*kc wOPP`A{KwvqcyjWRCT4~#vWrDV+=Qx6TM8Korl!-rz}7zIz8H#_ z@Io8b$^Gp8421>wmuv9`p6aCP18=u*t(#m5Djh~kxL)qjCDW$r@t;&T%T3?ODtqzG zb(zD* qMT~<4Wh+BljxW$yVRmJElA6TfRcT|ihYvAe9qQM^C~Upm{(!-3?nR(`7K!Fm z1i`EGD7_CAd0K7X|H%5+q9V+_ik4}J&!KdU2kY7Pa-xZi7?2b&)5-cps9k|XJ7=l< z<~0U0C)XMC(sHBg@aj(`0X|&l8h5H@>TX~t)dn1s!T=cFg{)C-V`|2JOJG2?-Dc{F zC+&ratJFUs*Pa)O^md*igL%isrEDX6=A&woU89=!)a39E8R9T>w`P0#pM3Ehvn-O1 z+&zZI_?joo9)<4nWgQR5P}MG*&HV?StQAPNKh;q(ct%e?A2EohVbsio5?MCqLCwxP zPdV9Z`qjcE5I}O(4u{1*xy>sc900tKp2d7JTof?8JpKqUYAZ`9#bG@dS}`TRJG-X>&GnSxvE9}%LK`h_=O z*3(HlY|Oi)$nG!v0UlQulmTbuy#eBm23|1c+S}+|sJildt7+@izT=9DX?S-b2dFUy8;m92hK6fE!U$zH-~a_FLprO ?Y2gOYWg#PKzk#b=Q_6}~!mlWq8ZGuaU>g=1&hSbRHHp~USyaknZHrF3a9TXf6$ zZci(JyYWk}0b^#b)7S+C4a&MSE}H#P*JTkl(GCUWQw2z8XJFa }bb4}nc z>j}T>T~4L2*UOgQ!epRL3YRG{`x^2z@9!Iq^s4^?pt@LTu7Rg&x{BSJQzIZ! z5hc4%)m5wR&=2V~>EfH^Kfm%fHEd=*^#JrWE@) iOcTH zr&^|Uec|kuAJ;@fnCi?-o2`|p;omNrqj?m>@i&ymgds4Sd+8+fqI{|oeZxYDvDjTV z`h#~|Y?AKitoX)Xw@UH^SPm&KJxsZg%7lG+9Z2-^x!MKQvFUv}DnWsK>MObyL2qNf zKGwLm;um~Ci;A+!zYWJ8_Hzo&Sq(m;)nQrnq|qN8Dn&z8K`$hPOH}l*t|y5?Bxiza z(U7J(5peTbx~sjw>1yoXVb~)A*$rqTrRG0IH&y(Tig_E(OXRkjmVCL=c%uHBkv4D4 zGSX!F2W#OOtoq2wHaLPcgh#(>uJ(vnv1a*0Ac=vH@e^Q7^BY_pLYrEkwA$RPQrp=# zOy_X o6`G;7|MbxPtalyT?P%<2pVo7vk?TU0Zq<8 z@)!whMr~>b5o_$f86Si)uVShw2%2j=`RYsKbRu)DMqF_uy|}<$t29D32%h0l`{4gr z0FBCW*@-Fl=F8msUCJU*Hl|klk9X^O8sp4o??Og?GyCSW9=q_d82aWcr?GNiwq*TK zsGU2wU80Pg-|unPIgcSS#O~Ej1I`JUiJ)#t Vg%}CP(Kj7c1vbHx{xeH3)hmT5l!tBY=Sydb4a4D0@k&&^> zT@6xj@orWNj@j$DOB>AFiv6dXQ~#1fD9{_;BuF5mz2S1+|8r_!eOYE$pT{BwyU?M0 zibi`_ l>C|WIWIy?lxNkK39Nk#om2y_%b 1NJ{2eF7(nZ8lC1_AGwYoCMO%JM)1#%+B3koFspXT}u@uL9wPo}(M OCsV zsAF-u?8pqlQt+@z|EaNyJJZaQA-KiqD&QIF1*)Cp#0GNn8;s?4Q>ppX4_Lz8JsrH* zzDz+c-NBUVyVM!n0$ {?>%6VTSeAcX*Aw?x1$Wv%@FrWx z5_Qx9_;OYXLAaj4>~$0Y1j8vX u`Up?z1 zJcw&Cm$(1MQk(Z+)>62}M6$8GLwJVO+brM7BbN=Wr_Z{{^T8PUKEL-@-)M@dxTbz? zsRrn+;kveI 3%NY4L}t)jnA%%@u7v`G4w}h0`u;52Uj( Sq03KX1QK7&yW(?jFrec)0{< z_#$;jJH=ztzi+^msJ}rv;|&v$fJZeS*wduIHjKTD f1Y@SZybK2 ze1fF3VoULMdtYO>RrYT8HQiACVIYR;8zhdPC4^Yb?|M9vlOAyTHXZmo{e21I{51sl z)y7DPfgy9~548_a4~n<`QL|ox5(U36*X#n0nOhEjv|$dBILx|h|GbgAdxCQgrSm$} z40xXj53x{H h^FZ1utF*otH4A(%*q!oF`&%72 z_%-`#-To?7hq)$N`Jv#91yLYc4*$^m-xK5ZiiAi{R_8+)=Z;}{L%+K@ut4@|cIjH6 zZZzBQ 8sN1B_8y8%jdm}W-F+qJodbRK< z* ?i6^ zQriFf7p>FtlJw4rA#>wy?eRbjS^|8G;2X_vExmmp1W`hds;EgC<*nO$lG5p`$0QK} zfs3#F57Y$+H_;w~P+dvHE;NsRraOcLrGcEw t)51ilQ!?Zsnk6Xni7Y}%quh}-b_#D`^PqZp1(xzXU84TE z*zUANy^oG|T7lw=>p(Vr#^t7Pl-&6nRhxK~(% e(xtU*!q4ha_!d`9Nx_`lu!OWp% z45}T=x*_Ij9%;la=~uTnorRqrX6(zoVqxk;y6Rbd$up-Fu+1-V`)k)0Kt|=Q-_s8b zq_%Hs9+!^v?v))Q;@UFUND+1X#2EPoH*@O-)7?dR_jW586&qNnw|(dm0IyfJPJJZ> zCr@Wt6f8q4tH}87uF1G6ey9yGqn<6~9%%gaH3MKq?5y{!*4 +n8uHk*|Y zA;XDa3a;w$?+VCD@i>IWGy2;O2xA4-!x#WniqG!|op7BFSO27z^8F?LhspSgkoAJ6 z&QMC6WK>do;Qx~uH_;&LR_t#Sy#czWAGiU%+QdmA#L`k%aY5Q>iAY+SQ<;`5Do~ zO8U{hTw2a~l>`m43(pw~8KniEYP)ZP)y9~; zg-mrN#*N0197(wpGrWHL`pp^qHjZ&* F~Kw=E6O$6$FAE lI_Ser9{ms`-(e2tPTG37ISXXCAp zLrzY}#CZQVdo#g;1v?=-qxn}gu6&`G^tSQN1ZOeJh)YFwN}TGMjWj%9vWQJj`}ghs zq_%Y@e&rEJqfX~#M$Uy`5h#=)(8Ht5FSxAR66-93dqlN}tP`E6Pjr}33$N^sz|-<3 z1#RPK^}2vTm(35Yia%h=h!ci%p~g_3+)UNdH2NrLCu{BNH!d1M ?(T~DE z eZ2jV*JlsgG~;f z2f3h5C@|*T)MtIky;*IqRI34eYrhQMI*0CWWOT_O6x~;+4xAldI)*PvKEGOzxkmHo z81%nZzYQ`yVfiCED*(_7z<3fqkB-f*Gff1yB|7eSGK7pc%{9mE^&gE?!>y7KBkOH# z_Tflr5w&}x=1n(>P<>`XmEIPkhKgSfvE#}a``><0g1~`+b3=6ZoJ74F6)%2=o=x83 zQeo~%bT&=R7q=Ko?{;Sh95}_b!H5edyU#Cp0D85cDg2ytod_VVEGedAM@ qBi4 zWwY xRplT38|b#UnaI~(pg+H7hbs88ljW4}B}{$5IgIwW#8L=8Oaot5R8=Q@Wy zS8u #J3~a*yfL`HHl^oCKFzExt zlCNW)3dSy+yJ$OP-9|Xl2Vl`FF4(B?u8aJntT|oH>5Cs{<7Kle`I2WgwcX~H9}86h zajJbD?(?`tzwme;JvB*-fZd3RYfS?tZg&cj*Zfnp)*!T<43egcAbuO vO!T>hVU~^4SgA zBScezJFB1|Z^Ii+Z(lK(6(o cReWV;@mdS4!L@RJ3*jy`XV-5i)*Ghy07mv6)6eA~ pVX(#n>w_MB@BnNsIj zkrdD3TLm|LHwNg)Rzi-mn!vB=w|*K8a@% )|4=U(nk|l0S=vp4akW#WH0l{I#vDv z;s~`nfby<~ag5D0Y2 pWlj)rCk1O_re86;(B2%s zh3(_5mE`NLBNQa@%1@Ld8EUy7G5^4NBhuv-_*tW@^QG_h8q8Xl8Fp^hb+2hZg{Hhv zC3CUQPuXx@#tOJeTkDjKn52Idy8@Nk)>i>z*-tZyV_tc_tC{$~9QL=<+)xOGv64lh z63MBbSW1gY^Gi+rdu`q>%P^r_tM?sq&Ufr=f`9S5;MFs^7pH4#w<@7mAOpNqS%3$q z5 c#d1Z*`wRGyKG(eFvwHm%kTjLlX<8$mt7G2$CSIi z%go~u0L+tXN&v83^l*vn6i?VpB6Up)N_pUw5dOK;N@`lU5wT@Y<1(NMc3HnKr8v3q zJW?5?E(1_GMYwnih9djfXiEe-(EmgL@{ mOuKjN}sFL(i>#31pl z^X{j%UT{t=N=_8OHOoEcw>Q=I&A(?~`RsPNY4qwWzV$4Di_D9uS&RQkL1tesOqtpW zx$%rP9_T=>R9P})rUCy8N&ksE9skFzkfSm{?I)Ghb`^SE-6>o*^>go3GpGkaT}Lr9 ziiUFbwPe{^{>k)dm2EnFZpOyY?_wx5yQ$SNZ4nhcx%~uq)XhLJwLH&GV80ifBBup7 zyv|jbpu#&RfV|@g7RIN=i;DAV{693EcQl*-`~PWLX-nz0d6%jxYHy;GmZE5FLT#${ zmKZInR;j&PtF>b9h}ue|R%}rtL`du)!tefk&-wkIlarI=zVFv{UC+nk%9{mOImiE~ zsek3xPn-6wNqttIa^*_t;R8yvJ*QM{B(9|;6>V?l6QZwjl^JaMzUuk=setV-M7zz) z#Vy8mKb@H7DV2_m$>eM#l*4cCdxTU${t7=qr6*Ccz0QnFHOGD#E`iO?29niT`>YP` zx6~SXI4_Y513{iH_N=(U{^CQY)T|0-`=C0{@~DWtK{Uj(wFvm*I0sa{=yq0e_z?V0 ztl^l|EyP{y_~NKyPg}2yhz#GfGB^;gk2E~ P~MB z3pxduj0!q%)Gq7tHmOI^7lnc?*cKA@xn;C6Di@s(Li M1Fw&>$6=Q#c4%Y6 z-K(-dc?@?PS#+Gds8*e^lGiU&5o`fw6G~!R2&K+Rws+10sKA ?ivK*kv`X;5-7ztK1xL0=@y(AYt)n}1zeT$1C- z*pxEEA$?*|-CHRRbgvfqU;L(Psn^rtnsvq6Zif!HO;g)#2k3}$*O|nFEHQ$+5WYkk z;pneF5I~)?a4A!pY3mPYSNdkothGpZ#(ubFo68hg23uROw4Z^5W~tnh2fc?_*@b|4 z*y;qhRo^!k+%nMo@i2UUlj6rbOYWj`R!Z?(4n;$~$rI}6H0*X@@mve~=#@!nCr9hw z#UHOFc#TXuw&33ZnrEH!6J(cbNReOr@WBFn+&aN8T*2_EX%r-znq3=+ssM^DMY~m| zo)|UKgfVUbuK%I twyJR6^&6l4w0v#zKe+WK^bpxLFV^e(`*7Yv zVztH-)pp>zec~pYc{bGq&CV1orzv@&UP3)l{SyNF@ZU5=keSOSu8ZbjL8S 9AWmI-RFzzK~;JQwfm$puO7kIT |gXM$3^pKXYOr7mbFvUhB6@WB#CNhaLx-XoupYT|9q$HwwCto-B##7+WP0T zr`~?82@j+1MS(VsvBxqhF_%hKKD+Cj#scU3x=O65YLO-eTiA z<0h#~tzspcZTGUBGGFGS2G#NTQ75ttX#@*HS8Q7@+rlhj%XnH_PO3e#EfzBkEd#Z- z$RnxtUWy6wwY{W%mAYKN_$tN*BE}5NhI%(-^YT?5WKk3}xKU0kld<}{M#%e%o;5_? zvkegru*kQoUxHHtVQb;7fewEc#d!@el-&kFwuQYnse-6sEbXV50+zmw8gO(6WX8Jt zW>23;7q2jTEYoPi<2P71FL;Gvl1i=M@9(4?801)mknvY7`o_P{5)_+TD4*ZE e-!0RS_-f;0n`L=gEm _1OltJuz#+!~X!JupeXDEh(;wG0cEiM`)HtOh+ OXWIp*gDNgwQ){a* z%O_ScS~-h>7J7Vh7KA}M&7T(;(s-oW2l-jD@WB?VVOW!H0T5R{co_4{8a>#yBI-;A zEy;?v*ZH~hc<;-YNK#t1+LgE4^{yK*81)7*&x&=TeI^X?`pFagvtpsESu!PbH$XAE z7C(SC1OwYFIhh4`^<9&rr=_2NF9DOxN`+N8!I&YfrfBPvvD5`EWpU@`QPka>%5qRv zz#Iclnn+;?JyBs4X1ToiIJH%$D{udM3DGozl6g}@xpM5eTYuNb9Cph;CK>^ZJbqiD z{zTe!>3l&MPgD=6_;04PBd%WkdVT!eS>0&s2_U|086xoJlU
WRRbdxd z1o{Q9LMu0!HB~OK8InFAuUHXE4}6}F)N%{H1=XwgI44<+Cki%~85&ie4R#5`!>H|x z$A3OMd>5!O2u{oXArkfTJjJ;p&I9#QY7JWU q_u*)AomVUqaEqSud?dCSM;+G#z=DjY0axSef@@gJ#2Rt6>xje(E=XmZ z^arCm^*z(5B>Vrw=BPlpbf}PvNK2GxM_OiY0Qo5(%(>1cobgTzG3qoaB&ahlW+r)u zC6>C9KozYzaJ>RRt8nx9S;TS0R_M##`7gWowxMj65iDG@h|0Efs!P;9aBG+UG(<_< zMJ~WG+!WynaW@p6#ypGg9Fjbf!m6a)X%PH{;AE;i$h$I+FuTIKJIL7^fRc_wmgY6%m!1IA$ zR3!Eu6lQ6vgluFHsZkWB3<%cxqYe 1RKZ_3sx=Wm$E7 zE6`;uAv8^0e3q!<>G2T_CJCYx+Jlemad_E1>vD7zl~9yTkFWdaQQXh*QOC(D#M!t9 zL42O%-5PkhBnUqw11WzUMPART(a@w}L*ohhwoW?YrD{rGavaw$bC;MPCRjh+jp+xJ z5nsh1%i%WWO3YcANp9y1yJcYQ$nh ef=me)-g7UjbEhj%#eG@NdSA z3f|3T-X7(c)O7ZR(gD=pkJkR(Ac|9|VtYO%un^~FU2QJj{`r0Ph)VUHMYLR}=BLL# z1g5P!D$fpkEkkOMKU6e0U0^x~HZlBlW@vs;Oxpo9z&3>4#X5WZV+=j%B(*k>nR;Dk z-jz>MHb?x9Jur0o@}<7(JUu^@sMl8X^KnLfAn<$Hg&@^O0#-y=oVNABhb8wvG(z_{ zt`@Fhd{hLsCy(PS+wa;1_Vr6qoCW&cosJc^+5Hp+wJtA9P(FN&%)&jeyEa%$I$E1? zkEAC1 UPCOsmRgAP3Z9a?5 zid9G%L3>2H8kh4&q#5aQ%HgYP8B}yaB#>gF&Hr6$X!&8E(AUJW_Xexb(RZtfGGkgI zYdui1 g$^y$aB%W9{OvHNvtc-NYE zAIK{TRtR9YM)pGomWduFA2NA7P;60GV%v7$G}`s|6_*uw*c+xkLuVh7O2eIh2+XZI zxPc41B%ZYP9l!0nQ{8qmXNz9$xkp>7$e3Hi44RM>Z`dQ>qZ8X}PfD$q`F01UuVOwy zKtEPaU5nn++T^RN2~g!7-{a18ZmON~nK;_pUnO_Hc8pz>h1W1F3&UPen@|nIx !Pi7p~sUy|9KC2_G_e90K^vWnf`NN(5V#9y3W#$79tnlLTP^Raf}; zn=HBzNSSp_AEAC1HG)`APO@7f^zXTp8(&7Hc22b{gbwH9H;mnRM9>#RY1uZAtwA~| z(OHCpH*6f7VjV+YlyI5U9k2q2X&LJIPUyAMr7qJ_7Ej9${hpE7n_J$FoM8H?-ST{w zQNA`Ib7XWzEu*_lNVFd+9jr!_3q+yuw*A)qPi{EHN)v%(JWnG49Lp%}+XG~8=+yD! z$fmrygZfc;i?QL}cRjX$*Tv_+MFOx@T3CkWaHoDE3)l3-%%_$ WN>~76P`uwu#-H`6)Y+fGn11myNHAr8@MOW W>8Z4cQkjM!DS6S (Uj{qN=x*OJiz zdyJ)}o*g%O1}iLPzIk0{m^5kK0xUfI(F>qXstgYsbJS7$*0+`PuLaH ZS?iHdCcMvUU}2UHb&U6+xs_-IQN{`+#OYFjP=n|D6+2)#hm7kh^Ov zX+E&445n$u_9*01C4lGNEx}0f|KAIMx}#hc;ie|!2EzKU^*xP`YDk<4MX9E3^$wv( z$P*>I>RI~d0U4N?!*#N^AtSL=7d^g2T(m;2=>hz0G_P~bpWe0Wamlsg)LX@dGEu#y z^JELnD{UBl^a9+reszPUH~Qh$SQvn;__y1;gtQRLjkV8% Y5x7 z0_Mwv%wapBql(B(?+|_0`{YL4U&EPOp!fEEdzAS4Av)gPv8wKtHXAa3pAMuN&K{_< z`Q#)0kXZ1PEBiv|d93Hd;8Lc8dmqhI^Zb3D1&YZA eN|x!GJ!$}?U%{?=CGeb&dma0hJn_rbYRbgW}QPQ3Ymh&`VPxO{l; zVo%&VjwR4L?M2ytw0jJVGSPQA;(OM-BEj>A?LsQ#y4XA6PuQO42j8G%=8i8<@v-bE z+lNXB#NdLm7q_B;)zio@-^7QYxHMIX`~l z<$Zb(I%+{JZhl(&wE;cVWEJAxmKbCyW{;(Gr3Q&jb8Qdg_S3OQ7^pq^3~G%P%<<+U zt*EP3{)P-);E_DVvMuyek@=pn-A)&l;+>trN5)GYMQa1o7N19M(gyI@zodCupv{Fb z)AFYZCBB|;^d9xOO)6w8-%Ra9=p&|yvVEXXBdvNZFZ!YNYo1yH1Qxh>JYjE2NnQ~M zYWu*xpbIGRs03Sx-OE+5$?4MLX2$?N+B E*Rc4L5D=NUVyKSOFe3@6m2BR_sdb ztZO#lS=i|VqniZ*KLNm@o#&5*0}ckQ8Pt$+Ww#kG>oSvg3nepXArXm7r^YJ!vU~%9 zvg!g+6M$R+L~Xyn8VU@6Ej~){7-`V3;G$uwH_zm;5OI*MWmo?m4_gx-agAO^iv;RT zJIcGP&H%J!G6OrNz(osiq1|>R9V1g;*@hZN?F^CCCARV_Hwyv Ml=JX0OsH1J-ag%K!jA-SszcxtS ztVvU(IA@epwV70F2dO8fIN;|IW#^;s+s}&eUE-qyBXJ!|bHwX#v0A@YnxL%%Bb#Lu z-R=nnsI2mwK2o)$RBI3v=UK4}fP8|YDNs%`-3986Ccq+Lx(XL^NBM6;Q`o;dF2lW< z*Z-TubkQy=Y4B4_0l7szHjX}Jsjfg6R3>$yY!*>OZi3nsy1blQ($|G~PY?5@x6Ry2u$S4pJ{S@glJ>rt7?!$8x>)~Q!>{RB|}Pel3V zZ CBm}69 z72nC4-5D;wUTU*H8SOPh@JfJiiCMiRYI2%a)HU$K?jBjNI{cZQR#McjB|Q1a@@jr( zx}LBzJ3Mv6N6T1W-Ub^n;sY^*miNEPs9}j|x*Ifj?E-Yub9AyT_-&4Dh`!RPKYE>x z%x3A#8C0!C)!>@WprR1R9jaPqVN8|Eb5}q?I$|_`-~gXWe_&BiH(;p4AQ~^~Oe+s$ za?_$Y&F`?37xQ|PF6Bsn|3u07n+|XUL_lp(mI*1_oJQ$4TfDRjnOF_n9+}SrI9>vl zku#ugyreEu_e^AO)>=`jy>lSdX}tr~0#5whdF9jnnNIJJsl~AZL!QZ!KR{k+SBI%m zW&b&OUUQ^%*>ysd71Rp*Ey5&@O|UyVc;*_%137L#V8q<=vJctqjxB!NCHxY&z2`_) zHJvwP60f}yUR+smQPk>-m~q` Y~=lzFQ_ zC=jTQ%Wm~rHhucEk`b%-M#B;_qrbmfh*nEJjc})^ZfPY9W0CCT2o8{_Cvsxx5?< zullE)&|VzkMNIN`&F;IZJ`8?BKlJS|@Xx8whBQM*ZZ6+_k=}`dtB=WyD>tpe_m9|y zom|ArIlqVHS*tLr;NgX#M_d$Bz3<<{>9L-Q%ZHa{T`TMyd;03Qk@}?I8L3!DjjO(iHG;fn* zM91#ehS49)|I_6iqNIR#jgyS1hV#r>*Uk4IqJHb4sdGX8 BMz|5fWeUaN*X`;6PSu7uMA z+A7$`hZ7kPLsOf^(tX5dh%Ues0ARt)9+o$PV){BD+h0=((MT!v{#{PdG)^_9n0W#J zUH|WL%Hjg?a)b?9*gkq1zsM;qz?&9EkG0qer)NeF(X^Gfy6ASXU~Hg-R(`~dMfyiF z%2xe%-dW^fA(HLJnx-~m0IK{wYF(UFIvjZSHlR`%1l at{?4Sm&W}pyOb6`!+-%q7pMjh*xV`k^Z~!koS|M0 z`R?3?5B wsl?%JNO2biY6C!(MB#%On=jEYnzOWe+1Cn5{#`8Rn8MtWP9@21Le|5 zD|u)$izqe}2XekEf{jq;Ilz=OeQ)~+B67+`G`&F)t{_Jxhz-$zs1FA{@IWH#$}~cM z1$vPi3hRQaiYmHxRVbRkq#%lV3y-ZU So#dQZ8bZ2u0a66@G019%Fyc@=)` zQq*;dFb2(Txdcz%-&e@JRCC_C_F}79W7uz6#=W)h{lb@}oFa;zr~|F<1^d1U!6whV zTN7jzk=_gNxg~DA%+LIy1ZsCH1-!^9M41VrhNlXbL!nA^aEKQ-;Ja}CZ_?a1z!vX9 z2}GU`XGmql8X{*s$Lr(V735oS6^__!f~_eSQd|AI7$e|5>33tW-UY`RvoMh1qd0D8 zZ2AsjH&1 TV*b(=gU2@IkmjXiRYRnsXqh-*cPhJEU_#Hnx;5! z`~PySLOgSS^Ji07iF<9{s22IAKr1ug;4;2TnBQ84(=*7ERYU1z(HqDiEa;DH=M|6D z@@9{=`qVBu(;Rp-7S}h80HWRllbU~;z+U6}uDT;tM~X<_oSowLDc9^6 u`tnV8MMqfLJeb<`PB$dLTEcONBz}Yfu zP(K|4vgMGW+=7#APvRJuCpN7|l8N;!kwKhEb@eW=Wy4OUtPi3PP|9HL7)n~QFV-jS zQ^S@Zx9Cv<{fF35HeF$%d{8S1h~1m^ty8dNLTIxe 3t!3{Nnc{h=toV3@5$1KFr*IVxlu4c->?Ojx; zgg~t|MP` mHDkQ;X6RCDM(K&Pbu;H_-HLUjT +wxTUYu(HgeWz;G0|r|@wJ$> z{dAu?Pj`w|r3O40*I8>trJimptIh^Q@!;!q=7KwpbTj?6aYHyxao4jM$6TVnKQ6Kl z`xL4RiJ1B^$-g;|7+N;gaz5^zm`GjfR{LONrX9dKoZ`m~mrQlHOP$#DIkna@#DBsb zlKKc1o!JH!6}eE3pN)x0r;k=?Z=3h>oWbf+JR^2Be-Q-vnhW^;+U;-0wEK$1S#4J< ztBp0mzlWuZh`6|{^5@~tBa8okFJLzvm2G6!{CA{X$-@$hLXI4rXdc(H8ocIcw>G!= zkS>qpH~af+ +JHl>a9Q2Yo|+GA6B*JkzTayLJ;?kc_bPax zHttYs`p{yp{6Y7da<7?v2i1nbJ3(CFT{kBD%Ln_q$9cs_ypAIs?|%w~>#ID&ohkFQ z+j$4SP}5YI`g)HHnS>4WvFR3^w6lhm6>r!%(be;k=AUqn PT!P#A z>`$5=I`?lQLzupOGxX`Wgb3S+*bUzeuiT8Wx y^m75-+K5ml1VvwcJU!xIRw%#uLxCDx~=MOB*6m@f2GN$u$LkReK@Cn8N#NK&iQu z3X1a@oDaG=r%5a6U{A5i+_V`L7!lSA%#0VT#b1s6mSdf5$Ls0QrN;dn<+S{@K*GLy zm5Xsj)`{O^B7?Z+TBE%hgRgFRJAYXe`GU(RAsJTt!Xa7|K%CF%I6J>?F~~(D)kTHw z9-(BYGtYit8xi(iZ8-cyzF3)Y%gy}$O2xQqRN7&uw6&dO_DUm$NkrghOUw7oLsK9B z!ehRsn}kJ8Uak0vHLGCLUEKVEv_n?#80?~hO4-c;ShfexS`o2=c=5BbuaAknarM!1 z=9<*O@rlawPFx8LVUOLliDh$k6&>y_9+EWYQ*mN64EXgNsMPn%!RA94h1H<-wzAa( zN}xBK*!2g!*syl41KLXvt5Yw>8;&N8XyvOIleqE+E?%3y_bghQW>CjAELCsmY=#;8 zBk+c|H^+GIwJH{JhAYcAC=-wv|EkWtpZ;^^*)a{~sCo%>lIfbyD!PB;71H_J(B`3% z36`MJYM89YLaghd$Q-j&j0mdvu6GpXJ`UysW#ud;=1>4%+=y5lYHj5=3(ypQJ9A_h z{hD{26EGYJ5P)ukHOkjeGF?1O5dkWrr1>vY$?dU|d^cb%u(+Y$^f?}fG*)WN=}m@7 zkLrQ}R1C6Yf~oR?)I7WQr?%ZKu7_-v6C$9_BzilK7bkJde71HW>b#RZ|Go}B*)Xp) zgt);o3A9aV0Mj3WO;a$QRhv+8dj|PYc`p8YY2?Fp0c2V=BVF~-)-oN@b*jc(rpBK& zBXt>SW?IVARN t&F_)NXtl+uI!xoF?SZk%vmqCHaA^S$-Ai&EC? zO%p-b*lNl4fI2CV*`Spyn9bF5GvU?tv;0Cr4llFyM{^?MZ=+xO*AxnF#Mhl4jXEAc z2@q1NG~d;Uw-1;xrCCSMH@BJ97vd)of;{cKtmBJQbb}(Z##l zEx_y0@u|FpA7fQVmfRori;mrtRWqFK+^Ku=tJj;ENCOl$&*O{PEva`sO#Hn&Y3orv z ~-x6+n$5j(ksK0uqHils{M4HO j}OP$r$ z3dB*r!@mnEA0RbweP(M|;KN5LS`#rjW}|DlqG`W$+X@t)G-J7RL_T>2$xTJPL@TT+ znu|?ghs`?#uN1;3Bkt!saV_dXy14z}PLavozMy)tCM KJ&J(IK zQl$6l_Q~E!C+t>+lgz Lqxh^>)FMNYLXD7O7^(lZn4L`YRdDm Z z;SYndW*eD64mQha;97D7(7BYbro0; }x7x>)T(=cb?aIqAI4;hMb#s+Y==L=f&GM z 5( zZeM(~Kf3HOD16oKdd>Iypr8 a1-DUu7G>7hrIQag2_}$w;XZYDX zj-`H9# ?hGQ;Fo`qmIukufKwK0=w~?&kZ+EQ@WcTKJ5cN%KcsLHL8Y7 fju07sSCmP-5vTptz&^wnuOn-Bm`D|sUEOV`D?Z9K{c}V*yaf!?3#~VCgEXH8 zam=pB>c)}rr4fGY|Lj4dD;d-PR8T6_)|A}92DnS9H+*1&xtaKH5Z-(_LcZwb8h#-bz$%X) z^9uS{Qacee=M9P6OIxCOokDwgxskVoW)btO@~iwtxJ0ZR3G=%VN-IAHJ3PU(RWv4P zn1bcixE#bn;5C;Et8}sYme6@6!u=)bf>l}VxjJXF8*O-|l*t}{$1BCl9C0mLd7t}D zP!)x7=e2~gHRi#B@4XYp?vDHD3jl)yFZ7{W{4{Ebz{y(2%4`3o4E9*Jboe05eL}74 z>NNAXIXLF>;6wMi^os>5oHdVjN03C9y|Eb73l!E;M4$H&*EcGItg2gj4kd~nj(>tU z7K~v2QU+F& z *{KCEc~ zv{)io&zB -6W^OjWrO z^WpbCW>)MD9&=%$8V`|Qq&0(-E${({TeiGyJDI|ivNFn<4{3tJ2}HM%vN>IGk41kB z#apeww;z??*4F<-zY@yGWU;|cO66hjnlTN$U%2rZn!8_Y=7uu7^+5^sq2>K=63vc* zZC-5As%50WN=fa6 X{#|;L!X`9l3=M5Q +{9Z lwCmRne2Sm_q_tC5wm!)W83gwuo6kd2BV I%%fiG+#<7+fd-qLuc>zchVR$g0vP+1Kw*{4j+dN z{G1A68wKqBr| g_@($RDd_nf-yTclb12@4!=+rT6ZhJ39b2yFSA>#<6FD z>;{=;ANZk4Y)R7D`7*7z9tfuR7 I9zw+`b%a(N)|y6_9k;+toBVF z^Ms 6&&x`q!=R3vSk~BbXR+ST!w2Juhbe;4iyg0wL~~ut*Xv>l1Mj{ zCrL*){W8}z($$#NoALem3ySHrD>HhGT%KYr^+(OpCHmzx2g5gFJIO8p!PY%HRD#Kl zuvc MfYw;8{=vCE6b_?1gX8G@>GU&%yZYQr?}$$5rSM zY4z?%=ys?A`fQK{(z)w@=b7>@=$D Ot`kUM?yA9U~a(*8ROomM@sHw0` z++uSeO1g}~=u(w^pHvvjAw`=8I6FiBD2G9r$});DG~K6QAATV{-aEt_2^C^&nBcQ0 zMIV(B1j;GG5SLDg?pA2-Fc1omvVVEld4gF#eQdZ7$BY_~>byh#(Mps!oKFn0chdo~ z5x@Opv}}{6o#6s^eE_GG#4m$dGzn6wthB{9Xmf_@nyRUF%AeNlwDb 509D=3{)2~z3KhOQWKs;}S-FrE6culnjw!k1~ )uqz4?vBOg5t|&b~PhrimS>UCRi1KMqhe7?+VN`?qNax@*$S<+kLBpFhhyS(J=X z5!v6=!SYh=$B>88#q(<~O_9M^U=4x;zkjq>>4fU(g$V+TctlYVqU_r%wl{B@-Lvjj z%%^_8y~OAJOgd=p@3BMf@ZnrCz1qx2$NiUX$*#iy>e;E-?(b5&KqM*W#@1`!wfAah zqU}NtFMzUwHLcnGOZ^6qF4D2ESq9qN2CH99IM*Ka|9b(llxzgVZAAVApwJFqYsD*X z{e(RP&OV!Sek5c*88vZ)HRiI^acx1tmSkHk-9x A2`6^^0U=fxytHrW<1%WzhP#=E4{S5nZf^GT%Mw-0ZFG3;~e z(uY6<8|Idjn8mfANs=qHC&|s $!(TpjC-8=S@~&<_q(rvV<1j9@-`;8 zm$sOZE&i-*e*KRHh~0_5payoZebTeWK^fS(^L`V`A#YJ9FDhj|wp|U{AV~nWY=4x2 za7|wB4_=mfN1F>hgPPm@z9hr5pC-9ttYyD419)PoGO=C?77A8sO9DnX_HaSrLC ?i$d?-9e4S%XVT1~ tUlEqgA?IDd&N`EQ9{dZ ziYPjHeS9b_*&ftDf6!WQSq=j!xT$}@5hNpzlr!Q-BD+qBr;451cl!THR^Krm8{wb$ z`PNHTc7P+uct+Y~lX*G!ue(FnOgKHB`hR?aivX?S|JERA={O&s*K!@Doct?Q(aPvs zvOItrzck;yeP6BojYiu;*g2M2Rj4ULV}`F4QtUU~H!Nf(8OWe6h6BK?YmG&P<;NSB zHmJfR*69G1m2e=F4h*&lizcQV#+v{5YYmaF>u&-^bkQ52R|4DZ&)FBQL)^-v=pO=0 zICe}l>_S%b1riE}n8ah5D%V1(-0YSBa*z%NkfPlSEXwN~B=$9}!}e~ObqNh41qvrb z{Md{Ey=0^hxHz1Y0V&7J8}{7J=WaC2wcX`yJP$Janp5i!>nE@H{05b#D1T*N=u_y1 zF#lmdEM4?zjzJb*AtuOfth^ZXG3}zNEJuS#4K@r$fb>Xh^g9dY1J^73rC>>EM$miG z`4%5CAbty+o{Y?AxD+%wA7s79=d7{JMRdPdui+U!{;tLcprgkKO9tzCuvv{Oyz*ZB z8rrPf+P8mG-`+N~8?Tn}3uL@XSO?`UyR)=4ALs}x6(h&0wTq6B#!D9KZt-iI_2hHw zPcM{-#W&xy57|7j>~debi5Xq VI1nqJi1@<%~1cGRgpmG7v~=u(}0x z5eub?{-K4@-&=(jW|Ymk4!4>E_gj #Dbsr ze;~kH@qy)+c{{nBbrw-kS2|6~4!?1m3@my8=G?NYaK}zsVvNqeWU7n`Fe5KRz>~AU zBvFg9ZPV)%)B0JlR%m70-C5U5I!4m))CJn~^bm&vVC^F{Bq<~O{-xD5I?N=C7gwQe z@24oX;__Lqk17h+rF>Y010aUq_jMqfMU>#3N7TY&$y#NI=Ca~0#Z_-1FQJ->$f`zj zUI=NaNM}EAC1afG;xbl!PkcPkWa3KwNswh69TG9BUh!Cy*x;P~_WNPhO`DSkPLE48 zM;si<(#eBu%voC *nUvql?v)9*D-}zqgMXVZ$fv!)4wW1~mlCDi zZ*H!Tum@-M#;r|c#2(jLxCW8)kP%XA{nT-;G?{~CsL>jH`vxeexO3a(|G OhtbbcWyk4yX4-i6Xc#0c0%^7J`8K6V3FKfh8fqgp`CSxK`RRi3raX`kYZEK9{ zu8P|>JW}r6@quA=(C18@E`7wz5^PW81G^=lLK0NI8sfSQZ{TFZ%dJE;yiYtEkiEgQ za;-e+vFh%lT$>QjuB9=VRM>*rQp|5!{Mh4iN|?Ohf>3~7^ijJxi*R0A%Je0J6L!Ow z^ePEho*LMqLTa*j2Y4t@KA`)Ub>k13_LuDLfD#Lo49fk>@We<2NL=k^fm0{0H&L9V zx(LT1E`vc3>S+g)_ 9zPn?QS{Y3xZxJ_f*_a{p4}Teisd5L^k9#NY7R@^UucLM%INIua-YiDPad? zH9@~fZvXcg5lF;vw&HxMRs*dT=Z|{df0x{H&OJ+4u$z0zD`3i^n}Jbag)gXkv);tg z6s~YwGH0&lx=!2CDt^Co{L`QYtGN`FtX%x43=}^*vPw@xUNAz?Y&=r_pbEa>HzR3_ z0)tFjs~Zz*&-SD$q*|3!RJ!R_cM VGOnXQ>0UdayO;5;F+RJT>5D4=*hEYCvodQ1|zEK;DA8s z_YU^9txx>n@6{I57@Ij*vQFls=$YeJAS|!Ee$|{^4a{8K{6j5dWH9=|7|SHCSMUnh ztnkOeE<`ljOXMAvbyf@rE)W eBq-~I{x)`9>UIVL8pOiIB%UtVx*bYvr&Awj@{7OMlcxwAzoM** zo=N@>WPY`N{qrYKnJy~#JFu59<7ujrvRl*YrQ!qAXv Q17 ?rGdRp0um}gTNYlINNL*qow6vImT-?-$59wCMj97R8 z>lGA;fJzi?QZQY_h;3Lt%C$z!x_Xj;faefw