From e3a05b0f2513986896d6b3512eedda10e00a3cd5 Mon Sep 17 00:00:00 2001 From: valeboth <109695782+valeboth@users.noreply.github.com> Date: Fri, 28 Aug 2026 13:11:54 +0300 Subject: [PATCH] =?UTF-8?q?feat:=20adaptive=20deck=20=E2=80=94=20top-up=20?= =?UTF-8?q?recommends=20based=20on=20what=20you=20liked?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit As you swipe right, the deck now leans toward what's actually being liked. On each top-up, extendDeck expands the room's most-recent likes into TMDb recommendations and mixes them (personalized first) with the existing genre-discovery slice. - Likes are read from BOTH users, so recommendations land in the SHARED pool → matches still work. In a solo room it's just that one user's likes, so browsing alone gets personalized too. - Bounded for the free tier: only the 3 most-recent likes are expanded, ≤8 recs each, all via the 24h-cached getRecommendations — a handful of mostly-cached TMDb reads per top-up, no extra KV/D1 writes. Still capped at MAX_DECK=300. - Recs aren't genre-filtered by TMDb, so avoid_genres is re-applied via a new pure helper rejectAvoidGenres (also dedupes generatePool's inline filter). Unit-tested. --- logocinemate/README.md | 50 ++++++++++++++++++++++++++++ logocinemate/icon-512.png | Bin 0 -> 27424 bytes logocinemate/icon.svg | 6 ++++ logocinemate/logo-lockup.png | Bin 0 -> 41445 bytes logocinemate/og-image.png | Bin 0 -> 70136 bytes logocinemate/site.webmanifest | 15 +++++++++ src/lib/deck.ts | 61 +++++++++++++++++++++++++++------- test/unit.test.ts | 26 ++++++++++++++- 8 files changed, 145 insertions(+), 13 deletions(-) create mode 100644 logocinemate/README.md create mode 100644 logocinemate/icon-512.png create mode 100644 logocinemate/icon.svg create mode 100644 logocinemate/logo-lockup.png create mode 100644 logocinemate/og-image.png create mode 100644 logocinemate/site.webmanifest diff --git a/logocinemate/README.md b/logocinemate/README.md new file mode 100644 index 0000000..7c039a6 --- /dev/null +++ b/logocinemate/README.md @@ -0,0 +1,50 @@ +# Cinemate — logo & app icons + +Set complet de icoane pentru web/PWA, generat din sursa SVG. Pune `icons/` si +`site.webmanifest` in `public/` (radacina servita de Cloudflare Pages). + +## Structura +- `svg/icon.svg` — sursa master, patrat full-bleed (gradient + inima cu play decupat) +- `svg/favicon.svg` — varianta cu colturi rotunjite (favicon SVG modern) +- `svg/icon-mono.svg` — o singura culoare, `fill="currentColor"` (mosteneste color din CSS) +- `svg/lockup.svg` — icon + wordmark pe fundal dark (README / social / header) +- `icons/` — PNG-uri rasterizate (vezi mai jos) +- `og-image.png` — 1200x630, pentru share pe social (Open Graph / Twitter) +- `logo-lockup.png` — lockup orizontal pe fundal transparent (headere) + +## Icoane raster (`icons/`) +| fisier | dimensiune | rol | +|---|---|---| +| favicon.ico | 16/32/48 | favicon clasic | +| favicon-16.png / -32.png / -48.png | 16–48 | favicon PNG | +| icon-64 / -128 / -256 | 64–256 | uz general | +| icon-192.png | 192 | PWA | +| icon-512.png | 512 | PWA / splash | +| icon-1024.png | 1024 | master raster / store | +| apple-touch-icon.png | 180 | iOS home screen | +| maskable-192 / -512 | 192/512 | PWA maskable (safe-zone) | +| icon-reverse-512 | 512 | semn colorat pe fundal deschis | +| icon-coral-512 | 512 | mono coral, fundal transparent | +| icon-mono-white-512 | 512 | mono alb, fundal transparent | +| icon-mono-dark-512 | 512 | mono inchis, fundal transparent | + +## HTML (`
`) +```html + + + + + + + + + + + +``` + +## Culori de brand +- Coral `#FF8A5B` -> Rosu `#E23755` (gradient diagonal) +- Coral solid `#FF6B5C` +- Fundal dark `#131318` +- Text deschis `#F5F5F7` diff --git a/logocinemate/icon-512.png b/logocinemate/icon-512.png new file mode 100644 index 0000000000000000000000000000000000000000..ceddd331e6f05f70407563bb4c6e16714cfc5ef0 GIT binary patch literal 27424 zcmafbc|4R|ANR}{jCBZ+eJe|avL!Nvw8&mmwl>*Sk}YONwiGG}QDezc5-pap%pi%Z zQHq$+f(T16<=2^GRmAK5su3YTn)Nd<_pV_ctOQXWbogO<^W~y6Y zt8zE%yZJ0ioeEA3^M=x2wC{R@~6`VD=8NpfDIh7ZSgas z{zx_Fy9GKTI__jREa~5;YPO*JrM92lvYKRLN?71FNg8}^Z_u}MQ#o9Fla|}${Zw{w ztvzpXe6i7L7^%;36k#7jJgvQX%(2@I@}d)bZ}8#@ILC{O(Yt8pbKZ)vi=_{4;V_<< zB^7oQ7V}GiAEVmVto%9EV^WlaCcBlZ7@d;T!Y4xeX@+{eSF?FP^MSyL_rkQ2+iW0# znG50zkAlwYI%ziQ^@HT+a(#I2tW0*&>y`Pt%x^Nv2G7lZ0)yTf>}VY&SWaen8qO64 zU89Eh6 EesMpcD;yl?;{ cCN@GoBBv46QU`e~Hv{ODA f@GghNQp- y<`oUkW?MY`LA#~>q>(Mtc)tsa8 z;qOj@3s_&=>nY1ptYFj*ckTgVn`VeH5hVBN=V$e?%Ct`q9=bMRhNnY3wHLle5w5?m z{kh*a$WC@s$Au5}j@+E^OQrZW2LhMhFn?eFjL8?}Mq-Jv3u6* x>i@4?4q(q_y@nfMpGEr Dd_yqJm*TDU5xv-QR7$8BJTW3$1BWzNe3zx7q!2P@jx z(jgF+HB8(ma*b#Ts1=~K8D(e#-VBMcHa}4dfw)E?pHtEec9y37lh3838ZlMwyjaps zo}1Jzlv*iTzyuy27$opeHF3^qw!q3iLKXIL<- KgFGY|769j3I6X<&8TE4DG#bzm*;^%a-?`!pT?L zU2r%Nm|CJFOpUY8*Oprr8Qg8^dEtfhb%ZeMGFFzxaTtgI95!6ebIK1~l^N3dfgHAg z^h8O8z8|~PQ+CPj_78Rdlw&}#AxFIv50$HB*fs^H9 g z#R>rZFP`^=L3htBTH4Mo_A*A|^EqPZB4#5D&~nqUwzD;A)pXAfkDe{(Vu(ZTNCw^- zLSSpT?X1vMa#J$b+s9YfK%xzf5~fKP_#Be^aKbwSz}>n29cU$)zqf-W)a_WSl&178uWJ z_~`)%c&ejiz*(w0LKp!Jjj(SWI2Uu8_;^Zu1bR1raq(S+9X<&UPaciVe!w|hEkOUB zqC}?*I-_i_7VS6V ne>&{@fp#BHIem3AoQ^w>F|zP9eg zNqUrG;z7rv2xsG3j1HdJ&5{$Fi?(h)z8(4Y(>`S9DL_lcy)IXP$L0-G?uQWDs>vkx zEQRt%zph|T` EN;`MS zCzAr+NJ_2?=S`m@7jHkjfijmC&Y>S^^})rG`Qo!-Tb z^Eo=edCFBGCyNii6`U`!&}d9`M02uRq3GMvpXUs|+87l7ymZVR^*fOdk1iL=;c^Cj zAZ9JuA0Wr#JZ8iu_|Cq;m6Jq|icVo?8DWUO_duUjyurnZC{0`;=qI?EMlF(7-tFp_ z!Ub_r9*}afGyC-*UyfQFb;e^eLybGw$n}#H^v5mGAH@xRlK-DS8Z;4qI=4yVyCS7~ zFwcZ?==%W$O&S+JfaWO^2hfYzaFFJJP SSO>e8$HNvpnr^Iqgj-wp&csqS^vFY>w)JO( z82D_c*e>(rgT&d(9FEIVoeqh1O?ir4$4)3vqkv!nAByJ83=8PYaDklZ?rlOWljIK2 zE+BZc$oNiJ`s#4a_anF!RowBS=bc|33Q26@D6~=#idy=PBD3|(w;_w4Kh({E)vZ=_ z+eu(Y2jY4`$Jf5%UZ_)m+jrP_UyBUKqg-3f&e>|A?hYjc^n$LQn`#CRwg$7+u@*o$ zx#3<3S^$aP1W#BPI4@zbNR`$vI@OjB2gLQ*^X~r89m3vtkn>&0GqFf38sA=v_45oZ z EU;3z@8ff6Dh8$kjGbf)@FbRG{i*%}s&=*pTw>)YsC&Fs%Uh6oJd1A4! zV`pOxR$caXmvCw?A@Z4zI d2d5%TNk3a;2Hw|c&oGDu+hCxn##R%{oU&mW}Kw94c%Vn zMRB)F#HoRLyZ1< 1v zjR%5{mW`0-UKI%K+OC1TgtW5BY%Yb&DD|7LP2}=WHy_`q^aU5;o7AdR5SqjM-|v8A zY_XgxYFh@cIGYT!y 5l6+n zu))|deKA!~#LE^DN&O`r1`eVzf>w@zQ#%1&`RD?iYRv1^ D^(5l4R%rmT z9zK%vr-s6jQ!YBg^Bc|CQL C>|3-wBjVmc|oma zhR%m3%`&mnuN+tSZa#l+Nh>2L<>+ed=Dm@^5fqeAAFh$NRl|(hckY5Y?s!@h1+Kgm zQ7KzaD;4 $M)A=+^l z6vLPgpL;YXrwP^5nU$+PIUEX-_3A<_n2-?Q)Y&mnZ;vyg)$b Izd-AFukORp;;Yah}X#h?3 @djs4bdPSIE`26Ci1mT)s6_)^OJK+Q`KIDavgqIqp418pfh_`Q}M{EWccHRgY zwYFE+O#eVTNA+nHEq!ieHn-ND4-$T~s?baCrQz)z3XFq63R*3DJ#6o6gX!pV*98?V z?ob&CTuz5$bDG>>Adfz@k{SkE9^&{t+#CkGW5wiUZ^X7GkeoU#m_vc138Wm=Fc#5Q zd|^5QH{mrna| AcAE>8)O!MqVksgtKAjC7ZSvCT+e~Ag3^j( zPLX4mDfm4uXxzbm`6l9u$)Geo)EpOUg7scxviEfBfAzR~BN^)ib|&+!U(4dd@z>os zobPjkio^N-(rj*%3SVci`>i!mv25oU?8+1E8%RfjT$KRF-5TWf>v2pxzm@z~gM8@< z((@eY#AR5T(S3W4l9Msm`Ib$wChzu=+?!|EmWG#2`h7+(;67#*F{hbLAiMl}gNHas zjcDlkYj_Nnary|D9FaCG 1cJ3p>e?qXi38MuQb{=DKrv;dXIA? zRS3iPwCp8GSqMAonuK=fCX9~ZecBSXj1W&!x!XSTfvETMT}crPSM}1l+0(Fk!CiNN z6&_Y$1w$8VXig{%Q%hGb_GvqDIEEe9D5n~(35r3dvbJvt<3GQ8c=j}IhcTCg9_Xto z>}4E_B{?~x7OXm&*!n}rCvq$mhQ2h* Y6YLMRDOx*$FY{a~XwT=Q;o8U&o9=l#D z(GA0}p+x{SE?z&&2lACUi5%Iv9i;O8rxzLW4DBZxJez}%>f4avz+HbDKh?yJA?j1( zHBPOQ@-jsgv9AR`7=Q>Ma!SY?ChR#Ra2LhyJUsSO+Y%XGq>6aEPk87eU!GJT;_del zY$JIq&G%A`IEXW!byT2_>_~w>UD=^!-`WHFn4$=_vv83ph$Zb`O%A?ed)(~ERupzY zX*@P8$6kR^kh=%e!#dnR_OiLsD02MW*A@2=0WG4$i~!}c;76ym*WD!?`0(uOZw*<( zBjTO-VdkKO3*&=9$#DxEVgmIZ!89oeeloe|P$T&j`VrAUnY_MSZKRjLjT;;_0q_9Y z+1hJdavc11C~UmRH5;Wb ;47%12+DjaDfI%5^6HV?m{vEiGk#pLU3Yk^W|DSR|3RD2^$Onw(gS3g*`M9Hpr z$@h`kcIMCug6@9uVo(yVlxd2vIzi&sTj9u9)SmUR8QxfoN7U!j-${r2;lx1!zbK*Z z;`uzC8z6^+FjP$-T-idw{x~gUw45R&%~qWsI_`qZq3sDu`$QU7T^OnnX3}?SuXJ%r z#1Mnz?1|goK-u5e$~=0vWbqAH#58BrtUIZ-i+f`0S7ooy<}^d3r|PTk?k{mz?;dG1 zZNOi{Lb%UMEQ!sqF<&0yuJBIHJf|Q$GV?XQk07R~0R)*_I&OT)%Tt-XaFFsQwL{VL z`1}P@Ihce&y;K!oU_Ia%qSMNeM<$vY3bk_wRnwi)dDfU^t&j&Q-QokhGfFIh ~3h@AnVyg{MBl+dJE)S!?e{9oXNp_I?|v zB+6A}7F=nLCFK*|+2KwKjm!vDTO+YEVAn3qybB|-q<0DY((4@1QHHv*V=H%#pr4fT zhpu*zmfSP-5gQG7way>(fEb{6jY5`)RnXFo9mlYxdOGwuw6*Wg{Mj{K2x{8q^FIsl zu}mEnbxG|!<9juRB!BQKNIu=Lpawp1gy|^iXuMKpxn82hZdenjwZZ^2@U-`Y=7^jH zi57Eg6IGvxOpa78fB9z9`>V>J)kg?PL<6 5WHFY>!L?oM zVz7!(-I8o57y5bjicMIC?hUF6jp_K%4#Q@2zE~%cWklt^$A{aiDKxao1JV$}TE;xg zEP~kuQIAmYJU1$e+;?eNj>#A!_1&pMfix4Sn9hUJ5mXGz_0Ojeq?0Y-3(KAH-&9Fd zZ;6pIR8-*RSF0*(57yu@LNlBY52OUJ9>Jn8;)=l-f r+}$F)l5F>(0nf7pCz2@NE3{$L&d~XmRnwKs@{ zKde6uy3npj0G8i5CQd2BAY`$(U*Wi1WX^l&j0484+MGmL*(fj?(88`khgbjF43xy7 zm{YvZ5)VunhUBH+#>VevU5H`Jd*2+fp)QxHi+Ol&O2V>_ulhV((<|&ID)(+sr30t9 z1H+OWhfk+^rr=7j{Mifqpb!j;ECUlZ4P^4c%Z!@eHJ%;pQ5p6+XgsH&&-{52$^Lj+ zSZgP5 zG)0YGH`q8M8rociA0vLgfjD18V%>gAX&_MKq=6atAt%T*uDq $ zi~Oe7>_<}x#%;UygF;AD>TxJ=%rOo}VdZ5XNO4ZrNzr 86}xKhJBP)CmJ_i zZ66P-!QN|{C6(@;JU(5M>#1M5XEi;MD!zIs9*j8YPBrC$ih@km`!om8vAWm&f^gqy z8|0FqP;uGIuD$~L3FAggv4lKmDE!W5xF#_VlBj78%i8`fI?D zbMcuSHGUH(gmlX=@yJcI_xf;MYP8}0IRO?ANb(?39Z(N0>{Rax7wkJ}De+l^aW(fK z=i+?l)p{)2alRdU4PsC~l^Y}zUi&}HPXoz;et&B_lvRfbz`NoWjMy#~QbSNjb&iK+ z%DLNzi>+3iJ?B!al&sYi=XBJ{^dNP)s!=E-bMHcLiLhJP=Dv2&N42k=3k)S*fbz7@ zUgcf<08>9QUWSEFyz?i$lW^zz9kPO8=OD}#78q_Gr(|f83R*<3&KEy0kFf>1TK1f> z8D>-2LAXRIbrkj$HlKpN^AgHee|EWL@XKqeg7m(N+l^*lzwvX|9Gta-wu2}hev!AK z*V^>w7d6V5r{mRpRYc*IZdzNv&`_<2&%EafP<+j$KxGDg!xG3k%Vcf+PL_F_f~b#B z=;N{BlD(3!>F!U?*Tk1S)IbDgOOcQfQxxeP!Z0f1I%J2mx?x7X!Z$JIPSIPip v|M>W2a$B_wmxI5?*P zsu=1yEp@5gz+F?LIAJ)W=FBKODsaARq0iz2s=y2!pAWOeFy^#g!UmQ_ODGbXle4~4 z_+ropNzj4KgFlhN>FJ5*azZV*?uo}V*uY1_ckE6ae-L5EW{lx)3C|yE+0|pYiJOPL zcOc|OkE+MI7~ELdFZBZ9Uu&f3lkPF$KeKS*_c?Jbw_O5Ha7d$duvS!uj>L3EDVD{T zaCzn~81Dr~1$`Q?->(y(_iaoxw%b9Qgms5Yvv(Df4R56&jE;0sz-cGNi1TtRN<6Bp zdavGW3Q+b);L5C32u=q{Ed(8Bo^`U!(KJF&jHDnQD~-OAwM5XJ!k|~Z6RYUW!(n~w zDI@I#@{WBAc5h7^i8q&IPTw0r|M&`(Jp2NbM$jI?{y4*cSYx(PaeDp5sZ%zK1ecLA zbtrpv{aXlY(w(NbP+En^(mP9Lim*-*yQth3f3NYos)uTG=ZV0102<$|ap7 bqMt swpjHv>YjC->$lN`nEbB@4aWp(~DaWKOe$SZg4 z g+o8S`FXyEKHzs?J>zKJjS zNAUpo`D;q`*{i6l*gP$yr)RDvL;d_4z2fh(O-`WQpH7yEr$15@CC-VvEo%1>=fqa+ zi6FQj10makktP5#QL*gD{JR#!F`SE)XhiP|lYBwd#xrJpj2d4!Te-pJr;{lBbbdFn zrk|fV=(eK7Xl6ylV-{YolRPtm4mt_4TTvnU3r@!9#m7W#LoWL|r@0#6n(vrQO3`bl zibVRCvCsN+1@NXR4%6)j+@0hO0R%$?D+>1OW{1UwiBf-KkfSsokFGSMa0S{UMKR)B zKW%iyGoSFX06HqxmV$o6Y4UX6>)+06z1t7@c-NU=s1}CGx$a$z z0 +mEQ8*BdX3f=funu5MYplL}RM@VkAsKE}?YZMo%qNbV)2hx_u1jXp?b zNSHBycbSndXC0%)gV~0xA5p%hwD*01RGXKteJRb|m}=>a2kpZ$H`Mo;Hg9XY{p8(# zs>6^fKmON&m~@v1^?jNEmeJ}Ul?mjK{>XiVIPnp5OfRH&aa|skCL5HaRGscoiV}g1 ziimXU5BptS$;$SVX@$gR8i%1kKIhIwLk3*_14zhi(^R4}RPbqMwdHUr9I9=B-u@5f z%eLh&X%b*yD8LB!qvjBFYC)_C)YZ0gU3l=+)NaEnC3@A1b_?bHW7c+#T@S$}WHI&P zoWj7frmsvDGY}Jg#_&_Ql|iCgvsb WXL_>9?o3_?1ocwi&qg-TO_di35;;4U^uUC7Us8HO;18 zbPXgvfOfN@az6)}?Otdahkfz*h&g-7U|dH3yuG}|%0n&W78N1pC|95H>M?C@To>a$ z^RKbsodSG}3cXa=q^|k7D-xj|Xsz9!>hmNl?COq)!oQ#HUY;?Xx+=GG(o#8<1#Ttm zIHjxuJGFMKa^M!t=kA9;_Y~wk@mZ)F@PaTy^j$z2u|qDkVN=hA1Z?$K43x9x7Uf zk=3`(LMes_IKd8{$fk+})|8)i-+sHkx89eKi(L<5sRO 2Ch2i6kjvJwOEhps$`#;3mvM{V%pl6(_Y6gak%VY;R|R>e zH1)g}*4)#td-*XJ0r%2M&fuTAhU6_h>&5qkzJ=TZFpR8z7Tl45Dkc~EOlwaaTAu#9 z1-D{g4YG?n)2!%OS!Pp8a f>Ia3Sz9i(er$6;}DlEu2x4M&oQcT0`8* z&f;+o?%w@<-{Ud+n6>jcp86oH1oPKV_d|6bA*ta6>)j5?IiAPViW85 zDtd>x>#DuBFiSz>7W)!rgnZ0(>OXG*+<$h#BT6%`>q>j=Cat%7fE6CIJ5z5sA5_eo zx6EDc%$)i3dIpr_rlGmQA;?1jgJfKr*5sNUUH^+qdqeq438L&fu&H^X;{5$%$KSL? zkmJYWr0gww*LKt_Z^pi>01hF5tdlrwUTA?yB(ox+p0>%uPt?|QuzRzG-Q+`EA=Tnp zyFTMZ@0fm;WJcy@Ml3Wn={si##dhG38K5<47^XLMb)5Lr{L)g9l`!mnzCxm;qPM_} zq}-)z+Cq>wJKEu|&EkO$s##t-Z}{h^5+ej!>K+b_8dy)5JFIX^$I${&i;AuMxrHir zm@&R$0v0~QkYRu^#k=3c|JrYaz}Uf${}L(WdeJy<#?9vwit^AT(dUT7-VUqW+53mO zX`iav_hMp*@1Sv=jYO}_ChMO $1{0eLZU$9}}Ew z3-tsDht|H-!X1co+=pwnh+#8~$EB(`dcW%9B= UR{bfO;QL zX7SH4tUiGD(Dz$39iBISx#%EF+I;oVN&DJ2fqabq(u@PNqE#?M+>x77`RBQrjUpCM zwfAKLRcVI%au6Bjv%jylo*h9xN5L2ailEbves1xB=k&L1So=iBl}Phjuc#d}7PLnx za6X8l^97|d7~^4k+6LAyNE5(pxKkFq6&SJ|3lG$&Fp{GY8-*#aMcqh#j>_S(u{+Z_ zRbcU?b}TaCDKU2{*!d5q41#z=#{!q38goC@27vkk|3XrKmZFDu&o-%cMVzE)MFX2& zd4%;xTZ3;oOhUaf(C0Ef8{by+h;Tt}tF%eXE3S7G&5W)TVEOub2(1$}xl^U*AntbD zZb=mTD+?co&D)1+Z#S8#9=76l$ xD%;)m7B}{7>?Nba5~g^g6RV+vj7`yLlm>@co`o@ zJ6wKP0=(v|+;H(WlqPVBtfuj>x5O%xduuly(%cJ>VD6Y6ZN8J34{6WAwnst0c?tO# ze;pvBU6UwW_&Ti3Ntm?)KH8C4`X>816sALMF+kniIZBk^+YqWV;F~Dd!KX BI~+5 z_!r|uSie~9Ldi&5sqKvzcc9WQ78Q$}p+ <{i7R@b4%8XzwyxhwbtYeCg?=j-$F RpuBCU7W=Mxj^J+HK z6y$yfNMKo NkZn39$*Xm)i*+6DlJ(oZz}B)kGkhvk(#jT?A* zjVcZ)A6P=iUJl%97Aw%EYHM22$G`9qWBQ$4E9dNj+-JG63wL{KV!OeM>VyIB8A}=& z1NZc-E+LTC#~JTP3x2>{_I -gGYnVO5BR~l z2PE`5Z2+F>BU#sg<+m()U7_iW*UX#}HmOjLBi2u90DRGDBsZ)d>5QSpedykviUNv5 z%mu6K;eKs0*C!{?Yle9vdj&l_AD{I~m$V1A+Af+WV^}_Sw@Ps!3VcDqk`}T6ebs~8 z;ERpjb~5lxsvvQKzD%1ZAO~oLxXxFM1$#>cz&wi#HfXi;niYTXHt#3n1|n>(x;cYe z%wWU@GDI+I)E14AhvMJ$C7h@>EERsJ>Kn$hh|W$NUnT28W)%mLi@Msez B~b2+!T1hw z2_0-T%%xjiz!!nb7qsydV<&n?pV@*!F9N!>!)~UEvP__Ex4|`$X;O$j3H;+KAU*VT z6Doix_R*ZSSum%Wf;Z4IC)^xIgnDf08ZPL8`PN}>m0cV+UvgvKoxgLUELe7 zA0@I1&k04YB6N&b)jUoiiXE$cC{Vi2r}_7I$lD@Y_9sryLJV%S1vI;_-Fx7}1|ZMf z2EG{uT^_$!^)YN8oF3bM;Kule!2BMs9Qt!7gp!g;UFYE#x~tupsPv@WK1GCUZ#Sn` zPK|R5vGmr@;{Y1MCZVWzjkA#g>`~Ik`$$a-W~Zw}*n7kF`H?g+ZAFts!tE;KyBnX) z4KFJ&7K8l_>F^k0#~;%XXPNXW{j~%K2V}vZsW7r>u^2n9 dmC=Rbn|GuyqUqnPtln?5g?wsyCEfF+YT6I~yyqSai1pdW (NGH?FyV_u}f$s!Ysa^%s%`UtKy+R6RDZ95>}0 zHC7`$_0`*Rb-vU6k1*5`ER%r~(3Q&5NPKT>6brHjIw7p<*Nd??4{ |=d zgeq<0?na1Kn-D|#N~;Zvk;ITo+gBS_wOxfm5wopIk~s)n(N>BkYowyWXd`lIM75h- zmk3G1y3{r@SdB6BJ@3pJePR5|ocFw!=Xu`WbNiitZ`H0__jmA`(K7-}VYk7tjF^)t zeJ(w<7*I9rxM^ldfw5H9I(cmHpu^=~`aBp7#ks8DE0;#JH3GIjhj=<1E>gp LRppc9UGw5i4AHR^kO*V3^S@lY_gfW(VH^w`)b&0OhgUzK*OHWrCUP;r>ND0;H z-^Du}a>xxDZEA&kzEO@Fu}U8 Q{`i~H)U%U z%$e1BE%Qga@w29`V`b{$9}lpt{)%Eg#s`@PCEqm32WDMxZ=lmFFN{dr^mihNU~}Za z?=0K)yNdc4e>3}Z^V@~$O8p6CwV5@>7AF!^j;VGqsIqz9XEZpwfSwO;C*QajQWkRn z1O^j-1P%3U+dFE}Dsaz6-|b2rc~nowLe v|=wudf0okIQkhuyib? zNaYp~#^rEi_+2Wos(wE6I5)LiL;nDxfmf1GEMzJWLWTs>U1>u~h#_QJfwv7e#wEfI zR{kr x{rWyce}|9C`Wj`SXB>Yu}>?Iq1$0h4uuGcP^ k>$2aw v*ywDXvwYSFe6K-}ZI1(@MZoo}jJoL)ORv?P^MB>RHN@%OmlbLnQcf8?iZ*hu zX_1W?%C($#pBZ8|A)-f>h5TL*AY-M#SMn!6!iEb-40=^1{bTYO`oGnlT?q`*a|I(K zwzA|;$n~CGX+#Hawyt3CzZppyy8k6^1=>4&f2@I-jba2C58t3XB1BkBfBw<*9)ZEN z8Df2S)Jx{-=hV!5xVZP)k-+GOe47TF0llaucg4IKo4 Lx&*XvN zkNDGO+=%NCq7=Q}E`rZVG&Xx)znnqm{i>37fcL3%G%?ArwEK8dZeiu%{QmY;#5|R- z`CHsg$VC^Ecwl(h!l6D%V7fJsl4IUOf;amct{OBMWJ&0|Wnd%gd#!>~Ik%gn%pdAW z(7kVB;}?AC)JM@SGz;3Ch%bkc!o%}Lf?-y2e~S0F_0Omp(=G1u>TUbiql?o1*jncN zGing{zxDE}JHv)s_K?rujsaXv&I3)t_`JZfluPk_9QBN?j}P2VfeksL5^+m!r_BoF zuJ;ywSp82)x*qqL^Lo3B++{nMtx=feKUPmwd9zPg%;(u&Mt1Em(nD=0h!Pk_wd87W zo@!^5jAzv{9|Vq$s1ocwd}h@hYVzzRw)^>TD6iK85kxc$kW8*F0e2eRN*axx;B!EL z=_W9KG;9c4qIr48$_1eWv#dU%`>~~)Uw_=td*eo ?%DfouTxytJGM^3HU+`{8Fs6Vkya#MmA$3kXkZp0f+ML zvXPSnw#9dg0{^h%oP(;ivCec}6~n$g)X2$w*pI#Jm}mH6`4~N8bA`&PB=0b6K>A*$ zQO?N9MS>^}lCV#+u~I?WNwA+l2WSR=OiGD0x%C6BwqQ{H ;ajl6okY)7273yqXl9RdXyI7Xy~lMl8mfQzyj&C6OMfCj*|WwyoYj4E0x zrTG+KC&$ry{^8W$)K$r>KPu;z-N}9gV8}5y$oJhIGQ`6Ngc3IlY>*uj3&aP?R6pq? zop?3U-QDS*T(>#Y9xsoh-;E5p&N+A1Z@u%i19eZfSPpOO?e;cpX4K^pr6!g+tOm4< zYebuVRHB6h%RIDa%iJrT{8MWi$ir(L@?U%XE!)sPe)pF*{d<^m8md>Q#VQ&}-AwP? zUCds>Jrk=3S%z)F^ecCMjgx;4DkgC30Cky^=aT$8YbtfQ)%mHchg$lSBWexrml=~O zm#T+dW95vkl}mzI{T0;2B)e8QC}|bpg7^XXa9A*sqRlFTPRAv_F &4T}lm|j>k!U?zVHuETV=Z NwA+ka@&m zaewe< >4e50X2ac0SXv!2={rQGHjTo84kH?q8asPSt!Xd8H};eTQT~mWT%pnw z$r)i?X#_@5_5RKxUN#Z(L^wz}E`{m-CM|@xF)xHvO1I{YTHL7%htV9Y4%0_Q_|XIX zDM^mU8*A PBF2G&aBHFe^7uqp)Bw@s+Te<1(l#;ESD4n9X;9W4BZ&DTr#> zm!A5uiXCz4fa$DrnT%c6uNk LP9ta9bi~1Wh3OvLs1=Q;$HN z&?N%CVh4qbhF?S0YhUkn%9B40`Cma)`O>A+p^H>wN*~MQ{C>9O4|43&C+akFh4Tv< z&j=$NpmlOkoEt}z^fqtELT)FnRttD{sA|_q6sOL=*3pC8;(oO#mVER`WvP#QX+N81 z We^w{Ir1rW3P#Zj&KySoD@ z@2Kv!t!!StUduymKlb7>W-IcU!Fz=CL+uWU-Vd4;?~sEdbPnB1$)8qG&7F;wdv)j5 zyYQJkNvUIgF9O_c8`(fwStNS)1Rw_a(z~gvke??+XI)=&FOVHvi`{Jx9V!X0`-wR# zF)1NS{SBwM9kB+3JwuL}rW_=G4y7&M_SvUcH_D)T*tpV2X$QI!P9Fa7xL2z^yuv=- z1p3!Y_mgtnvunn_1ukS LNpvt4XtuT}12}_gid0d#mxq {cuwcw0 zt@iMi%`=UL$HVYI8JvJ8FurCyXeuta7dv2tJ2nmZ1G^Z|$((WmuD>*lAM7IkK0X2C z5f(mUQ`ZqEc5UAl=w$%~WSR-FXniSUKW<1ZV hw=Y*WAH!dgk zngPNSy~XTjFm+CQ-!Sq*%ya6$9Qb92u-ZkmI}zaJ?O0&Yyz1nHBonZ-zmS(Nk{W46 z{;)~%C56SJYiCIrR<)}F#l~^Rao^rIDdnHFh``^R2V60t6Ig<~f r0z>0|s#T?#9Vx|x3{SaaQDUYuV%XdT|N^}u^xvNZT zr@^)l1v9<>diy_>D7iEJwgVOKVB39E0wQjL^Yd9G2wVIz?bgEMvoKxnuXM$)f3TD& zaeG4uum_LWjrKq@ywJ_V4Gh|$!7^g+FQ)Y0AvP+yCg8+TNMqui@qKbU3776 ^+jRK#?9d~CfTZl`odo*n=SGD*PNb=+jQ5esON2@px0xZb{$BoI>ImswyTT`{-A z$O=l)aG&(^TX&z1BIlO-*d_}stoUK-fCZ8!xmL5HbEcO;_1cw2$=+edGoK*^G}ocX zlF+h(IGA_?E6G-QdMT)m_@#l@O9wjqg&bWjdk8r~lLrCP4O1z^R1G{@fJ6Yq{J#*o zmlA*e7HWr@CCiwqC~i4n4?$gY>J3Mwty@r9QG|P@OcLBp-5Cb(AC>+O$~aA+)hTKa z8%}n4i;Rm{5ok7mL69oVFbLF(6o2Jm2bJm*Xm7H@_}F(4#}wOUT#Z&(Pf7-2fAf|{ zv@Mf`q%x*lRLBqUihd!x;1rP@mBC_>XE^;BXDI?;s;&b?gmBYOIxZlJ>4jqNnMMb_ z>zQ%CJ_68;Lz*vEYC54t0d*gX|3$rupfLoMq~pMH@?NZGmJ(Hw{SbdD)JU=iBGlMg zFLn$l=z^Y(84ka1&8V~nvV&sJ^(HFVK^K_#sglcy-#5>A@Z+;FkG2^nq9Fr~ukkbO z86>ym-=Z9$SY;8yS@FAWx);jC_RDR&G;#fXX$& cwk7 zTh45nr1<~ufwrBha0lSN080@E^yg97B^;omyH;r>H&qs_m)0+Mh-8YomrFnsj*snf z q4em<@;UI%QD3M|0Q%sqmLaV0k{eQx|b<73y{`1 zUm3_{Kzz%JBw)Z5d3a#6Of!M{0VUmBpp^Ng68Z+kR@~VFYL`j?Pl)OXac=`10{T#a z_pn560DxI!a#5qnV^9o1MriWVfWJQDqWFJeKST@aw5PkJRC!t790au%@FY(*Oz^>x zpUj8d#LQR;?gXPf;-AewAsdjg;yx6JPygaRleJrFxt_0`c6eQ#_70d25bUPqvOil* z1o??6w
eK zcMAGIvxC^ytr@5H8|!fEO!K?&Z&4fMdBsogAiK>S-AiIOsBk<`9-{AJw%6@(u$B1b zC0={jT1}I*)SmXfLEHOldq8?s_zc3)%esHWR5x83*oTB!2a&4)98Bml97{WkzHL$Z zvk!8xC*gAjQxCX;6Bztz#vgD4eFNpX4kD&M)G#;UY9Olw7}(?nHUH34AKMMq)1erF z1n-9^4Xom**kuA)l*Fd3`a&+bsXFK!-}g0FvJL_?0 %!BOtVoWU>@)TpJZCNjQkzMQHVacF`Z#VQ}9UxvRI~E zf$M-#pHylVw)AFLQ(|@pnXY~^?uP>2n Bs2ZpbhuXwKcqdsS{#o3mUBLcgV~xtzRM1Ho&aCIl344w!6AFKN96wiW=}RH literal 0 HcmV?d00001 diff --git a/logocinemate/icon.svg b/logocinemate/icon.svg new file mode 100644 index 0000000..bc1b54b --- /dev/null +++ b/logocinemate/icon.svg @@ -0,0 +1,6 @@ + diff --git a/logocinemate/logo-lockup.png b/logocinemate/logo-lockup.png new file mode 100644 index 0000000000000000000000000000000000000000..5dc771ee8d805aafeb69623653b5829cf139d1da GIT binary patch literal 41445 zcmeFY gb z?$7Q0{TH4$&vDEP4vv}G*FIyNYpuN}N<&SN0G9?A004sL&tO^r01gEJ5GFPR{T~ icYiJQzJm3)!Y(#E3ih}5~?@Nw1_2vd&u|9|~|8-ZwSRd-M{_Ai|@S!i+<>EJ%e z-{)cCA&&S!_WYNcC$_BHii-uo3+!OVe_oyMTo&D$sdE<$WgGIau9830rYb_SChvrV zcP?I~T%}%eShA^4EL%`Ineh<``>)=b-u~ rmYvhd(IZ2=t~^w;fkEP=8#FD1U=mSMht_#WOJ0uvQ%)<3Jtp#gTadeo|*G4-48j zNe%g`eg?6*u3v5=FgiQ0y!&(Tl=fh;_LT(UcJCVnNvt)lY8x{l*1uKBM5LlD2gQ+- z7yRTsT-=M=6td-Pf%oJOrG6_D N zI4oTv)6A~AQY%74fks^W3>+A7Y2N>09?bZox0W wbig+C&Uo8g4 z+eME*iDb1|Eq~J;=-!EjehV_c2vch@)OGu{S-bBq)^o>&dJ1Cm|LP&R zU=oYzbt Y(l_ce#D;273gYv+~@f3_=(!{p%ef^*PuIC|;#m1$S6R z$&iFRVud8s6A=7ShTCAGdTH!4`q`LG3UyEuG+%q&oMv0@d>fX}`>AsF4_68z;pxxI z!v5`}U>64^E#mN028gVTx9`Natuo`ABm?W}2{`Bb*l$&JFqk37xFN|bKa`BbL)5r7 z63R) 5)l|!iTW0=yjV)7OwLp2$I0%@fpr7cpt}G zr?Eb)c+M(G&l)VUO4}~7Pc(dDQDo9ow#mV>coKfNtfAKs8<}ooNUr2I`t&b~D+Rs% z$!XgXx$NB~re_u~|9b?*9#g4CWW!Gf9sl&MC}nf>(WIl`_xmIv-gAW~-K*P&Pn`-d ziOKxz EmM@WE$9bMY}N 7PXk&P5yiCDE0>8`dZn#`cBiY#cvJ*TmMA!lx1qWe;mMU!@-zV>XFp4 zQY?K$62jUFrL(8U3U=nAwf_@3uEUVfBTOfH^0nRTqT{^baC>0_qxc0femU-M*Jc%~ zlrYA2uf`R9GdrquZr+ZcH%LjtXHY7@F0(Z3TYEDR2kXv_?D**L)TP4~0#0UP5h!BL z*pr^T-c7jKX%O*up4rT1#{COP=IQKYp%1!O>r_3bhs#>Mj#g#cwcbU(+Bc9$^`ZHd z5ZTe{;Cd6;kynY{4M`2bz_W##y;7J$pW?nB(<>Yh|HT8TKEdgsKd*etw33Yw!?K z%E7}RIw@03k C;t}hT4-T$a3TmpAd>BNTyfd0?{ip9rRx6S z?o8&Oh2blS7c<8HM2xOMv%4Q^&w0Gs`a3$B>TLgRjotBlu^UBAET^UQccQR9?s0qn zpthEn 8@KMJNz8Fs_-8^d(}g}B9KTU`pV|CF2U5l zM~0Z>V?me(#+b){k$=o)s5nav=~(eP_OASTfTHm1iBpBH6u}l_3 B?+Brr2>(8?Tm?~xQ7F4z7Hm+`$AFsmAR&GX{_w)l~avNJW6vVi=T?{Kk^$JEcd z56ZlHm~Cq?P8JK7*h6N>arL*gF!ZBI@}vrb$TWU6TMtQ}$2T`yM s)ePb>-wYo0wR zmveTR)-4vBdYIsJ(%*r<)>yFmB1r@PcfzvA8iBHnZkzN(nv%U%PGm<{dkhrSC#*;r zGG?Jp!mhR4HVJR8Z~lGiY3jF30PBue;`xg>qQmUPj8>2!Y-hu2_-zvh)m?}!i9mRH zQ7tQaUzN-dyvL9SoZ#2xUlHb94?M>5d+uB=gRzdgTt1S*|J#!}TUA)191wUisCWDA zX3#3+7ubyBVXr>d_5YAVp_`Gn_bc`c6M&lqJpl*G8GOmxK cuG+%&Dwib3yp60@Pdj8J_f>CLB+lYWrw`j{4^)v>^JfD zkun8I1Gxx&%- >X}vZxoP~^ z&Tj?Eww*@-!;gldyx%W&uSUv5o#gTrGH*^TdW{d-$d>)LdXyX!CKEd|BvI1w=OXR* zR7qicb@p$li1T%M^oO&KgfGcLrui*k^Srsp !tl|oi#6( zmEgo$Eqox2%gDttOv^RaIS#{ZvWfC gowOWe 6*TRJ(GaaerGEL18Af203{8}hNzT%3GRKc;zb(Del>Q`hmSeZ$}M z(N+G?C0?HXUdA4HyOT*#t?!VB6AR)CVqw((k{Sh-92aMX1fel=`<^YtN{Lq3+SFl< zOGt gz`3T_F7z@&mVKNu$ zbjWm{wTO}%sO&Ow}=T+6O)B$8Zd`Z=X`~Epe;LtRHbeA~5fRK1Iyb_2Nj8-QwZZ=gl6! zBa5X}b7QB+eP$KaRn|qRj2{e?FI_?*H^>w-5bv~qz9VzTGa3y+Kf)wr95>-aEk($f zXF}xo^xOMTot;@pU;`zIFn`YT7n=Jhyvah7OnnvxhSGYagcdM`@fT!1^GNM?!@UT_ zYcUP+Ff+_aUShDOl0Jvq2&KQ1NMwe?0Vth|gi_Iyq-` H4uP-&u7s zk`PoLRCl $xfy&W5Y@vRv0*;bqhiu ^B{_yk|!9 JK*%t&z7$dGjn!(_3_`CA z UUgDW3{TevQFNYCnX2QoA6%Y&^*evehu#?7HeQPS2s- z@nPnlwpsE=Le7}kzi~zMc(Wl__riP39$qkW hyKg5W9CQWcXbqG*rSL56Rz3ZR*e=mXdPifxK^7`FHm6?hh!J z#rBIO-kqK5W<(FFsgL 6F4LsjJ;!S`IMQePWEQpgJb_{-+gxm^kk zKNhuwBn|>B 3X#T;G(CnGu2 r)XMK*VaXc8-&vQ9JPzbHWm->`k zXlxsQh$SQcs)?|!rp#eZ<*9 !2@hR(EI-8?2y}OVTP& z*2XXM1{(_Z*CQ=>Yqc1}u~7zq&$U^Q=`W?N=D7u#ERiH~1>@OYSzQ{JAMe<=Aok^W zyzBR5QQ&ehS|53-y^%nS>rtML2%qf6sd=nAYR%hm(h!8eO|uMO@v!7E7f9jXK^wYG z>At7iJ7Nl;swM_ibzY^N 7TiKvPJEK`>wqE@p(ew#s;p^ zSPUK Vf7b+*59|{ zJ^_H^HOdq%iV$(g85o{>-*5U+)!{AnMXZo4i_0Zg_XWoJ6K_0){K4Za2^(h_m*1~) zjij+rSt6XcM9PYM#-Et@W_^j%rHFQx?qjNn5p3^zUZ1r7Y6{zYLnzDU)O8aR0Ju-n zcm*DxYfu^QU@Tk&y?-$9k)ykRDb_vS(x2xYI` v0rmk(VZeI-^VpSU1iM F;NL+5TMdi{r z3=G~_Xn4bAz@L23>w*KiB(jcn4qct%4DSadS|F!!G{a*sn$Ivs-48Kjxr^hbA1q2` z%yB6ffmlWf4l%O*J6td|M_jM7aNWG n}kUmP@ev0A5$T_I_x1Ea}atW_o zF;%xa_b DY3KT-}Db<$j6I{LX4v~naY8)h*&IJ32#S((TlyoS-2(yxtAiHTd^WpgLFO%_AmmrWBAS^aERzB{_3Qj z7)j(PEL|-`&7WesR$x&))a5;?uAu3*wBZZFL&rmma>M=n; l~ykT-oVHSb*Dw(~7+J_BmWN8Bg4@?D{2<{=$y{JU`Yl zC4 U`_CY$he$zdx$CcRNy7VNRab@}fKqgCh z_JroBFbx1EPiRCuT^NP-OvUL(=L>S4+2&R@lD2x2?R61>D0GLl`XTtFL%F=vI+m7} zYTlOO;^O!Z2@3v~aaQcG_p%~3tS$N$yo(AXi42&ZZGzudK)zecI=3swN;~SvzSI?< ztOBw p#R}=M{)rMcz`q9a*DbaPr3J46A&EM-UA&Yqgp?*3c z7}f Bi{D=!tS0(oC~SS|^i8C}oSKp=m!djLlL7awA1qS~@Q =wl8ok9(8$DMq^~^psB1!So3FGgh{K{hS;yhw$6E^TBpM>&<{QS=(r#(L%T0< z_=w_vh|0! rwM;^pwAeYVfALR`C|k9sV!4CynC5XIZ*NmG)LPZ{Lb!LqrV?dBk+`$@gjnSXj6do@;9-+c`To7_O6+pE`CG z3G%&T23iS_HEN^r?u7qVMITYvho|~(e9-0xhP!1UwjT&4Il<%R&5-<8Y}ij5#&}0@ zzWS6)$k1|sd}Tu)n|l=SX+mQtRjyKuYP0PFC@QoiqIb1Q&A+;PRj@THnUORoNi-%j z*Raj+vQ y B^e9 z;h@$N#D|;=-o&0N{xOi{>ra}N-h8g2%* dlwQ 1Tckz|Z#P1U`SZF(Vj# zAB^D9jkY0S=QZLbiW2KWsdPmrd^y8{cOO%k{31pyhSO-&L~UafY-8A5Hz++io17}Y zdW86Zk#XJJ+)NmH9oe1UXon`d lt<*eA9jckdGS ?<@bP{`vmpBz6xLS(;S z=<85%um2=7aFd(>CEQcCh5Zm7q*TGwZNM)s25#_Iy@~nK1vI5eYpkCC(JH@mPXB45 z RJu)aI7v!=|LzzL4-a>pt~C45apA*@ek&tZH8JH1 ze|jBZwQEUMJGrDYAG{OC+>R!a&1UQ1^W^K7-z0Hi+_Ld?x$-fH%j2L5F4?RIQyzJ$ zkZ#3UFGCUoEKQ@99e>mfUqP$ s zr)Yg(%~wtb*@tLgtBI~EG38ZBI+PQjcg3Zv>Yj(rUwj}Nwn+;oi?A%TLcN1;h8#2R z2YZft?r5qUW9<8v02}<)g34rac5Ou|b96x1U{e})V65U5{K)K95>6f2CyPfF))9mc zwc9&l#-a$BFr*;FiZ3ZIZ#Q7~Nsr`?3hoN+EY-2sh9V#;FbfKD^ads0MI CaW_YS?$OHNn{ex|Q4EWFi*ozNp}jO@Xpc|s<332yxV!cR18jckHS z9^XQg6Vk#MMYmBM)2+a6$(2jdc+Pmya(6G_L@!sl5|Vvu2j5gdHpsH HPu_q4|OgFYky6Ldg2Jw3frQFrBP@A#6N$E|JbZ3v&(a~Y|Kzi07pauMFx z2~~|67B1V)cxo>IiYbGnXG+Gz3SK!iPELL}t*3#=x}hLEo(P{Qn%rg@?08r6e)E&` z9XkyJ(!~YZTjJ$*i>QuQI@V8^V`yfkrUFgu{}56M7OuYN_&C+d-V}_&e!#EkKq`;@ zF?ar_`}x1( @f0>2|SEUicuRod%b|?B}{zjhqe;6Ij_^9 zZ(tQqVl_e32>Rb(?i|`}MuGbnv%EDqvxQb5HXAEkE&l&ueJJTC-r%Zqr+kAzqVf@F zy|C&>Lg}Cm78m*WG!TUVf)Q}`BbjYA|HLb~%o+aRz #|jMc+fh)=RpTci&CL{g zpq&q$Vj*O;(exBxS&o9Q8k3Ij`gYLdAp)LUw{7#{I>Y@jC9R;WH+9l;! 9XiC(7D8F2djJLA_st#W^qCkq) @9Xru1mG^BxmjINQPJ_*q5aiK@ceu-m4Q9a!!K0eMg{gdC{R`> z%O-iOaS&--DHpZk^KT|^G)Hs!BThf#vOsDm6EUuQgF<`}^UXgk=;&A$ ^?}=+WJvL z19 c^@B2*jphBIgQq`?;Qgg?OZ!n2N zaOd#ImkcC()+Dd<;srlImnV%;;NQlIF`k3{gc6G^w9Dk83`_AkUNTY+0&I{rpPz?? zr7J`qy<}z`oUp~H(vs!e%zq03d4<$Ke|P2e98FE2ES|Y6O|tQ7m{oGr;4TGp4eGe@ z>D$e`g6;?RbGBzjI=NKjUy_6Q2Hy0faCaw}7ngERNLUx${~b z`>Vus?A=8+K8cFs*wHmW{wyF`l@B6;{c>Ek1!sm{-9K`%{#chvAuTA#LxN!E2X@ft z lLWLzcjZmxcgRztjuK!3v!x@bDx02j% zV#*O!w^%R-meqK!e@n--c#`?P%iF7;FzCo@?C|%N{rH%993^QRN;EiK?nDS~+^{v2 z1~j#{hj%ZAIH(Nka2{*;BG-zvsv?mY62S=6x3x(p4IIgkk)(^==W+k|ZX9)H`%83r zZf>rLwj#u4jnlJ<*yP(wnY_fHr7zZ9T>wKxsgXBd%@tcx^P=wS;f+T|xSo~B7gSUR zlnBr~Am|-KdCEDRsiqm7iXlk5`jF(_v=(meS6J;7^m@GBF n^s!yy%ugu>{_|uLJqp8q=4Wu5H6r L#KJ|0gm0r_&4tZWh)x}iZ$ z$s_F@KYd1yEYrX}PA|!d pucs+>09TvrU_?9E(4CkU-RfPH$@*;N$$O3i-vYr zJ?AG4xOXNF63pfdor@K&j;G|D>(q!N4M!)_ rVlO&*dh6 zgb{ZXvTyh$oL;_+wB^s>FF$?wF&1NLYN{kYo-mMqfie$&&Ht4E@N(|U6<+y<2(NQX z=(BPNTgha9kWaZ7{-S-J5X8>zMO(iLkvGG^+?RqH`UfWNMW2QGNd+sMCa0!S_;wYT znrzDpX0iz2>P96t-^?|V;@@=O$^{XrbBrBFxLQ6CDn_%hBKgk*#$}vM~ zFa+M~m-#8Gs{VNjYh-0OY;C9^`{^PS7KM|XcV;p0_Nu^e;yn<+MVv(df1wk;=UZ4; znmp}O^6h 2l})VoVuL!a#JqDWt _bOO;vJz>N_pJ852|d{vQ{&aQ_(-){)PZL^m(nljoFeZEa YD51&$q8drr5DZs_>rO9wDWPpe*RgM>OCW5_mPd(yHo?}0? zN5H5XE2(Z}?gaMmcz~1?ZWB;~J4k~U%?A1+`)z%n6|D=o9$p{h700XZEdIt55)|yd zy5gsY?daIhE_V-fzF;qpt==WYF-GGAwfr%AJuPZ9#%-W=9_&PKvpM=I2f@4d @f; z>5U;rU9L!xQ&Cm%3?3Dlw!AmOoUpPwcIF!hlHS_->YAtR!s1Zhy8i(tLa)+PN+gAU z1fv*;42se}HOU6{YL=F0c{-ng?)%_#W~B}21P~)XuoqAQh`Of`TD+=n%?jiuACugJ zK0N5$YHk*9r#$eLoPmYiTPsl3o3>ZIUrQ-sUv9(j5nr@bP2m)pAh2+^_jAtc9CMHl zhsLt5?w%=VRmH{!i$u*@0gS9k(c+_t){! @iW`Svyt!z8 zFDM`dJ{pOwmYHqyKUQ9o)|uvGiH5*axk{b+!w Qi$F3a#F|4gOdvuqcqzej9Bo_GqI;F`kxcRN7UeRsInEMnLSrn?*oX* z#KtYQ$@94wP)ZWVPdr{)5v249FxitPCzOMwGlKd8HB>3#jScSY7QEO @*32J%zlr1Y?29gE24S2_48J;)0)A* z4U_TtCvLEd!DDM_O(Ubb_CJ5Flzq?JW@8q`R~35 +5gDSNhu73sNI4 8;bx36PUh`|Wh2=Z$_PYFT2t zuXJ)5C6~?Jd6@0zNOo5vk1?5l_B(LZ_&TxYy%SHs-Xa<6v$uP3J8F0uhIY~ oy!xij4 z4HWh}QkfU?6AN4vP<4EbK>j*fg7 rtg$pRrFotg5>NWNvADWW>AeSAz8 z56U#PrRAhgY;zVTlrU+9F{Q&%hwHcLReAkChqr3*2?$y~s)d!88l4gWbz~)Y<#jA{ z!~lu+daF%Wn grDSVQwNx&45dG z{hD#gkFbpa%CGC@Czp1BL%Gnj;ZxYqJFO2D#k}g=M)kja@LPN+etdl BRsvbRn!0J4g5rVWljcXtFHB+{%wQ29IZa!? z6rvTbH1ib^bEcysaVWu+*AQ{agJ#7apGb|$r*;8J9qpR$Hy__wj_WJ)0rQ5m`m~s9 zHN H&`k*IkP8UmJ(y$$a|dPKRz*?DVp z$2bgBrJPn_*cm%izJX5N0CKHW?)Xnm4%c~Or02S40w-_Na0hhh_4{qs`#(P7*9QE# zLS>1u>Q130xaz0d`#{2+0)4k%?FtRz%?pLP=!^rSFIH33P|D3PS#Z_y=C{(aa+6Dg zg4XM($uN||gCtsyMiwbv7xMfqg_hR=_L1A J7!FnujAc=OG-+j zfTQsOTUK VWkB}x+?Sz& z$E4Yh;0;;#MBdk-0y T7oJ9ge`99I~sGl zvBcqf74p^vHBcunl8&^e<`>96vd%C0R8m2vNszkyCw-PxE$7JAll&Sxg_>VA{vy$j zAj;Z|j{%Lrwios$LUjBdTD-D@hVP?#j-EFZmkW+uVTR4w0j= Pl$syM?Q?i#l`UzocXESpW0ZeAZ`c bGI)4jBRt?0>2#ll1l=T&JxLKNYM0TZe4)O zz*~w+d7SA1QrUSlIUx)4)sIGBVzLYk3COv(w?N?FZSLi?n7H8i>Is63lT32!L39U6 zU?>I$dH7xrB3g-&;a>X*Mleqx$!(w?%~_rqID*h-zX&1Dl= jNR;%* z&&^!K;@2-ONDz~rS~KTOj`DMYBo;tsx%Sn>{h-v6OcAzNoS q%Y31#6DA@YhVsDpfhUhdrD5CvGxH7O0(>)=7j*kJn z^g75ALe{8*N B z>HJ4@Pg_0oNhU4_Zbo+9mq1{1peP85kaYg!_2DsJKeFvt*3&g60DT`(egpV$$b7!> z&h81A61KDJw6d#?7@n#P0&JLdyqANVISOd;7JuFM_Zl&zWh NbLuuj*1HL@APt}d>ZCIHJO 9yylt8J5O;@cZrAfSej2ZDf^~i jKrP}WX&BYU)`67=@VHN3*-Aah? z;eHJVsJUG0A%sDV=8@bio4OVHmg$X8y37qjB x(D4dVg1EFQ}-So@L+uQOp}}YL7ml!*4Q5Ks#@# zXlV~2xl6 Ul!deh(j5tK(_=Nd zWvhNEdLf{YD!^mGYn)qmtq;*+k12WX =6ErCi58= z;R6PS^0-Yt=}TEY0geK-m6|Q&Zs(s(($QeF$z@|W %Xi4*B(w*D3zIu0W-zFV{UgPLmP9LQ-1BVT8IFo%fEG^>UK#*4 z|8c10N11SPg)+eBPap86wtF)sp&g?3a3l+>Zj*mIhQ~FvLthf5y1lg)8vlgcU7X~e z^AhAbLIz=B&Py%OyXu_O1Ak?q&h(oY;+MXMrvXAt@0g#v>)}XaKVgF;xH+q^5r_Y_ zA<(lT?A&Nt)>DRAaebvnCh(n22oU~b>ZX6?VJ}b{%)}F;#wU5jjAf~kNj(C-kwm0{ z)JT{>a3+DTZ?TKm3+miM43nWro)tBQrONjMTW>98w~BaA2MRy>@?I@}*)5CrUisK7 zNc9T_ghblKo3!n{v6@kaQTEX7JYrIT-g*FLa<^Mj5zb~d2tg8(q!&P!p*`rJA+>=t zFCycN&yokO4eRICMyeRHbKleWrh*4Dm4ms%-aXWMToxnNG}ml(wn+vsbYG0z>5n)` zFN2c(U4It`CIr>825Ye4vS1VKej``KxB1gCjg#fyf>^nQc$o;~rqsl~(#`xDDBZbY zFx1Nhc{-!PBDEJT#*1y$OC0=5G*Jnh0czmVT*Ekm<*UCU76@LsfwbCFX_zvI+s1yD z(nin8LZ4b%0IuL)OvbX%WZCF)5I~$Bzvqwls865h1D323I{`4Q%Ay+9HbW!Zq&4q4 z(CeDBQc!Mf(fg>bt}dpzrNxs`#h*XPzmf6b=?qCpLnuxj>-BIow`%l~Mfuky!`s_> zM_Lhc6rrwVS^XLE=k&Z0=thjBg!kSY>;tW1d7aXj40 owv{**uM4V#TJFpRdt z+?DiZ!ey9b&L5C|VMt=8+C^QVZi4GJ&5^fb$0vv5ubkKO O>8>?1?YeP z8E(gpfd*9^6Xx|3redAf7z6r{$7EGJ?Xjyf?H+x)3~-D{D4m=j>VPDVn{)P4O0z3f zorDG7LUttvu6##$g>u!jH0EeR)Ws`HordXv_B!j0X-H|tw*uG>Wx=GD?Nqwk)_b5{ zsl?9Sk_u>CXyR^2XgGcX?ES+b`L6Gtz_Pkz!*!L|?f36`)-Swlw|bWh+SzlT3kjcT zDk?r|`R#tOw6qNz g&+XZtRkL_X^V&qQ?|QMEDFEN{`BPIm+tN z1lD=pX~n!@y9aWJbVEU1aS$@9Rci6_4~tXkQZp`bY;O7u52^4dby`IYZyZ<9a%Nj$ z76y#Y&MKy)q%1BI0{i&L3bS@;a4s#99ylm2FLy>8=}PSGj)a|} OdNhg;Mk0Rl|LjqltyoYO({5qnWZs b6J}SO`{DODma>OSF_6Lv)`=zD# z3{Nk@XPYU2-0W@I&(27VuV91+fGobEBB`sy1)5tVX24#qXekj$TtXzUFwpucA9z{` zqWO-z!dJN542J@Z!ReLXBhiP;kFUT7&C pxmHd@aUaTlKK7)II~TA|vGk8!xUzhE|thsey#bo0HARC`S9VTjJN zDdebrem nc0Bft-}jh<6?T{Hs)Ef=8LsGa$G?IgKUbl4n)iJek@ra h^7DEwhl_Md`y>_RSw#$OG4~p2B zWKnI;iRoE)_UwV}gM*tpJG&jTf_KdiRdS`1eDjR|6l^G`UR2K46R3YL-dbUB^Y|W# z{<#um@jrHZyhSLAK%}**y{-;^NcvCTVUzRl`B(R>j$Y-BMx}vxoWVIhvr^55X*T&j z45#N~-SBsrLA5m=!5v_B7c(9WP0(p(>FS@QzO}E%OS!tGCO@WbgIsQN-pl}OIVta6 zzPx1t@e;}4w>V0OYEq_}f5Ii_!)EjwBc97ZW$gm-?m^TqZO_`mw8FTO#;51|CVno9 zL|BZ1k^B4mb8DkD;+$O_65~JH&W-F%aZOZNCk$eiiAvG5dyw~*6$VC34~U2lg_x_{ zn2;GDbN0{yzzmnTBlA;|@XO_^M|)vKz|F|R%CIk~axmxOa+5j?Z5rVmRejbRmftH; zYcG?{ABU2-cQzk8<8EdB4h#b;kx^(^rao{pxsgLRazgl6G==e>n1hMpH-f$55)uuh zV_RJ>2a?&rP32y5XuHBz^~(_@Q17&KA&Y*$3| 2}l_fKkHuLGo+NF9v zL$$6FN5KW%`PX0i!Ebvn*npFz!|A@nYhOlR8BMFH0l)arf9M2ebaHyY=Wa#-VT{63 z2a7`jP6Bdm@ibn%kSv|G5_=1c?M|NVa;p5Pft{)+Yx0`HB8k}eD-AaKVt$blHepIO zNLbdJ)aID-qW$Jk|FNtgSU5{U|FK14pT2My?*eZA;_oqnf(gb0EJSawf;UbI_g=o= zJb3!|g6F~FT*9cM9o+&=?(@UNrkWMQMFusgEFDKetZu)R^G#K_0Ik!)-sY8xQfzp| z>rFDK^wx9fBzkjw?>oHdc~Il7Xp%okjgV5wL&QwjP~mrU`t07D*9THG`*YAuETORC zzjz#(+wX&Zn0hF~1`TVdj&5lHkmGve$bqz1&etKsWE?P)>h~P}^b&qb0r$1w0o+Ws z=U#3EcuW|IBug d;> z;Ai(yvdlPp%Q!bX42;jfIa@HT5(6BN-jA-}m &jc1Ii99(qJH* zIi~kJ;)C4L`Uiwr0QEB#KJmlVcQGBLp=^|j3<_^Rvh1H+d6G2rXTx8-3tVV+w`2`p zeBY}q0cNzH3YpIA=W={2lx>+4ak-XeIVFbyr{dJ-yN{HgR%qKJ>m+9HLD5S|88Kj= zXJ{X&0^2(~^A=n(pWo3K3Y&K7VG11UYEo l8ED004aWhp5hCnB!I^`;zrgox8(V^ZWB_In&y^4;s@$% OE@uw)j$RXcOyFfc9~;EU U(5_Q7{>%{hMB<)45LpwFvQr!#O#QlGuD+#@V_e0MMT{q8GJ6<>rfujR;(!bMSI zQYREaJA D!xezy>gq9YZsd{GHlNs-TH}{# zQiN+Nw_|!-$*V`Tu4&qL_iR(%_t&fW^9hIQnt$Pu3df7(%hfp&(u;q6&tt8M4uu*~ z`$Cu3Qi>rESEIJ6qLWbj-fZ@VdE?=`5cya_l`oQG)%H8PyOzm|eS&iTP)ABERh7Wm z88lB=^9;6E{*HrIlzxXMxtSZttR^SZY`xhF@%3QEY*+Hv+CR 0IL!2L|POT*a`+I4j)CI~}fk3tsyD&lWK9~oDFN73oAx6VHr+l*33wrccq zMLFDmv(lG#zW)-xh)9FB3rd_^a$QFL4LkUR8er%=I%S9Cy)XRp|46#(sHmQ|f0ynS z7D-WQqy=dNQBb;jX^@s?iA6djzI1nkbT ;{ ziviRq9n{$0jPugD@ArQ^g9IU|XX9W3n#p!?U2Q5Q7Z*g)#mbfUv+!OUM&6spL}>Zh zzMr4gYlnNN*C!-q7+A=~S~QL9VFKbKC<(Arxnl%H*Od?9uB|WVm+_nK{K1cFb<`m# z{@DWtgV@5>eqECEv9xk@j!8sc5{rn?-fK>PA$a$~?U;9e!n2Zj)AOf _Ledh*G&AsFO0bxCyfK9f+^yB%12;hS3ee!v38tJDI>Ho Zt{gk?&TW0F8v=v6D__U76yAE--u2O=nKCA>zx|3 zFYuUfwzgY?NQYHXc`Gn1xp@;vjKp|LpwOuqx!0_JPW-^c{gXQ;7o{S3Q+UAU8{pWK zp`8ba>oqnP)ANkkQ2z4o>wU JUT6kMA%)DiAwD|lRK}`LW5Quhe)^xMFJozQdxsx<9{gQ^1vd0gjBI&b}bOF z5XJ)rzPJg0WpsdshUT?v0!laev`$M)tH>oEqb2rp^e$~xf~Eqa(+%t%V!PCBt=S~x zRww~f|6>28d}A&eAgyNg1);qq5gpZThquG$AJSU(DV6k9g#CclPCLcSrVcl6Tn?Ai z;!o`Ojuo>n!77))S>7S;+OI5&aw7)k#-jt$W(*^4Nck?|Qtp8CLd2mIHIR}Lbd`#_ z5TjG|PhrW>Dr23tvXm+&POj<#yk1EY*Q85F9XsA>IZOU+J5YX06k}dbTD`3J@n8S? zqogE0fHcoch-dGav4cz}*D~w 7#cs%}2gBZ<7=iSiM4f z2|m=(jPrNf4_KYW;K4wuJW(jrYsq>c1P_S!YeC =ep0!n|?xaDP z>14$C0sc5=K!1j*sa)9Z`!^hVax5)k_fQqv5S28R80Cg-Au#ZDXEMG*GYsB0oXD16 z8Uo~lho$IZHxY8$ONxWv;)AQB`oD>f`~!5tB)iaFoPo<%kgHKycNO{|E6jFf4f7Cv z#UY&3 a-HCp$=oY+Pr5%VJz->Di;`fXQN)-nYr%v&MR+*nx*w zxa dd`j?}Tfy`>RnBT1elRbv%<3bARpS&5RRml;J-j>@?hZK32lJn61;j|P zXk(lm=VJLdW`5?D#Njgc4Cx|iZrz(ZqD9-@Jl@NDmQA(Ux63urs8l`fN H1#hi4a=jhZl+! U z+tpE@zQM{(+j&Vr`+&66tc@osU3*}6UUjWLk&oYyC@CMJq?4)Iu%MfIK~6~A=^nx7 zEpSwwCK9eGB`lc@-2}gqZ}Z}9SWi@|&c*_?$UFzfoJ2_Hu>SfT6O-g8>G1CobAQVN z-owGJFaLN;{4AEt@i6B*%%b!7(@1MW|6beI*Oz;XyixPj2691CSGf8w#3s_t4ydH- zIhf3IEg;hjvT`Wsw$%r54JD*ItB5ENvgF&Fnh)8$#Qo8SOWR*#$5);5^MEOd_sA{7?$MMJc%;f{J_eqRK-;^Vn zB*|Qy=r<8?`HwF?p`rDSP?@4WjkZ8CA6{C@@XwD7U~P%YP$2;zx|VK=;9FJZA}0?! z4ghSz>1?=__?I$so-6K8tM)}T$_@FZfv{WW2BpR<#)k%aZl`g$SXEKR%^MIv M- z7)^=>;F7Z!(f<*SR~ahfm)s^#A$0#vXGHz4_xENye6Rf53z23v{sh{5w&v0i;Qe<_ zg2yl0^thKKQ2ABH4kMbM5%(uMIOMq0@a1(c=L-LipD(5H6bLAk$93-EAD-vw$&mIO zUo@5>C2Pb8p4dd?ftZ%pOyLYOHcT3|1!~yhU*3=Yt+OL1Mepo0envO7C_JQ-O2};q zBH*IVV!Iy~6ziV&U(1nICYeh73C8On_4@((gWXBkDc+3g+Qm?$Y6v>N43zgKZk4Sj z>6I6baLkBMkLMbDBz~k>b(!Oj0Z@EzwJ|7rDz1xzLG)MzqJ=J-1QHwsD>6)~Eb+Lh zKQ-_P7Q=z%BR!S=%)dHBk&!fbrRHxG33<21 b=?ubN-P?!SrfYSjDW9Oqv;QI zb?Q;9ALeweZ3%M8FqAS>?iGLzwC8e9I9O8{<}(zLwjU%vGA_rwWKfYy)U(iL`F@0n zTgIQyt@bK{0tH~WZ&GPy_^7G87eL>o)6%8mL?_Xq9%hJkKGYrsH|05wS23wCZ9gj2 zVmIfd^ipNH=;JCW9)2PGKUJqAbD906^FK>yGZ={Hg{3b+Iv&i5bj5+;bj WZwR1p-{ktuY}9_#OL9IKjrznUGog!$TiO=(WEq zG51m~sLrHKh~cxQ*B>*%?EhbQlo3P rKNfoJEZ*O1g3J1VZ8vE z9OJUGE`L2a!p}ccv9n{ #ItrOqeQO9{np3D;p@FmGX^ zEkultQZ%53AVb!`kmVbr?r{XbTT*D!2s8d4eHQ$E>_wWZaWt{aFkaemX$Jn?c7>nm zyJ=lG=+z$yAyOTj&js= _DZ^Mx!u=v! 1!PR> |7Xty87!w6U0{N^tk2OE9K#YcoqKPE;m?^V31*VuguG|y&8x0>gIofwBRAd z&R`p%sXRb}<=*G?4k9H@-<{8#UZ_lxsAz}>5M{sR z9pT9^eN2{$6+7^XcS{8Ll>DVY;-L253}DAe4R&Y_>nd`WR#^LGETR2wpVJrPuJkS~ zetc>)%$*^$`^8W(#%mHRpU2N=;y08^1_YPJ3P^b?JKxub+Y3qtuLMiWNo#`W>RBYA z{+geE=cpUIMo+3*F<`sb5^(q@_8<+N-;kSF(C)yU3d;6Si_#WeNK4L3OQnG8A*(8= zSRRl9`!K%Ro;>#tdfH4jLKQFem>d3t>9>mB5Gy+ySWqdN%ND0X+b!8XaKPq y!*_DJj{;{s%t>V8vrd{){{DPbd5F?MW4A}16^GDvK_iLQ`e>^`hMKVYH z%3`2ThCQ9#A&X{jtr3GM_V784y>TU9uhBKn*-_=}y)p|;o8C7`VdWwuX`_47GgGQL z7Pwa=t rUr^+BcsKD{rs7)$a{t>%}2>rZ*2ZK zPZLbqGH_5+Ja2R}Fj9<;%7x^&hW2(f+IUzEV}=<1enQG9F_@Ew#6lpVoC!mEoG6R7 z$VZsR!a<4hEaYplA7noWibqj8k%a!zBSYx@ugYSc!rVo)Ft}5c$QWZ`++3@VIM-Dl z{ldP@q0t`YaFO@}MLE<355%VJ_huBbeA;h}D;v20qzst =x!YJJfc?gu}QR=vyJ*&$uV1Xaov^Q;!~+ua3u z1sf&)+h9wt_n0ZTaf3NR0t`RA9)}VkBJCwK$57HepN}tzQwJd2aj6nsV<@YG&Vskr zd@raV;=o9etFc2F)w>lW*}Dft<=e~1sD~mQZcA}0BeTzW-?^m_2joO6pq}@*xLg>T z79brH_VaOdk>BhT4<^RPwo4N?b7rL1Jtxq7P=Sk!3tkM&19iD#H=uFy!($BuvHe x4#2MSIO}~o>U(JyAqh+GqEc%uOIt(&eP<@y z2W0gE?(}2*&%&gkP^gls>Z*9!iP3u^Ah&LI*p&meYCL~n-|8*_Rnl$wir)G32Zwue zgc<}fZ_#DJ7a$T?=iw&q(rKmZB!pck+kHUiEAH!SH#w}#&F%TKJ@&tuj24!ZiUC3g&m??zuSo;5!LRaRVXubiGNf*6p0MF9RBEEUWd0LP zv>%NfbjJID5N+Ra9VbwX&hOzHu;c86PslX1oZr3_X-S&`x3eYZ_3M!!E^}Q1s(-FI zFkfyCC314f7-Aj2PR29Lt!oIts+?u`l1Z#hXlBrR-jAZBuTSOE;k+|=S35h$wX{vE zh-Oxf1YGy5tu+sK4&m2uho<0V#2OLs_3Kv^qeeHXnH}UQJ~Kbgjo0axvAoS=n0)q> zo|q}A_p2y=XwVh7bLg+RzG6W--b;~ z@#hC-sOeAECgYV-B)Z zk!X4SUO)np5tkcVKU=Lbt%l^KP{(-7Qw8h|2 APY;-(|3}`dc-=u+hy2NC5*4;d!3&n z{tJq)Z_1U(Qfga{S|_|S)kur=pheG-WALboqyRby6F;7HSMM2at1L +`}QVKhU;!fN728J23{fS&qLr$4!9$&Y? z74BGO(&+oIRlQdZ_;ubN1CFS~Gv5oCc=YCay7NFLDD9rk0W2AhIb3oa>sCrUe#2vj z{=RpKD<0~asD6&KDnNfZn0n7e$rB71xLpNhB0UB7AImSqwXISAZZ$>9)W387coB!3 zqF?y|E^DF%36^V^ec444^Z2lm+>RhI3r=wAyVkW~o1Pd){N$JJttLPbk{cD#Q>{5A zD8Cq)O&NHFh6#+=l&kE@m7ka*JNc9P;9Xw=2WLCj^>^g2q}g4hy>$={UyGN%6oGLX zy```${|{J`IhJ4B-Bv2p|CT_5$=uuFVmpx+81?N!$u|!