From b1320bf80313f781a7e14a283cda3d8cac573edc Mon Sep 17 00:00:00 2001 From: Ben Rometsch Date: Thu, 13 Jan 2022 15:22:54 +0000 Subject: [PATCH] Added Flagsmith (#600) * Added Flagsmith * Formatting --- public/v4/apps/flagsmith.yml | 56 ++++++++++++++++++++++++++++++++++ public/v4/logos/flagsmith.png | Bin 0 -> 12651 bytes 2 files changed, 56 insertions(+) create mode 100644 public/v4/apps/flagsmith.yml create mode 100644 public/v4/logos/flagsmith.png diff --git a/public/v4/apps/flagsmith.yml b/public/v4/apps/flagsmith.yml new file mode 100644 index 0000000..84e133d --- /dev/null +++ b/public/v4/apps/flagsmith.yml @@ -0,0 +1,56 @@ +captainVersion: 4 + +services: + $$cap_appname-db: + image: postgres:$$cap_postgres_version + volumes: + - '$$cap_appname-db-data:/var/lib/postgresql/data' + restart: unless-stopped + environment: + POSTGRES_USER: flagsmith + POSTGRES_PASSWORD: $$cap_postgres_password + POSTGRES_DB: $$cap_postgres_db + caproverExtra: + notExposeAsWebApp: true + + $$cap_appname: + image: flagsmith/flagsmith:$$cap_flagsmith_tag + depends_on: + - $$cap_appname-db + restart: unless-stopped + environment: + DATABASE_URL: postgres://flagsmith:$$cap_postgres_password@srv-captain--$$cap_appname-db/$$cap_postgres_db?sslmode=disable + DJANGO_ALLOWED_HOSTS: '*' + caproverExtra: + containerHttpPort: '8000' + +caproverOneClickApp: + variables: + - id: $$cap_postgres_version + label: Postgres Version + defaultValue: '13.1' + - id: $$cap_postgres_db + label: Postgres DB + defaultValue: 'flagsmith' + - id: $$cap_postgres_password + label: Postgres Password + defaultValue: $$cap_gen_random_hex(16) + validRegex: /^(?=.*\d).{10,}$/ + - id: $$cap_flagsmith_tag + label: Flagsmith Version + defaultValue: '2.14.3' + description: Check out our docker page for the valid tags https://hub.docker.com/r/flagsmith/flagsmith/tags + instructions: + start: >- + Flagsmith - an open source, fully featured, Feature Flag and Remote Config service. Use our hosted API, deploy to your own private cloud, or run on-premise. + For more info visit https://flagsmith.com/ + end: |- + Flagsmith has been successfully deployed! + App is available as http://$$cap_appname.$$cap_root_domain + + displayName: Flagsmith + isOfficial: true + description: >- + Flagsmith - an open source, fully featured, Feature Flag and Remote Config service. Use our hosted API, deploy to your own private cloud, or run on-premise. + documentation: >- + This docker-compose is taken from https://github.com/Flagsmith/self-hosted/blob/master/docker-compose.yml diff --git a/public/v4/logos/flagsmith.png b/public/v4/logos/flagsmith.png new file mode 100644 index 0000000000000000000000000000000000000000..1418875f679d472f392c52288db9137c206d2f11 GIT binary patch literal 12651 zcmd^l`9D@40t+zuuqE_aFHF@b!B1nwfLYdG7nU=WTXdhzQ9F0RTj-EVtSM zfQMi4fV>EPOhtT{haW^Avt4EYJWLi|I6#8GsRu1>cL5N!768U60MIRr0RWC`0r1NM z0D}wwq=Pcc_ZYzkr@Wl3ym##as_;7*kZ|IF0Kehje*h;7P-yTQ*p6HN?{{0A^4~p> zlCy^a@$a5}@Du$@f&b7m{7*s-?!ORo@c-G32RVfQen*cjWACNF55XWy=MVs-)}a4z zR<^6hAvEX1d!0g^cI`Ac80fEY;838amqvtt5PAw2MHs-Z{$8O6s1g2t0U-tv#;dR$ z2Jkz&thtJcZ3#VUyvk{p4RuT4F)ymFhK`2TDia|pm1=bCkhg*DR`b8d;VJ@VE*x{hi z!+`-*6z&1fz~iCDt5%_i{{7?A8G6|JznB6-{;~xb)I^_XuGi4g{1-MnYJ{#DSRXs= z1u>)WP1YM>JO9_(Upz*dDDwY744+eM6|!m~WTg48*i3|WzEE-oKx5cytJ&TN+(?J< zh1G2_)bU@=+ZokMj%qFy?>)aHK)=^1759&zXc*Tm-9jPCbH$K26d{SO5x58iiQ1_EaC1>L5AkHsS?W$JoZwenf>|GTQ zcU&B=Aj*Dh=KCn8?Ve+idF|!PK4EpD(R(GN6RvxP>!_OSzmU)o=b9WZ@HCVhwuJ$3 zcw)Jtmd1At^ICzPo3lB7OX+*$KgR~&`%I6dKV~JytC(&e3h<7 zmhy6L$*z$d9uQdC>jw9w%4y>g)X@ICl1Ml4ep^yi$E! zjBRe`)_<%np$In!rZU+dANh0@{Tf}CuMRf)&NfLjr3<>f-K#aZ9i!>#N*g!T&&%n1 zE62Iq7B@N0w~au#Vm{n7?Dp&q5xQLMN)bGYy?Afe$Ij@z3x^{Qca7XSs^N5C1W*en zI-l4rG+o~l9BDQmyNZTEl%*)wwYl+<4~UxnGRz6-r|Ve#4N-wrQ0)|QxH+w$#lD$}Yf7bCw-=h|n# z*k5v00TJ^dJ^c-GF1qD(d+(v8REU@9O{_0mDCz5)WvRt6d~?@nrfK3<=9M3#i z#Ygy*t=fZEB>`E)U-|}D3_CVWELeowK>&$J6v<;9#%c3qS{l{k0HDMPb(e46zpU6D zTc&yVGw--X9h{1b+}|Vux*b?DBZ2HrBZE#p0i!}STh7FC_Dpbo2Z&{!kY?9~$15CN zsMueebOGa7O#>i4Am{<;5&Kva><{@OvSFG9l)Yw zft&sP&^x9$`V5B`CcQGO9b+vd=W++rMh9@p6~c?>uSrd2VW6j6yFOj_=bV>kKqHh6 zysi@4J`-&a%cr|5kNsfJMC}+dJiF(GQWSXQ6Q6cl%;?HvYs{(`G)Izo&n5qb5qU<@ zNK&{(AAwXJ)s>X+S4}%T%B8!)MA;EKCsMn-D<0`$!lX7!GFu*WpMUdk#T2M9KH1mB zLNcNU)A)yEve+%XG?wG;B~#DML}{CPI!DfVM0`n8m>NJt~qCh+=xJT3lhbWKo3H(b2wZ7-e}9GLoXhsWZf^T~{Knti=#m zk?IdK72202Cv;j}rGMcs9wvpE=XRGI4$=%Bj} zNmIa~BHW}kYBMU3NRJ@ke%CX!AXV!hhHBWl5uq4_kV1HkP=k@T;eLkYxZ|0zxwIQTNS7@hfgKzs<5f`1x zOJhoj^Boo<;X3ylWanf>t!;_FmPX`P=bg!VU#cNl`)=lJR>MsSSj@W6`cq4G((0wj z;ScoE1r6EXzBO&eFLw*8LPJ=*od&e>yWgf=@n!cc=JJHkCPqdl&B)HUOw$4cKd2Xv zdYvgx&K;a0f?dKp=!#6=w>|fbW&d!R6x_aL>CBdQ>)(8`9*5T^dM>7=J;ZD4jdVET z8Q&$pXo=2-Zc#|&(TxpC6uguA;sH}b=+H7C^9Rq+_{3%^wC3G2k)8Y9$6hVMWedCf zAx~L$z0;2hEnY5P06ezPu4zi0)8_d0_Grp32>0D9I4jk=@cnkx%=&$D&r8%Nt1j|Fk~>y(H)nLxP# zutB(B&eD&CrUGIjF*@@V(xOe1y0csrLyPSUwkLCE2eNV{aB@+2kI0HF#7Q>9YEdkpfIJb zOn2&orSKv0td8qo)?M2JDg*0-oFS~^M zr~Y}CAZ6ez?bQ&nX9J!Q`=M#O#j>SSMz%@4ZSUOAH*AM2DF;+LN_+`Gu1Qn?k5w%_ zZDrNSZ0n-w=`ymM0S>P&IE>`ok_-1J#WR*jyeL1L^TXY-F$^BuDDnC$SK*m7m>PFy zo?)Fm{WAq3%cNc4HNo}ME5U$ES|**=KdK(T!^@HG(o>2?O}00_h&$r_Z6@X@jwZUj zIiDvladFFPT246LIS>+&iW1S%mXVD#(0_(iCrKs0Tt&;dgKwGj$z1R$FC&6hS-B{M z(y5raO^O`Dy{nf%0pJ7=$uH=unB&-6Zz>jD8s(LJ3S5cC-FZ^?cVv0nkacOGiV!f^ z>$$!hx!bT!EcxdXlo*;eKJan}A{CAcy}6{unZC1ksol&zG`rO8jovoQ{DMO@4?)bPczAJ%^AtRgU|@N;31 zr2h1ehU|h;wq|@s!v1f!17#YieLh?%4Rr0k^tJkYA6C{gE@rek8kAl+l{_O z-e?YyeHYsHl!(9pepM{!k7=hp(CYN=bJyXmyYvMO(TRc^Iqo~x0jFWRImbl0m+CrL z6~JnxkteM!45T=F=XK3F*E)*C)6yWqVo972(r|?Y8WJxT-k5OTeuxBvzMnn&3vw&~ z$3B*O`e@CE>VWC}mc15#AJBCJa5UXJSB}B$eVua=sp6Ph90X?d=UM@(rAkD*DByq z`{L?_*%`}D$shN3Lt&jE6-HP6kXx)4iDSo;WZSq+9VOl74p{y(C%K*2)`k?Y@eIit z`RYT>okA`SYoMV!5En1(Pj&`2E$W3F`dpK0p`R|A%RXOaf0T~zZez879bHtSh@;is zykJHzC$@=c^PKgTQh?fc>og10p(U2D8MTmujBghs;#t5j)_M%OuZ>*%`xiT;4m0Q^2EsI(kz_(NV;X`W+fr&Nk-QvWd?8YTyyy z7K7Ny{9P>jIkwXDofP!D*KqlrgU(%8-{cg~+DD~xdFtRT2Kiq}u9@aZH$0DRnGPJh4bMo_#D0B=*C(R2(~|k;mC%D7OZOuM#`QnJ;qFh`%;A^E0JY!M7f;bLp*ZCjgY` z>aP2&wXdZvS}gk}Err^e*v2f;XVc_}8Jsr%u9+rdgctog%jNH@AXe{lp z{Tw|uh=QDv>$kovnkUnDm|orQXBsS7ra1Hr589Bid{7O&x(qMN{c+h}Zqp7)P@}_^ zf(8mTT|U!OUaif&aXF}J4&sm@*aY_d1LMtzaE&w1&?{G=Z8~>CKck4dVX#3gPYAT* zKc^oV+$c!NSfjP+W%43ZS>9}GSJTBwS4rkx98HokgbGm@-%^ZlINK(?zr05F&rMbN z4)-kX+?=BU_ptAn*hyath1Ow{Oxs!c`@oma$k4U3u5&E|EW2v`mDa}9wpTP$RDsqa zkJxSF!mz@DGEvsv6z_h8(BKT4;v44ycv2P?nMY(*(?AFV3;vt@-HT>FJXuF$S!HoH935$ z=XYps^f;%*`FLe=-_#!^*`K**j6YoqXznRFO*2OsdxgK;A1jm@@Vekj3nN{23HXN>5>l4x{QlIyH zlM}1m`?{Aw)$ymLXqGHjqk@5BgR2dnTJ@ML!x=BzD4E^!);2El{^r*jFkQkBB-@uZ ztH$(wt&|wO(^uSQNPxb``d#;=96T*6Mgcl6R9nu|bp8bLhR1n7Giqw~-deh>2#v>% zG|*g#KEhi1lWKrF19I6y9NCZx4I<}NtpboJMaJInSJ(nW&`93MfGcTbN4 z+M2<}onK;q%2LPR$&FHw^h3kAa{BVwP?vS}H~mIT)O zaGNg={9?_Y{5E^Wp>Pt;!1(G$s{HLkOGc=7} z!w=#a*TzcURDG?^tw5qSS<~Aauv!*}KQ07A%lw9AHg7*F#4XHA6n}7De+vd!9R3~p zgjdyL41zx)ag$H0$pGzEpo6L~Lvgh9e*8IeQ(1(J|GR31uI|iSD&m(OKnnfTc}Ox{ z4{DwKRvd;k;%1jc1KR;baiPd9>;c`OZwj?RvW`;91~A)pYAw4^UZ8ly5O-lRu;S`BY@m=S^?4I_+vTPf zNmk;TlZmX^g7Yy?5BMvfoZ7fjy+mo_eh1@S+c@_ew;n~OQ0y?$6wv9FE1hwjD}Np< zGO_(K6c$lW!txuTxtB(Zcdlz_m? z1f0U%!<(s!T>bm!CG}0in|{Rij~dVI3;u0Z_~*c!pYZSPE2RCMPQ5wH>OOYATaIZ+ zvK0Ww-;rgIA2rjl+MEvO=MHmgWoLXpi}Jd;E&UY@V{lwBYQ#E_X5?II%)FPL(EV!q z&!501V!1|&0hsNV4It?}82e>!Bwr)Z#y>3CQi$dF}x z#)kBaT4w96(3c(*oOew7sSvC))vsXSH>?@WD}I>Gdg_ij)N*t`NDAQiW;(d)@P606 z(3a(PB%Dp;mE%4w7|&uwnVzJj0;r*}?a?9Qnf#F@gGqscVqHu)jn6 zG^^my16yR9?`C2?bJCv%%m%wn7uBH+#!fi#c_fhYYa?Sgk!5b$N*96iTXr+)y#Uz5 zwtt1&nlj$4AF^aNVaMuZ(~&4%Goqbh3M(Q(GN_;A&3&H?246;hCzo(FV{R$SuR~l~ zo2Ii*wu@6!w!i}Z^6y7;pwO*R`%P1?U*~b|3Iz8W2ChgF5qN#kyedkSAHH-z@8MZZ z$=a8FIVK|X@5tibOu%%3ROL>7N8Vg-BFW6#ao2V%B&Q}KhmyE1AKe3By_^EWY0%z3 z!G>K^aZI-pUS-zP*K`&N$NITvHT$8ZQNW6iO!wimz%0`RN;s+JV9eRF8g})LzH_kz z&KaljNtE|r5R2lyvUh>>v2i_C8}F%shx?}sf+wmMG7EXtsp&m%P)KWqn^b;`rOnKV z`mZmb`>s(nh4Aw&Aa}_J`)$u_@HX}&|HDP|H-#Fs50bU-5Xg4zSD>w|$3x4Mm4aDe zapk*S7$=e&N_Y_xMVR`?YT~e(e?Rypu%$yGWV+5jh7ZDK8-%>=?#rPXXT&Z&ada$5 zY?BTI9tuZ$&2K#KhS{ut-Q-NyU3V1qXtos&$F@p#i#7-k+!NjNt#EqgX7P&E5U+tM z%w@jM-x{hZF7&^d#pbyVFhkwH`LVlvbSO})vk+}rX>fWdDx_P!kj+_6;6~Z(UGfj~ zrz*HHv@+jwElXy&|A(=hrt(<}D6lN3bpscV;6S?3vnE*jKs3J~dmq&IZHX$JX=5l0 zqEc{DrUIweC0vD$?$Vf$6Q~f)A(pe-J3LrRB+qPtEkBzLEkI7CD}rHtVM_mVks_&E z3yM!Ghw$pbjwXUaW#tUDU8^9#dfkb}f2@YtzW7Ll45 zL8qN>AV76{kVxM#9tJxQ99{tGO-l9TD;6oV0v-4=m%@dmE8fwYXY~X9L{V)OyU;*! zd;U{h9o~~Y+s~ow=)q*{M|L{?yR6An{?|ctI)THxLUZ!FA+c6_;YzQM@aHg?F=5wE zB!aYzPwrMdtm^CPP?WTsO_0lwrvk0>uNKq$M-K-nUE~jSkCMsY6YXC48|}_dvyM+5 z$wNdi?Ld8|%=B1G*PcF>MCZrTft#>cVcO2UcZ~10T?Vk49i5{Sfo}TF_R*QTfSG&F z_Qz1-ZA#%*^A?#2BypYYT4fc?{+d(J#m`FF`U6GgyRER89|!rq8YD7*PtbM)#!|Dv;Plw(p;IWgi0pkF#Xpb-ft>a{FTjg zIFj+N;$j`xk5o}IL!r;vJdE({$`+)ndOD+dn`od(1^G5x7xC2O}7iKKLpaFeD z5^hp9@Ii!w{w_clc&lRKgM@fQW0UVVXfJP7%>Swg`rdJu0SuJ}$0RPezqR>w=Ji_AZr= z-kSzDK;V(kxV@a~x>(k+YpriIsG!gxQ>n+{}|>t*b^Tfs=5H%d}Vgbwxx=z0sPpt3HI}dV zWklOWphBK|?M6U@BFd~91)gdz67Vof8()ep9HPLQt7eK-i1_4xorKd596o{g9u}aW znI8xr3B%&9otIu!-++}tr)cG%%fuKQ;a@ktmIh_SoKNVD4PYKJ2Cxd)!r<3=P;Lb~ zK(GLVpBE^Wp9o#^ELAMb5too`r$HI7=qvx^7PJ;uazPx&P>D0xOj-e;i8A*6XY+d^ zSU=w>2MS=n4LRK?VYw8@fc$#?>4Qui92^?gTzXQ~r9>q#g z3d9Y0e)M15?BL5)XgLpQvn7JHINKIJ7gkIO9AgMk67EpK^pmm**u2Fo^KXI^#U^14 znh*?K@t&8huw6mWIfLH6{Ci|Gywkdw;e~bvL~u^)NRa`TkEub_T~!z;mH zs$?9^zf)F$cCHfdy!I~{XfFL16{HE?3)!aL+KCpafLV`M!87V*9r$3ZP+{qJTHD@y z1alO`sY-^@RCRLVD=|+DGQV&w7#vo8asexHkD;>P0UFlDVNDY?nRXRWt^cX#`<9bN z%32V#u4}U11G^S~t(c+&f~09#`_%8Cf+*fgwFVxPuJ`pG=+KpdJ#QwY+;QMLr<&yJ zrKr{KTXrAgG7=?kPhJ4&t=+@ERFpm`v?2T+8M6M2J72j{(3BYR47HE@Owa|7E6|j> zu9sd8p2eauxt9Xlx5^=LTGBrC^uILNgD!FQ`*}VMmaAa*IXkV{A()cq*02_pyP6n0 zbE@`QpqkhO7Csuf*rG%0O+jR#4GfyE0@(!m9SrTYvH!k|8( z)dQ+5y$9H~ow$NVqA0X?Nu6(+d7o|!P#BhKDSBYG)>=Hh{61=*aK~d*-A2;Xm=P>K z)!+{k7|Or7RW)lghfvB>V029>pY_5jsYgP2OMs^dC?$A5n4g3W#B4`vcIElyZ6S`} z8R{|2Oc)_S4>;x!{S4Ltv@jSAX)cS(=3@UG`FmTtiy8wcBwp*$|AtVQzwhIUSQo2g z`PZ|D;LJC5jeIyhVzbB70!cXYf9 z<-Q13avSaQ*UL1kGw;~&6Vr2;HN7S7x-s|@WxzDU7ViA-g`X1r*2Zfik}ecswnc`Z zH{FWJji#mCAvQjr!0!5|+|cAorbl=^PmbmLqcKdSYRZ*d<8Y!{*8~=Lr<~xfyzzFi zV&dy2R1eKNpqpOw46$H~Q%y15X+oEljNhe6BdxxNnh>oBy0v8dx+q*gnR@ZbRC{=e zmZJ%2h+iWaPON!(k{@_IP_p80$s{7jMTH9Ty|B6e09v`67LOW9yBRU_KvJ(5D>5hp z`Ea@RrR>+sPS(!xf|E!Qi;-BAQh>ZJT@6bGeHGp1MxQYkC=o%VBX!jt! zB6B^q48fCnTOVUZnx88yYzUDqLg#2~ej=J*1#6$Xd4<(o&N$sY+tE=p@hKIq3C{gI zv2CI%@Kb8WAygs^+DiyemYFD!FJ@a`PfTRO>=JIkG6RH`XRe zK+8UeP<#<9P`*MLKiMO%B=MWzGFMLRa;m{*I|ElCh#TVP&6t`d{f&$>5o@q&d^ySr z(dF@6MWAG@D67O*goWl1zzl<6L@GMVyl=D5oL_^bF@Cwc|M;acZFcDMdj-zeI}cZ3 zNY}Y*m=;Ea?y+I|bSX+Oyi0)cmYP6Dx9@2$tFD#%Dv8RLlA#EVozVKB%~4YrfAvus z9NrPhd*M3_drJ%acbU=rQ^iq(W9mZ7Ir_rC{0h~>&g>g%OzgE#CcCEe+8rpxD|6mq z*6R;(d<~uUlQCmd5Pm&O#VSfZv?G4+$_&{?xWtL=8K|JWp{l)e9#5pbIr-J5)EZ*# zh2>&s{;(psY@f;Y&wLeKg=Vg!UgSRUh_@LX%94tRiE`7lJAh+pj17U zfBFNv4d#7FRMO>zcQf(bn)O-0P9Xd-V}%sN7o`EaydWHJKD{r4(J)FG_}eW`Il%5B z?qH!Kp_?t@XJhS~#X5ix%h6yyD=R z2(&WUMc>0F*XwodPhX;-8v2{-Ki0wf*LAB?Kg8E96P1jAh`TNBCf4{1s@W2nx=fIn zMIdeGnic6JBA%e(>kO@yEeqwP+dTjD&1%Xyc-`_oho6Q=KY=2i%Lj|d@+C%)t z)>@5wsJW;FwY?3D+2qTVQJ~O8)8j}Ak(J7graA+|^(#=*d5c!`v^SF%&HtWL!G<5a&6WXBJ1YUxca~cFw&jL$@|vUo3Tj#@@)h<>G+4S`ochr`@v2u|=$BH0Mm}z-5dnh)Fqqme#p`m`0 z8XM%@K0#{iSSK@Zc)fuiMAr^Q*?xQcb^*g9ryzA2N~_rw>LR@1wzP$w+~OKso!7~Z zgl)k$qN~QDH6L|R(R>N(Cis%jwT7ufZ)w9TH6+{J7vaPt$mFZq=^G%opU^2muJ^U= z_!dJ7opYk@o`n|0m>@=JcU?q|5=`>1L`AHJQuN_zQJkUB&GfEm$E5YE$QeWeeDNk) zp-N!lJI2#H=nhwd(|!rzCr-VXy*8?n;U{lKBN86&6d+ydqT+eqMidE^ z7P+B%>=aFBpmh24qkg_zrpXyXW%3qx(TD|@ZZO+K*}E*kMug-K(9iSh_Fy-zv>ZnW zz)dne4oz?HngZhf70h>5%0L=4MaSAc57eO9qu0V{rnwjM4L3Y8152Evz&;+2;p3dbjvs8O=Ku)Hx zN73kqTW~goJ_xn(aH*8FI8Ffze;g)`gbId^YsrcKJ(5d%Joit#83;N~pE8Ry>=He) z(;Z8C&>ZTB^*eZuqF)y#%a-678>_Vq&x)DVC4KyX*&Gh9E7<;3g?HrQhY`?KMA!Se zPBE_PjVQlK0?Z%e)E;i^!chAI&UV$P^WDIr?5x!#CH`ty@22=Q* ztr7fQ?aWG>B~wVtOhXnAd(?e)a-N;NyQqubxlx+~nc52LvW&0C8R8jnLxh9r_}yFP zc4C~)D+k@HtVG%nttiga!%i_!BgA@UA6**#%-E)D%G?C&xZtFM5>YWc&oUaa^jQRg zle-%0;!QVfYF69O$Ds z04VD!7p!ydo!(DSa`@XDY7)E4>0hQ5(tr1B^tGEdq~9?$t#;Whxv(&)`v9Ae!PhlZ zfn!$0*_3-yuFg@wl?)(L=rX0_dAOoN6>Ym*yFMQeQcV>D{> zNp}9{&S&>#bDfuR)eNt~mxZlvY6$LJUCHm|)P++Oxu$c2-4&f3%VUZgv-E|4=h>F! zT0H-Wjz_}X^!p*;>0c*speQR08JgG`8FGC)C7)JT{d$FCufFADVp<(B{2e9y!{ zui;;1({|y#Ub5^=-s@+z@3)A5LIRiK=DsRi2)8I*l4UT}`|n2fFTB^-yg=WD7*m>d*)It_CCD5CU%8fND%Fq4tB3a%G6jJz2^MPy=OEXLI#i;D~AO@aTp3jtzDdeQiDsJG0btuQp}5wZZoopzCOb zG9Rfgq{kV(vgF;2;Cw3kZ2Eh`Gw`|?cgTrL|CF^{Ddr_n55PaGZM(M?ZuU6&e*pB| B)(!vw literal 0 HcmV?d00001