From 6fd2a98aa5aa2fe209366aa2ce69617c0cad00d5 Mon Sep 17 00:00:00 2001 From: Rajat Saxena Date: Thu, 9 May 2024 01:08:02 +0530 Subject: [PATCH 1/3] Public and private files on separate paths --- apps/api/src/media/service.ts | 37 +++++++++++++------ apps/api/src/media/utils/generate-key.ts | 36 ++++++++++++------ .../{get-cdn-urls.ts => get-public-urls.ts} | 4 +- 3 files changed, 53 insertions(+), 24 deletions(-) rename apps/api/src/media/utils/{get-cdn-urls.ts => get-public-urls.ts} (89%) diff --git a/apps/api/src/media/service.ts b/apps/api/src/media/service.ts index 4bdc32f3..95b531a7 100644 --- a/apps/api/src/media/service.ts +++ b/apps/api/src/media/service.ts @@ -37,7 +37,7 @@ import { } from "./queries"; import * as presignedUrlService from "../presigning/service"; import getTags from "./utils/get-tags"; -import { getMainFileUrl, getThumbnailUrl } from "./utils/get-cdn-urls"; +import { getMainFileUrl, getThumbnailUrl } from "./utils/get-public-urls"; const generateAndUploadThumbnail = async ({ workingDirectory, @@ -122,8 +122,10 @@ async function upload({ const uploadParams: UploadParams = { Key: generateKey({ mediaId: fileName.name, - extension: fileExtension, - type: "main", + access: access === "public" ? "public" : "private", + filename: `main.${fileExtension}`, + // extension: fileExtension, + // type: "main", }), Body: createReadStream(mainFilePath), ContentType: mimeType, @@ -142,7 +144,9 @@ async function upload({ originalFilePath: mainFilePath, key: generateKey({ mediaId: fileName.name, - type: "thumb", + access: "public", + filename: "thumb.webp", + // type: "thumb", }), tags, }); @@ -249,10 +253,17 @@ async function getMediaDetails({ ? await generateSignedUrl({ name: generateKey({ mediaId: media.mediaId, - extension: path + access: + media.accessControl === "private" + ? "private" + : "public", + filename: `main.${path .extname(media.fileName) - .replace(".", ""), - type: "main", + .replace(".", "")}`, + // extension: path + // .extname(media.fileName) + // .replace(".", ""), + // type: "main", }), }) : getMainFileUrl(media), @@ -278,16 +289,20 @@ async function deleteMedia({ const key = generateKey({ mediaId, - extension: media.mimeType.split("/")[1], - type: "main", + access: media.accessControl === "private" ? "private" : "public", + filename: `main.${media.fileName.split(".")[1]}`, + // extension: media.mimeType.split("/")[1], + // type: "main", }); await deleteObject({ Key: key }); if (media.thumbnailGenerated) { const thumbKey = generateKey({ mediaId, - extension: media.mimeType.split("/")[1], - type: "thumb", + access: "public", + filename: "thumb.webp", + // extension: media.mimeType.split("/")[1], + // type: "thumb", }); await deleteObject({ Key: thumbKey }); } diff --git a/apps/api/src/media/utils/generate-key.ts b/apps/api/src/media/utils/generate-key.ts index 73ce7f29..92b4de63 100644 --- a/apps/api/src/media/utils/generate-key.ts +++ b/apps/api/src/media/utils/generate-key.ts @@ -1,17 +1,31 @@ import { CLOUD_PREFIX } from "../../config/constants"; -interface GenerateKeyProps { - mediaId: string; - type: "main" | "thumb"; - extension?: string; -} +// interface GenerateKeyProps { +// mediaId: string; +// type: "main" | "thumb"; +// extension?: string; +// } + +// export default function generateKey({ +// mediaId, +// type, +// extension, +// }: GenerateKeyProps): string { +// return `${CLOUD_PREFIX ? `${CLOUD_PREFIX}/` : ""}${mediaId}/${type}.${ +// type === "thumb" ? "webp" : extension +// }`; +// } export default function generateKey({ mediaId, - type, - extension, -}: GenerateKeyProps): string { - return `${CLOUD_PREFIX ? `${CLOUD_PREFIX}/` : ""}${mediaId}/${type}.${ - type === "thumb" ? "webp" : extension - }`; + access, + filename, +}: { + mediaId: string; + access: "private" | "public"; + filename: string; +}): string { + return `${ + CLOUD_PREFIX ? `${CLOUD_PREFIX}/` : "" + }${access}/${mediaId}/${filename}`; } diff --git a/apps/api/src/media/utils/get-cdn-urls.ts b/apps/api/src/media/utils/get-public-urls.ts similarity index 89% rename from apps/api/src/media/utils/get-cdn-urls.ts rename to apps/api/src/media/utils/get-public-urls.ts index 3196747d..56f5b2af 100644 --- a/apps/api/src/media/utils/get-cdn-urls.ts +++ b/apps/api/src/media/utils/get-public-urls.ts @@ -3,12 +3,12 @@ import { cdnEndpoint, CLOUD_PREFIX } from "../../config/constants"; import { Media } from "@medialit/models"; export function getMainFileUrl(media: Media) { - return `${cdnEndpoint}/${CLOUD_PREFIX ? `${CLOUD_PREFIX}/` : ""}${ + return `${cdnEndpoint}/${CLOUD_PREFIX ? `${CLOUD_PREFIX}/` : ""}public/${ media.mediaId }/main${path.extname(media.fileName)}`; } export function getThumbnailUrl(mediaId: string) { return `${cdnEndpoint}/${ CLOUD_PREFIX ? `${CLOUD_PREFIX}/` : "" - }${mediaId}/thumb.webp`; + }public/${mediaId}/thumb.webp`; } From bdab474c11a772483e6ffa0468b05957de5cae99 Mon Sep 17 00:00:00 2001 From: Rajat Saxena Date: Sat, 11 May 2024 14:47:14 +0530 Subject: [PATCH 2/3] Cloudfront compatible hosting --- README.md | 25 ++++++++++ apps/api/assets/with-cloudfront.png | Bin 0 -> 131204 bytes apps/api/assets/without-cloudfront.png | Bin 0 -> 130176 bytes apps/api/package.json | 1 + apps/api/src/config/constants.ts | 50 +++++++++++++------- apps/api/src/media/service.ts | 41 ++++++++-------- apps/api/src/media/utils/get-public-urls.ts | 15 +++--- apps/api/src/services/s3.ts | 34 ++++++++++--- docker-compose.yml | 9 +++- pnpm-lock.yaml | 34 +++++++++++++ 10 files changed, 157 insertions(+), 52 deletions(-) create mode 100644 apps/api/assets/with-cloudfront.png create mode 100644 apps/api/assets/without-cloudfront.png diff --git a/README.md b/README.md index 63bb3f53..b84abbdf 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,31 @@ MediaLit is a Node.js based app to store, convert and optimise the media files on any AWS S3 compatible storage. +## Setting up correct access on AWS S3 bucket + +Before you start uploading to your bucket, make sure you have set up the correct access on your S3 bucket. + +### 1. Without Cloudfront + +![BLock public access](./apps/api/assets/without-cloudfront.png) + +### 2. With Cloudfront + +![BLock public access](./apps/api/assets/with-cloudfront.png) + +## Using Cloudfront + +If you need to use a Cloudfront CDN, you can enable it in the app, by setting up the following values in your .env file. + +```sh +USE_CLOUDFRONT=true +CLOUDFRONT_ENDPOINT=CLOUDFRONT_DISTRIBUTION_NAME +CLOUDFRONT_PRIVATE_KEY="PRIVATE_KEY" +CLOUDFRONT_KEY_PAIR_ID=KEY_PAIR_ID +``` + +We assume that since you are using Cloudfront, you have locked down your bucket from public access. Therefore, all the files uploaded to the bucket will have ACL set to `private` i.e. they will require signed URLs in order to access them. + ## Enable trust proxy This app is based on [Express](https://expressjs.com/) which cannot work reliably when it is behind a proxy. For example, it cannot detect if it behind a proxy. diff --git a/apps/api/assets/with-cloudfront.png b/apps/api/assets/with-cloudfront.png new file mode 100644 index 0000000000000000000000000000000000000000..2c497f65f4f3966a478e4c260a59e7133725e859 GIT binary patch literal 131204 zcmeFXWl$Yk6fTI9KyY^t?!hg%ySux)9U!>7CIokP*8m3(?sjm8gS$NLy>DLCOx65& z@849-kFMRTclYjXYp=Dw^+hTvNFpKNBS1hvAW2J!sX#zL3qwFad4GcYcw$w+SM^aq zx~fQuKvYi<9(@QfmcsHMZ`8#jz8J%P$e*30v|S+}ko*6+Acq`F%^)D&i=@Sb)w~Q& zvyk-E)ZgBPD&i<{je?G#!ZKQ;nlkceQ#EWJTZZNAEChb=@iiQ>1kAI%RxG*oNvy;ZRM{73kjN-_ zX7EJLZ(Ma<$v2bs>6B5LGnf_ZYfW*mzjwu~#ovk3F0_UiKlz4Cuh(r4PjHIp=X5!F+ko6%~oh_SLpGV-Es%SihSl(h<}p%DyZYmAbfHaO4Z_mpM$; z;Zc{drODKfsHe&Un|UG*7b5Lya3ree5}I8c)S?zBDX5|uUx^Z#Q9^raQ%U#Ihnvkh zY3wWC*E+lXD3pGrX!?FWoAFbe6mGwv+zTtz4iM{Elh+!5KNMiV284X9v;(mX7R(;t z8vCo9(_72-Gy2guuhBh<)Cg8^d6K;~rqSoO;@seF4Z?e8f+Lq4iG-@;bN30)rgsbi7MH6{uQ>v~wx4g` zWo({LFuk|O{!%CS@~m0KxQ^VDW5)3Up2j}>i}J&`(uNuDofV%uOq)B z6HV16zfCT#%ky?4AL51#WlE0;r}*nyYyYX<>kpB9Tu*-`wJ$>ww6fJLCM9v!lxE^& z!VUYw4xGR|*#An|%Eez~Zh=8pJk%yk^W>9tGnzpHC$tQz)KoxvI5NZ?KVA(7iMBVE zZS2ToXYn*M+Ts-MS#&vjN?Jck02{c%zC3i)YSnGA7n&hP|D!poN|M4#lAW~|h<17< z@47FYIc@-=O)kvOtFv_{&u%X-x0G(0k5&zRS`3WyuzoCmn&ot75*y61$qOZz-y1@u zHbDt%HxEKRm>p~xXJ>tbBikqBzX=lc>|P{XmO7qt7yGx#OTus~96G_A`XdeOL!75! z88x0COIdv;i>4hezj2#yI+=aQ!0;N>^u7gxbLRe?8SW#<5(K^Gx4Ak4pIwfUfuQ7u zB)I5=h#vt|4VML>VeUi|@guZjIbEAKd-5G$EPp-FNq&WHmId)V+?4B@Hfezh{!_J8YfcaqmUMARO5{-9hIud0s6&zBpq7fT`C zt0B=zq1fkNh?)Au#{iv58M1J8-B~3cq`2~yAs(LA}>W|kB4|4W!x4IlR zWhc0FKfkS$5QeH;+x_=?0-@r7=y`(X1i~^x5LnpXTGR{nX$Lurf4KEG&K=UgpRNb+ zxgm`1D77xH|3a|ch^nq}#1g|{26lscIG+!yMJ=aqYCQAQRd4AtUxjNXj6qD< zCPTQ+%bN~+B@23@ps&7swR~6v<~hcBwxyE}$}tI6ft303|fl%i}Qqv#SMJ zeX@N%LYH6-WPAt zv(Z#V^MK!@6A^O5gX4mI`Jv$b&GW;AjajCaSMg9x~mOqjM!nX@zTBc=n+#kL4CroyB&ogQR z8CAWzORknYPOmh!L#c5hJ-c%P;0ad!<7vUk0V^W|@au+TkMX{^-JCUhys81*ja=I+ zj~-aamA?XM$2gA3K;f)gU7o1(dmhfO&*BjguQH#+Zl~zdiKsxPmjifGYGv%W+40@6 zv0!?M3yjt%Zx7cdz{I?K7PWt1iXg0%RxLX1>f9;MC$#8yl;|8a@01uQdb z()h7h(OHN;Dj$xZ#gOyh-b?5nJiTzy)Y68@x~7*EPb1WJi%s^2TM|^#bL^L|W_`W3 z<|$9veDZhtUtztG&#yfn5TR{;0|VtL8#FZ+UJo5COB=5Hq{i7j7pmarFC0Cv#nmT} z+w=mHps*n#gX3@Tzq^>#n>C{;_?U;YtY+ZFi#5fk*(RhzlZYE%z{o=E9$E4j;C?CG zt!!f4s~#v#bQN2rSUpql{>|cwZ6a|i=_w2f)OISYhWt8MaIRM zmY?So+B{{%S2rgT{?Bl*{mCpY-?^q8wGz-d*0)>Sj3pt1W@{gRFuU~Kzgr31J8{)#MfqKGYJ>d4lI(Re? zeyEi$vGhx5BmoR@BZf$fZXrhufNA`zEvemzP#&+<8y|L+a3WTMNZ|7mU%sGr7!FkE zU%J*mv-{7HQSy#?i!jc^^7GV4>T`8kSn)p*X9g6?lNEy)XzpwUm7QYFv-IwM%{K=a z?>D9{0r69j3leM3kvfF&3DKzxu$QHj%VHt`J~59Ihf@W0 zSK^IfsZ9h&xG-A15V7dYU;-GW%xp}Ye5>DoIh`hb2%LEKqcS+85Hvp`e5LKirH}h= z4tsLZ-Vy0>dVCqDB-o{1CG=@8nRIL9W;Nmn$Be_(U;Pj7fY{$&i4iX9%4baFtPp*u z_S^7~>Mng*kVZ-iUGfyjceqKbI96Lb~ zx%Qz@4(n)1o@exsW4yt2h*z7dt|VO4KzJ@Akn`4*30?Bbpve}%=%U_k{Dhhbk>*8J zJzO1=pD`oYyTT({F|O)(%A^walKYXIF)VHnr{YMjs1kRsSY4l-q~1M0N=>fyozc#0 zOy{ldpBMqx{f6=ohq9Yyf}!fIfk>rME5lB$bL5ug>p%s+wNrtF$z1a7p{eV`lFqiQbH4t1rukQo%9KM8JqS5z>xZ=#>oVt|Q7aD~1gis1_L|kv zL<6XQf3YWuhP$qBuQMgdenfGQW+}U8P7uPRbqo^q@|Cv|o!8FH*L0&6`3Ei%pV98M zVwCVXxZ|?nq6#6=Fow{YwXi_ud%qIgw`yW=1Omcap*YMV-}%%nUer%T9r*8GI9W!= zSzS;K?+YwHR#l)No(Lh0KNh6Erk2Ukyl)3Mr13K7OwS z`+eYc!Zp_0h}&Xtb&b>{p+^k)l(|YNJ32L(RZ0K$R@34=hOk0Kr~{VF*XwN(bZpEb6U4eih8|#_3Gk&FPYcs zRr~g;DC;zA8EW*e%0VkcBX@(pdidg zj$iOko7U7{k=Ji$J!d$cHl52FtcUddKcQi}D3eKM+V9!VC9c<^!xMH*?0qQALzmVm z{~~1eYw78X%XGIP={>vcWYf*r`cjj8yGD*+#1uMqVrNEDB>Cnd_0@JHn{# ziT_7bq)Jj+KpN47Og*t&@aEh9WV#mwAWXy7?zi;4ZuMtFy`CGryG0l`tI^HMQ=0?wvI;<(lz#lps=M0bm-e_L9@GL#o^#o_zMU>f z^8JEuy97XckGXJuLskO_7XECv!aOS%-UbMM~ zd~tf~y03bry$jaFKMQzMarjQb6HI0B`m%1@gG2&Ww zw~(#SnDrM|rGK(EFsRZr+jRJ5otww)4@HBTmXw1#Y3%A;=`D#T>8cZ3kgvaXhJLo`Sw2zAj$4Zx z+DS9nPbM1Zc&BQ6xC_R^ePKy;-qe+PsqQT{-9NtMg8Z0Cti{oHo5XhFBQDo7^%t6M zV|Xz}S+O~2!9E-DO9w!m5g{?kS)2jI{${jYCfd%iXm$*C3V}dEEM-q^=G4SeDZ^tB$dDQX&}!l z^o7r`{mfm(SmY}ZSK3>T9(LhLFNfcS`*-^uZyd6x>-6Q(#=fS>Ou*B|jCa|++xL6P zqBwJBx_x=iOKI$bW0gw*3uN!lthSzr1;kHq(iCSS6c);Bddzlb)eg9J#MUw=_i#Sz z6hxCoAR&e~s18m>@$rQ4X^nOgm87gF;51qUZpX?Bw!VNte8&p|h`=D}ZNqJDyydkY ztDxTcbx<(mxp3zs#RA2&j~ZmMc&r_v60@t7Qisn9ozu4odrWbmzsPThVq@GuwCn_4 z#$Z~oyopKeB}UbNlN`JyHYUhp4IV-qAll$ozu5p~y>Z#O;9 zB`(?!bM2z>rm1t(L&JG!0`0APe-R%+k?(MVj$XYDOU2+`E75Clk&1uXwy%d3?Cl)V zkYpdtBKURw)-h9WFKI8Wprm7g??Mx=f!{G)H_I&0&6wDx&B36Kul5-FIHgvT(LwTl z1QWtedSLs=(e&#xqtw74<18vIv5hFwRsO}8-%ytKud-GNaa7{;>!L@3SOYpy% z6+o3AD_%zXFD13`4k2~x!>;>@2g}61FtG1Z|No%e;5I0dtZW9 z{CxKn-gs@W1y_>de#^_U3j6ozB!vCERx3tQ5)8EgheKG`72D~*Bd#!l;)P}JNsW#i z54&uHR;XU%K+c587H@Hs9#e@Xjk-^W5@)3_Zx2L?h;QK@Bv_ke@&3ZSYkpc8%zW$f zTN1+*;r(Sqi`1VGY@$1gfKjhK^VMuM%ru7j)`xvr^_!#(3{my2?!3GoMwI_zPM>H> z`E9U&mgMb<@Tbrod5J_#4@iM%DS$%wm|@S+3z5RIgy+)OT zZFSy@LRIlMH_=tWf;zAD=ZK`F^(IC9V@)K@c+DBMPjB@o^B#>A7}~?j^o*Y8M#Q~; z@DZN$Z%b^CR-?>Ek$@4%2FIE1z(N=I%wb_+KwX#=(2X0s^AQE4wxRuVg4&GVeh%U% zkzn>lj;O4uwP}!mkHtUc^`7hzL(A2pLIz}6ym1y>zpmR^d|S*j=5k9nzntZ*Gp5H~t0*&Nz)=|WXQF{bkY@8)9%>6+m$?~Av&*mbrjyH>>p|Ht0 z3$ezsEdP{SRqJd!{F3QF{3yMxOsirq9f6^_o4{76BDRah%8ReFv(P+sg!Rnn)+;b> z0XmlZ2{~7WZ{5$9Q@T5VkDSYu>9}74z}c{z-hEwi0~mJZk4?=JWlfR<_fw9l`oKJo$dI1-g)-LgZ;g;0FPWpH67T1 z^;9pZd@w-)hT^-haiQ4#fDz|XKI|A%?n|S|99>n8cM8cd1OIEK8&?^w;Wz+`oeN8g zw^H3Q6or%e%kMbmLiy?)M8!v@a{gzU!+{@$RSFEzbj4D@FsP}wjc9UESn(cE#mtTj0fHDMjZ!zBeH1~A|fri zSdYa|KELxKd!fh6lJJ9l?m0S1$3InD0j093+N_uM4iyA4XQ{T{Q8Adh3~rWhbYMh! zj4tW#3i#CbicBoj_&H@Bzw*t10b)U0@@WW|8&vb3%TCy%#WL#kX9UqK|H7wQ< z2rT0jtylCy+!30~);-jD^0+tdFS5lVHUA}_#n6AOsBz$D@xESARM~NP_G_Icv0htU z#RzX+E*u(^=y$6AP#%7D>mkEc?Beq38o z;@wTb1R=+{dcZz8Xw3zljBQJGJcX|rfv!6Y(_8x4xOX9<^ ztk$^2W66Zcfil<#Xja9ywxBiBMbzCr=gm0X&9{2@STr|%Zl7LVwE+m`?On_o)%s2U z1sUQv<|f}?iPt^K-O{||npZ_qRrf3Y6@x*na{PE*_NFG!HSfsNKL}uc6*26D5^gO)}{j{iW5iWH5^2o!Frq8ZxHplMIQnYy+HkU6Z)4on4r|Db0u; z+TsYWX~u0aH**f)-TBHd%T63xz=ZP2outMKvAXq!w>Ip7yCreFe_=zIR1CSEqP2jFz zEq_$N_F9Gw#yDV#u`+Iu#JGxXc^Qnd%W(+5}8z+wf>K=k*ub5UYUQbyuW}P%;>w6IXvRL zpp}nS5qu@sh1_l$<~p%S)GIIo{%n_olO?LR5J~Jr*MOW}M;;@g_;25&Ppv$0=)#)% z1{DKDcFCakJ6B+9T0$EA`BW^zNJZZEC3vw}wxZ+jO?J_sHvmky1qA6vb0sNhlUYk7 z^KhJ(IY{oaUC`M>lwSxQq9CeI~2kzXFaRum?K$FJ;O;|NyPm(K64f_Wu z4B}?+1)uDYCJt%f-z|!&u?M&|mWEEz(m#H=T;$Zuz?N0?kC=3@zs6{veiX2V%#~@~ z#-~DUxAW|nn|_nXWt)Or>ljjKknULW7NK2548h9(+!@QP(GxuEBs6aXY*BSwJ3Hk^ zaUeo%dLW89?W+a~O86sAlkC!ElX8nn#yoARGJJi^5nd@m@sqBUHW@UF}>B7csxhS9K`6)_8Bc}?)*W86ng{GJ{8J* zQL71x6}ohX&OXWg>tU>Wb?G(eBs6e85DfqZ$Not&Fw@2H7YR?*H~l84WB%DnPhf*K z=y~%}5(vz<_f4q2f)UyExWRu84U=1HDr@M_pn@=Q!;j@IVob%1cw{Q>r2~*!_+KG$ ze*H545GS>(^TgSq5v9%}o9IYoTRa+$#-n7O07-X}WKMU>bF@+1u1Xc+_R#94U-TLQ znSjEJoZH#uNCd%Jt(|SF-OXFD3_`noYkA;&w3ox3Az0^g|9&qB&1$?+veaY`YZ2yK zzBtdww{uCRBH&cKL~i)RN^<)FWgfk)b}Ni;#OlvvX1G5d*IwhYJS>xT9@+Qxaqw8R z98=aiT=(Wfdd?SYZvX2B))i?e1|1{c=_s&Xp``Rynd+7o`YmnByTkhuiTIFjX)IcI z1f`(-lkQ&rwkxw#Au0rBN;v0z-aL26J3KrQDPE>$vy@SC%l-7}RO+gesQYiVe4aX3 z1aXh4_$A`W{v`K>O&!={wAf9ahq1F<4t;)tsph(lw|o)}9Ol`;CHo_M;VzRs&NSj+ zW6o}ZPX&Zm`V$(0mq_ko#-549?rwrGnZUo@THevyd;zh_?Tg*qv{HWaE50vTqmD{f|8_&r!{Tp1i8Gu6CbJ=qN#g@Q9zM zO|`3Nbzbz?LS_ER!qW3URgz2vU1GWm;e`$WV_GqOLgsl1U36NR{Dz{SYF<&u)owl3 z$ruaa!;M71P~?evYC?>b($T)pTL$17<#f>aaRjHs!4jBEMpUhyZL8W{p^&}(dA}4( zDu6Dj` zu!rficBI`OnN-coB|^+Y7$+z2If$DJvAyPlIdL011~T2iP}cfmKn=LDFYFPT8*z-{ z{{1BVe{A+=-ijBo{}Jn|p8Cmah3^Y*7+ z_J5cpXj_Uw-0o4CzVL3R1O9@G9s`vBr00%~Vl(7r(XK@t-B9ZB$`X)#Uu(Z@lcN0i z7~2rpi!|!L9271ZyKh}|_b1%PwEqk~_kuLyALhwF?QX59T>Lu||Gr2#!3c{I^k2nC z{r`>>DqGO6uBo|`KLR88oAAHZ{^_B{OQ?S=65Pukvt8L;D<;fOCVdg(OOiv}HHDRb zFxr1R;l!<(4(%O|x_PgOi_ekNJcpca5T2X^^N|$zr;q=1rAfq#Al4+YJtzQU;D3GQ zKB!?-wrY2O^0Q$~Uioe*(`|?Pd$>E8n!FkP2$;~b|rM=B4X-2CgjZ4MM z#VFu7A@-g>lXmMB6vSuq*o))*)uCsLmgQH8b$bv~Wz2o620|xQPq&B+&rwHzknV+q zV4+uJ`Tko#J*;{cWYWXx1uHuiDP0@MuFpYq$i=3sj+R9nh}~yC+i!8%3t6|p^cQ-d z$KhPymUKAkduwZ(!Xqd0TY;)o9$&HJD@@H?xI!Gg_e_HFNV%0;c5`YP|Fq*9Hh_Ch zbM4Rce)yvor3)-_9;1Qua?lY9WM)ZI|5$~U;XUor+oMz?MttX!9^z_EON!CnA#uhX zBjd(24&rsgb(ur1#XaDUo)%!VjR5eF~@Mrc{5bpIL zOb5vIwS6-%F>=XQhc`i$55Mk0a^P>45WLG5cMr{ah=@a?$N&`xH&>dJA7=rZ+;eK34NZ~v;#72dUB9c+;eV09b826SzU0$y{x zahg|=9_@g5cy2u}^R4RFb z08>G#F$H;&FMK(T@}h$>{%&@OCXNLLt?y*4=oMNmM5|ty{~l5kNTOYjUk|6?nYR<$ zI;?2XN#2N~{reUW>~KM_rVG<1OI~)5YzSFP7JtFybhY;9G%=4xIk)=De7q)JFOm`9 zn!^DDy1uXsD>;37e>0{Xo)=NVh?AnX*T0bM=Pd2#*1YF=G?hM%{OxOGzb#^U0@kO& zM=l8HDT^1tf?1(H>HF!ZXc+Pb6Z3LCZo@CYw@~%dD_l z+sM)WP<#|?0*0U7%=q~vw$~MD<^OPAUH%cu?zOX683l)9K7Gz@GXM&*N$AX?Uvoqyv78Q$(J3hG&)o^=Vc#LE5^QMnL)vxZXpE;qbwUc_} z+%_r8E`GTp|MID^YMVX|YB#wHJlOp0dx{cKtu-jotN;*DrRovR;*+rm=*9~#J`frJ6uwBjm?1u z{wXAsi+pK!j4BJ6;J9jl%fgS|4}T|eBC(C;Q5(09du&yQtgL&yYXkdT<5XnOfSG@E zhWHJ$FBG>jq*?$2{7OftBpT&ZIYaWQ-7e~zhcO0EzmxKF$q3ZpCMV8Y-1SWuK?N{f zy{MW3lKOJESHtc@*ny##H58Z<9$BaLX27shmC9bQ;8j?hJ^mWRyU-x&(y%;k#^SO< zv{N^90ut>+a+__4A*ZI!mKCl_GO@&r4~ zR@uA1JZ%Co*UbEtSubV}aj1X<=t*ULT}N8<$!a%j;l7zlHsQja-r(ARq*a-`dVl1X zTj%{7lb682ODw=Jik{woDdP5dz#Oy4XxW4n;_6gNSe2i?AG-7@6!yD}hp~1gE`)a& z(x970+QX#?(Vr{Yoz?QtTvv@dQ8UEZPJ%6PX&mj>G#P69hd|ko%o4U?*pj(G~ECc8i-vIxwlg=r%QKaX+uDA z|B>(|wyyNr^{BCCBKb$A9#go92QfK52i64uZYWdVg5SfWr%O%cSGS>xX!P2IBEEOg z$}A@T+}K$Vsr=qZ424Yhn+OBJ3+p#$#O44wA`2Pc$00-0_Wi80W-oIfHlRM_>H-cH zLs8P?3V!;K`IKJd4pO;0ZdT*4>e;Juy$+jX!g5ch_m|kEwaTC-ZC^6VO-_)y^QjJ| zlspNQ!O3CEu+gigDOOyad&p)T8UMyIidcTc&(`yJA(8)cILfKCkS2lr2eqi9kPws4PNctS%1outRKJ z*SYp|g!8XQ`uj;%;7bs1LC(c)$m>7}b@+lja29&|hA$N!g;e*rF~sxC;qk|M4_{wL zbo7wR6;RXYux3h_vXA7Letl#57xT8Mtaj1fa;`UYIYlT;Mmpf390aXI2 z0CZZDNNvX`lA8FowyKOE=V>h5L+oX8gI=lOAH8kWgO8=obUci4A399*0N8CSM+mR4 z-JdFF{UE~Y4`6J~C35v39953%6|Q$>0l%Lf;&?sQNnWg_U@ZZZ$o?2!*J*1x_2ZxC=Ys03D>kt9Vn^O@q76Vwh#n*X_T;0vEl* zSi=@IV>~N0VI`Tt5X;#MkXJ1NX(cEMJ3$P%&#o?%e8_o51_Er0sXr@fOH}FeQ6~&E z`Se3#=C3bZ3=wEdTUKDApKF%^e=#fHgs)aL7@bO5-Jp9V@^wQW0*OMYe^B)}0DT>i zg%2*$F9TOfH^fRT$|n(c{yjzJL_ZD@vwi`xeMeTdIGY{6SLx)AUzS-n&uH`Fp?UcZ;a#tiE#$==kdUpFPma%}lV% zqndhZP=qZVlH`Kz9aDi755|H9Io7@hx|!vOX#@1746B8E{%2>tc>!r-Wh$G+v`lJfs3rL0?`jcEx?NN9%ba4^jV>99>|+}#<1c3#M1syI zlPk3&-Mkk}@gL`fD=3Kmp2Bxl&ZaWNZo(qwtQG+h3W zCRalvm;UOtt~R5O;&zS`i?U1IXyIYx!IJzQ?d2^)SS;_2mn?`5&u&dLv+#m>9{|7S zxbYF6SO3e+`aq|A6uSb@cUPPFp2V34@BY?#sU6Gat5XgtfT>~^fPxM<;fJ>XerytE zycmVXg8T^HsvhFry4jS$E=97pSs*UyS`qf=oKA!sxs>p9CiJ+!6Ez|w7FYUKx}~Ok zuB^p~$rLK#{!E$7z&q>?f%tCJz#r%`&p)_PgTP(EbuS=QRHguu*=(deM&v4n{en*q zx|D)?G!yX!GDA`Wihd9dl`)SDDA`u84_=kOm}6&vQwfQ5vF)Z$zff4UiMO?r*7L?1 zna0+z+c!Eyy6I~@&j50n&x{Ih_LK&7MDi1njk-OxxVAVlH3Z5AD6IMkoohN?eVO)G z@r{5(I{*#hh%F1XoBP9S5$G{Ee&lwDp z(}lfx3~GlrQSv{sogmaFhGQ<3QZ7cP_GX*#%TXlH){~&x>0~Hg3AS`|knDP) zLFc&HxY1iG&agfCH#*6NpUqQiY;VN8elTDdej$+KIqQvSB3Hjnv68y!Bn&+^Uo4i5&&|JXv^mRBquY9F#R%$&HRD+|U`FSbk{n zP7b|O3{M8|Qzn9dA)JwQN^iaPCvoO6A*cf^?Go9kea?#%3=nbHw7Y8bTL` z@5n~|@QhgB%H?oHDM(R zr6;7NZ}G@OTY8SfQGGXMb{pmArK2Eoe}uj^G}^xReTClH_`B~zn;sV^=RwpToNIOl zgye8O&)|~dMSbq0NjnqD;`klN{|W2jzerEbZ(1P?cD}(b{ZQS)=-ICs`GCj6=m?)U zVMzj-px^lbxXX`r=u4<;@4H4Z#2Ywg)yKA;|HUpg2mwTK|1Ur=atZeT110{yW5)l7 z(p)m>A*PG}TAB-_9e$DH>Hgfpf5`2?NDJ)G{75!YVp>tuCT2 z#5|eFbsmnPjsB*po!)5q8Wz&F?tx9+wtqLw#2A-?Osty(RVlQOQ)}F)HLB(Ml`R1m zbct;)2>W(|WL5g`4y3P(wrWmHB&8moOX-B z&y4sYiIhJQQGa#aN>im{Dq^k;OUE2(OO0Ylaqx-5YWo-|0u9)c2#6Xhy7lQzm7}zR z%X`Y88&mdB5GUYJnAHI_?az3pq~g)4<8U{l)h*`jRMN@{+>G8^Lf-9R=k5kIo|8** zO}O&>7z?NE5#dxUyCg@6rjBxTXhl%kraSOC1&s~DU2{;ib|AJ zd<@uZd_}_k4%VmlZ!%S}%N;E7lo-u%k7zNSGxJym{5WnKL@*|JObeyowX^X~j%$)x zbu(C#$b$3zRRDf?jEGJkaBUm+QT$tIsy1snn9HiX6v4K+nUn zdsQ|(8zb@SslIM7(Li09J_otnoZlcsv^fi(Ltr)6((>1%i$of_%ag(h2POL023{;n zXoJMeZB{HGu&{uYwqo;LoDW zp^WKf7I_bUvJY<$6ztSt=%_L=5)xLir)ATPmmBNmuw%v7_>!l3Qr&)FH+x&5MqSii zFUbU^s2;Aga@w@dh;@gh{ylogLT~bj&HGi1)a+xvRA{-#Xs?Rq`^GX!rB)Si9P66_h?t0@8|oO|ann-*H2_iR`MhG$NO2Gm$^wAyoVs~~)O{xcZ4@Y7#;K4ggodw;h{>(aGr^E@?Isz1& zQjwnP&jUblQYCM~EYF*n47e|33vr9Z|)U{*|WX;)^ zK{-NBlwg=&x6yz4EHg|ia-we=P&0iHh~+b_pQxwwx=g0RhbhHW1* z5?Zi-N@q0YLv$0By1(w=>U{CRnf7!Tm}`3vJvvAA%3#P0u&qN=uBcbia0u#1 zr^bJ8!r91P!=TC;2PWkpeX=&~onBK3iHVVP!yVbhO=b2+j9RA^N)dn_h6MX7%!I@E zirJ^{V_2niz+K9EY*J>eE{X9L^A7=$#d6g@F(322y2$26HJPZD;bxi+H{yvv+a+ev zs8-w-oJieSt8B=rO(zRhQ*J-j=$bH%&|gpUsmay!gaqPKXN_}yde*d@d(RkXEC+FkZ%0E~NF&JSi;Nef4GiPsJY;wr$VzCna2 z&Wh;^pRx%=nS~}%X?12=5CcZX*Ue{|YgbbDKPr_1^9cHWV|53$kdt!e9=fI52YyOd z-P!zjHtuR9YSsD?u-1DQx%P4(#^HtidS3add%@OlB~m3Z7g7>>Thy?Tv8Oz*#45o9 z(;KR~kckR!rUa_o~X`49bWF%V!jx=*%moE#T^TCxxG_giBrpOZEdG z%O4R&WQ50`pEsxTIKK4YL=5`< znwl-B-(_j2aSM#bIeADoc%7(iDNla$>}-EPdD?p|;k`>$p05L?&UU{Xr$`r+gC2zi zHR}8yu8-^bu{9j4QttGZRJ(Sm9<@%cuLON7e5SVDjN48-Lg#}GbPTe{at<~%@6Oha zg_DJ91pCtFC;sZI3)n0*9;bk?R+-W?9kck#eP*6^W_e?b>lBg8zfAy9$VN+tNmz1W#}X!QI{6-QC@_a0(5O z;O?%$f)q~S79hC0LvSf1XrQpeT5I?2-QEAWtm|*qv}e3yrfEB;-y*r0)~gwFJd4a* zB{53-gH6_yyF0L>g)0M^?2I3)_$I(M(Zy*! zrksXfmS!TP>B!vn#<>n4EUVO2SC}-QX=xu6D}sn$D6OyZ?;y4&x>EY{b33u(CbKN^kWpd|stm!7{tRp1U zBy3h-M<>mmsw<eKx##@gwoc9_lY9o18*p|P+e)q_u}y=#8rP=~K7Zw*pv8$(M-N<$c2)Dz&Qs{Q?rM0@o{ z+uh#v+hi3P8K~GvxQA@a63WDvb>};`jH{Q`qKa7})3|8r>qyCqfTKT`>V9P-K;l^V z!AXm=Lz42>*!P>e284&@vd!(CbuhviXsw8*Dm<96>!^{k2?6tln$yR9 z)Zd#=&iD-R;=&f{x%FjX`@BP6#Tv#JQ<9^1sI#6ZHW2Z_XW%;;#{u>s`OU~^veW6HPWbIr zVzMwsOWLkTwoJ}PO_XeTCnf(zF{?^L}yyWq>_eifPc% znx25FW4<9^r{g>!-l4aG>eJLAL#wwx#_Mu0ol@Z77}N(f()+Y*&i}P?j?3eTYsn>o zK6rHMF06x^SIvf>Y_%J{F}(d>qc`g`M3e!x$^Cn`;+*Uz56gQD6X&d=myml|L-}qm zbJjK+1;>N76~kfinHWh+!=spIm9WB4@G=metoEP*mp$T%oQ*F)*cgc-5Q#u(FDJyz zaU`+Lh1{H{0aXQdpL$H%gN4QN$&cUIpx}?N&l~ukOnrsven0#I*$0$mrPIdSYl)i^ z6_WY{q_o+oJF}5AY@G$&yW_!iVRs?F@CrJv{ce;Pv!N-s5K^xG@0B_z&1s0OAdE}) zKi?#MlxRlFDr~5L);7xI9WFWFGWm7LX>JDzr)m zVe8|&N+GcT;;+JDu_aa27Phk*6*PJM5w08wcbI-pV&jt#<-G6uX-4t-C8w4~hg02C zm;t+*)XTU-o9ygLtb3oSHUQBt@A<$S7K_R&M=;LLr02B`L~qvxIg3ff^*gj%Hi=-n zXM%@@G^F{CPgQfxaoilIhd>Oc7P<2v;X{0~11rvL9OZtFs(Ikq5{}WXexs}Y-15!5 zrS2&I*pcT6w)$pfsLG3Nq_N74WczCI_+qyHkalNo8BBF^r;*ID8hSC>!xx1gnod_= zzhhY06!*K^4J~cLp7QH%eB{PIJs*MHn14SsA=$QY=q?4v>%ok;6)cW%h!rAgq7YN# z>jZgoN3NCWb1%#gUJ;BfcVSQGX*QOV4pWd1%+kR+BPl$ z0m1xo_S9@_u@yv(Tluz&Xoze;n)KT6?IqyM7aHjZ+e-ER+?B z7OuU(8czQCRB=noTyax^{&h?^tJ1xJ?so=W#36nzwXJ;tmob(SI!i>@t{5n^&Q;1} zS2U@m;VAx74!ykBLhYz*k?I>ARNW$hf z;EPX-W|SsL4cYB5c%|<|x9g=r9lmZ9%p*{Xsd_(%Dl)F{yLe6($-Duqpsd>>!n7-o za=r*A0msBt2H`>};{dYH5)TDB2*)m)r)bAA(Pblp+Fs<9%53}AJH_cz0~?h+IG2^% z2dKN{`Z93MV!ti`CyCMC9yImJO_JH%Gi@-H*LKl;;MiWjM|(|tEzep9yZO-SyHCUI z{kftSBuS{Zr#-}f@-haTz{A}3jbQ0W%bIBAp-#ABBG?J ztM-vgw+2SHuFdcy&mP1A&fs%y)!ZDqQ;;Zh&}X^z>0g!$7XaspWQ$=<1<_GjSQ{XRtW=awZG>j4>f2w5xzeaO||o8{7ga# zCIUMc)W`Yw^L1Sv7OTk5rU0v`gxobsx+vTahr=$HooFDp#tb|vj&EHV4N$GGjLfw; zE&^zB3itghvU8e6-E8PB?p4=zpWqf(3MXZ^Fr34% zh5w7a50eaJ?T`#k7o8-uN=eA9TFg|ZenW>Sfwx6zKISYDn7`N zCt+@*@9l?Hd%aHNCm6JUJ%Zd@EApGoKZ&IrA!qo(_zg^XS`jQGtpy&t}JMg`c&RI9IUAS-vLSYyrw+AX* zXW_tz*u`rcre5W-hTtU)o0K97AAUNqK+-h)jls0!z?vV>f~cmc-Eyz`MV3g-EI!N# zg(Nm-*)qIH&g(3lQcs%P*O_o%^*I!6eYiB#qVKls&IbpxkZ4GwC=OqU677TeAo+S{ zB62%39wZJOXVArgryFnQMIs(H;T{u)8QeIZaxX22QDe2h`7$h+4UN?KfE73P?3ahOok6+841=L+?2SPiNYSsJZ46YGo{-B zz`pR{<#Xdl{2VT@cl#{6iqevnCd2NwZkvAF^-2odM@6jv~RH9+$7T#>$uA27& z-g`~VCoMN~MAe+LCz#wne9v@I#4+TEn<$eOU77*vjE*yarg?7q{z%QjA^8u!*o2#$3)P zO?1L~r9u$xdbPT>ooQ0b_U9L z)561xZuLrDNLIPZRyyYl^S_}L^_qp$5)Y23Pm)vJo&w+DW)-Ypo;+8g7_cdm;4-@B zL0E>#RZgo;5CpD$`ju6!;%b@jcC#STxM;%7uc@me7~bihT()4F0y|;6?YXz18(GuB zgM3S4cYXmYUw3nv*nI3LLkL277}jK*kmQ?~dxNk#+5Ysajw^eun~5)!Ue#{+!)}Mr zeN-Is4#XRQR~CQC3e0gcswF;dBX;v3+W$-v(kxeVLqZd7)}>#zzEq*J))LU$+VmCvJMc9xIN#kYAh=b`IQaDI}(7i&?H{CdvH%M>A&jtUwio} zs4a@A=62ou)xGf_fa1L&BL43h{~Uw&|NGZ`$c_Q4jUhXG$vh;=$yoXI(hZyP^yA{+ zJd_39O>1UeVDJ4e2fAtd>nK1nTg&B$FvEfNzAu=431Rd|ME}K2{`Js0XQv0))vS5l z;I~N00y5F5{Mg zoe!UHD*W48e~Be<5Uxh(TJ>477gjzBGRuRMEwYu3zGZ*Hq93JK^^r3a@ZlxklTo&v z{Qa3i^?)6mhQXXGgLh+py}#Z?onvv8JtjUA=pF-K@BF&AAsacTW-+H>2g*``3|-Duv0mVxJ2?Pff|I?`oj#quws^r#h%a$y16LXd*DWgh^(_OO5H{jQg~e zAl*lKuzYOD9Z56_I`z!;V5~)|TxvZaBD9I#x%!s?eaqocomKrGtVLusq8-Qef?*xcz1Rb zJf?1U{ZH)5^Rc(Ja?(}RWDqH>YRtIL^O>AMzVZQlFs>?oWLMdor*D+ceYvic!WjM5 zKlArW`DeR&7&mNWba2AM=qo^wWvo*7imiDn4l0^`j=9VCC6u8bgQoJ2vYw!-U(XI> z$Y!9mto=FW`g_UEt4-tjo?Ao0c=$Kr_RCtIL3g?ZTED+7@Junrr-*Q^JIo_kkJYP+ zNY{+JmJ7LkaUznP8*hB?x*IVPE5YQaTDamFwRBJwb_yr+Ee|=-pIGnza)WL;Ymct= zEUBTOo_qyYK~m8A@49nyk3%2JE)kT`tIz0epZIPP_ahAX@jp3Iduu4)Q8QBfn?GI) z;wOSibp0wmwn5V@Ce2{-GWq)|wwX6N5dWnK=iimSOa+o&Ouy^EYezeqyI`avSK!q8 zRw;%{%|h^XN`%MU{&gpM4-O)Uqo`T>@MJS4>K!M~-}f=O11UN4v`4C~DH87b(~!^E z=Xb8I7>M9(Tcx^3_n-WKA5P(iZGKS2B#e}*348lrbfo__kWeC8?3^5`oV337((B=c z*fELo%RJo{6jxfo9EL#Zzidc(@Q%3oZK`H@Xk1Lm<;vI}H$x*93H{X}PcQPkmo}>9 z0nt##GPlhx#3I{=)l1kyK-1-6E~1YOJTy-~_>M}zWo8{Kb{L0#xM|z`=n)?Enj7>c zu=AXkonw;XMC%?GV<*lEw{a!JY<94)JAXtqLFauUe<0mVFwlC*+Dc9sUW6q{;p06E zS5E9X0ol;zdQ*-z#2$JYBeY+yNqUf6qMNWtJo{Z3pnZN3DF?qqWV`$LQy`4MOV?ljr%GRs@yni~S|&ZXq;jf~>ZYupfd zI))}jA1P`9D_FlvpuzKS3IS=C5NRtRJJHRSyBRq@hunAU&m^$}wte^l*+$s)gB!QQR4KaE2mlvS4o|?$`S_O7O@pdT9!y(T@3Bf- zUaIjVh0Uorqbx%>!f@oW#D~kH)*uy)r*GTcBT%sA1N+ZP4pR18tLsa%8kvgu+zE)d z^n8uL$y}3)S?0=H32yc{uE8%Y(?1^cPeWXgII^JWfBj=CA!_z8>NaL4UDdLb2G>nV z%^Nqm;*hegqF<4>K2ta1VTnYBYB_;P#~I7nTf(;V1J{7+j6g` zA4!g57!d+WqN)Ih)T1h+LBEXjqu9l$4>0ad06%Yv-W=f`x%>~u)GZ~{aE5R~aE|nm zi}Y9Vq))%fFZZ25iB!J53^VBlX7CT8Wc_&Hh7mW(i0_hN;(KJ<>_%xB4FZ0h+YCFl$PM#GK*+qwH*R}! z9L>%z@g~~*waP@achS<_%C;nwCL>B>bMN$(GeWw8%u&tvS|l~QYLTanLZZ=6xPEC3 zkuLYdE|;M}ySb2_Py}j815n(40PY3pr-_Sp=*GX#*dgEQmpiWBqfw;U@5LTtMsEr@ zu{e1g`$hn2Nr#qAj*e#M{cf$aOgg;loB~@x6*8UR4*s1WaF?Um&9}Q3&2*zzQOxA5 z;NOR+A1z%TD_s;-3CBwVD1SODO30~IN`sejQNR5w;fReht3<6bQpEimii7W`~^c_tD@b|(;XL#cv;RHnkx{Pls~0~)^lWz9`N0z z`U^DsPVG*D;%luM-7`_cl|ah(Ms=s#&hx_-#vtQ*1^w;>VwrsED-{{_da-6=g0o_rziTxLYj686(S|Z083B_g;;fs4$TvJ^@mGzKuW5sCh(-W zK9;z~n1JJNQv#pJI$L)0?ac_Un%DuQXAI^g!V|}pjrDUc`|6J6`=9;gYIM*F{aFUa zs+6G6&S(qRw>>8e z0BUPfdknbux+(jVu5D9mmDXK`R`F-Z$NXUzoO#+QyC}$Xigo#IKc2sB=7z#bs8DO; z^0>-fPDg>`1ZYO#z_r@^lv#5SG8S?z{5;-a+!2tq=R4xCIwDsaZa41`UF`4q>@Yky z?5F@T`D|r(qg_5RTPcvc5IU|hNPN1me5vpO#Pg&^m&>y9-B*Atm*tW0p<;)#*w_9J zGGA0kJ#~I_T+k;M=5}9sS>+|cZ=fxpv%bjbs6HNUSQWjSUj;ZEv}8Yi3E)1k+LY1c z`EXj9p`x}4FnL8h?>ZDUXNayI*RguPYY-~n7;U`10T?UD;ApVS7DJ;Xm;+m|#Bf-Wrsj zT05#?--w0ykL0gek3eoOEv)deY6m-S|IMaA&o*d?o$0OZKE9y9V!3A(hs0sS#k~f#T z`6a9wm$hj|$pH?5C5LU>DJ`>PXTP1OS=tQN%jpEbFb+D@WJjaOk3D&mCfp*;9$((> z|7sGW73Y5wh|PahR|q+%t1r@^2|0qBwLv9+8nvXXGz=&CAooLubnQV+DE+8bi^ju| zs*0mJNAx1|FDW?UvO|a~B((DIJ#Z>uEn(`-9$h5c$+&9~s&&A9=dOFaA+Dn?Wkj3guO&tYRo@HAYNw*vx|mY-UO^99&pfzZGu_?K7gaa0fdutlIvI zb_i1zZfrw;cy1dp_z7Zgf94iej=(sRw5iMpUBu)VKL;SZmOxm2u%S33>7g|i`tZSX zsiU5BHUS`!rW8GaXy^LAA5~a=u_0EZD>Hnl@-_qKfpDeniJ!lz2#DKjKq7fr>?12L z5P`{c(a=MxzNo72P`ibGzip*!jPw`q2_sH?`d&4gtxi%#&eDu zL~Ub|f)z5LjUUUFyQp8QL{&FFUZL2bnIuK7L-d;5$o&u|W=~S>q)zE1sTbjmwdt z%F3sek`l1W|G=!tMzJC%Pqizb#k}dx4NyyZlyR2 zjqgZjVtZ@PY9bop20>C+7=?8&fNJ66d5whjy-!a0lr1Erp1)dQ{;%P`h<o7Eym<1s~BF zCkIdrjEin7Y%`#8g#mFl#zW}9JbA5~GArINZd4!SI4~1kOE{n+cu_br){7Tni->YH z!O|2?TbhEiS)X|UoS5m#y|vtXvPQfZb=i6rAHTLDHDIide$ac#i(AyL{n94|=7#}( zOZSYw`C_t9Y?-(AHRj#>DB>AJQ-FX(V~^0At>D61000-?#yY6N;H|{${_h(*)NWLa z!}&=1?HqvJQ1 zpqG0nSW@dZ?)FyX5H|KPVf5MwMNz(R~a1&QJQAimHVj z2vWBCIvk9Qy6dMRMkp6QCT0+dkkr(A{p4Kb9|T5gKe^sKO%uWMRB&h#=+ZzfblRPF zH?aKMb43RxG=^3(kT zN8eAvWd6H?CmGXgiE&rj{B@!d$FO}w9~V+;k#*vM&#?lO@A2T9P`;1}5M<6!Q)mV7 zIlZ;rVW}SForzA3iILWnkJbhw$}9@F*8-`4%D&f4GUT?&`uJ7<0F`adyNij+knw4x40YDfe}S@kV$blw6Vzx*<_ zd-5o6P1f>UNn#UP{e6ZW*^(%{)BvDcVBb4D()|IOY>2wWLbUi5A5w>bD5Ud65JcmN zkeI$nSm5tV{VFma@ z$MQAvmUynkYLIrO{+#gtq^wv#&VbUbObGJWr{jn`Qt>5)V)DfJuCT zwn*LWPocibqBn*>lUcAF7YYCO`q;;jjQq&4&$-IM3bmi}WRxddy%p{+ZZ5FTe>Dg$ zHvv&0>PVi|N>2rPo_MJNgHm$c6B3IjQ?Pml3%}5jHZ-$B3GMyHRDJEA*zjZ=U6$?i z&OR=+U6HPp7bH1{Ku$GQ{FeO5Xg88$=EmM!`%1FehQ=5Z9ioS_a3M-9GMCocP&HzS z2~Fu7D2Gr@6g2&Df|*CaMtl$XD7$GO+QV>PTk8~Ecl8CmPTvJ)a-ZDZJPVT#J zxit$AX~||;$@AF0oWsa%nU1-O>i|J`cM1UUYBQ2_I|l@vpc5g?@A+%|b3WJzZi~(9 z^Ly#o)rf)LLHU=dD61YzZ{BLBSWJd%)IOuJ2OJ+lg>XVI#37hps?C_{%$^t}{blGK zR)|k`2Mc4uq%Eg?$~}l5BGi104^&kEcb4R7Ei~JBTc$|#4|i*!y3fAY>K$1>JPL#c zI%@6`)Lv5_VY`c^rc57u{?w!m?&u##qtX2cx}ya+9wYU^c?sePz(`2{8JKI;_&uq# zEmM^`QzvUq@`E5Go`HeI+w4aQG3^E?THWf19f8)=Cq+a8w%#tc+T<+}R%?;HP>&&F zlXA{BipNx*{x?!zn~W>1IG^)WL#kzaa>~!NNxGwI2Y-p_wqNo>MHswtvMl}$Ro~cO zp^E=6sFEoLtLQlUKDNEDVVVs3>W@1t9K_iu`BGO@-r)MKT;X7A)*^Puy1b*`#J=2Ggj>9##~h@Oy-UTpj$RLTd67E#7Tu9`Sb%tZDa*_xQbeeYl|ZoRie3n%d9L zl9p@MUwSs9XReZNkA57-M*w~fNSO)jHM=%w{{|-C>J=0*EU4N-6O-O3WuuY^hO?a!aavojR}Ko3^{LXu8iZvt^H zRFHD{fUCpM6fyDhKCJ_oQAP}v6+oEc}BCXjYg~ z*lFD#GM-D2twA?`=&5`1gg~prr~%DUbAw8dX(SlHatA z=&5NE%4a;uYm+@qq)Rq22noN`&tI`d?XLSQwI8ySoJJ&k8Z`4ZXHQeieHW}^GwNW4 z|HMYs=1Y7~GpkqIqA@CP53Ylxq@AHQE!H_eN zgCU}1tP5X)1Pn~x`+*UXhO2|ZWgI%V2c3Aid%{vJFdEyae3hbm68=^)ZYaZyGaP+( znAw;|cA^e$lj8xRT{}gNBMYzf@$jJwW-&O)jRN^>d^oYhv8}e?&2YjJ2x;zDmRX-n z7A?NE(`+!2GiOg9h%d+I%^o^8?6%#HKAAn{IGmBh&$J@a!KFsVOH&b6nrcw)d0DL; zK_gw`N%i0&G6wElDp`_>zi`UKEs|aqQu@~37jwkD=S{o-?W7xwiG~s4LE>1d-Lg7X z=Tbcn(#zTsX7n~WfZt6W&$(eSUZT^EY&RXn@fg*4RZzjrZ9!*AwU^q9U>Wf!drDWq z8Wqrok75FrVor|AvCQb8C*Usf2lqC>(J3L-r)* zZyR02t;thLFBM$8ido9@wEnPZGaJ0ji;bFSd631_X3X{pR%A&KF2AlY-(L7-UVO)J z6tQJnH8(NZfDJH=w`=O_)`TM)as~}z&6Q)!<*17lBASz0S6p1#npb4=j({hvsxXftLk-;G<%V<+_?&i?t zh5@lHbsBFXMFZ_Gl{pArYPKShhjv6a`x%FhL~Ed#HT0iLKm!*FVvdaP15$VRWfob) zeY53MCy;-%3NInt5XM*$&^akvB3UgJalLHMtLS*k69Y}p3XFHz8nOLVfScA>!{py%W zYqw0mB8&$c-z}TX$Go#%fFSO;!MSfplC`#h9pJdqGa0>TNqBH^Z3j;{-oMe;&%54& z^^A9;BB%;sL&fjwYsb@XMw0x{UV7mBP)WyEON2*b@aqU8*mY9tRI-kHiw3*-FnAH( zYumAxYhO|hDa*&Nz)a$5Dx@(;1nIvYY`e*73&7MIbnbHdFUBHNehT}mCD=c$s$M&T z{oNq!-@gh2V8sTTO($9`E#*OtRPKA&W6J=c_WK)}4{|#=WLkN}qhmh10Of&|&Pz+v zX7)v6oB@kW*-6IQF-*68Qub?V4{YA}B0n!ukZ#W9m}XAsHJB6d127}_HEyF#$O0dpQmRIlU-dDxe5o%fs`L0Q`DyW;}@PwjD4Y!^E{8Z^jF-b5Wc ztn@XO@wyC)FSmE$@KTqsEt%J+m9UK46;DkkhN>g?8`Pe=2j#4LA}U8Hq{xAkB1D7^Vf~*4^FibC<698zy25s(cr8~mh8Dj^>3q20zZS4DfJe!!7*^cjcU#f6 zN}g!$&g0T|Q|nHPWwhM2NL{Qb$f@Mb{3;X}R&XASjr`Osy0*W8SKv5FK_k-@?1e7# z0h!g1Ry6Jrn}r6A&o~!jVGFw{FdZenYlqeA#8$GKA3wQNsrSpmjB7=$96Zy#Mk#(+jMyD?17;*on{D`$+pUkpds3Y@l)XQ4eBBLnOnS zR7Vl@3S*bsZZyf3)>K$rPoQrMDy1{Fv0awU(=~DZYvn3G1UOIt=AK#}RvLY6*{X{L z(Y$ml0)%;`+BAH$AU$P!Uo{b(#=N<*NqY?v0~aF`)K%HAI6ol+KZLu3{w#R123-kes+xbS8_XQo@qG7zi(!w%Tb ze&qCT{wfYc)KA$Xt=Y2hh^-#dtHp+(B^PkpzB^w z($bM%vHdq}!5_S)8#o#7@qSxtV74bdD&tS_IB|z9c_i&cLI!*)dvcWEXhG~hvQufU zNn}4?<9?rbVo~%8|M38L%j_B1(4c$&PM_ z-KRIW{?|j9cXig7c)dFM)w8g-hb>CqIUFrg+|NQC0kZIsTER&KGB33~*J3{M<+}ev zTKtMbF(JG?deFTz(T^a!q2ZWuHp>-cGEvt3YO%*8BHp93$N|a*`TUKDXrc(w3QMNs zJF&k5AH!8CIkO@1^|7y3Som@w#g&jO6t1n(gE@;x8D>R(ECDm1fK^HKEUM|vs48Awd~*v&rnqlf{t9>DkO0$k`VTb>BVG0Qokn209~Z0m$(65yf3_6_egrSSNGad%S}(b}x(D>!iU+c5eO<$rWcmiBFvEnt?@SKXK`*GygC~(oYSocf-2DD|-w)4Q+lg`>9?9jb@sp|6y`25H~h4N+fEO?LqS1}`tVZlU4CwCOTc)jf-Z09wUv8f&Ij)`c+Dh!37G-&&paw*&dMcb z2F>+&Q=21Vcjon}*4)Y1Y4)Sijd@7p;9`Gf0)_(`@`H`K2!go{`!GKsk@}$PKUjH> zH2*=}zmVUIT!8r=_pw73Uh9=bWGXKFDay_YIj>hxKTR~uG)m{%@AD3`1|W=l*6%?Z zOw>6Eede%^0CpX>8vkvvX>-bV*FSdcFl^OIZ|dF^0IHiBVbu1^V&{@+j##uxsy~dX zl@Ep^9IiA1iB{08DuCDyi;RaW8PzDfWHh~LTR@4N~|-%bul9aIj3qMCGO9l?-V{w7K;!7 zp@POyaAGHDrB<7uc&=t?vfe>Qv!-Za@d2TBq^tAyv;3{kX+VT3ad{QauJmiw@^5dK zB$th_B`MuNzBfjlu|uus^mmP^!d0q&65meEFf~p~X)Z3^`22j-KbE&zr(-6$JP+B< zZ&1U*kDMfrsen#R9Nd&vhY!L3pZL+O*MG-~7FbTojW1`)j=cgB{xDT-H~}lcdF>Ux zbG3H!blnOM#hbVNe?ymvzuW4}@h1~K{mvVerp^vu$eP-G@&ZYE+-Qw5@ry5ThGpS^ zc2@1>v_?6qu)}JqJ|Vqz9uj(eq;s2pykzFARZ95XDy{j`fwnV0(`oywLcQ{p{N(Z)P~RAx0c{ot(j3smf4q9okIJjO1ZhymR>Zwj&vYMeFe`HA-s@1{lzv z3K(~C4-|fiX8g%%-jx>5P_uz;;^l^UMFz<~x^6t)^DFjOtYJxtHEPlIzl5|L7rZnN zKI%-Qn`WOZ&H7cO$CGFY9riC)3^G4=_LWTuK}R~LNf1~I1rI{uDgnRit(r`;Zu zbZ7}37d?R)M{H)YEcV^4RzLoUUd<2;r>=dJh2FhJb?OwAah_NO(ytsqpQh7xnj`J> zmuVZ4)6;Zp5|BguS82O1Udowg=cB8fShSsuXwNm8sUZ2W0ALLj3B^;uJkM;vSjpttDT6|;{dqBs^%<0m&tPG)dT(BW%AYSg%=<}go<&-T6i=}%!1c~yKDjGpv^b?855Reh*P4@R ziIps;P1mh=uJb?#wB6g}hguHCnrP)xj20Y@9?R9EK!!I$uNd1FUNK9hUZ*F0e)8k> z&^2|le{cM~n$f~wRK98xKDhCE7VL97n^@{;M3Y-uHb}JGSdThiT~rKg%&&?)TKU4^ zHdCQe%q@2*Ae0Yg;9v+Br#=>;c_32^P!F*5<2;yuY^Z9kTD3GF(t9y1Z;&EUg#?$c z)M`Mru8>Y4wLm|CrWzB*L0;zgdSlLJullDUAFtoD*BC_W6@Pr@Zpf;mM=eA)OpK^^ z6-<yy#v>Qa_7x|f;1i*uZDpxOu{Cz;St`PAZ*~#Ecn_x z!T}@1)Uz~2EU8*<4S$IX`70k?M3l2@uc1M%ui+Ch)5^ngato*cu11*%7C+>Z;DiL}p`kI% zKaHqjva`WM_aBFbStMm2RJ}ExJFifakWsg%E=WVxD2SuJ7vMfAlM82IM6#Yp%z){1 zlggQsaRS7Cr%JkAPO9T7`sgw&ng5j>`dS~Qk;E)ZZIq$`iEaZd8h2z5BK|`uvMS_h z?c{|y_zZ%prW|$kQY@A=9+my)*xVy0yMJM#Tz%yA&Nt+!CY7?|e&yy72heH~hwaLj zBiQ;^?|NP^?ITNCx8l9P*LT162Mf8edwz>qaAW`TcHNisCla0skv>^%?oF=4Ye1`k zSTG|<)ATl&v|d7Q(uki7T!AiAd_J8cCs8aErs#*|dcyO}=KZ-DTP}$}cPcqnT8P4h zkYF2!jKLCf9~DV`S!GT(oSU<_Ng_?+Up!}7jp}+Y*jcYn`=3Zz5j0xKtuCT7Wl^e( zsNvKhe^VFwI{GKRk*SQgDZ|NlR#i$6&8t~o0~8nGa}txa{mtXkREY1NGJu)mpBhWx zpAwimr<=v7*)voKI1(}!iMQ4(Ap{S;2Hi@Y@HhO~_g{QT6z9WoXKJ!kY)wkPm!%)z z#w8iiL!{jO7Wt94s?f-NW&|lqh$JI}Q6szJ%ODGT!tp;%f_FhyV8WNCh922=&{WNNzawADYGy z9qT?rN9a)qOpX~}1hjl52F3<<^HOe|>=AQ+Ononk+LH212w?w!C(t?d zhwc5;dwEX?wCHW@dh}ZUk#76?TxC=dW%iaY>E($qg%aI-KGt>TpN^o-^0J~>!9OYhN|g)MAnT& z5Ut2~D8Xkc0rtejDjMHquu;XFRCZ<5>zAGlBRbXr8I|jqOmeN6xy)9)hhZgk!o%rY zgV}gUX7dzhuO}Ruvm$Y=n=G1WOwf4xP7Eg|osye~Gg(4r5r_qbkajy5MPZirS<*Ae zl(fi7qrd6ic}OU512xsDsB{Ri5vGDZy%ufatiY49e)0buK)9h^bPn0EYqbzJoMWBo zcoe@2yOpRxW!my;7U?KCZCl!p?RD@h9ij^n2*+ep`A>7o7MT5CX{uJq%8ohe7s~is z$^z;Jcn<(b{P>!HvUTb_j{4Qc+q(XpBq}BS714rn_7?F}u{LA8pLN9f zUl=pb@fXIlxc|}}pqZ3KX>e>kVePTBa>u{XVM6>Tk;PuZj!)+@?D|2JAkei_I%CM@ z*|f>-=qDcB!@}S5)UUX|Zh)^%{+RVV0(awQtT|9UY&rFZ<;SAm54fcaw@s{njd^X~ zYHDYsa@%$=-FW)GSVueYKb=zlVorR=P#cX@0PARkw2t|B#~p4+6ZOei3S~tfsft@& zR3a}6nERf2xlsd{LP0Rw{MM0=?nI(d*fsA*0%^;+N?&RCP?ypi_kM*)T&0>w$ZwPn zp_?0=luw#bGQ=s}2WqMaj<4@wabLZS70$>)5m<#^z7LrIQqG+$wX)L|JbKy&RWdoa zL;!mJGOh{{xRC4NKmk=#4(@jayYW6!mR$FlLu1X(f`%6u94Gkr{u11}L0=+I3_$fW zvx7{Me?e7g0frulve+@nwoGt9yp&nTZ$&<2vj96?0Soe`BsK5Hs;d5b12oC&gm;V) z@x9u|-uTQdJHtzOX=u;y5X{dse~sVqGP3oXKmL|I$xMq-o8AsD|5UPrpelgNu z4)a1+vA_-dHZal2vArTs02?&LHHKB5>1TSfjP=?GBE&x(dK**EQ)J@)-$}ui- z%AZM#l`5~b-;+uq@mb5^jo-D?+>U3MFsJ=?SZRC<@5I1If*mCBJ!=tfW~5+InR3Gq zn$_A+SRz-$<3xF9t*&*7^WST7qx5AQ(WB@a^_(=nF#hb~!yyQH%PAWk^mKR>x!1{4 zzdwNmba=(VctEV4tZE&VgDyfb5_ctGblE)9w1a*z*a+no|EG?wa3DFm6UUEV=TdGL zNw>@2v4Y9CYsSKaR$zuN1keQqR}7EBkA_;@o0VB9XS)82E5{kA*k2dM11X}ovPfCG zk8v%!xljD~xh%G&-g_`7uyx_fhX z57e8V@Yb7Wk+?M!1oOW8FG%f(Dj_oc??!i6fnkxm7lbRr)CHw|e&QHyg4&IU z=N-$rS@E>EU8tNf0hC}on%|1swgtf@k{SbwI@GW4DKe)Sv_DtC1wE;T|9{-QWl&t* zx9*EWa00>I-K}wl-~@uZySoN=cMlRIxVyW%ySuxee&6JO_TH!NhkHMrs$11nUA?M% z$?Un-9CJS7_l)mzNGJGOFL|wt3oKE^Rft$&3cIi4-#d4$X`lzHIf}CmK-#LSiA?0; zWowr)>Kv8;vsd@^aV2RTMK3W{UZY}_nn!%&?zci3lmz7sbx~6Zg}NorXDL`)suX9- zpxr^jHw@O3qQ?>rOOz7c=}&ue4gQR3G6XABA{z1BPhj*zI*;S1A^wkuCeb5a^lW zG7QEYW18H#TJ0%uAGdx?RBjdBTeH8 z_#)32=ZDK=op%c{oDJ;m^#-&e`x9aie2eRX!F9khq?y%zf5w~k;qsMaPZ>0Ln{3E@ zc>Ctl=A^^FGmHN}n5M91M88Kb z`Trq#V!=>CjKs6YBP%)$<2fy2+@u?up!~VRtt2{|-2g)R{%F ztS!223*7(88rg!1!bS}{5gpPU$HkFy5(2K##x&V5vn+3*!`qCgC?0-)z5m>N<+RpH zd9sx*RLBA2v>LS9_y*u5DBa;x#Z##EK!}@8h%cjQx*B$UKE509@ktpwxPQX2LA12I>lfLOwGfu^V!PotqdY+&TMTE!ki-M> zSVp{_iiZh?k6Uw}EKd@+tcA_>ZSI6+-T72o_!j5PR*ItdGa@rcC`LJ&OZQyAj5zpz zv+?^0G=4jl?IzEl<_-L8FF~^ip>FA61{o37Qk!G-pn*sp`WpgBYDfOlV$Uor1_ADFeoz zb&bc>6QAi{QsRwj;zQ#(dF1*Sa5G6RRA@Smo6N7Lr#nt3h7IQG0g%6>?+?5@5Q4_b zuGp+}_mpP8sNd(PFC6L_lo)5+GO?)dIm&ylyoR0JFW4;+z^F{bTFJK1Rf(Tuge&1k z7idqXK_RZtBj9Eh7AR&miwVrfr=0=w-pJPt2Q*G3wf3*8=FLt{3X#R5iX4S3PUOZH ztI^r{Oe33laJRz{iuSd%WXBiV^9)XxwXmSMDl1x?o^`3OtGRW`tV+u8kcoPX4VFgq zrYkS7@B3pajON?KHb%}H)5F~vMc6%f8vc=6^!`h35povYnyDsqO-{;<7%jeDb%WsJ z#<6=#1NVq$Jl=r3G~ENgxE8`~p2XkTzzT^UIh(;+6Kx(%1g@}~VTEP8W7zN$k5i8t z&uPowf$@0*K#oTCi2=#fk1IbU?N=vbt1verxuEM&e^bqeCyVQW3+X+w!HIjhuShpL zg8`Qu^iQxD9-qL)uVsI#bzstZl7nD5YX1wUTpRu|)e04NR7G9$s&~^Hur~c_R;|{x zWC80iBY%4S35koraIq!Cdebk%Gcmp=b2@q8uUDC#Z4Q{xJBlj%*(X;+a=qy=ut#T8 z$X7dfIw%GFQJ3Ti60a$dd??8$UfG58G^mZ((3DrgvvJ9O{tXU2;NYYwoiGA<@>Rvk ziAZm?3O=tLA*MdNbJ?t>vWw$$cI26$M@`JFIkPka15jf4i(wc#;wPF$PhBak7sSyf zHhVrp6bvtLr3L|NIC{J$l_HLoR^7#n*qVX?F&hg4jYK$D1HddOi_F+mr5_#ZF1V?w z2PpT{iFIGJZ2mi$g1Nm-Tx9tdymHc9x}D_XWo+7@qE-D@&RA{ZnR={fyS(R*P^CU$ z=73ayGX?ykg47YG*Kq+wkQg4rjejiADq$$H<99Q@x=Hgyy;s#RML=lPyW!`0!**43 z668lL!gn;9x_X}HPHVRe5d;`% z)zTD>*QBv3h`!IHXww2oHWY%_eObPXsOp};qE;7(^>BTJxc(;ddxyfH_h_qpgAcfw zHKI#CjUVA!xhNRT6W;0L2myIIvIDc(-0`LUl}@YFhA~l_Vhg~8x(|)`$!yJJqEU4@ zE>{mTQlS8Zgu?%cbH!b+E{Y(~K1pfP9+mr^kq)WHlZUS$J-G;7O)OEuk?G)}5&~1| zcz2ka4ZZ45_2* zC%)>t?^g3WpY|WpdHMMm-=un714?8C&zYtX789G~EOvy0KK@^vRr+2NWSxdXHd9gk z%>I3%t{K;gGu46`_wlM5Y$h|Hc)pF+?$eyNP=c$l@YyP2!h0>6VQLCLNP9H1m$0y0 z;39Gh%n1YZ&yofd0EW;|_RG)RH#60&1OJ$oAKO5mza~dkTD9DIiM|7Ts+ntwBi0~o z-twjLqo?3T%QOGdwglv3UJVUzq2Iv?PPv|?MsJ7DY9TVbqFu}yq^h z!lPW^#0ENI3_FNl_$|x6afs&iEx1=3HBO!nvyRZne-s{*W`fFbI7CBdFu+eAwJIQiIqHL#}!iiVJ8914B$|rl4%R;gd zeB2Q+AZB)+@+liUDscMDl}W3c8t)U6B(bGcM8u@hUdpT*MBtFis7;2)g0P(TVL->k z&H~;q?ygw4OUUd4h3`hD#8{rc!M$@PVt%RCC!Bb|&;N>>s#h;-JTWwKRz<1D>UnlM z^%-1$qYuPP#x&(UJyajo4|Dw?vXj}&`6zBy4YS3Y zr{!IkADlfG`MVybOFm}|^pT}HypURI;BXU&o8`?pEhc`X;3_iC5*(}GLgl^0Gf^BrK!-879s^-Sc`{Mv7VWuS4vbnID!}B2K!YW2^Ymx$V5Dz# zli)c`OSc>e*cRvkWnEJ*{o4k`H8D?Hsso9^Pp|dG$ax8a)1fT zl9Ozym=97#>%n?RC4evfN)j8A4)#7=apz)o$rjf^e?2hPN80QD48r6m!I2d*L9XRU zqP2_fpPdcr)>J6*^L(+U1NjV}uqg&1wDG(q%1Sbjp5%0-Kxp$LylXcrS0F_;*>W`$ zbQnqtTxEjgTt2xYu2N;AE+P1-za@1R@JToXII!O5m3?RfQaP8m0L4?NfM=t)HTDC- zY*k4-xg14Sonulp+lwWfEemBLmgL(x-(lJI%$XeM{szj<=O^w>CPzL#_kgD!s$+Or z@#+1nlocJG1-0Qc-XPJh3bqs;x=xpciM&;(nJ{|x!|xV_27=Fm@GukIh5QZOm%nD8 zEF`(hPka4h(*tj`y1x?O$QmUAng_JkrAnegD8cBld>Qlhm- z_kA>j4n7orb1fqedHjZY?Miscn(u&YNkVk1l%DNQu7tZ1vigsD%CN_i6VR9ovue>q0~GV<7;3@_qqhb9oc$hJKs0rV11vdU~qMHOQj(}a_M`aL`y_B zvFaUuh_7S@B8J{A%R4eSo&-msF|E>;6eORiW1+NAWFyyy_@#;oFiE)(^Q0&Ol)r3C z#MYJz!*viQf=FzS3g-KKMXa>P^QL8m1(xNeq|Q^_h`GPy_3nN}XK405)t!G)#w zP#=5*bCM9Ucr=|78GvP>i=B@Sf`a|et;h|AZ229fK}eT-9$--EiLE>Q2Ky<$A>d(w zsN|JrTuI`{`8a839kLYhO5R`i zUk&r^?n3@N0gu8_3QC%o?;pU`YaAnvsYINOeclOBD|Byk&r-bR$P`dM#-3imw&WBM z+%emI=2KuSfh9}UYgb|q{roBin&woX3uzc7tN|*gh2(P8o@-Z zcY>sHX~Frm{*)*Yc`W#+#=Y}TGgZ4%us@gl!Nobx z053H$ij(*`vscy&w}kf9_Aw4zXj&GpDRrOl;o*d2$N3D634{;Zl=K>Ia-EvTZN4mb zB@PJ|uc{O80)e8DRsYWve&RBk^@U>jH6~1k$ST`Prky zD-S>nsF%B3*%3xqMWWfZP>i;gcNuTIr`-!W_RAvHmQddJ;Mu_FIc`~^yG*sm+vudj zJ0-c=7MbN!X6$Dhy#I+|$ycaYY2ZzrSK(ihtW5BH#XI>2!HV;T!7<;#frYnnmo)N5 z{{w=R^R3xKQh1K4EzMWHvQbq$0|a3%wn8J?)F@xf2%?-%LbdIK`+$s@!~oJC?JA+C zkhwmEGNuEixa3|=YabL7xdA?0`yBM*Z3vT_2un>R4MxuI!{)fg)WMo%dm|-SX)Qz% z9Kpl>H@*p{`9e7=)CXZL6Kir5tyC$1)?gN zK9h){1GzotZL&mI>T&H1$;PZDLYqtPA@HZG9P>98@W~UDt8-`F6%fqonpi5gh*+@v zzqWC9&9keY=(*2E&+u}KK!V2=c33IVfNp{?w{?hlG$SKph-o)(d>HU2E6{l; ziPO2MP@piDPOz!`Y8$_bi-FH8VYs9$4-lc3=+497w4Ins>V(fzp)3oYQKd~6-OaH7-4c&`EUzqOD#jynk3zrXXgHS-UXU-!*}R_W zUq+MabC0G|Y(9zKRVEip@D(qWCUCYG5ZK9{#65LNq7JIq4hRSZ!@>t zgeMdy?%Im`LIC*7GXc=)MVNpr8UcKdZGn|FjbQ!GOBC09H==9Ste>enXey^)>+oGx z%jbFtL?b8-Y{nSJfuj(IU<=}PiG02k(Bm&LQRCL&qyiTE<+gVPwMU`Joha$l*r~#R zzc%aucd)+ytQ?hV(t<{$b|hE*Azh)?>a;>qtGw5aUp%upDm?OES;=2zCk$^NcAOor1c?mmbk0`}gXr%3fKmIt zp8lgVQZGL4d>0H8`)T*|9YVihCu2W^2O8{rVJTBxsWJzTtn*M z>3!}xEvEB|E(I-9n%)-QDCl1oGBT|)uZI9)M^V^)X(tT6s2b!SM0q5(rbj$He@GR- zhaIMr{jiMl1ZT$E-5g=#&o7j#Kl&4H{&n2zdmk^@?9DFi>Ep``geBfxm!(|KiWCnj zav}zs1k9r1@TG>30ksJmMeh>H5MCo#?cj{?w#h`Y)f`lzXhrb#9e{%YHoGH4w+V%w z(yhwn&*9R4ozNC)SpBd^iK>`7BivjK0F{)#p>kJ;MkN zwOjvn2GkX3kcgQ0<){-a6sCfjLSH+O@*qw!$`5naIvs5e!4|KBQLg?yR>t!NGOj^oP$%~rv5Y~L?9*v|NcZKMq`1a`s4WEVqK@H7{Kwl>e z@jvR;vPfI~$bo{}|FH1;x&g>CwY(JM);Y2NYx74cem_;Q-8y+Mp$Q7r=k}h zlJxp(ZJP#1NAKx1bg*#@#J>Y$DU~%YslVy>eO}H-<)~Z8nzHPBUwtYvyFLVby2LyC z3RrApKGFgqP3f;EgQv7E?XFMV%ZUS1A8LTieN0ATFo2ZFRyH@K4=FcBgOP(UPuxgU;bt2t@e~~?c%R`e6eYNA^MH$!edw>OpFS%4>ioa`5c6f< zuNqJuALryPa8$fEW{AP^f_L=Bc9Sq<^)p%shy=nO8xr`Q8{gPF=|VvyTl z0o~k&q!tzHAvGSK1q7vRQ7u&g=n5qoxeK+J@Kd)G9<#^5*t@L%ebCfYWIk9i<{28N zbercDKfK#Dhlxz<`Ip{VMChU!_4BJeM z>IvfIu@W*^Ig{0;kMC8dDYUl~`yaJZ7WApQ}f#GHlj1iJjroD1b?;QXDU zWM=i88nB2W&VKjZv3g010WB@}Tt1E6I@#Xg&O;^O=>2q-m?NKy8Mh+?rqI&|^T{%o zg|o|r`rpglX~r?sP|&Cq4{1_Hqma|!#GH0-n!jx4^B&FasGq5qy~YX}abQcBC>Mr5 z1r~S#B{$v4YZ@Hf=bRt$)n6RH$2%|hA}TGzmP~Dtn$KCc9Iq@uvJXlCMIqJbN|&;t zlc_CD=2-W@oY3$@c=@;%@FSf9-I*o)Lkk=brq!XxB@$_k;z}aHxq5EjmU1Q>M{3VD zuVu`%Wz7mGd*(bcB)r8tE#3q59>;G6siwLVE@B9~g(8E6>Uo`~Q%A4aLgUfgmG|*@ zlqX9s&rkvpC7T9dr=E2|;aYNX%IXJ4TLSN+=&ao7KsawH`u98J(-N?K%j!X6s*qFp z3y93T(ESL`3{XLsioEqJJc|Zpi@-G#izC$4FqNXshHBXtW^S3V%3co>Hpp0K7P{sf zRB;3bxbZ-k@*OmXld&S}M{=SU6w(WO1z!r?>4z3%mCczkh7ByhGF6jLZ5Hb9v%WF%;{N@i(;+i{ul-(D%&Xi5z6eqrZqmTG;d21&G(CKJ)zvD*CUEY7XZCUXkUi> z02~lTqCT59!kQk;r$bTK6g^4d8|S_+Z#K#Gz|wc=K)1pISyf#zrK9&1%W*w zcN5o=aQuvQI5$sumLN|Et{Wr`F6>@(0O;6zFJw-)#j{Lqn=F%dc277-+Oi#-x_= zYjDS2ml!8MH^)v&Cfm*v03$nL*4Lg-Ek=zA!7&oF9ww~a5C&6?hC8e zOOYH;mzEqXPhf%R8rqjJ>d?USL{)Y=AtsL|5`wq~8qZ%v$l_E4^&IfH%b%axOS#XU z)tj@z%9zbff~k%4Oo!*O0TaU(BTrMm4=fu>MkGjd=p7(2h9f!c`a_s$G#V`V6^fmG zX((wLoTK0p&5w#~xBODhA*r;?*6w)#yf=32nnkT3H|0_oeFj$7yR`M7lM5fM;>*CE zZEbwq)d>Sc`*mU2YjMMSF;?I-B33Z;l-wDU`tG`h>fovf%W(0}p)~Wwaz#5ZN4?X) zYFfEbCMxK~LsS3(>E{^K^7{mWnLj8_$>Eix9&*RvyOXd2y<+|WiY9IZ2eoF8c&Bk= zrCRhi8ov*6iX#-KQ}Dp^9e&J{@_eiRw?a^U3k7z15y}1xj$IWv%A!C95&xeOK_Rnx z%&l?xe3`fqyXrb{9^|5Wnn_KaxHr^pl9%BU+;&ndA1+~cxurWUiD z`Z0xT5++dnS!MrKuofUG$>Mq1f{7^-;dPEw

cFZt#YcBd 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 literal 0 HcmV?d00001 diff --git a/apps/api/assets/without-cloudfront.png b/apps/api/assets/without-cloudfront.png new file mode 100644 index 0000000000000000000000000000000000000000..773a9a8c4cf4ecb116a4424c5458a05c76a4eb3c GIT binary patch literal 130176 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 literal 0 HcmV?d00001 diff --git a/apps/api/package.json b/apps/api/package.json index 6f6849c3..49d5ca99 100644 --- a/apps/api/package.json +++ b/apps/api/package.json @@ -32,6 +32,7 @@ }, "dependencies": { "@aws-sdk/client-s3": "^3.55.0", + "@aws-sdk/cloudfront-signer": "^3.572.0", "@aws-sdk/s3-request-presigner": "^3.55.0", "@medialit/images": "workspace:*", "@medialit/models": "workspace:*", diff --git a/apps/api/src/config/constants.ts b/apps/api/src/config/constants.ts index 2c9d6fe1..14191f1d 100644 --- a/apps/api/src/config/constants.ts +++ b/apps/api/src/config/constants.ts @@ -1,30 +1,48 @@ -export const appName = process.env.APP_NAME || "Cloud Upload Service"; -export const dbConnectionString = process.env.DB_CONNECTION_STRING; +// App config +export const appName = process.env.APP_NAME || "MediaLit"; export const jwtSecret = process.env.JWT_SECRET || "r@nd0m1e"; export const jwtExpire = process.env.JWT_EXPIRES_IN || "1d"; -export const mailHost = process.env.EMAIL_HOST; -export const mailUser = process.env.EMAIL_USER; -export const mailPass = process.env.EMAIL_PASS; -export const mailFrom = process.env.EMAIL_FROM; -export const mailPort = parseInt(process.env.EMAIL_PORT || "") || 587; +export const tempFileDirForUploads = process.env.TEMP_FILE_DIR_FOR_UPLOADS; +export const maxFileUploadSize = process.env.MAX_UPLOAD_SIZE || 2147483648; +export const PRESIGNED_URL_VALIDITY_MINUTES = 5; +export const PRESIGNED_URL_LENGTH = 100; +export const MEDIA_ID_LENGTH = 40; export const APIKEY_RESTRICTION_REFERRER = "referrer"; export const APIKEY_RESTRICTION_IP = "ipaddress"; export const APIKEY_RESTRICTION_CUSTOM = "custom"; -export const tempFileDirForUploads = process.env.TEMP_FILE_DIR_FOR_UPLOADS; -export const maxFileUploadSize = process.env.MAX_UPLOAD_SIZE || 2147483648; export const imagePattern = /^image\/(jpe?g|png)$/; export const imagePatternIncludingGif = /^image\/(jpe?g|png|gif|webp)$/; export const videoPattern = /video/; +export const thumbnailWidth = 120; +export const thumbnailHeight = 69; +export const numberOfRecordsPerPage = 10; + +// Database config +export const dbConnectionString = process.env.DB_CONNECTION_STRING; + +// Mail config +export const mailHost = process.env.EMAIL_HOST; +export const mailUser = process.env.EMAIL_USER; +export const mailPass = process.env.EMAIL_PASS; +export const mailFrom = process.env.EMAIL_FROM; +export const mailPort = parseInt(process.env.EMAIL_PORT || "") || 587; + +// AWS S3 config export const cloudEndpoint = process.env.CLOUD_ENDPOINT || ""; export const cloudRegion = process.env.CLOUD_REGION || ""; export const cloudKey = process.env.CLOUD_KEY || ""; export const cloudSecret = process.env.CLOUD_SECRET || ""; export const cloudBucket = process.env.CLOUD_BUCKET_NAME || ""; -export const cdnEndpoint = process.env.CDN_ENDPOINT || ""; -export const thumbnailWidth = 120; -export const thumbnailHeight = 69; -export const numberOfRecordsPerPage = 10; -export const PRESIGNED_URL_VALIDITY_MINUTES = 5; -export const PRESIGNED_URL_LENGTH = 100; -export const MEDIA_ID_LENGTH = 40; export const CLOUD_PREFIX = process.env.CLOUD_PREFIX || ""; +export const S3_ENDPOINT = process.env.S3_ENDPOINT || ""; + +// Cloudfront config +export const USE_CLOUDFRONT = process.env.USE_CLOUDFRONT === "true"; +export const CLOUDFRONT_ENDPOINT = process.env.CLOUDFRONT_ENDPOINT || ""; +export const CLOUDFRONT_KEY_PAIR_ID = process.env.CLOUDFRONT_KEY_PAIR_ID || ""; +export const CLOUDFRONT_PRIVATE_KEY = process.env.CLOUDFRONT_PRIVATE_KEY || ""; +export const CDN_MAX_AGE = process.env.CDN_MAX_AGE + ? +process.env.CDN_MAX_AGE + : 1000 * 60 * 60; // one hour + +export const ENDPOINT = USE_CLOUDFRONT ? CLOUDFRONT_ENDPOINT : S3_ENDPOINT; diff --git a/apps/api/src/media/service.ts b/apps/api/src/media/service.ts index 95b531a7..6eaa2d41 100644 --- a/apps/api/src/media/service.ts +++ b/apps/api/src/media/service.ts @@ -5,9 +5,8 @@ import { tempFileDirForUploads, imagePattern, videoPattern, - thumbnailWidth, - thumbnailHeight, imagePatternIncludingGif, + USE_CLOUDFRONT, } from "../config/constants"; import imageUtils from "@medialit/images"; import { @@ -18,6 +17,7 @@ import { import type { MediaWithUserId } from "./model"; import { generateSignedUrl, + generateCDNSignedUrl, putObject, deleteObject, UploadParams, @@ -69,7 +69,7 @@ const generateAndUploadThumbnail = async ({ Key: key, Body: createReadStream(thumbPath), ContentType: "image/webp", - ACL: "public-read", + ACL: USE_CLOUDFRONT ? "private" : "public-read", Tagging: tags, }); } @@ -129,7 +129,11 @@ async function upload({ }), Body: createReadStream(mainFilePath), ContentType: mimeType, - ACL: access === "public" ? "public-read" : "private", + ACL: USE_CLOUDFRONT + ? "private" + : access === "public" + ? "public-read" + : "private", }; const tags = getTags(userId, group); uploadParams.Tagging = tags; @@ -242,6 +246,16 @@ async function getMediaDetails({ return null; } + const key = generateKey({ + mediaId: media.mediaId, + access: media.accessControl === "private" ? "private" : "public", + filename: `main.${path.extname(media.fileName).replace(".", "")}`, + // extension: path + // .extname(media.fileName) + // .replace(".", ""), + // type: "main", + }); + return { mediaId: media.mediaId, originalFileName: media.originalFileName, @@ -250,22 +264,9 @@ async function getMediaDetails({ access: media.accessControl === "private" ? "private" : "public", file: media.accessControl === "private" - ? await generateSignedUrl({ - name: generateKey({ - mediaId: media.mediaId, - access: - media.accessControl === "private" - ? "private" - : "public", - filename: `main.${path - .extname(media.fileName) - .replace(".", "")}`, - // extension: path - // .extname(media.fileName) - // .replace(".", ""), - // type: "main", - }), - }) + ? USE_CLOUDFRONT + ? generateCDNSignedUrl(key) + : await generateSignedUrl(key) : getMainFileUrl(media), thumbnail: media.thumbnailGenerated ? getThumbnailUrl(media.mediaId) diff --git a/apps/api/src/media/utils/get-public-urls.ts b/apps/api/src/media/utils/get-public-urls.ts index 56f5b2af..ea2e8f9a 100644 --- a/apps/api/src/media/utils/get-public-urls.ts +++ b/apps/api/src/media/utils/get-public-urls.ts @@ -1,14 +1,15 @@ import path from "path"; -import { cdnEndpoint, CLOUD_PREFIX } from "../../config/constants"; +import { ENDPOINT, CLOUD_PREFIX } from "../../config/constants"; import { Media } from "@medialit/models"; +const prefix = CLOUD_PREFIX ? `${CLOUD_PREFIX}/` : ""; + export function getMainFileUrl(media: Media) { - return `${cdnEndpoint}/${CLOUD_PREFIX ? `${CLOUD_PREFIX}/` : ""}public/${ - media.mediaId - }/main${path.extname(media.fileName)}`; + return `${ENDPOINT}/${prefix}public/${media.mediaId}/main${path.extname( + media.fileName + )}`; } + export function getThumbnailUrl(mediaId: string) { - return `${cdnEndpoint}/${ - CLOUD_PREFIX ? `${CLOUD_PREFIX}/` : "" - }public/${mediaId}/thumb.webp`; + return `${ENDPOINT}/${prefix}public/${mediaId}/thumb.webp`; } diff --git a/apps/api/src/services/s3.ts b/apps/api/src/services/s3.ts index 42b3de04..939231ac 100644 --- a/apps/api/src/services/s3.ts +++ b/apps/api/src/services/s3.ts @@ -1,5 +1,5 @@ import { ReadStream } from "fs"; -import { getSignedUrl } from "@aws-sdk/s3-request-presigner"; +import { getSignedUrl as getS3SignedUrl } from "@aws-sdk/s3-request-presigner"; import { S3Client, PutObjectCommand, @@ -13,7 +13,12 @@ import { cloudSecret, cloudBucket, cloudRegion, + CLOUDFRONT_KEY_PAIR_ID, + CLOUDFRONT_PRIVATE_KEY, + CDN_MAX_AGE, + CLOUDFRONT_ENDPOINT, } from "../config/constants"; +import { getSignedUrl as getCfSignedUrl } from "@aws-sdk/cloudfront-signer"; export interface UploadParams { Key: string; @@ -65,14 +70,29 @@ export const getObjectTagging = async (params: { Key: string }) => { return response; }; -export const generateSignedUrl = async ({ - name, - mimetype, -}: PresignedURLParams): Promise => { +export const generateSignedUrl = async (key: string): Promise => { const command = new GetObjectCommand({ Bucket: cloudBucket, - Key: name, + Key: key, + }); + const url = await getS3SignedUrl(s3Client, command); + return url; +}; + +export const generateCDNSignedUrl = (key: string): string => { + if ( + !CLOUDFRONT_ENDPOINT || + !CLOUDFRONT_KEY_PAIR_ID || + !CLOUDFRONT_PRIVATE_KEY + ) { + throw new Error("CDN configuration is missing"); + } + + const url = getCfSignedUrl({ + url: `${CLOUDFRONT_ENDPOINT}/${key}`, + keyPairId: CLOUDFRONT_KEY_PAIR_ID, + privateKey: CLOUDFRONT_PRIVATE_KEY, + dateLessThan: new Date(Date.now() + CDN_MAX_AGE).toISOString(), }); - const url = await getSignedUrl(s3Client, command); return url; }; diff --git a/docker-compose.yml b/docker-compose.yml index f4d3d760..11c3876c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -11,7 +11,8 @@ services: - CLOUD_KEY=${CLOUD_KEY} - CLOUD_SECRET=${CLOUD_SECRET} - CLOUD_BUCKET_NAME=${CLOUD_BUCKET_NAME} - - CDN_ENDPOINT=${CDN_ENDPOINT} + - CLOUD_PREFIX=${CLOUD_PREFIX} + - S3_ENDPOINT=${S3_ENDPOINT} - TEMP_FILE_DIR_FOR_UPLOADS=${TEMP_FILE_DIR_FOR_UPLOADS} - PORT=8000 - EMAIL_HOST=${EMAIL_HOST} @@ -19,7 +20,11 @@ services: - EMAIL_PASS=${EMAIL_PASS} - EMAIL_FROM=${EMAIL_FROM} - ENABLE_TRUST_PROXY=${ENABLE_TRUST_PROXY} - - CLOUD_PREFIX=${CLOUD_PREFIX} + - USE_CLOUDFRONT=${USE_CLOUDFRONT} + - CLOUDFRONT_ENDPOINT=${CLOUDFRONT_ENDPOINT} + - CLOUDFRONT_KEY_PAIR_ID=${CLOUDFRONT_KEY_PAIR_ID} + - CLOUDFRONT_PRIVATE_KEY=${CLOUDFRONT_PRIVATE_KEY} + - CDN_MAX_AGE=${CDN_MAX_AGE} expose: - 8000 diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c650a468..26e9a4c8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -38,6 +38,9 @@ importers: '@aws-sdk/client-s3': specifier: ^3.55.0 version: 3.454.0 + '@aws-sdk/cloudfront-signer': + specifier: ^3.572.0 + version: 3.572.0 '@aws-sdk/s3-request-presigner': specifier: ^3.55.0 version: 3.454.0 @@ -578,6 +581,14 @@ packages: - aws-crt dev: false + /@aws-sdk/cloudfront-signer@3.572.0: + resolution: {integrity: sha512-Y7yejAD+8cR8j9rdPmJ84ZTOi1vXw2wVfTL4GRRnfuFCELCYDE7HoHm7y2715AvKMGHk8lM+me6YK89lijwTFQ==} + engines: {node: '>=16.0.0'} + dependencies: + '@smithy/url-parser': 2.2.0 + tslib: 2.6.2 + dev: false + /@aws-sdk/core@3.451.0: resolution: {integrity: sha512-SamWW2zHEf1ZKe3j1w0Piauryl8BQIlej0TBS18A4ACzhjhWXhCs13bO1S88LvPR5mBFXok3XOT6zPOnKDFktw==} engines: {node: '>=14.0.0'} @@ -2996,6 +3007,14 @@ packages: tslib: 2.6.2 dev: false + /@smithy/querystring-parser@2.2.0: + resolution: {integrity: sha512-BvHCDrKfbG5Yhbpj4vsbuPV2GgcpHiAkLeIlcA1LtfpMz3jrqizP1+OguSNSj1MwBHEiN+jwNisXLGdajGDQJA==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/types': 2.12.0 + tslib: 2.6.2 + dev: false + /@smithy/service-error-classification@2.0.6: resolution: {integrity: sha512-fCQ36frtYra2fqY2/DV8+3/z2d0VB/1D1hXbjRcM5wkxTToxq6xHbIY/NGGY6v4carskMyG8FHACxgxturJ9Pg==} engines: {node: '>=14.0.0'} @@ -3035,6 +3054,13 @@ packages: tslib: 2.6.2 dev: false + /@smithy/types@2.12.0: + resolution: {integrity: sha512-QwYgloJ0sVNBeBuBs65cIkTbfzV/Q6ZNPCJ99EICFEdJYG50nGIY/uYXp+TbsdJReIuPr0a0kXmCvren3MbRRw==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 + dev: false + /@smithy/types@2.5.0: resolution: {integrity: sha512-/a31lYofrMBkJb3BuPlYJTMKDj0hUmKUP6JFZQu6YVuQVoAjubiY0A52U9S0Uysd33n/djexCUSNJ+G9bf3/aA==} engines: {node: '>=14.0.0'} @@ -3050,6 +3076,14 @@ packages: tslib: 2.6.2 dev: false + /@smithy/url-parser@2.2.0: + resolution: {integrity: sha512-hoA4zm61q1mNTpksiSWp2nEl1dt3j726HdRhiNgVJQMj7mLp7dprtF57mOB6JvEk/x9d2bsuL5hlqZbBuHQylQ==} + dependencies: + '@smithy/querystring-parser': 2.2.0 + '@smithy/types': 2.12.0 + tslib: 2.6.2 + dev: false + /@smithy/util-base64@2.0.1: resolution: {integrity: sha512-DlI6XFYDMsIVN+GH9JtcRp3j02JEVuWIn/QOZisVzpIAprdsxGveFed0bjbMRCqmIFe8uetn5rxzNrBtIGrPIQ==} engines: {node: '>=14.0.0'} From 9bc224c1f5078284dc9891046f026f951e24faea Mon Sep 17 00:00:00 2001 From: Rajat Saxena Date: Sat, 11 May 2024 14:50:29 +0530 Subject: [PATCH 3/3] Removed dead code --- apps/api/src/media/service.ts | 11 ----------- apps/api/src/media/utils/generate-key.ts | 16 ---------------- 2 files changed, 27 deletions(-) diff --git a/apps/api/src/media/service.ts b/apps/api/src/media/service.ts index 6eaa2d41..9fa81ceb 100644 --- a/apps/api/src/media/service.ts +++ b/apps/api/src/media/service.ts @@ -124,8 +124,6 @@ async function upload({ mediaId: fileName.name, access: access === "public" ? "public" : "private", filename: `main.${fileExtension}`, - // extension: fileExtension, - // type: "main", }), Body: createReadStream(mainFilePath), ContentType: mimeType, @@ -150,7 +148,6 @@ async function upload({ mediaId: fileName.name, access: "public", filename: "thumb.webp", - // type: "thumb", }), tags, }); @@ -250,10 +247,6 @@ async function getMediaDetails({ mediaId: media.mediaId, access: media.accessControl === "private" ? "private" : "public", filename: `main.${path.extname(media.fileName).replace(".", "")}`, - // extension: path - // .extname(media.fileName) - // .replace(".", ""), - // type: "main", }); return { @@ -292,8 +285,6 @@ async function deleteMedia({ mediaId, access: media.accessControl === "private" ? "private" : "public", filename: `main.${media.fileName.split(".")[1]}`, - // extension: media.mimeType.split("/")[1], - // type: "main", }); await deleteObject({ Key: key }); @@ -302,8 +293,6 @@ async function deleteMedia({ mediaId, access: "public", filename: "thumb.webp", - // extension: media.mimeType.split("/")[1], - // type: "thumb", }); await deleteObject({ Key: thumbKey }); } diff --git a/apps/api/src/media/utils/generate-key.ts b/apps/api/src/media/utils/generate-key.ts index 92b4de63..1edbc0e1 100644 --- a/apps/api/src/media/utils/generate-key.ts +++ b/apps/api/src/media/utils/generate-key.ts @@ -1,21 +1,5 @@ import { CLOUD_PREFIX } from "../../config/constants"; -// interface GenerateKeyProps { -// mediaId: string; -// type: "main" | "thumb"; -// extension?: string; -// } - -// export default function generateKey({ -// mediaId, -// type, -// extension, -// }: GenerateKeyProps): string { -// return `${CLOUD_PREFIX ? `${CLOUD_PREFIX}/` : ""}${mediaId}/${type}.${ -// type === "thumb" ? "webp" : extension -// }`; -// } - export default function generateKey({ mediaId, access,