From c959d6abcc2d6dc98e02f75f4d8ab5f352325d16 Mon Sep 17 00:00:00 2001 From: Damiano Plebani Date: Wed, 18 Dec 2024 10:42:19 +0100 Subject: [PATCH] chore(Cross): [IOAPPX-206] Add dynamic card effect based on device rotation (#5715) > [!important] > This PR depends on: > * ~https://github.com/pagopa/io-app/pull/5954~ **(merged and reverted)** > * https://github.com/pagopa/io-app/pull/6123 ## Short description This PR adds a new card with dynamic light whose movement is based on the rotation of the device. The goal is to make light appear to reflect on the card just as it appears in the real world. The current implementation is based on the value exposed by the `useAnimatedSensor` method provided by the `reanimated` library. ## List of changes proposed in this pull request - Add the new `DSDynamicCardRotation` screen - Add relative assets ### Preview https://github.com/user-attachments/assets/943ee38a-023f-4d77-9f00-06a298cc7de0 ## How to test 1. Launch the app in a physical device (not simulator) 2. Go to the **Dynamic card based on device rotation** page and try to rotate the device --------- Co-authored-by: LazyAfternoons Co-authored-by: Cristiano Tofani Co-authored-by: Alice Di Rico <83651704+Ladirico@users.noreply.github.com> Co-authored-by: Fabio Bombardi <16268789+shadowsheep1@users.noreply.github.com> Co-authored-by: Mario Perrotta Co-authored-by: LazyAfternoons Co-authored-by: Andrea Piai Co-authored-by: Federico Mastrini --- .../driver-license-background.png | Bin 0 -> 130854 bytes .../core/DSDynamicCardRotation.tsx | 429 ++++++++++++++++++ .../design-system/navigation/navigator.tsx | 12 + .../design-system/navigation/params.ts | 2 + .../design-system/navigation/routes.ts | 4 + 5 files changed, 447 insertions(+) create mode 100644 img/dynamicCardRotation/driver-license-background.png create mode 100644 ts/features/design-system/core/DSDynamicCardRotation.tsx diff --git a/img/dynamicCardRotation/driver-license-background.png b/img/dynamicCardRotation/driver-license-background.png new file mode 100644 index 0000000000000000000000000000000000000000..7dfe0b1aaefde936302023d94b0f145f9c6761aa GIT binary patch literal 130854 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%0A(K`v;gl&)% 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≺7t;(@m_$N9{JW%coY9;x_JxSbpOqz`Qht# zxhxtMrU|UwTZ+T9q1hFwiH}NbuG?MoK(T!lMXsWztT~|Rq6szr5+p{vrnn(a1MFc{ zVT;;u(T`4l6Q;<`1Sx1@qBwd51t@{Fg#Y4z?+8*@5hl}haX1K0T{c)-^lR~xI)w^( zY0OoeDfZBXp+cY*L;T8>bd#c{i2h=T-$XxbzQXQ+@|!o$N-#-RoKWr`gwx16qcVHv z%U>!hYMp6Swj`)1+S&i$l)3(Y$8tHIibehw{N(Bng!O-MoPWIk@u^J9kgn!>NPU!t zSGc!O@2o~(-*TJFy{=oJn(>99A1*m7ZJAt-qFU#ewnyb( zsV$DH1tA%zl;TA(=?f~RX-FVZENH5*MGL{ZslpE0k66h`E<^T{HYxar!vhQ^KS5Iu@ zOj1g|-yvlropvUJdS*(mvR|B1_So0XwX@i>EL~G0L%Kq?#hbN&U#BKr?gp);R!1J3 zTd8T*Dyb>kbr#V9scLAq#kc8Roc@eW_g|x}ZHr7M=F8b3Putm+CZW(tA+6ft1DY;c zdz+ecHEK&;l!W)IK$L+hv}lYey;2I)kWN53tRj>^JE#SGNIq%EhHkHh@ck;I7g9Q{ zv|)e>?0qMWpE+}$x@VjBZ7jhgCI7BjB90%@`r$Goe~0!!_$>R{xpuDNRHsKPT}$&7 zcJW9|MzcimxLn_=)DrOq3Tf3RuPd&+b!v)`Xx))7 zy*qT3q(bSfvtOj@ipVGK9ZsqE!F(^gs;neOh4#BBrjd0vvr`6j@sw-owU@6!^|f== zr`M+Ig{duGuTQ$;1m7y{)+=m}otImEl!x~U;HBi-;-Dq&PaKs%PkeuUOG{*OU3NYW zdAO@1mlSlFw3490Ccsv0aa0^u%u<5bq@E;uZP2y4Wje0+;%(I=!7FTAbw!1ImYeSREo`mKzUe(|ol!gOMSHpHT2+1R{3mC3dRd{;uBp(d_lhzu z+v2-{%j?M#gyLN~IWTT1u_TZp&L}xU;it?SD5mxU!c8#gqRQIJt7PQ@x=~EKnuI0w zy&+*+^{J5Wgr!W6!eLM{ZBqiKgv~GlOXZ&wf|A@rfn6Ai4_#$oS4mxk=j>`n#g zT7fNOd=BM-xEmb;dQ|4E71;7ODs#>dAU2<47xls)AmZ8aSFdbgmjQymyHn1-j@@*y zObhC%shN9A&#Gw?`ykG)|AK9~+iqpL!{0{*hNsb+`-xldrd#kP@1F#E7_MY)Nl~g(~Qk30;YeCWBS;FCKZcE0KN@TQ7~ z*-h88o8DZ7Ki(sF)6&(>|4cg^MN`&Gx}MCzE9*y#>9{q`w%F7vI~Oks_{e@suELYv zu(e$iBHp%LszN8WS@z7U=)!?6o99pQ7|>F5L5#IpBCAAbD^v5*jruGpdpAIOhr=4@ zY$zxt##=h1-l2xep(th6Hm7{0-cj4sL)`J?VR{nv$s$DqtxfhSQczC3HC*lvx}s_U zJF2DVBIK2_0sT@rQG1fdWbt$GfxUJ-tLEA9V`|+42HGm7-y?(j;z*Z+uPF>_#D7`@ z(XT&q@#0%9?R*XS;h!cqUHztSpu3Ojcb7pUspmV$5C1jV-n+g$dCH56>>#)hWgadu zF1Ub< z@zGUIf(zy4JD7A>1yeLY8H5QYxWF}%97V?`CMGyPob8ET@2HV9f`SXUy}61R^4*`! zKJP&Jsiy#z(3}R2c%}R^v>Ha`*#h#g#76VS>1Zm27JU?vQ!eSy*QzgP`z>qG)=JuM z6{4?J+Fs?-+t3A@mytekIQ&q|L?*J93X z#46Q4Avu-Xbby|lpVJ}x)(arGz&&)!&LL#qat`_74^2;hT}SoFNoPYoglvocwR@OG z5~|;VhpszKrZ!w~0o6XQXCg!pfZRjZ;L>F<$-4FJsq7e>b3WU7mmdKJL7 zH%O(OW_L4_7hgpePV!ojMq+vS&@7NUTT+3}{)CDiw z+P35?LPG-oKS_`u=?;Z}^Gp(nVfmy~rx#`MF|b{x-q{9XlB(Vr-@<;0C@PxT8J@De zu!u>Jt$*@q2HB)7{uj2=^$qHIfjrnczY>*GSTDx({~S_|a&jdP`hl zIX~NE7H)ddfp~(c9p+o%3c~S3a>|vDouhJt)0AFFereeBiuP2J5^8>;MPxGw)1sUm zmqM;YE^KwRn4T0wQ$8k1s(NRys+~=wl5PeS6?0tEEL;B#-y_O6)YJyZo)@sadEw&- z*<5geL-s>Zh)++$_9j6#`+7t}KHT1nFv#8pI$8z~T@Q!saui&6egs0@pz1xb2#q8Y zWIG5hELof(-{TJMK93M&Gk2f+z>x3XLG~&)mDe>jX%@h())FF})uZUEOL$~QyqA_` z@q&=ThWq0QZ25Tvxd!a_V_(E&1!TYzWDjG{)#K{QoG@*sELO1-zjr-m| zqnM-{Ok3DWRb1udPUojnQ@1n7z5&{22-zQ-oBttfZ<192^U!7PK00KVks+TR>T9PN zWIG%3g&Abmnr!bqC~H_>fsnn0L3TB4ZxUpq5yzVdq!V{JSbqE%8){s1{4PxCxrZ(n zT&Uz4NmOOC?akE)*(mW=UK+An)9L5aqi%OSq&F1p)G@1p@s~Wi<6E~9>8v-tRX|5G zP95@Ai@E=FCFBv*@$Azt3{xwOM%qznk&UY#lC;v9f&Uv&GmZSQ1u3lzqa{9d%tCY> zEwW>>mDVliV_tZYR3Y|InH@v5VR=FHv>=vmlC8AE68^mi?{q`AKF2=x#{2J|vCsP_ zHr}Wr8r$Lfq}tg#D-fqkpBsoMUWQfn$Momk!y$X_PH3oIK*;{~g@q>=WWTPr!I_8d z7pJGWA)f_*mZ*{BL&)}+s_g9u*>Qwy@}F`L?))r4HpbFPo--q48$5KGi{Bry3&*Si zxZuJV3a^c!9)yH!%+8@Vwrm{#nKZ~oZ3Rkf>est>jHX+)dz83%owW;+@o;>Usvf_G z+Lh~2`;1P5ASWh0PWNYIH+-9*tu7B5BWEN-yf)J$^uAe!^6)kf1@Hi*ayeUqI7*#y z*!7|l>aYeN8IKa7oF-svNx~zhKS?#fdc2HrrY;B!VET<}&ubH4c~o8S6b1Id_uoHp zY~zLp4jLA*tG;Bn!|5n`I2>@o*Z-d648Nzx@g;=p+vYCbZr>D7xZcqnOR?$SAAzLUzKD50@$i9zBieOlbe-+_z)?Tk;O_Hd z-cWON_nG*yL+kD?94&yGB?w=z8am9_OLX+7s3s5f<5xjXcPN$A zYV1<(_Io#yI#Qu`=8VwqOwAm0fb5@My2v1V4jO9nFuCT2d=`1=zM=;|HO3tc`FNG> zY{=KbAsgKq8xnDZY!ut8BrHNn5o{TMWgL`ADw$Qla}yH)*`ET)M!RgYi=WAm5B0+l zvPmO}LpG!#BjwDH4@JkBMv@-F%hK{}VHcXIt7ht}c^dqAyB{D0)vb$DaPz*JsH?Rn zU487rHZ|!Auvgfzt>Tx3uoOUJPm0Ep@-*TFuM9kjJb@R&hn0&6ds2tO^C5O&Na6Wf z!z;AFhKN46cOx-LiKQZUHZdX4ZdWOe2Xy z_W0Q22-)S#E}PB3AUik2c8w|YBfDx8Glj?Y*0{>uF@(1(#u>ZN=PxRr0G=C77s73F z;Kh#!)Fyq#3j?9#QR9=kL3jKLJa;BT#wSIo_~z|z1}0LeKV`F z%d@|75?Uw)=_NJNJS9FCky00|5*JF{V2M&sDs{nQm3UIm)&5L9!uf|aamA}hR)GTg z*!x5!rE~lk6ILiar+&FihiqEF2K1epdPWa*2H9_sC7*uNoeZ+kkdGjH0U-O?bCv=g zGo+KG-$X7yKh?AIxr<0Pn=?T64-vA#knj7KFLOgay`g4JPorJ-q73B1aTcJj$=wIhcjCG`oDBJ(F>dnEW!d?!M#kZ$-ylES zGT?4yMG17PE(M2fC+x-(D20=yE_j6FD=?dO0QJTHu;HtHQbcgnz3~Bv=f$5d&CI?8 zkWHH)jHGf9Ap7D){dGSj$YxdnI?lhs+<0C8)}Szjbt)n#)cX{&DrJVK;4qw;x?i4;v4D_$%Vp-Fi>n}FdXhu-mt6?iL6D(D$ZpIe+7Yr7YaBdumog9CW#i+IBiRfy zSrcUc7$FwdN}8CTt_<}^*#)%{k~DVM1lw;I7%~ zczp%oB<_hXceC+G+W;j^j7P}*FH@if$VUL3c?t%c#*i02WgEbbw`koHvP$?axVm%G z>@1A4h>LcU9Ee>zHzArm41Z`qiFO z=06-zOJMU*s>moGj5U*{K#inI2$@CY4W@6E!#M871Ezb2^uK@UJV5sCvoo);$@R;~ z4+qHpya}>@>TJk|9=Zz)Pcsi)9p|6mkZq{4(U6aCZ{~QFod}?{D>T%4;|#L1X&`2m zm;VOS-;o#iP9=sU&cICk@H?=|27b5!vYA^i&(5iD&qj2s9ZUwFbgr`3Xa8D5={OJ6 zbtJ4{;-v@*cM9zq!IE^PxX{4hu0aYbs6-3DlBLxT&(p(1Ld#?f*xZOQC zPl+1B5yT=*QOJjR22D#LrX+euvcZ*1ITqP56g4bJtdX#TIZx;35D`?$7-U1J&&=#` zBAXFpqu>Ja!!H^Q`J5qJIC$vNDhSY4rqM%ph(UHsiU}^{k_g!uAFP7JVM(x(LH7DI zt~cCVKE9N*xxm?W4BK2L!3Dm(i7tKF!QRk(NceyJ0C2fdxd6B}9-0ajB&n7Ld-R zOL758CB*kWzjwxAWM=>2?7iolPkzOXPIyBT#DfaE3U*+_Li5yl=TO!yN)>{tke3!G z6^+D*+mIoqdQVKZ&|(3#a)+!2p+ggyGFx+9Nn?syM4D0-d#^(qnR-uIywU(((|OWK zDRHI}UR%f4$#cwt&?-qRuQN7FlEYZ? zuzIn53E0{*l!H8<2UB^TQNjuOobW8@;MUxdh3QnFsNnZLE@o44L0qNH0bg~zj3S(ka4hS4S`xs_yd*aef#3#A)DSL>kf;cpL6X`pv7B#Dl!?I|NlM z!-!JCOSSTVJ`>s$TA}9U>J|rM!$PTR{MJJDekkMw*~*hbY{X^5O9|M*d6GO_;tT;w z3-Ja_=udWZiGu)!7c_SM;{|w-gwTT->Ke& z+>Y}a^vIawm9jVl!6Uw=xK|rxkGJ_uN)rmRdOH081j5UH#TUS$XiFfe8-IMVH7}~0 z&Z*Z7)=nuB6AG_g{AYSdXzG@h)mUt`sI|<$`kZj1>MR~_Mhlilsdn!<^Qk)yw#)pH zMv1=mrrCvYKy|vH+H)onll?@j|7Nr-q`k11GKv&2(fAannx(+hZ>&51?wZJ^QL9t+ zuzc+c?GQ8HcZ!cp&#Q8k#{^vzlZC0e`@SG^7nvc~cH{@L;Wsu+l*uMlJj;x9AjKe1 zPy!~1Wq=>5@^@y82&VY$vVVW?nQT!JE{y(MCzeHcYq=|TA3EV6 zpU&t2dqjdvT>!e`L!mS#h!D3o!TG7IDqt?j6~hz8tAWX8umGMaN+MWGNeu1E`j0mP zfMY?!$Q!jwR~`nOW(M8KuuD>DJmH5YCU@mhpiBDPhRwbiKaYw?ZYv5{Q7L47tIF2A zVT_mq)fh1JZQZ6JuDU2AY4KxTAhW{CY2du)?{9G(8!UjrTJ7E4?Trr^qoC^f;@RCz z$mq69_BvU@u67vv1rOyFS|tMkXAYMY`vry=EWvY^XZdvjI%m!cG~KNMw%&d77w$2@ zCvKToi>R{9*k5{$vNR*6{<1hvt{)H~l^E7Sci%D}nSpS(2S~efxEDRX61GV0Ls%3P z|9xaWB7${)tMZ_-?%`)dyvZVhRT?-zPNtK!CcuQxiRZlC_8LEIktOS~Pq?BJ!}G?&jPOou z5ZBRdAf(^y~FC%`VH{Xug7;g?9i4lRK&9eH~&GVABzeU9L;;A&@k@R-YTXO#jmItsa_ zE97S(T2gZDd3J5mwU%U8yYP4tcOKGnvgpxp__ho)Zcd_F_w${ljfa#5KY!}Mhckwn zlPsnNIC;Ca?vbo?MFn)5{4$$T| z-a%3UBLX6kehHTw(foPT02_FE{fJX zKAqeGDC>$VPEcnCOB%$6M6|x+8Py%`6w>&xi(ZDb`Tgidl@JBJ9jS|rks_mK!bRSM zm){>Wh01`<_rtjAoP|;`ddefrv^F2UmPmcCjgrWnR_;=*EK;utlJ3#ae7K4Ed@xhk zIN%%}54oe)Yv#}nB?O(#X6^if zxSr8-lD2@j$N0#bxD8C|1uEnf8##62H6iFh_22nmkGJR)U(;l%i>pBiy%pA2^R~nL z$CPd7i$6wz0;}4-LY9@BpLgdAIr+A=*ZIo(mZOXbea#b_>i-C-+^k_C&BB7B9v>89 zP)JLX|7g#1o$0lG3cT{wAuL*EG3939O6&XrhzJ-+gaeS2#`cj8EXTDsxxV+{Ts`XPuPut}cx8_K$Keun~YNjN1B^hGwY;yOZ#(pm}j>DF|; zMNnYUkLJn>(c%7~x~R1}+`Ux7^-1#2jJiPn=3>E?SBy6%Ad~C?uL@5cM8DbyW`ARj zF3)>Z6FR}s`=hrz#8j*A1_p!?ls&xkq}leUG0 z0+HN`n`o3iajj4B(=uO6wMXxoU-p8uF%}g@Olhv@ibf&EjSZ1X{qBLi7g(}Q%wh1I z(H3Prft`}u%owk!#t5}y?^C9?=(YK*_bkr8*+Hs7U0_zIr^6XwqDobj2>y+Z(CAID z(qDlB{EZ5eSSG|HC=FjYA2YR7@s}AH4ia@Qma7`}%*oT5LmP-Cosdxo1^V=bK6#Dr zc_B5wA_(t+`GZmApCuD*;EH~|*d-biLn3eXcQ{BMe*OG8CNMs5PH{xw{`QM|N4>DE z|JU`(sk>cu>faQe`CmPKFr2ue1q-B333G+j{8}9x7IYBAFUtr;ni@TiyplTJNGDQY zkgU~nfgyjp9!D6RCp@M~J}TeX!Z3WLmHxA02D4CE!|?=cxPet?lLbs|&zn1Mu`xl0 z$Hd|y$a_dRsNd zU;4R1i|Vf8lZ?~0$d9R0tY08GHuZN{f>Be2IS_Qhk%n)q?PS;RtBO=RPo8 zocCFmx4jV)Qf|k2^S18#hNPLRS>@-67X(HaXiSS=O8PJ(t~A9NPDk}2ucD2aN=|s3yi{LYL*=QiQPPt045|A z>BRZ zZ~-?drL{dQaYGvT?>E3_Y2c7u06rO4;vYf5h!Z1h>JKIXcfE$O`J_TMKI~KELNv}i()}T4hVE+C`;4?Fnv;oA%Fa^U0u(|5HWtXD;j!00V32)<s}6t@G>;m-*MBP^yWkVrY$r5iSg=yotqb{Okx}ty4Nl;;|Zr#yp?a zz?n~0W{WzX=ZM3;9;Gz0*_y20a+jJH3u&3E6aG=rm8%)Ent$O{2hzs9avC2}E9N?l zd-k>ddTElgO~fPW2{rZ$>ZJ!G-^E(dF}|-Pl@05=t!_?$WY)o58k51m_ zIA%x>YBlc)CQvo&Q-4Izf>vAb3+6UJa0e6(@Fs>CvhRftI@>+f@_IBtdJ*3mEkJ(0 zUU{DU3iyhNBMwlkzzJvzmgKazV1=+NK4H6W2gK0cx$F68Sn$c&3mdZll3=eH<*9(7 z=b7h>l(W4{ugHxuKUGw+Un@HrvrG?UY+}~Fq6WWGFM+sJd~{L`h)692h_A= z*+=jPc5^gaT)>-V^+iWUe9_-_RKd0qW_w7!IvdxQNdxjvy zMuO1oCoxr-1`hcyU4W*0lew@T(FdS?;F&IkO@zCX4=u=XKM$K04YtSw?@5dhPUURu zB&D?u!GK*Rji~-s_XEPHeD^$Ci4otFU%2Mpoofr}vfh*73qNV`t}*MADgpvx|?UR zBO>6SEm(!HR;{(#&>(*gjetHWii~}k{Ap0dxbSOcS5aN?1AL zdNky5Eq%~Qw}Bh-Gqszm*#=Q9{$S-GCY77ZgUQ`^)Q8jfYfS<0vgWaaspxi&4mJMC zM;gYQ^lx_?Eun!Dx~v?3Prwh=wN541LHZ%=1*QPc;uas9Prjk~V7Aq8EGG0lJ9 z{*|G8sqXJ|_F=Aq+$6tbELt_H{3BEGg|B`;pEmK zOA`|o=1Z!y1aAA2JAC1xx0*eqc6rf3aJG#TgsD<0CoL%bOR@UMUQ&yxmXCwm7FJ^- z-$yK1Wr6zL7D;bH@U*^z&d)2(AWq~vJ8up{Zv%CCNqa@s^1}oBlK7w;dDdBW&y#}Z z7_WJ@KOF|xpiRs|?i&v+$>^t;3leiGAB%LJpT--Z3zg;WefgP^EWw0a$gg`W+8N9$ zAD!CI;5*le`2+{FHCk0>BhkO<(MT(*1P&7^7p z3-cJ3(AC@Ga7%#Z^a)^J5-3CMVrFsTjLBY#~mV^hTmGJuazND|MC8uin3NQ~fh zNA&50FO+9sJ@}l)W^DG6uI@I>nH!E0rDmjNAGjX>CMEDK|2{*1nAiL~;Dw<6;l-zN zq(WiStgxYGCoO#fP0&7{je>j1K#$P0`|;e*hSG|UG_PtTuKB1(@ZOE3&w5F6L9=tg z1A(ko4oAT)x~wBsUBwEQYk`FI)S8=jGy zLTuWPOkhGRm}P~=j0CNHxblx94>_~sFe&O8vkW|@CVDwO!#Mv#xWP!RaVXl1YcX`tqsLqX zbD|Jrc=JnBaI>t@;pYz@14EiDZZ6HI6R$15tk>laW}+9Hx~;4Q<#J~m%yOwv=N{m4 zF#0A>nl;(s4`_PSjt!H9aLl%0dDX{SziP^V2qNddQRF5;tDR_OOL%pe3XaGbg5{ z9ZzVs&ES;yEyH=hav_0sFv08KqfO>|0q3^a?6Y^gRs!1CKYhH_Fl>8}G}2jw(%Nl? z$oz)$9(K;6MGT@K!uHh~tR_baYbOCXSf=&JTxK(JrL;l2uS*+O5_HgJv9?&=-#8K$ zKcz0N`~>>u%P{NHWDgdzo%XnbOzklaC^jt}EY|ciZyiLsM*F#)^e&zZ)O~a`4=4ga zg^dn?W;4cZyF2tC^1!5C;^MBNGD+DgEF?lt&J1r+t7`LV?{hr%;7n(YHPy^S7_fNy zH5mcIdK{JOUo&YLO@w_^1zy4Q{}r6f(*D7G-4QM2oOwVnE5fKI%jmjEjB zw3%r<4Hy*rv6A0VgAh94Zk`yDRqm|MmGXF0wtPX0sLWjt8X!SceIiJ<;8CU#!t+!z zL9$k4;rhC|3t-QCDtpF1<}&xJd)r45)r#*#?y-cFhkL**0b`25OP{Uxsy?wqw^1a; zX^_8qw4iPYESR@dD~tk2RwP_CqAO`Bg_Krc@I)Yub z%kn@kbbkqw&UViYcRgQyU9s6mq@Z0UdE76SX|Ffl*(|P+z`jm_#1xKL|NNmp(1o-F zYq@@EYNnlwlBK7TYP%Yb=F$|R3cuqd;dOpDhpcPY7LPk z*SogjQsclMc_RqloB?ug3JlnmIT|xNtZ<(}Hu$g3Xl0*R@yxxJIIUf|^L{155aRITt>Gl+%HI0r6OTJ&hUCZDOmKm zR_M6!G1H20Km#qFT)VP7n1dsb+@WgeW;p*YOVE%xPr!tz;`<9S z;9vmeDlo!;)+sl~v(F|sqtsF+-4G4sT#x3CjtC&G>Ig#MCQBgKCCwbD)T)GQG6n#B zK`Cd*B&btKB2Dv4fW6QXe5Olm=kKytSqNsY3;ta3*#*iGL`+5YO3 zFL{M^BBt)B%P;gv)3qKdUjx<}VF}T3~evy@3qREL_jlRxDi}mbex7wrqu_NziL8Fl3CF>CeZV~^ZxmQEa^o4SAQr~Jkjk-pJHo(zF=1c z(1!jF@7o`2{|e_7RQb*Ct!JT%Bmk~bRiFj+X93S5D-=+$RdW_%XL*7&#BIl5k2M9D zJV74=Om$@*ch{RY6jv)ImtOt*;T9O!l**h5k=UiG?vc+|FomcqAa}|s^1gp*B9@iY zC9RZZ`w-nZYOXDWlm{u~^b|Hu*#tLLJ9SoR6NYsQ&{gL=w7|HtQPwNl&R(_Mtd)3P>9+O#1^#g(68Fk3t^J`a5wr_I|h~Vymf~?bD zDOfOoB_qE5I1TY0aX@H7^pEJ!kW9jex(4iD00BTDPnJ2-O_ZEGf;(s8SGSF9`i&v9r+oXi9ico74FF@2{R0_kHJR8Nu(pT#r!~Jx=Ns zrH5P1YkZ^;m{&SQGKGde*$0@O#a-utcVc!Jx4IFn~<7?R7E7$@Rw^JfO0W=88*Zm_T?b_>h+tc+N+!Zxpa zv7hf^TJ}!@Jr}AsG5`_U&9GN|uW~arc&J}Qbc+SEBS5x}skWfAwd0mc0;eS&61ezJ z>%5y&Xnm~?AwCg&w`};06qf99V`4yp2kY-zx1H14&V;i{Xx2wJvb#@xZT+027$hs~ zA+jdi00-uJT0`)HZ0JbKRIInms94JBqLD%JOJ)L!CfXe~t>U!XX_{B_1W3UKcG{b7 zFI-c;eO;d#v%ASD&A8%f>~!wMUeLN5Ro_h#1$|TXLBHJsc0fvyVh08%b%^CTRt~Vm0Nb#U*w%m619YcZbAUGVAjAd7U%wW`D+OUPUYLz>U?DB1wE8Bl>s-Me zpVm27?(rBdI@4nU?6hQ$hl!AC{C1^AcKJ@d3G!?V+GoDXH=S&2btQz;3A1&Ch$N!^Opk! z6{P3H+~5_P^n=>G(H6@5Lz4!R>@Jk|zlU0VNI~>rF~g`hw!D^AV4=`bXxF~`NsHN552f7*Gat9_`GoASPUXH(D83DZO%XmVIH?F=>*R;5S*Z7 z;q_!=JI^djF4tY4YgV+kmTa0*A&4K)ciDG%FAC+&oid;rI?)r5vSBfg>Z^;o+i8nr zA|0Tu@iC=r3ty{smQMOi#I64rTu@&ou}FiaE#X=cF3N?fqR0 z8xG3^Rk`K+BpYe2b!1lTopLfmYFcZiKY6>nv-mk$T5Vp}yKw$Crp?%F;x6~uM1fgw zYi57~yS?JZOUZ?QezzH~B7fwj$f(Nxtny*`22{CVF(&)+Xnsu%dTvt-)}+X)iF>PuVBs7G$oFKCDOjb?w(CR@4J$`}*r`1jkQy<@jC2Ay6f zgJDhLr7L57=Zw`(nY5mZaJn>Do_HI$H zZd)1m8mhB!1gO!1VC7cx55<{A2npKdSRw@r$APQ9h-PFmPbZJJr0j_0-y!__p*xnR zhR=T`#Jp^tFMQOR51^G>q2zpSL|#=$azX_$Dy{4+85dpdZ{BrKCUE07GD3Rh3~*tl zA1Wmh*`)gv5@68-*lmzO=xeLgVdJ5xeTt$mU-%S@?#CShx1Wh$BwS5&vJD!c?~PR{ ziP%lU&qU-dN;|WJE55VF%@B}W;OXZ5l-+pW({}HxBA{SfcfMyZJWbwRu|^#$rx z0zEC~$w=88Z`ty0HB8vJvOmy|`luBnMwwF%%?$YC*1Iut=pgALDcj??aftS5f@wfu z*5qbW-|+HRRvb$Y^k&N&sVV817O!xq8u(|V$ol*H)5kF4Fh)jCdhFUZGPqZe8FM|l zm0_4ZVLnUKptJF8Z{`#;b`MEn=S;0mQ5}+>D7{yuoY20wpg-;GZliWq z&``W#ePA9XSLc?+;(}<|vXYt!{GB7*`5eQTKj%y>7&W;pDSs*O8i5-x21s8acjBzj z&aFToq7`~x&733^g=65o{$Tz=Jc2C^thSyE5LjJQWs)3`PYX6k;>GgUf84}uf*-_V z+bW{5);39wxeugn^Nx8w+?=N%5}8RyN9Czt7L(6bA5RKIgD`;*;rBKZqM)j@ zCS1|ttWi5C%j2-7GKXt_Ne=TG+Jg^;wbIJHJ_zx9kdW3WU{!pkDfxD5A&i<(7(pe0 za|0Er2P&LGEsK**t1UT_%Opn>bnK` z>%T%@HFczh3qP$FJH7qsX#XjV2B-8Jlj%Tu{}X486tlzZCiM1A?K#|2bOm0zBTnmY zBq5YfXnYp3{V+Vp4Kv|G-@D%zUgy=|^btzSMsbOpeL9{dCvvE&MH9K_Q zN(=m;e(X(e!n2(<^`6^n7tTm%4aO-eVvn+!XLFVJixweti}Wn{>FD7{N}oRFIdi_$ zucj6ZI@_;em$Gu#iMf2W;Z4gv%Z!E1JHe%pDU-(9R;>K`U~MjaZ96MY5<{?i7FN!K zhoSO=1RksIT<|`{R6hy7>$%@^+N8`7? znxg(lX5QpuN#z=bNpVZA^NlY_r#Kf=ozODL=ujj8JveNh92q(X7ey~a3=M&7k3jA^ zR&Wu5mJG&X-FGM#6&+f^HDRhO52e(8hx== z%aCtYN*uP-iZ4xZJUK<%-DzoWu3%zB@w%zX3R7T-i)@o>IL!e_5jvm0w$ z=@mWW^Rsju_lp5n#BWWY*G;ucH)nEH8^Yv<7@mc0pT;Fdh;@!6Moa?i^>?;=2VjNL zS?{Z#cjEu&c8RRXFfDM$MFi1b0HtqNZ^pz_Zem?Nc$}5r0lYw9Uy_0m~@F~kH<;N`JOmlyEx6H>`KtH$8TdyA1G<@NF#vX2 zEVKFPQ*=;tKNoxo;0av94Vl{p*L+3`aoSNra-D}UfZggN!k^~}Oz|jhU9A^89!1)a zBwPqPc6K)Er4q}`*LAb0WYB#=tV)7sf2l*?vsciDm5*KTn!NWy1Lix7ZKEpNS9Jg7 zs?uUCNHr=GrN!ae^uw_Yd@=2ArO_{qf4k9Op>Q|ct`S%Bb|P5n)=-Fww| z1EdSJ&l^f52?F7WkF59Leh4WxEn;mra8x6>h+1sdF}Ub*zZ(s$lju~zZJo>AMN#`@ zkA87t#Gq=%v(!=wh6{CChJI{XEGU1L`xu_(!503%h4vA_XWLbmF1xH5wFKfHM0 zK-6tq{;tapT$w(mmAgNfKC|hzXDR(>K&TaHDYe`unM>GuOzUA5PaY`$Qm$uud6ZWG zzngh{RO3(gSt;sM^}{vc_ZsSb?UlphyLYwUvx*+>bDDyTEfZvGJrTckV4eR~fdc{7 za5)AnALEn62-*clM6hB3?8N&aG8PauUL)S5a^eNXqY`g#8*Z|eCky{R@6g;=S&NJx zf6JilH_DB;L4%c8y*TktB)*jkID=Dv`AB^Ggh6`}&=DneIZ`hmIZ`q0$+uia&apy`bEDM%=Ah7%d3niSqwFqR4;{y@G?*=!?RGe$$WK$^!?I1 z;+Ay=d)Bnu^M6V&$^FfK8yL&l?U2tiOnz8wnOfVIjecxUl7QbooZ5-(-V+4WeX|Kk zW*Sb%|BqFeU(_Ij*#SXhi+ca@a*rGhikH}efSKYUB3Hv$RynBQR~AB5lJR@(P8kq( z*dWnn2w9d;XIEzCLpj#G}%? zke(M$su4Qn2jFt(;@1~(BLf-&jZHqeIQb0*>LR844K^5wqmb#$jx6r70I5Eg3c;}f zIXC1)cC~89to(cr(_1@%wO+WmVqdxiCZF11a%+Twq_XTh@M!&+WW11GjjX`cNQ^Kw zx`z|OSg;V>!9{_}67hG26S8svEgYckxnUED_WRxGweo|0J1*E*Vd1Hor7FOL32zR} zGMTs_GB560s!7}rVApp>|5cdOPXt>r7ryGa;QSer*)Z+m9+xUA^-a3`Ypj zOGT~4BM{m0C^MGsA2-3er(&voYl6h5B>FPC7|_PG$+R48ur;N5V|}rPGZ{!&ZT?#!DjXRIsyAxQJ#);Jag9lg)JM@;Q{l0@15QZa#rHF17fE@Uj9bv>H zUhDlT?th9)w~ulV<}-bOI8;=Xn1Bzzb3#n0<7Tm~kOaC;D1a5RUtCSups996&VlYK z;K4>;{t5$vGuuXO{!9{Nd|gtu-Ah%WF8*x3yOBs(>7+Y)D?mRjWU8&c!H=~9oLuux z{T@yh5(%+p;b3aQVYI{CI%xE%=%gWyLliL}8ia#i_^TwD?z zLunSO_HDAIsHS`?Y7O2Mb+}vlqdGfvV|F4KBkifIa)Q;i&=wl zNvHn!unoGS;<1Nc#DIo;%2DpoI0mqN!2JXp$jYN|z^KKiLXm=4Fh<~C{d@Eh*6r

*865{XqJ8 zQ5=3JT%DwNH1j}1vNxsAr;kW6%$dBB&0U+DEjBS zl#E$#E&qfn5(?%nTaIE$1)Q_+om}Y=d!o5Hf1Pf_W85Ts4IPRz8q84hsTc&kn6m#c z+w@#qOsi*rF4`=V&G~nuSnLy?7UI{zyq%6;dwzeYCV1}UxF(7v z!~0m}2~o)&NHlYq?2X5#yFdqJB?-UTckWqBV!Q7=e!i<31?*2}nusXs*87f6toI7{ z+_4@`Nq`or%LI`x-(*!wjQF{|WkhNtu`7U%)T`1(73&Tjj-w$PQkWs*^#$tk_2sK- z*iD1#aP5h?B~0k2zhtfVMxE(?zL$xwT;%FcVsJc0jd5gKh>!jZEv|E5R(e|TYZ;L1 zLIRvEoEh9{S`S@YA#UR5#2OKvHa6{V^}{&fthVj=p;)8j`;NCH(%L4D{&GdG+@6g= z(kZFV&&LP2vkkW+zjwh)N8*XkBW`?fjdd=}=tW20@Myt3RA}dbbZN48)yLs`*a=gj z{!u*2n;fJ{D!2+s_dEmQy-Z$+mgN6vVBb>0a>;qh-QxRrx{Ix=z2lP#CsG^w!@fiP zUsGnFOP`mljQ(&K;)FNjZH2a9y-2NmN*FDti!b0|fVl7!>(XsfzMenJ285<5L= z@<&vz%;HO<`>=tgS2qUgUpJ^DQ<4(HhYTdcFzm2-_ za1z;K#uGTBkj(WcVj%pf@BK(4AE4~x(3u!Pgp?w$&`ycW} zu2qOP&EfGJ=E|PW*pmpIfpB{V<%=tt`*`^SY?8?A1j=V;*;TF|m%WGUV#7|RcnI5) zhSl}d%Vd$m$66Z6CT~ejY#3_`(m)Z>9X)mVwVon7Qx+)1(t!X9hSC(qFF@z>o))VH@~X2A;MsU6%36O2x)J4jloO)ez&4bflKz#Hq>zD z5%v!OISbw_2A*QsxCfuYbAk38k#pRebAlxLxH*QV3fa>m1X>)zIO&( zm=o?J0LcD>--bisbEAwcq3f~ZD@xoNtkx><#~z`WF3jwAdo`tZvc>H}+uMie--H7j zXG;QH#C|RYpBnUXaQY;*v)i<%W4<}%KYDCh43zTjc8{oqWt#HO=Cyn^XLyJ1%$4Jv zP%yL$ex?sgx|BwR7& z4aq;P@4N*7EuYvhQ?`WFVjVC&@o=hyl`8E(d=AraFDt-*IW_~LnV7^Z=G@3AlI@Ie zOpg8^mYD=De4hY_E{hF|1->T0cl0|+&pT>^3+}_BbVHzYqd75l#SN5pbib7gh?H{z zTuMqo{ZA&An=&{1*y2&SWMy*p4rm}<*|%kqv`Ri(k%I7N;Utuv+|acv`UAkM0@md? zEXP9nP!c7#Tl~c|$$Jq7#_)q)ohIlIig@2G!g6g-iRqTH)4=CQ900cDU z<~d%r1c8Q46|h{u35R2fi;oI-dp#PYGZ05CQ;uPZ>;#MXFpS}{9~nYx688FwqhCzE zd7{Vf3or73!gm)5AA1YR0){fG(wF$w`NXRRCtm&OJMH0LapGrH_*tindI_CY>i>#S zjl$UYJanCql~#aNpfAcO?vca^Yr5sqtcqCQTCQ}i^>WWi68z; z5K!j#fhCdTt=z-qh=UZ%S2U#pj2I@p7H$ufyk zOA>756$|$U$(%&RFX%o`v6tOjt(>I;%3o7?+~VXx%Rf1t1bY2{<`)*eA6^VmtG&{H z8u#kK4^Ln}_{hnR0ADzMX}z1AEqwN;s52f+k&zqjGtLE%fe3*_>9AY-{zHIIVX6ge z;kOSfCs137bTFZ_YiSA_<4A`H7`5h?$brD=O&}7qG9r71{NCwsemvtV3v&Bn-S2 z)HrMm0jQOTl6(*Vbgt;vHVoP;Cu-rY%-FOOg-(c5!dTQBum>w!J6pRNgh@VT{56#| z8p5_^6Jr&C{tcY)XMi}3>)F9&srpg%)lS$L1MQLArL>*PIq>)YxZi&qy8r%BTzGc@ zt~$8T_WAK%c5ngyd11-b@gr+ErVFQyN-uUS5blB#{YNYQiQoAE7-E=HIccozQ%iXO zBuLuN7fvsp`Ejo(wcz;niJrsc8bBlwA*JP6w(eEwMM(u69rL#T zWLTE1($I}%Ca2nrC?|J$yV-|RxE`P^0on)lGf3pgvaSm2Jr@Rm>V1C30clN`3Yc(< zL3?bB__M4aEYXF!o`scBJ4%}t1SrH;J=WzYWiU#Z#u_h6`Q?DJUZO`?ZT%*O*o5^+ z?~fnMdF#NezRngs>|>#~KqbD8h049ydbrrDX@Rg0e9l~a5+8#Cwi1|PZ@|T6F&*m4 zkNOfwMor=!6j>Axm-NRP6^y5#l(6g+p2!(B(R|UeeC(neS(qBtY^N~p&l-8U)0&UN zPi6?)*lmAmBFZoDmiej`0g?{z{tnDSi~d=NWuB78qMpJw`*tjfC4zpQ3n=m1S@weS z2w{?}AWP&0qQPho#!N83Y`{O&VgiQ(=0?Jg^;CFo`eL-zkgMD6DYNJ;cvgQFd68A zviek9Lw@@xD=}i)&e6RJ{)8A}8ADXYt4Rn5zHdAl4erCesO*{&ERKA)w4>_ixZRL~ z@)h|}BvsRH!}RMdJjVMzKHgT;wf5?Lsw>1P)B&{q}9k?ovR`=O5n9&NG9ZcyanAKuOJdOjfnT!?i=AG^z z>c@BhT6!knRr>)ZM3C|X7yZQm+7eU&H%cd8>Wl;!Wk7aP4cHLL>VHq@t&NFhyUbli z0J{Y=qiL}murr`e`#-XXRl;aM8?p_-W>z5tVpX=O_EM5XCv`zn6|hp6IVn z>y~5gy$+P0d>d&CcfkThVUiKU5>&-wn3F=seH*7Fs$c$CeD0^W?l#W_}PWmg8SV3r(*dH-`WSmW>@ zy8N)+9C_hnw?KvP_&z=?X9+?oo=FG$8KHU^RV&v?|0Sc*L<~DdMP3~uA4q$h^~pm6 zmZ-=PT;$W6pdN6}ky>iW1})wMyXH&dem^ET$f%noyN`Q5yztG@il2aN>2C%l#fs20 zZx`CJafy%&M5KN;upJltAs;i`)Ol+bn+TOVBilry(JQbEDPqj9xa8AXAO5-_@|*(8 zZ-E5mXDhxRIFRG3v@uEa6RecjEsEbA$*DCW`s|}L4gJjb@z?^>am!98T&0Ngjm4VA zw{d@++J9y^u4Qzu11}nIF#LxSZuTt!BbxdYX}8j;0tQm7^Hx34;|Vq!0;qoOp5n!$ zznJC=cg0_ggrQFTKeEYM`xL*VQ{JMYlj=yorY(J?*A^=QVdiA*%>HjzMeytnD_L0< zZDPDH?pf?NeK-y;m$Okl#`s>EF#C$Tk~vbj**vIlN*IaD&x1<(z@M7>m8Kvw4(jR} zwwM<13~xrA^4F_>f{LA(BVEaAY}M*n2jUT>C7)l0u{|yLu{~l>rl#E4$WuSaB0!R1 z;QJ*v>(YxpC{w065i>z^PefWr7gl@HUGag#JQ_vFKBe%Y?ygSr!!^eMgp}__z$V4YxEe_ZE19kg(}@l(qhJjur|^{6^@rcDHvVDD?Xy*b(O>p&eIT|YeIH#` z*8DDQi%Rdc_lGwYrbH*fnOEStw=HwmXYZN6Zh!jmE!dNdqPgz03`M zwR61ZNx=Ak|0C%t8RB0JKQo1Ar1O-M*clYRS9F0hgP6Zqd z0|fMc`@Y}Cetg(<-&dU1aUOveyJmYB#XPsd$wKyM&Wb0y#>nxqWDVx!{2|UEWdv4{ z$!a%F>O+ElzpkY!qO;(Y^!l9Gl(8{gEu+*(2(YTaA#Y#SLtK9Z@6}`eqY63jT0}&w z?0?eJ3nER3fOyHHTmW+U{6aP4A1PRY%p5lgDaIFh+>^zw*n8Jhk|f*)$aDY0VCIWa zG2qID**-yh%ROMxjvx@GAA^P@INPQ=z9ZIhV}i56s43@rwWH2|w@8VOShgt_1rhty zV^+Jr{`lObxw>(#qAM(34|;j8nTC;f)#baZGgK6ro|*o4a4|XI8cnE3TL-PPA(oEC zD)fzdNHFXjx}oSLW}75gTjOq0$|S?hSJw7ar7zXQWrAMYRHBtT=uPVhC&s-FZVJ^$ z@!QO7f4(uZH1v_z0mLML7(9Tr6$3Dmwtbdnp);jP!(gE zx$sfm)ReOFH2Lnbmd8Kx)YT={h;wf9hkA17Z&ez}%rA%q4*$GpRVrf8z@-I!2s_`Y z-KQ9dyNOXj1N75_9o6BtNhx$w^q#WDZ0zi(>h`e}GO~*)@Jk&;$$y`A1$r6tNtFlf zmG=bGj5@r?cUN9L4v*8_evBVrW_tf9BnQ-^j{uJrD0F~V7D4b&!{IOx<*|D22Q>}@ zE>6!Hcm1ic0HMTdW_3^yA%XJ~MD6}t^p>kI2%BIqCL&D*sDP}448vl1sWGeKJ1{A~ zv_`ZvzNRpjGq@v^NM76ay+L&Q9VOtP_!(D8Nh(yR7i%v0pGWz$wtP=%SACxO->Yc4 zJy<;Y(xK=jq^P*`x}hval8*Dgl{9^lo!SI%G6@~K;J1aGPS)(^mU4)v+T@0lchmKN zvcrX_d5k+{Ag!0*o_;`bpWI4(jTtEKmMbMGFk3BXSCvj=+=~yVbjLVo0mmjgJ^mhl z8=$^?_7xy}w{!kOAvc?I>+7M6`2?^{VrUOH;^o29_n$E-TUQS>i$PPo@M$LSX&4d^ zrY4PVE_XezZ-q%bSXwF2aND|KvN#HlTC13~6evZ+#nsZg)O4k*43w^rP^K^1nTL~{ zwNt3l+I~y;C4RE%Nt8It=2XbfQ<}~5X!fvv^ZYtwvzEB+-Br$pL?Bz+sf^As-)2wW zJptxtRH_Kp$SbA$-6n<3y+cysY5E@JkHN!B*fUAI*Is zT4S=$P*mV6`3+4$->IC1&q2@COu$U0HL57t+Femu@|Om7Y^y=CRgcr~FSRl1qz-e41`J`c?x2LBR|IhC6LPhEPcOEF=qlGuOtC1+qHTG#U^d5E7R!FwzGOO1WLEXuM6;MCzfmYWf zZ1C(ap#=aPbdUba!&d5^Bev;GJZGBX2;#wQjmAYVVFk#n`+ae252IIi^x!gjaixZD zWCs7(l^Kk|&;2tS9Ow&`7h@OLW;>$a?^7$X)ntp>aVrWP$B#^QEpc%?0(Nd$w@ zUG#eE_);x~KJ4kbLmI^`X-_kuT+mAGeqyseG9j}d(0UVU$lhxsZJyYS;eDqTv?r8$ z%-*s6OhnYYK(1Fa@z4C(wOVKI&4$ zm#Kc=-xocyBJq5#;*ZJozHRJ1lriY>q8<+hEGe1N6z`s8N*Kapd-UC(G{SYhh>}mG zAUH849JTY%q}+q|;2~<>Z|M6g3cp$m!8`^;T*os8b%-lLr=kgvxnaq?7ivsHQOB!^ zAh7Mi1)vSfJw-3cIr9 zCZ^?He3kJ73`-hq>l@V7g%;{+%AflK#HBsgxh$DUU#@d;IdUmN)B0$Tb~)-G_Ky^&qR}|Y5Luio{A(do%$^j+T1@_63a0na^vDO_$uTG1Ls3t^ITPa-lJ8Ws61)T{!bz4M*v1}$KTyNeP3!P{r>d{s zd^f|t0y>ZAxq*BUH&W@h4GfKeMP3o?oYU40w&B*sYe@h0iAO~SdyKF5|y4X1pO_X(oVqNlIwMU0&d!lkQ1fm-Qti;xN`<7fMj*3 zcH<4efYx$bv^#JcU_N|}Od9sHzI}E+Wcr06l<;M(M^&^Zq}?jCb@qHn`AnCdMz4QW z_Fmcu@>FEv!vb#$UH>pc%bYb?tP~;^qNhDPK1+J48MB~a;obN}gAF{yPcqaR^RmvV((0o3@G0powcJ+e5PkhLfA<;)uZ8deFxQs!r<+9-S>t8)=jBpU3Ltw@9MhOP7tP_Kq_TPToOA4h||49N% zbc7I517=9ugUP4aDDDV4nhDu-KZcf)K}OWi2J`)?YJ+2jrmZ=?XSv2L>*3O#p2mmo zI0Xq}WeEs$zOjRjh6-!cltr6u1&ds}yqnFRcN^}dSL>z`Adl!Yn@Y66LcrI z*|ne=-Zb;NSJ*2j`G7B`u9n>%dGRu7{Z-YvZ-WEA*a54n}{oBXjuGA8jdEAiQ?%x+fPv? zRg)wjTPR5Jt}sLt#3tIjj|@*W6Djf@PKd3Wc&R?5k*+14lU9PKsuwg6`=IX7p;)Gp zm(YQ}JxwC%kU8$WEFnBR2r8@4Bo_o8;>(l>CY@S#_a&R3lSL^hs^$7sUlXS*?%*))_Ppw%Ns(%JOqZe_#y z75_DqMmObfJku*~LMz5#%T=@3`-x|un_;JhD^n*d(6jX!(@}Q?N443eE1ec=IJ0w` zqrBRrXc&sjxsYIfnXmaeN&lrXXJUI`nERL@JLc5gN1py54LQXHsdCbGwz!uDc}TD2 z8kj+kK_AwRn0!TV50V#=g=}>pRzzWEJ3X=tLPKiWxZnh0Y{|#uf z)cbI4@{2(4kw@){W*>!jd}3C=9x`8lSb}fM5SC zAlr-XQ+;lK;I^?Me4ZK~9$c{zyhfvdTAE4PMz0p*1BMw46j&7eto)o?ZD{y=1pMI5 zudckk(@aBv^@fSN0aAMFVN99dyn%u-2~%fokjy>#4tn#^b?oQ85s}&B)a^(anH7G% z;&RBd-8pCtrrAkP#Dawv$_@AW+}PB#OBu7Zd8Mto?=jXK`|bhd-=+nAN0hf?&btAm9%{BX0!2Dcggaw)RW*A|X)J?wV$#@`{971&I<8^(=T#Buls#%GgDEM`ZcemUzGHMvCeJ;YZ z&MzJ)8L2y|&H)ioLy&v=c5`nDYEDZd4f1(7!y$nc&Tn2;ut85_|4?`SyGU*-g^H_U)g*5Zu4Em$ zR*-=EE^6wx2hFkWwtH|9H5=W1pP}oqpEaKD(Uy5=#;eW+SS7Mdtz!yT7 z!-yix-(W6{mppIXdFXdT#KDy)0(USj6LLsz%U<6ZW_~s)?ViA}9I+1wlye>0mu0lh z)qWaB-AF^!|4mmrLA+&szo+z$tqL)$K|06Pi?a|Id3ly!XmF&u zk^zfSM#@UUQx6$Ww(@rN&wydq8Xq30^;jdeBKBy?p=gzihSvyqZN1S1 zH1LE7spq926B5R3>Eva}a2n_5$0N}A2agXBw~F<)1IDzV@9$%Xep1jbl-=)bE+D$v zkv(lQ5`O@bizheSSHpB@8Tdo)F~8}&QZ3MDh&&K>3vP|JTMAW2F9qZkR(P*Z0IEmgxwIFj@mtLu_u=?`KP7kR5SU##-yic%+Q8`OnywGs3&?UWi> zFjHU~1eN)|N_>KtWQU#}qa&~tQ1#zDw&%oRf!^bzfGiv}GfQLu+N2dlc%TKxv^jyY z=Ry{NdJaNdDHcLR3AweOel8oVhk-~vi8O%j(wGgUg<6G*uhKl1eUL(pn(&(|fw~wN zS1+OLJ;PW>f0(Y$Kehb#H=tlsm`~M3@>Grj6U3{>US;h5smt80-Zi8f+&HYzVNx$= zc39Uz^JbYlaUQ=1=gzV8jV*YZ*T1^XQu0;byV4bnGz0Wh3w6ql!cf0IQ{fLJ{v*sj zv+#bBpyogLN|fKzn*4vC*DIhh&o8g}q(4x1Mr?bG|LH(0N7hSycsR>Hc>>2)^xU;w zvU=2(vXk9V;(!wnire+=0L5FMus;5U6b9)2@>F#wDlzK`!lhp93Ct=JE%Y|CJr?pv z=KMZzyO1i&J&GU43e+Wp2KlwWPO&(LfsM?(F*{)R!+pyBwKe~1Osni;7@F$kj6VYm z_)k%so2%mOh;B2h<(7my$hk1&rSlltx3@TMra7ew2S{;~CXpPuzc0Q;&3^!q>MbAj z%KuXBUh*cLf9sDrsXB+V>zm6OS3j_HGO{@@F~}E`@43L^tw_?E&3yFwGFRf`Udyk% z=Ao--X(muq*=aG&9o+3PJKs`$m~xHwL;6dGpo?(TUQp8N9W_rX>JG=`wa3#ljs6lk zOX179oxS&-8pqQXZ%Dz{^klVsY;Q|z)3$pjy{l3 z`U>s$2l_ys>9+#pKw`^(i7Xkh^G2_`0iqS1ys#YW%F6 zrZ<210O)%}QVlhOn${r?+T zec7^b`jTpfSwFZgH6soG+^|@F_oQ9&kK}Fza=?K{n&H@^Yk;|Mo}m**0zH|oAo~lq zJ^da`Ra20yH-2Y7)8A%swyneWO4ex9D$9-;1+0E9H9H%ducswDPo1?^}lVl2G=vDioWDCoC<@@Z|LyG6}N&iy(?iD#KB$Q4C zku{u={^lWK{2P<-O)>G#lwJbG5RgJUABmpyCuJvgctdsM&ffElW3lRwjBK0|pHasR zYIuVB96ut1ZM?CD>YE3aF1MEVXu56LMiNO@#!cpzgX^U^) zxwCS$OhsjJCq6P%PG0 zG}Tgn#!fnyCh>f;N$@1fgk%~$0%{DCPnp4{Lv5TA!mMzq7rkF2l$m0dq@8Z`9up){ z#-g+g6rZi-cM}&~90)aOeuRAJYkil&^WCwJ|L3de45}SN9d?Ub$1e@F{<_>9Iwm`D zpyIOg&>$n;#yg77M3ifU>pp#Qy*TPUcN|9UUdYFozYi7eAO>pQ;8*^o01k_Onyu7> zms}Sgult*t7aDl^jE47P$uH#P03ppT>~#-^;0BpBMwZ8QngFU7>#vvCiF{&7v8I9M z9#>p6!CsR0A9n1d@eo4F1U+-qcj2R{6#qe)UI)*akn$V2+uFU^*B_+;i)=m?|3%{o zNVsI@lfY5v9-G$X?dh#P$;@m0%NrN&#rlYN-N+$@PiyapG%Pai`?0l`e>c|kfP47` zUNU8AUt2Nf%}m8c1XGX4{Ll)!iG zaC-GG9Zj$Z11P!G5Z2SZdqx^w4|Cs-M3gK%v}v5m8My{hI&SLD&}_48MQzWVq*?5# zj=}W5;aBxl%s0t@p?jL~SR&jXDJl|sazqhSE7xfKHJmHH*E#a(kScv@RTB5o zy+1-x3KPGTh~qH0oS*&@yIc}`A|zt^w;f$zS_XP-+kVC`htfrOghPn_5*}&qW=OzA z<$Kft?DQYNHM72ai$=v;Q|AR@Q0rWTdu($nVSV6(40xcK@xe$j(ZOxwnTqT?_MEA< zj_nN$kY^_8%O2s{Uz3bNH*Oe{A_`hC zGA*5q^h3BQK6#VRtsnRQ%zY8B#I$?p?I*a38^V9r&7U#ODs&}M$ENb`+1_0+){OBg=JnkGY4KPIT5`P_i@}%dLDS~(uU$Lk^y>T8rIj1-I^EARQ}Jv=*LZO~@6-Bf zw`W4o@95XEY75_kHsgtZSBS|@LVE&!DIO>hmWHa8Zv^)MIDDay1MpA=<-?E$ctG(f zYW_tDj(u$}DUYgI!yh{NkFm=(78G=kuZZemTvxS~_(Ku_ksXREmma-!Cz`mGrTJ?p zi_D+j^k5jm>hsQLcOjyDkV~TrPini5sJyvvqZ&owlaia70wQ#3Ua5u<$qWhXi)}?hpd5ZT z37lv@M_tc|Z*J6f;7VMD+Y#E(_!Ue9i-{sg`>C95w|0#Tf*FtCjQ)ZcN5~)nA8OdTZQI^3 z7)^i=1J0gf`9m2(glWIW_PhVc3nGy-00CI%<5QT8pH4J^t~GoEGqL36msIkGax{UJ zl9{5gx%fmhfx}ZYFaTr869Kf*Y$D1kNV|tDaHZ*-!T6*Jd>$?rLvcqVFMkq0nNHD+ zjDYy^_elO}`|277*-vW5V5I#X0?1ab&lajBpTPcrYu#1jQ3ElhzJ6>TkY&nSWV0|HXL7Szl%U~sYv-fZ;$G3=IM!(M- z+cw3Y)8%Nd=-j_bRV-<`{JI|gwY-_@7|HY5nZYq$_nU@f32ZX~8ZWja0gsk!hyn7M zY9f(0Kog?!7ie{Y_&tU^3I_|uvHmjz7jYUU*SqlPKlqKz_-vG1Zxb$}{$(W8LLP?5 zaa9E6zcRx>)O6}$jh66p>yLFG;2?-=_`xo3PZNO$%M~8X^%XG1>~O{4X{BNB=)56Y z*gA4EH$g-Hc4uF+z$gZp@M()L?rfp5%ebd0D0jPj&zVSM-ee)0}J4XNCZ-s z1{bj<$qfZiFBdD3XRsbW>r5es897C5fPW9=;wV640{azjx8%T-@gtI8sfAq(zCSfT zF`!xLM?;YDk9!Zkgd27+L;$dK!o_&jU#|ZYV9y=rr4W!iYc@m(>VNR=TYu|81zoYk z-rXM7l2b8m)Iig5sCrsTb_t7@j}d>vyDR2UG+~!&VCf5=I%(RctYGUh?-KfLLZSUp z5<}_ytUZog@9!110DYfm;5NCNn~Zw9py$X7pRzC(%KCSPo~&Z@vzo8h*~$SLmH^o5 z_4}6!qSzPG!LgwGZ&uI1vN(+QK9~pwMR;$l!7~j2#zg(7y%7QzlVOh8ySU7tMCYe- z_uC)J&&*k1;@-hberA561H&($|xy~3|Nd@K%`aehcU)1Mp)A<1ZjAz)as2t zCg|i>PE7+ZAIKR=<32bCC5H3$h0qFli$Hsx9?JZeQ5%lb1U5cd0z$H}Syp(oH$yzx z9)RqL$k;^&UZ&8%dvS?cTHej-1(5(-f^-nuZWNM$QqGgI(h>b`umKHd5-nedU?4sV zdS`sP(buvhZSC;z)9Dd#uAob)3Et_nR&=$C_5GPAHsEe0W&i5y`B&pZv=}-Xi;p^p z34k~62b1TYtyavWp7yZGpe1yfi`~Se-z<0+PW6_nRAyo0V`EzKd}o>^l>4l-rX7T` z6blqcu$tnaoeNRx38)tyC6cmxKcL!k_uu-z@7&gg+ackQNI`Ej7>A-M4q}rL9=+ZH zox+7}szB+m2e<)nvlqH<$?Nx95%m`Ssh4aRKtDd4t-cIOIq7%w`{Vs1#s$>%=UL*2 z^4(N9Wj0l#!#ek~qiQV7;nj@d=Hy}&4Z&w8{8c9jd&Cb%g#i9k+E=CPb@)NamfM)Y z+Erg?cRlI@Cw0~e8<>%>g5EyEnrvY@YTpmP#Ei$6iUVeuq{_+6cCYYphQB|MCvhv! z+is-wvO?nxo^8c61zwJs)&<9bfW!wDth+C2@-I+-fONC^$PFq*R77r-LJR@ zE3{p%70aUiQg=wKmLF{9$BRVRK3<3nNA;8s(NHY24fCof>KHv)EuUmp_$DVw>02Pl zxH5&wjM{*Tbnv@+*nCwe{4#o}^`bYnp$ED@*lLL9NiEvmz`X4-tmA?&nUANcQTt)p zD{lJZLQ)jz_|>KqqsSP23`vVY{-}%{C+UxaVCG6oPjt{9V?sp6(%-F+GqGQ$uX^q{ zKOn`J5D=~-?Y$V6`D`+{-z6X$S>pe9)C2&_)}rTQG=U4S7c*_e6qB*|M`PSk!30ow zo#N{YoQnTI>cV+yHPa_*BEZ(JzJvj8m-E|O){EpLZ;wqGKsM{?$1B%u7Hbr1n|V{a zqKSZnO9ozcy_jfv(Kk5t>@1WNGj~YrQ}eGt$-5D=tAcDMsA&66uKdV;8Sead-1fgy zx3r6~&5XPin=6`N^UBiUa6Y@Q$Pgve zAn<3Ahl;nKZuv;L8-sKRiz%CKP?CQyM$=rhQtX|_IPX9#cRZ91Im|!ytn;Z_wA;DN zi|f)-W=Q*1&^zsDf}EZ5-IyWQY)gEv+xF6Kwf)pt;-%G#;HL2>FA4S0Tn%QLCIq7k zix;`MlraRewzqi1aAT*dg2~@_^sJwhkYu=XC~ExKSRQ(_DdcYq|R=w^I&>x4Q1jy zS8{VQ0V0DzVJNB|$TNz=hA|8hTBJq*21>*TplX$fMrMm?g+bmAMVVy-wAsWG26IgK zMu+cHU7%C_9ssB9faYzG(SzHpN8tzH9wfe?b;}H0CrrSez(jofBy0KF28IwQsclew z{;wz4cmT`wTkAIl z@*)f*Ejn~q`H_pI=cBd5I<{$@rd^hE> z8arb>l;ms7iub&XwoNPImg@GRaTeaciiT{(SXr`P|473LhxqQ}pACr|X%m5EF&l4y zj>x%9+ysg-o4RNNJcLEcVo|UmywMnVUWtnU2sH-JcGDb|nGYjkp~vMLgx>;ALp#&r znZPk{RFirM=)hblnYX(mRBi|M4RGb7G~rJ5me&5>`CVw{$OaAR@4GS=jmzCtI&}_0 zt6gZvzjRhV)8H{c5JYB~a;rIIbkPdGM*BV2icjzxpTgbXQE9qY(McB(Snc_pvF^Z< zu^nWC=3Flas^>dyK6`Cm?HLUbHh*OWq^It-05xLGJWXcea%YI1Y|*{s0rdzlhTmSK|5WCHr)Tq7ggnpDKkZ*xuh{ zZ%oaM^cYOfzyWV+Mn%ZE_v>o6kb`O&THcvPN+^FV+Q*c(OOjlifYB2=Kbt&L15}K; z-)?EJl8X*K$4CqL8uNye!N7wB{~Ma6dT@8{d^VpIJKVDG0$`yVxLeLq@k;&77c+17 zd<3?6dl)q}FQk{4(ag5}2~o=@OoYoU_WMUf6EeyBBZ&5L1`p;+%VNQTl?l53ag&|_ z5Nl`)3bEy?3Ikmx)hY{Hz4GWgacG=1Z`q{5Vq=djKFQfTOnMVEbOtL|S_O`;=wQ+> z>lpp=H8)}<&dPu{m zTzJu;jjuQ`g^`wsGW0h;4X=5R5^%UT%_t~pyR?VtqxE$Mq|5_5$>v&cc{r44=`}4a zoVd@QjcV7e5DjRI{-tVRkvHB*zk69DO; zDyTh>PM-C!QQjD?mHcnZ=hGr->w1ttmLBBC3SyF3eSRvTEpoDiZL z8l?O>_;jR-hc5D)v(J-pF_wp(6M4@VNK9;OR8I)$ksOhpoA#>3F{!{;QW``=W$#sU zFzvgyzE*Y53Riizp+8d$cg>g6x7-aJw^3v<1bbfZdWI!kq!`JMv@o4cE#XtK+qdFh zF-r~3EnRJ7{qF^7cn?6dQpsvjJo;!2-+Gn6Lh*qqx7$ou@@9(BNMb5Q? zE5Bzakb;941i42@{FqJ)L+@|Ma%b%PX&tBTolSPbnJjJis>S&j<7NV_NNPI=p_~s0 zaA^@`l?EF65eo08bC*{7j@P$+LR!+MCg!6LJo&|Q%wlhsMscldy5^uS9U&Z38JGDc z@N2G@krBr~k4UNTp8c&Z^^Y@!?Z4|HTU5pZ2vxuLuj$kP_d@&7+XYQi;Ew(xkmV4d z9o$p#Qqd%qxGZUXK(ZI8&S3*|kh-jYyN?{by2Feh01GH!fg~rP77EXqN@sDm0Q6#x z`;_^*47V0;dL`5gZaQ{U2@J)eb>>=qgxdq_p`YVd>0@~!Ll|=;7g8cPkjf(}XyMnd5w->r);}S{mNEv$<57}rnNwyX{E#sqR zDemXt7aEeM6h0-;3mvfeh$%Rj6VK*eM|(Bt;lG?OyE+}K&B@#IEj1r9Or=@r*Qa#=e}{P&r;gMKG5EpLwGy=X~o*tS9fquHFkKAts3WpLr=Xaa%-Kr+P*P-R?b z8H4VD^M+myo*q*{5aT`=7aRywgDExq>5-RYRpzD1N^@uab^rZf{bc0$3V zZEmZ?rLUj#Fub?Mo=GxOr-faZlp|BknY4+ZC~r{;nlzJ=3DRZxN?`cLD!SRoP30!; zWkA26H`ml5y9%o*h=3G&vip_zFO6pB!Bga%@!xD0;M})zf)Ir>{2{!c`*YHwZIxKE zut0RGxcRyVekh}REnqIr_^-|-0%s4q%CX49DOj9=So@(U<#<&C424z(*@tzbqrf37 z1NY>fJI@}k%PW0F$pn$tzhe^$u^)%G!v4H-;jhkzPqSZuRJb%0zJ9Ji9oXJgBSu>dXnZsPNGC_S;g&s zfwJNDUgOw_CE4{Tygi|MMzAcvfdQb4oe|?xMO}cAmE;|M*bYFS`uICPlfVebKX4Ra z>sSK}A5_S4j+^;wCZRcC=5^AoY{h4(fg&IrfbGk!(ynjY-u-Fn$IW5l_S$o(FH?AQ z?Lgl~z|;Xdn>-rr)j_+zLhIi5-)Ut?w?_>U$;w=QSF=8YD&e~P7t1dnxz>vR(`C`T zlYDF__WOV|wXp@Nd_n}%VMO!_1>7E}4`+xeIdJoU1J~(Yid3@bMj}+39#98bx6c;G z;)_o}b1~p3Q+IqY;B^AftzO9$Z%E-gSYgg3a>q&#FlN&@4-;>mxU|c?RQS3rxt}M^ zt}AveJ1X%s6tcLJx89`v7(2SYMZx%{zID4$kBQ`k=+?gP1Yp>YgRTd7@VZ`3Jr<5O z9!b5hk~Cw>Zi*d^@}dY{Eg!+>$%dy7u-bu7ulAIz#FMZE%Iy-pwaZq9;=hANr^gUt z>$yalkJ0B|UHnNzIPXxxIemd&34ocmYUt0(6LbzyA+wRL*fYYm&mogVhFM5 zfdQN!Qfdh zM$?1ggZS^6HxlUF={rS|-R0*A%GUwR&)m0NA!(lmN2HOfgf0jF(izLAo*9TWY9Q%aM8Qjk6bxnwe2Ep6It6)HCx&@EoI^5{oR(z4n>&`Nrr9 z>7=jylvmaWQ{>>$Eh?}4KXy;`f?~q;eQj^g^WB5s$GsGeSsywgo$7!0vD?q0KDfoOyDMA zb*1m%`pshiAgl>`^PD7Ji{X{0#;4FID428b(g@eg&OY?+f0s(a6(K11R%J<=D+i8|>gUYodE<4~uIbGD8%E;Ii_eSfH&aOLzhCX8i zRQKa_Yc1No?Wrwf(Vhf-ZmV6>3HhC>=`Z(x_*|_KZak$c9Vu7ye6`0MaVK#l}yZSy+`x(q{^-DBw!_XJ3kFogK`x=flp{0e2g_IdcSrT$EHzhku@ol9A9IxKg5 zP@@ofT$L1Ar!kmo&ALrq$b~_zR(GNYKc%m9vD()C(D_(L6QIVhENwwR>w7)EoGXZRUb#r(jpigQavpDZSBuDdvO#9T`D2vp zlk*D|yTb2l{`%#W!ye8cq7bun9pzv_Rxum2S>q(CjeOmm7*|hhgMh1BCw{von~pPu z(*#~2`ICBIcI#ifn9$dL1+>&wCzqinjsiT@KjLbBtP>(!oEh)AJMV)nbP(_jsaHWl z*IOb^Ec)+ngK%N{sXf@b2!9;FU<3wuivoE7uHlf9i2q!G-p*=)Y|g(dqSqb+G%8Hi zzympk)r!7#*T@2i(YRjFvon?L6mnHQ9h->`=C7pw-0cjj3r<6a<&IFYjKBCQ&Kzq& zblf`e5Iajt@8TWHaJHwFT6qB=@mK^z4v)#|)IVyZUa&2SM6&sT#!Kme-%ls!94j0@wR3wT3VY8@SuGT^1)Ewo?C zpo7)IqjmTO$k+~pu$26_T)6H_lqU8W`Hpn84(rF@{DzEJ2N0!XW3Muol}h+dX0tza zhS6`|xsQp{mD#J*T9CFwGzG&|$L*`$jBx&vTi4vk_9R$e9jV2U9-H6P%j~DxgHU21L>SEpJ@d81xjc zB;w(y865#cF3JMYb#aWFfSnN~9GbWeh*290RG=YTilPScGQdz)IB2E3MNsz7IV=j2 zn$r;3fbYS85)_@?VKw8D!wlcq8wWcDfV}06+oiA9Ljtv!odVpne95Fii>;c0MuEpD z1?u?UUUR{%OY|IC1F{7(93OF#+GtQyuUZM4ZCj+6kVxc%R&dE2p5%#!dDhIu0B$Nr z@yHkXWB=|~T452$4+XxH6nj6iUU#Op36+v9D&{njv_qPEQ=C=(oj8>6)@@gL2wk+*WqJwFIfaH(@`EW#bO%lt|lLO5Wr1rcTXKG=A zC?J^h9{*wA^wXb!w?Ca8ld>S%4^ET4>d?Ap3liRdxMt|C8HEAq?awme27F(-v@M>j zhZyb*9v;5dahg1=^Tw$nT`cP=xUxpjLPOzC zR{cl)-Lqw)9S+Ib(7P;LMh+?|Z`rEAgFxyFX-_C3yAMFo$WHoA_6rHHMBL+9WT`J= zyNH{_WIrMSOArjRw*yfNa-t=HD&N({(ZQtT;9eL$d?UYve2$wAmBbew{(@Zjm)t-Uh5ceG?aH{zDIx)kq{uhs8T2GL`!^dwnm57!&` zCd_;}?4L_M?a%Rn>3C3_cJ0E(wJ${SRkww0U+lD%oM%I#6iS_%SY!BTU$gQ=zV3eZ z{`ZaLzhw%6JM^65=_>ZFRv?flLtvuY($lDCpQk=*gd4EjBZRyO9j9Ok{MNojSwIR${c#Nb&Uq5r1%YoU?8$F5nlnz%ljeOLU~cGH}!bD z2heqIkmI$Qmzd34;#l#+^a%A6##>HkyzehIbvIDRh(kp3vJiI5fVQD{roQ@#=Uz17 zQ+PpvKh+yJ?d5KAwZKHxlWn%V1T%SzN#$kFa-r5V{;~K_%P~B|=XiRHBSJ4HM6>MM z8+BOhN(~12CAWUR3B6-fKVf}7x}ML5Fz6D#K56wvzH#x7z- z(SQS{pi3KV=0o`pkcNp~%2&&sF}&0l9MDG&zJI+D73JWgs&L2!<$Oa#4e>8?G|ciDZAHTlPF6e%}$(jG@wPYnB^MC;hu0MV-ws zZbp0a^v#i+ltD}x-6YO+c&vKY(|XBj-Gk}j>u~T!s67OEVq}rk`Uii^w6Ay0v4>ca zZgBXIv@;8k(BR0@V`og?sfXPckI2qCmNs_)&Pqz4rEeKo4gun6tRRKnmRyiO4Ed&xiBzX zE43tOi41@$I)EA;8!|aaVPnKrte+(yot3Y~?yun3*C3UG7ph#ee>pg% zg^Ne(V~k21r}L$(owv?oZ<4ZREY+kmzb!3~IgyV>u1bOKz^q-2j%99S)WnhV@-xgIHU@-3Ld&`-f}* zD}h!baDuI4VisFWl*I&1$2r4QT*D9YLi}5d>R|#yN68c;{5xDF9}hC)^54hi%;EI> zCy*)T_Z8yOoCot6eF`gD7*3Z*a!*=+RDQ`uG#H4c(C|7f=8z8l@Gd4mO%=CQ}4q%?Wz00ya)oj5yYaQ zB(P7|6cYi)yJRJF;#nv>dq2myaN2Pdn=~f=c6B3)l{B;@;~VXf0FWEEcnhyi<*CH9H0c&b2F34ilZkQCOtm!KN+DCl6E;qUn8|GQq~jW0@gfdw zg8a@<^8n==e$kRcz?)%A(KHfi73hB;QzMVEz(j}@Z=tVlyg#BQ;C)aKPCiHlhRPqy zNQ=lmwg0!vi7|qSgPd86XQ7FR>?m|aUss9dCY8AzCdJma198PxIsP8?85a_Y&GLoG zzf1w^gMfsFDIBh8tM~FeAT&AJykd6~?)I34YtBrqQs3xU0L=KjZY({2xnS9TnC0y-g$CARvu& zNr!ZImoyGNgi1F%pgs0lI5O7|@ zZVIFkR-rNi$!*^MJeeph;eqm^s}2^lfafG;446^u8W;3->v=wm$&KO*aSWIo)D-9g zZ}WSG1Io=h581t)FUcI%?iR$O9>-D&)*!FvFrg;@1N;fr~kp#jj&5g0YudexlVc;R~ogXwF7cM8+jq@57sNBM=`=BNuU|jNMdrXM z(ZzK#TPgb!cqTBdAK#bRs4UPl#$f&Gw6Y{g2YM@)U^uEHouPGO$L&j!i)4c`1(#Fmgi)RQiz^?c(6TbP-8jYOnCV|NY zvjElcGqGj=y_Y;l3pdoRhzTb&1cN*fcZONXJd-NY2+q>nUESKo*SS8eCA5`LeQ5PA20)sp??JF&u!c1Cne z_V9yFMx1lAha1MQNf!127sC~63dLIm#fHi_+KH5S@kR*(yLpfwemAa0VC(w04fQZq zNo@c!t5)J?i)-h96X$Qoxw)sS(E)&x+LdanC9{512NPz~g2j7BuZ%h0-h*E7`bt12 za9dmaSTy)@#a;Z^I&hxWCe8qSJy&YFTgtHcOqV`@SEq|M?CXD#hePT7efaDlM~b1@ zf2{Jz1EqbaqmG`%=z^=0K_#f!Eh2I0l~41{bYGA~>SEgsU<8&fT98b{`zT=-+JY2x zF|X+F9;-6ml_jQg-RL?iYq{6H-hcF4r*W@@6Y5=TsC`UNuMSd^m)aCi^F>b!F64eL zs0i*i@6KMx$;`108A$jmi%Jv6w@`3*7)l zrlqFcrq|GzpA82Y+{c%@`&_dNl~g^qiZm|*3kpfE4i)5E9dFE+9E`e=nrb-Fzqd|p ztsndApEXQq7C7)>`q_$aZ$#I5X!)1FpTky01If^)FDR0Hd&PtU`)R(~H~f3++i#Y7 z3@c4VstiYK6|&Qh&J8k+i>8MZ>9l)+DlOV4WW`^hGSCxb_3w|8+|eSe$tbkB^&STc{`GQfKjd@Q ztmj;c_SfR*I~VoQXtfKHf~+r~SE39?Ys{&2J6;_j>)7%6WDKVlwn6t8b1lughna+` zCASj{J2iHK4D<{sj&CysT5?L+=19r1S0tzfj8ZnTSIA0kL4x^OI%u7%I!R|)5mDW=5vM(%%mHX^j;FQa`j1^&G3{ zVYFk3Q!a6RHcmxV%*h$K?FrABy7+Hfw%jsjT~FBzMz7PM)#9{%<1EW_+yuP}m){9! zql_)%6|2Dn-`>{UY+!yTAXgTC`|OkyS7PL8OvAhbE8WX|;Nky$k+6)6DFIlH*Cq)i zy<2OdL>68?1evyUDDl#&*SJd?^yd}G9TAO)r+epq7q`B+67Zv~1`X*SQ2Jhu&2o){FB1GSix|K;O*6oQy;5HKL4f8WMgyE9<74gJipdgT0WI zRXJbKCe?O?t*!}NXo4Hk>22W<&JGVZYr+Un@Ds?bCeP$*d+z=9Bj*o_BFpz38Re(} zn_qTHyh}bqlR1x{H+Fv*&ze)5aKinZNxsKt?%EY<-+wf=6^RV`iHO~yypx(Sb(Ma| zJRd0So{~mMKl@Km=WZRFF_j+Us{HT7;TB=~*#^G$4+7csU~EgP{_SC?)phVrq`)yY zL!?R;?fCoAP7<4t_Um%JO>4#Ho;U3HxJaAfOitQRvE^#Wwg_`ec`sQDp7zR&_{_Rd4D( zFAIJ~3ZN3|OEcB+TWAzY6qe%GGI*JB6pAtnYF%{rx7oe%5WH)^1l4ou3-+EBkcAQC z@B?oK97ChNRHvy~n+ghWW~Gx!j0xT^lKN=$=0AZfCzyf)bY zp(ibNqU`<_X z`cU6&Ag#*J5?!uRts{Bo1|wY1UQ}Ds1wRISy8Sq_SEnnh{kT(^`Uk^M-i!r@@!rwi zGZY1rD!ccVqe(2R1cz@uf<}FXA@uWlh~B@ddb4|f9@U9i9Nypvuw_p+IWJ$fAR*iR>KQ* zBLoAs6#)&A#o_bsx_|wb9Ngjw;K|)!ph=-34*H!Y2gF-$0N49l1B;?esdoS#U!L5R zJFIg=90jC1~J#xpq@m#ukrW_k8WiD8_Ke_i^=$5QReq7 z5dMSg>gw;+)u~$yjXA64#_{z71kFCmrXi`FKLs@cHu{_2=)a9s8KkD3T+_n$IkgUYhbm~Kp$wO!gZO=~xKG5ijh zJLI4QIjRGARVw@^eAe+HN@r;pq7J`&tFxrOolij`xca0A$@3PI<-l2Gbvx zujeDdtxg__AA_T3*1-4ItpCm7z$)UVgb7VhaY5Ix_aq31HNe#W2ig1JRL1V*YTE0` zy0t~_L@!i#Eo2}1&%|BoHB6*{v(7&BKw%9US33C&4?|i!OnCl42(b~vx0>41w8L7% zPhvy-U$pE4Dp^qBiUcv)Ks~wokC69_Y~e|BRBf-}2?Ip~zLapQuUdT^=-Dg7#x)K0 zE~FvBS1B~5Uq^J}uvc1Ybh1(2nhrMsg}2 z0S0-dbx(5=(}ijLa}Fei4gQ-V|89kbT;G1nMTPNOp-Hq*L?M?sph+>oVUgldJK-A(Dnhjye{Qz6Q~as#vHF;kuC+$U(Ev51 z+Pig)Zxk!y?7r(c#ClUy*j{6&{)d{AWX*h@8BW?YRRmr+nVD=nEq5?&_ip9)el(;~ z<}|*mTBqh3NE~kNhU0?~(LPpnZuH()C_pl`Dg+M~c_Dy0S zcsd#Zw0&tTEBX@weV1k{uy=#wF{lXp3xw04(UWH~%{Zi%jnWuYPvYlmI#72Oke{3t zjV_{RcC#5*QAXRVsJsyCK8kj~WSu>}myl$Q61&)!dfm7?g+n}^_XV*QQlXjkDvpAm zT%gGzGurX(WNbWd?d|o%c``(vKG-+yIJus2+u660gbn2Ktm_uzl3)5*b_1C8;Cc@82T> z`VU-hZXF!SDyrV3Zg0BLE#8F3*5syX&E~iEvNJMTJ9|Z*o5#j`uaD$qQwXZQS;UB_ zF!J`}Em>@dx6u@Wt%>~?hr0#3pm=ya0&8_+UnM`fW&fm99sIShCi}-XZn36E6RdCv zyTXvR{qLne8=lgBp`7lI&=VV6%T00%&`Z}ivpy~j^WCGyAm?#G%Z{hO?VJuf;pFc| zN(m>i3ha}?`$~N0UbcO6Oe*~m1RNiAXwPA?7|^86T%w{{rZop_1Xs97T5unSE2}%M z+_cYUk+dU8JpLlnlGJ|@1)YEYw(m-(Ev)T3(uF#FVf6nknM*3={Lv*OgsmxZCVJlE zFHei6efuD_#na$gh=e*)0Q8_jogoX9qZ|dwAg>9dX!HU5}ox05t;UBHTi_D zk-MKkR^Yjon8>M2WXEIr+e@mCiF@pgAB_^;tGb!9PFL6Hcgr zO{L%)n+L;z<#ve1I9w=NyK^TP=?TGNmiPYSPGs6j=vfb$(rc#9hv}AFA6WTMShGMw zXca^$7vOwBLJC(&`@NhM;I?lEhN9y%Lv$;-pR%k0GaS8fp4OVEqi0LLFwe+ zebZg^|Jg9b1nY*8>moKEcXZ{#ZqN?_=>E^~Jr2y%5st+L$LvAx_TM3dfC0lFc%S!i z!JE0|30&&S{8Go}vSr)m&+SZG@xx-$9~5OGz>>PF~MPEKT1 z4spg55!kn|w8THc-aVkr`O!ezR#bb_W~Df(GeEuO(MQub2ao$LyuMD@$7C14Ascy$ zswYCw{pwllrN6(Wx54*kd5O(CzgiN@#(tr^_E4a&7#oxo$n|ATJY2s~QeibsyF^ES zyi~*5Z&-EDmEC#jdXBu)KV5(q!JW}e1gEu1BaAtw^UJ)#neJ=-2eRp!B}sz~mcL-x-M!=Enb96DI(Ehs?qXL(i+$t6r*G%Lx0nxea^$ z=AuoQ1Vok}ta|DrW+e3cd1ffYJC1(##$5N`;TeN$X9j%;yDC6t2IJ~P+B=rn3&@CP1e6Rb`QE7 zZ#bV)S8|0g5RpdD*}33>@B21mVuJHdFc1mSUf5WE`_PpS*(+_O^|T*OvsWBT8SRQd zX$32I(XOudSWWnLLm*K$-?AJ;V_Lu&7JJ(~ce2&J3p+wHZw38KQJw!pJ~PiS=bQWZ z*AtsxtC{<$pw`!>q-%>d8a3#GX@%VNB1hHVfLta$7NU(0Xb3gT08G)`5WJ0$3qqtc z=+omu`V7O1e z4JJEv&_LEr4dCDHe4F}8oqZXN+9bAmwi!bzWsm)RgM!(&ER9fn+=yD0x24dnQ8O;T zU7J-SV})!=)~Y&V*My3UQw@1$Fe^H1h2fB?Wo%LPzVzOX=q})*` z0=$xM7#j!D z<>I7G%RDLD(CyEC!XikzJ9BR9Dl6@~Z@Y-GMm)M#g$U!NcMBZ-x#@kJOi*;V7rno; z*qa88xho(IOiWEuAL`B;)1fQ*re@5dwfj%@airZj?JgQf1FML=icVQe5=%KaTQ@S& zOiwE03{~90CUSd-8}aYK!a(@Vb9SRvGA=WAT+F}4N2ppWLN`z_Tggy>%1KY*>Od|P zld7?>ZF@}#g15q8UGNs()*F`{JW<}3xtHMou3XXAGt;1r-m16S^qnuimvP%CF{9&U z2Q9GJo@&%H12Wm_tI2kGd)1J7tT$6*aaP8!@<$X@?r^Cwiq@6E#}d&~vs12z^6bpM zo0B$LNP7{2w`DwMvwMWw#P(E%i<-0Q`vGh|Nm*P)wW#r&r29oR@>gGgJ&;!oQ{u2J z_0Mm^3V@fhg9a1hw`PSubwooS-vGT>`U<$M=RuIvk`W%-9R0Yn^;N2oj0xlkglH(V zX+!A>*axEnY&}IODS_@dqh4A46}jcMqY%iGxh#R5x4Hr;{o!Y+8Qt@o$dZ=UqV+ZU zXTqoHL(*B7M2Y68P4G>pogFE#RMw3hvU81<-sxQvd}=X^Dx|NfgW_46oz3I+!-JaT zg5JTQ6XPDY3io&cu_U`f0MDUc&!sz(AD){j*`$)iLz&+84anIdh^ zhd}VlShj>=%IZ&NU@sGzflLkaTdnT#pPJc4u(nzwR^v~`0Y?R2pS+@w_eAtY7*vh2 z51;Y)){AiXW;khAa&5YUKVwo=$_D@FbPfvRc4mE5rdi3j!jNo43`{=Rh~PRv(8kj> z<)2&NJ$BeIF=>&sr9Bm?i}&mKo+NO#Jew4xHl>tMLpl`qP3Q9H>pB$%N&F1FGa~q_ zRa)G|@JxtGmVXKPG;3H>&(UZ{w8sc(c_?LU=DytzA_~sxLGC#Uvf5@_<-~doeP&z+ z6Z$SxZXaWYbgtczOncu^NTMG@dbJCDQHXz5!zI8uhJ0tC0uyLA1AKx0%w8Ulc-{?H z6~-75|Fo#UfdPS8k2~k6aFhGt>5}as2kn1DPaOy_*|@QHuV#<{+LWQqsEy7%SbVQK zj7lBk3ENhnz09$_rZ#1w{btG2F_6L609nmOLnH{s+u!GLCkdlo!=k}OvwU!xig-(YZ1DVi> zq@xqEv!H(NditE&$YjFZJqf&M^6{Xed?5nNnl_D<5mD!ZReY-^Q&*o+-8`qnm3eH6 zr9ftXK(=tiaBCz}_4tLFid6esr!IDhbBc7 zuYdODsyzLt*;Ecu+ zvE_f8TdCW@9({W{)4mLplNwy0 z|N5@Rzf6+`r2|kG%W(*HlWZP`)zHutrKKK+6_DfxCFmMHRA)Kfn_&ob0WuB>5}=Rn zz>du__8i6=jwGv075)a8up>v2+TlpdEpj>0H<&9wU}%V?eiIHbn#M90uyV!=-Ap|_ z&-Z@5yh>aQ)vx^&k^GmAE;bxvZob`9HFhMTSC5qze0t=Z`6Zb|Ja+0&tM=!J&qb@5 z5X0gZe2R5KdVtIJUR*qCrNf~EqvI&sZg_H29NBH1@2N(W8f&J8vO$M|r~~~sT`V=m zs__i6+xXSYhxDdw{9i>9In^pybHZfl)KeN8H+Jl|6n}wmEMQE2@ZACjkbG%HBD+yw z#|LjnEd5FGT=&oRcssVK;C&Tsh2?Tr6TqIy7EKHho$S|3mY%Ndy z13E2bkg4jp4_8T(^F>z>UAJ@tRs=0E3`jE8K>!QrzDV|ABtE}1bwQ3sy=BclsZ=}< zM%5#dMs7YlrY{8)G?scSgP3WGLKVoLzxrReiTE*;dNWag>JH8nA9pHj1|N4ep^vtw zrR<%u4?~U|l|@WnzEm z{F(b|;WS3ncGSD-Nyh~vzB8GKpET zzoQfU0CA=e%_S!UZ^lT+2+F_%q}2Hz`H}{A7p8-HdV$AOTkxLPKd*j6IYe7+V*6Nc+7 z=`d$WH;V!PGgOzv(riTznj~_pZ0}i2$Jc!?@b8HMc2oYJl-i~)L@)PjmOfA1@J)1= z)9F+k+wjmhTM3A~v*zp>7l2u~zlc-aZ`v8K1Bu-w^4b_t3oKiu%fpW7j)bqRNCK5- zI(@23JJneourUW{VLwIlB<&Z5lJ0x)Z%Oi(>v!k;REX}jO+ zyI}@K#lHK@Cogp$!0#_sB<(f9t;x#{Jqz0IL)IoSYS^dbMV&wb`KxORxXecyb=8R8 z+Zi5tQR_ww?%#|Z0)Qo(J3CNm0-W6wIdg&_GQUH7M9@L?EJhVy*BbEpuuAkd?aFzQx{gQ4o+|yomt~A-)^# zFP6W0Lo^t@Mgf143Nn4#7&TU5r#2t*1&f7a@kE&I#~Hk+1UI^HJR|nSQ+dJBZ3#8Q zCoG?-_I3Miz-l?p!)q}B=Ht^-Bh)SeJ4mECuwP z#J*VYH0@WZ63KtHvcTC*$-m!RjLbd0e+|NbsSYy%1un2sXlIzb~#esVHANQ^TXTX@B<84-YiMN8Fd zd{~6n+GMx__N{A=_4t-v3K)MQ@t_VijDBB)XyBpz4hU-+b%q&v(Lb?3wzkz3BMu+N zjDE66+CiagaNP@ZxHTfd0iaMVsX_FXMKW0^SaBeDRzHUwr3W4d$Zfpo{|s5JgXpR! zby!_L)#&Wf$%({U1}p?9)AWR`E}hglZ|t`nlfIsmF;Z_O?jX^RYb7RdwVOgslzT;a%khGlutpd)~6 z14Q0|JXKl76}<-I01uZG^Q%z)B-VH5wvS%Z07F)w439C$KO_XXB|AYGp3sNxU7)=r z!8v?E*W#D(xQM#^D|rB|`>)S384(!<#rM`bSwFcfx)x1~s4GSefrbBU8CuS+5Ic40 zVlAa#+gERdcv`kYU$SmzBcDEKI>bj)p7`48ImUZ(^0CTA*loM$Q{H@31Dh+mZ$Whd zclBInc&sm?Ta*YOqX0h_kMDJ80T31H{eT06(85IpzNsXY3UPEW(szw)K9sfpOE6L` z0z?xbzXiu>n5FqAXw*d()K08{m0IK~5uTI-%nYoT&DX)B(B5RI^pZd2d0Kl5LxHds zKKNy$fC!TuJ_I+t`lWA+A{sTiMTTMVZ`2)!NQ*6qnz*B4sCpG=#MG*xo3PcbY{a;qj3UF70TC00pBKHlf$(ipVe53_};aa^h$D7By&Ayj{7r| z5&nVZ#_iHpc$F6t!}Lcbz?PTF43E>L^f~=IN2A8+86)}nu>9Z3t&nmpM{g^2e@Uy-8d0%VVV1B*H(z+>&K*9?{ zH~Hj4O z?ddLQmEIWXzh-5QHREdstA-96#D*AqB@-17BS5p?1x;hr)bfo_Gy8D5hn zPW-4NWZ+?R{G?SV_WN9j(Aai%T;|t2(t+^6TXh%0m#k5%e2i>HZ4D zu>O!(0W4WSJc2^8uah6khs(zp^gD!RFj^?vAqbDJ$Lb&De{0_CikQgC-ct}{0~8Q? zDA|o61N49D2#NrL*42dg(MQ1`L%;m5*0==| z0n#tvInq$?p~@1^xE8hRKFNH*j01dt$nbMQ3t9HuUsoiN6W6n@8m{Xm>68>}-AQM~42Z?_(I!Zz1gdqsg5f>h-{=KyK-o0PsxpW%B( zgm6?Ec|EFz8tV&v=*f@|fOYAo(u&Sye$>u21TRv_! zrc@uv_T5=fD)pPP2w9UY->2WdxzSvioiCIGbEg~(dJGx!o|WHH@VeTw3B5gH!xH=) zZXMN)U^E8Tnx6uzL_Oi1zwwMh)WFOl!sx z-;9i0BeCqD)H#&=x2zyX;L%+d{hRj&ZA&#?{CH6l(EDg9aN^6v;No)3UEX<0A7F=H5RzR9Yg+RpFnuWuFj z2!F}zQ+=NpGzTh1rZdFNx8-?ihk|Z)D6*zaQcj7_7M!F?vbGC^{jxjKe?A%}l<1lF zc%V~8#pfD(d><;G5Gj?3m|e38vj(@3g{+9HmkNT?nZD?F?S$$ku>yUs=>9!GV$kan z_|{kO+ItIN`5r!prA9x}k^+Q_gD4d*fL(e&9NmlKXIrcUw#^E$*ef)8D3?#nK;&jPu!Lc>k|~GDhYEZ?^V;juKr1gWq=zi zN!d?Ikmrd=+BTsUpiz;vL`SF&ut!xgZdq8ft=+%m0Ib=mzTyrlKAoKb$n{-mG8W6v3mX)23y_Y$%8+bRSxf9V)1KsV{052B^OcI+a^%BE670d z+XRF|Cu$k#;e_S~1FvaB8NSx9sj{9&>1Ag8d(l%{7@s&|r(l8{&NphP5{h6jVV2zK zgY@CtkzEGcW*92?T(_8sL7~ms3pHob8yX_TwOz!-pxD-! z3v?p_-_Fcz7_esF$=h^w9+Y2}V~WuK{HZlxeSeg*8lQY({irnV^LKYgK|E!jMtC-| zhKi_rRIBlhq-tCTV@H?ew(zOpls+$@G>0zlH(%6m=OsLk37u)+yzxKsa0L=dBg8i; zLBq_V`}6WwbV&(();(VQ8H4H#xsu1t{4FPkT^`fqvjx3?j!U6_h&5efH#B!=iY_t)H?70+PPfo`n&S=vU> zAmEa)(_Dt&+z*Q&C#7&;MWQM+>L`deiZT%J%MLk>5idZi$7@79r}oCfQn;gMBnF6i z6Cq;)*c6h`-f?qZqQ%kdIc4o1IfShTs=w$fo@qOIv^#ti*8YqVJEJbb#NFsB;3;XL ztw7;lnde)uN1!|45RvUju2Y8S8uUoOkuvuY<0sQOcW;v}%tR;hOnt3|j3AjSy~iRO zo^Ad5HNV&bl;T{&&?mL)7=o6vi+Lz=FB~@-ymnTy-%Wn<*3SN&QxzP| zSoT{Qv4a}hkA8s{ZY12KfNovAPr1s-g*yFRl$Ll7?s6)wYJY99DfuE=h1r*WEqG|6 zv^T#E%Q1@l)i9t=faT(LJoCXD$9qmTdo#ikAc4v&RyZ#q|XMcLJujpB|6$Y@o?%Q2>DhKB0F zhz(I2U)9z`Wsk$AKVRfeUZk7(eWjGd$G83acFjwDg%Y-*-(013utvdnqHgWeL$X(M6_7@~fO=h3i$iAEErZF>woAy2B?vmdyqI}xCWLKi0s2?diHv$H zK-&wQq*3PwaulP$S2Mk8&{H73JQD(T^t8`KWRz^WcOXCs+HC5n91iimiTek%B02i+iZ8k-^Bcm6SX!h4eYDoGwjc7j<}et!H|N47f?VOydY|w^6hKNwPd} zQWV6i%yIkt52ZPixds?-NYEfA9ViSA+ChXNn%n_Ds_01??| zS)tFqqh;z|ZWmRB(xGTj8OjsG%%$vTfhdfksbS$lhvLf%c-q zz`F204VI2ZpuGR~4DqcrRY~G=9*q;U_gIJoc1`Ak`%i$>DZ5S!1BUrcMJ;Z3GmX%m zRTq0-*U;=V&#-&=%E<16^_gC(%6zBtIIQV4eUf^RvwBni1Bb+Fss%?hTyl*8>iEmD z{ZCb?9dnhh0rn+NkHV@7UKx~QN*;*;8p2ht22uAEbC8+Qr<5-!DG?r{0uQrA=??5(>@Ji<$}3U#q4u7e0J{mRS&Rfm6uv!laG(=~j0HrQ zZ-nOg;0*YGWp7< zc!C(5S$Y41%fUAz+paS?Kz_bB1h<8h3v9Q}X~4 zV_g*wEYJ-O2)9;EvXVx3&ln?FGyS9lV+-rj z>fB#$iFl}g!0tM)`m_4$Z_eyz@2YWWy~of%0rZ8*{`=h9@JST(mbSly|AoaMzx0zy zY1{PRNiKxm?B-wmxTp{tE;fClFF*z#)pZ>0Pz@IAZhesDx!a?)n-vM`p`^6>uZ9i_ zgjgOf{_^C}jyjm4`zG|aq}iXvEi23fnFs6O%h^wDa{BvJbt`-KLcy2mYqqm}Xiuq1 zSPr~(sIs<$Xb0JY*1>{Xs0nODJA=O9E5nO&MXN8v?EVrPB6V%E*jFFPr(=T3yS0u) zjFWcrhoudz;D<(UTl`#c+tzE)g3i6p$#c9j7oT(SPB}aRUN>eocK#Xv(R+@q?$DB3s8!(cvtAb(xgWtV%Oz_o_*7QLrf zTf2o>%FyIU20ZYn_kep%;5yVHSfA+Ra>K4VTAuf!8{6=psfx36yuLnB?^1e4%Sd~L zQ&i@qgy^rnhuM{=+_%&ECVZT~(Y?R&lOZhSH$d03I`LYZN`&1o#=I$VhE&Z40Ug#k zOrN(_3HHg->F?M+W>d%h{t8uC!*?8o8R~0C%`UN|9`3K@Kj(?rhi{}vjd$O(h-3!a zP@9f63zg@W+(`OWc9d%05^#P9dZg)2Ttd)YY9(=LB!6PfTrzjcy|jFZaA0k9v|>jM zn!Hjjq8^|YC6RQq;B3ps;(VK_Ddo3hn}3=nDlyC3b;T?6*VbJxt)p7WMFMFV}-3xCG2mGWf zjS^fE=`!ZcjeC@qf@tH9k8+jmv_6D~Gvw!X3dvW2tH81r@o!AYoBQ1w?Tpv$~U-gX&xN{QY} zlo9o`XAO7CGF#~5S zUG-xFo1}z9^^?aqc6b;+`T`jhHN$`8R*ksr0W8Cq9 zJ!qKDnr&q$`x{=51*^3vOdN(|4*-Mezr~f?@03>5YjmM|VPb4Qt=Cz&_kY~mN{1fK zx@h6xbC3Tbv<>Xa=XC7MQPT8s`pJXk>lx6*ca@Dk{?4Y&gB}vn+2<@hpnXBwcrs`_ zRB)ly`|X7m?a5T=?3J%O~SBK*K&~l<;9Ngv|g3(Z=^xHGw0uqJ>Q?C?{K#NUQM+>22ibQ{&&G==DodhZ#!$z9|~+d+t_xqtwdWm37h_8J;ynR zvJ8~H=PAnr#Xn_Hm)E*w|1g>TK@f#dQudx%G&+w_ZK5UA2j0gPS>Dc>whj~%1yfV@ zZaV&M2|UHqjNcE$T)UUyRBspWQ&)u8U)S%TZKJltG~?6_6zGlpzj!( z+>7Xx$;;F7jUUR1c&v+ET}zk#_&x?wO?G) zUaMn&2c6U0xgG?E42Dyut7MW}gJOqfj}ljqX*M>J#A+1aAi^?A*U#b9$$FiZq?QO5 zMn12P8-uRQ{N@5xScfIEjmoYXkMH-haMa6=nWfTjTPC=7mG1c9v6-fSnol3gXlcGY z+`Y2%gv6e0*^#)iQg03P&E1R6^4%9CB~2IpL!Cm$<;;iqMP)j1su-8`Y>p543+^fO zx*8k)Sf`0RY{ZlGgVztR*>$(pDj9SDL@KM#z|pg~cBfl?$qSkhXR-5*ej~)uwGGoO z%2aAr5GKYB@4oVA`R4d|@ydi5C?iOI-OuJ>j=u2tWI(0*BZ|TgzKl;IwrEBjv!OCU zc$`4zD>d;K5bvmPw4hkQDTmFbJ^zCa5Wai*9T^+kvF~B z`A$jisg;%l-;}y61WZ}?o=E(xrp9USnlj*8G6}LUdm9vnv!7fL_&vQ>-3V&xipVWZ zZ2>$HXkwCkZ*K@QM54quv4VcL0xIS!M;4HcGIDaO04RkP)Bqx+y{AH0hn~EL;~?e? z5ThMUgUh$lHm&JZWCYOIxBz1MHCxb;PMXSGEpX4v>Jn;Z)$iELX%WK<2{|u(zv63~ zm~z&v6cn14eoM|~>St!14sqDzT&+KKkU<*83&q>B6TR;yuAk?_6w=lL+RQ=7F8qK%M!@3Z5x->;HXNCS>MJbD1e^TIVSMFiB0*uej zf+YFs$9}lNxzC+p>7PAejFQmHhep8Y<`_u3msb7yRdDvKEy(vwr{T;=Waz^n>SS#1MI;I>@Ls$Mc~5xWd?`%g`^N-#(8x$g zpOaF&hh@UAuwPE9Y&6(C1h>A@6EVTHsV%n^DvTRS z@Tc;BCO%j9-Vi+gKjBEJ>89>!Y@wFBoRtORvDV{M>+&2ezkVIn7}my1@5oD9 zR%*$%Z%V>hIAyW`rtz9oS#bV(mVKu~B5Q$34ARUB2`f43md#lwdJ3003dS=19zYYQQ+~tzy{DvBm=LTaGDnRzzMtV z3NYkS`t{^2OHnFi<`v;!AdrmsI;{kEG*=7@I=tICrVkkAc~LiJqcLt^Tuf&v7vK ztG|)(jS%Ig%|nb6HIMT*Linr{;Gri?v=`p>5n!&$NBUD30-e>RE9)&FK$tXSaRFfx z+_Ih#0vk#N69ZSaq%T6)ak=}2@i2C3Z5<)uX@2Ek;i|^rVl2oo0w;dGjkBxKZrz!~=Cy@;TnY+pg$@`&QD;l)C zw=`}k7IXDWSyhePo@M2bOlIqx@0U|L6m4W`&xHC%VbSk)3bG9xiB6=w$FDZ$`7G9f zh>meC+jN3kLd$xUIUPFC)(DNd|A&w>$|ztWq}Yw5oK=G;r#Xlfp9d)~L6I<7EpyS1 zdty++^?^GEf_KK%@_39@7abAWb9kyeixvfz;K@Cj`zp4KkNAR4)$ij+f^xfK&e`La zOzoX1eP8%ul*sT{lQl1}#(PE&@h5m}6K0@Y9A}e9Jg})*W{djEBh})0Qrh&ujMi38 z8hu3#vX2@SEIMx8D75kZ#kuBARAsV7+ofo^7Y`xFONxZkHazOjaY_g|)}n9;1?!c} zj%LG%eyLjTJWrUhHlr03^JFxEDfhKEAckm0s{RKATbQ8c(&lcTH3Q`GXNWH<|F~#= zssF%tOqd@E$mSs`R%Olug8cMF{1-sUnP<1ztgKUj^7bm_1m!k@c>bOhH-u$!dg2&ESr+a%G>)w=R0042N#2;0D$B>BNMPr&i2fIlRleE7XlyvV5l?Wl+hb^< z#Ks!4h{28P=J#IGv^M0yF2DPd+KGJ%_N5DGe>)1VjtH_HhA01qH~~ZjSs>HnT^%+^ z_P>W)eo~N40yJb#r{&wzYw`uYf;9q-5#-r0G~|wpC$S#~3Db3Dyq8YWE(KW3f)QZY zw@q|tFTO8=($%K*FG40wUszU;UkTPTo(>e(U^foj zK>Rqo=QDmudw@9_b)tu0*ycFRioYyI_eM6}%VGC3SAKMQkvL&z%CO|9zMC`jMupi! zbIW|CFx8L7)VrawawJz4Df6{`0dr4InN66XZSwt44tp_Iq~{F;1^$HhCzBK;d&QAA zwG}hzIC?+L3`(!vv6$ss^QTg{O2B~mF@Z`T$7H(JL?LB|#IV_*`J0L8e-Ed|h?Ky$ zC)TUXG^;Cp2v~4`Uhe7_5bx5?f=R?EB?qNj;3V<0wQ-?fw1CbjE?pP`3J%?thmPD+ zK!TC}eoNWzbWT>hw!Lz7*kg54&YH;WjPrC+I|HLGvdi?@n-2nA4)4~I$UQ_`=ezPh zw$*Knw@B2s;}-sHJh0#j5vZQ;JfpBfjK3!eS#Qg^7W<)TRqQC#iT+km20-wVK?|46#(u%_O(FWn8&-GT@R zL+O<6hLJKr81<#QOQnYbqq}2tONfAUh$E%LkxJKle1F%)#b4X5ot^VM&wbyY@&k_c z)25IzMJtMr2~qu;T@vsvHncScLDx2~{TC)WZ-*~HTM~Ys5K!FnNhmZZxtzt9oC*_s z2k^fEn3W;GEhLxamK_}lgB)WHODFgsw+i@7L3^>xQt!nUlmQfL;2$Zm1|2zwcfy_# z6^BpG!KqF0aaVWMH-iOU*Z4CqjfK7uwKH(s3pT6pZ&x(aBC&78L=IKxd*NJo1K}zO32x-ia6xb>k0L<)@pVN7%Vrp; z!YH`46yy>bQAOW=5ujXpA7lRgD%^I>kkC14^Q?TF z&UonYoOHM+oCRLaLWr#2qjwNX!H>9K_jQqFX#CX=*h3~moNotc5tA$HtZnWDz^^2y z)l1C+I2#_n_MrrD%xnmI;2--@gxiAb|FlYSI7qZG)S0Eoza@$LbO;SmMutEN1P-45 z>=Ay*!wK9&{6YuJ$Sf|9IT^s4J>PCV!3WIQ+5oIB0dQpVwN}A;*M6!xf(Y;S_u!Vl zh|MRg4M$NVe6S43`UzKV$R9GjIAwpqehk1w)O}dRvuj#DT5`n^bGV4k6f<4>zG&d{ zmI1Y35YEnY!H<2)Ilrqki?^B|Z#x#xDcCn}g!OOzG-Og3NcMc+V`O|p-+sQwCIy?A zF<}nZKC$BliYJ!9nvegwjBdVprU>ZdgL?#Yq$2Z7HRTmZir=E@ESrlMPtz0f>1{xN z1KvAshm_NbX$0;^PYx}9V#AWqXm*dn;v0h@Uh>BFR5ris*FUM{-~Upoiz`u2`Z-#Z z_O@fL?2L7lmqHKqLgomjM!oE+pZHFl%c;7KT#K3y5g}7;X1&0cb)2SAF4vF60_dQ{ zNbN!iO@I33H2Z&&^6Ev#^#D|ZKLF7C90E8XenE|U`pN?&WlEszb!AN`UMbUd17_lT z-|-N>05A;eGd8vY_?S96vj9s!aF#gCl3D(OR1V~Tq`N4MiFOI_D);VZRwb^hYLLI* zdu!g|z#}I)zwhUvrl9ur6?O-wR}NY!n(F8Fibdsh0e1tb^l7SlSlN_AEI+`r&gRMf$ z(WYZRY>DRc^dBcu)!k;XDjz%jOkiK?b~j*`wQq-`_?mBY&iN*Js;mC1Mq!78ZI8H8 zK+Jz<8Ci?!4>Hd}E+;gtjqh|!6IPeequyF;CgA)>QPPYzXQuOvupP|&Gs+}!%!XJ0 z37-C}!}ll)mCr#0U)F0!G_1J(#I4XIVmK9^sc^YPY7VoDioVYzBo!&DZ8PPfsoWAB zjXTxgBCg2T#_U`ixvrO#E{#O3iP>%xB}wnBKz)+`?f=eVA^?*C9msNvAkY>J{F5}; z-_zSPLQAx2xc+MS?J9)n zArYx3U|1g=gRA^NXD$i{_BAP{1yj{hFV#j`*^8>o4*$!a zO-pEzIn}Xm0!*Cc_QkwE5`8x&Q@&e0CFUq=U-2$Nz7|O3RS0i4X`PgVy00*dVl$iY z(elePs1<+ZirSoOB{i=P<|Ss6$RI)n(;cbs2+bP9XHT9H*w|<|yw*C@`1xPse}Zd| z&hjcqrE#qk#i5;?k8KvoIR{LNOB7)1XSmDZ@rGZ3Q>GFAleuS~2w7Gy1O9h}akPE; zchB5U8=2@-eQ^WR%2`;%LkO{`r2|krfa$f)kCVzxz?GvLz>Ig_iKIT`629h7ZOU7J zaMw^YWv}=klKLbV`AilA`4~kknw~K`B+O+REw_!Fw@G8SEJ4njKL4hU{Q}p3%3uGb z(Dn`zTe*wPt>aW3ugz|;luK)6gEk?x=1rCiH1B0!c?IToMQq(meDj93>wylutB1F*gckx6TIcMfU`iJsa3xo_i4 zG*v6_3hf=oeTxT~98lnxf`A%P*L}UEgcBxO&A;7ONyI9lk?b-S+ejY?UABiRutIGYy12@@<^gN#^?C{?Kp>X{2TRK8)r@5%JY5V<#$vI)1e=j zqM(%EDLG(eB91YJrQ@(fEj|I*@5#v~9gzGd*wg-I*p+O!X8|}Ld>yocQdw>-pMp;S zJsQF7l}B*|zcVH^IWE$pjkbW_yq-0#><{Y!iSmVgx*d^f9}GUO!XBSBTK2kU%+5kP zgZowWic8w~QxQ0>2$GldCJMLZ7E2>Y;O23T_jZm5yRsI?RQe-;I>-bifoo8@-i=Lx0@hS9vq-9YXBc| z4Fmd?DcOq*91=ov{cW}-THhkA3MX^j$JZakD<=$F?u-fNQ!0-f=eVJs%%34+`W1bQ zJsyHHR{An$RWF{b#Y*SRwr@l})-a5FK$euLf7I^0dPh-qcvF6^R8YI!R6fj8P~~us zL%hFh^;8aWG9c&hi=j+87$sz zvVwm&wDs!8Z`i~Z&gj}qxS5+YfoQJ((>LFpYdvJ&{>QKfxTLEpWCi;488Zhbkmd1J zxEo`L5B=v8?5=O7DOJK0+KMsH8z6dQfIGj8Mz=8?VQx@_Z_%IXKqb2Q2T<6)1X$Qh zAWUj6(+fU&YL7-FFCcwyUp>cc5X+mA1;r)iv8ydaza&KZ0$BO}EQ_yK>Pm3pJq^n( zuC81n5U==#90Xqh+YHwhtGcs(oadkf^Q8SkzerESwFBfOay|%;6l_F8Ma@cfSD=NN z!4&sx{aOZ0TS#@mEcR~5goSQHv-0l;?M@)?MW97h*vi4 zBqncaJ4f=^^P+kd932lU?5HuDvEWfz#c;Wy@0=)2L0|Xe_Bz>Dqrd8%<31GQenWr} zkk>5~ydE3Sjbv#517DC7d*4Lh^Ec{fy~(vY>4pvgFpFHP%Z0T-5@D~<{(b2zS?NO5 z7ug=mln90s{R_iS5zAj9vSJVoGIw{^+Nl8)JmwUiyN6;3fUJrb0>1K9j!~|2`>{oh zuz<$*Osb+C7*+G9#MPz_s>VQunhq#2e5Jjod&VT|?I4`Y28EVJnkV!*s&tTJHnwhr)p`3tI8)q1*b8AWJBvgL@SD4 zSK|Jtv3ifScYciY^$JcCOW)@YxVFVBKwLCXf^zPtFB36S3(dL5wzJ;RlOQz-zWgY8;6n+QMbut6H;5& zdt(IMdm`CGH@yUClJ4gG{Td_h9 zwXDekRCpCBSJ5n6o~7~Po^PmGIYr|YTeBIG&9ze~jz!EyR7cfaMQGgF3{Q2*bEOi8 zn&J`Y$>=ei;1h4X9f&@XOuev<5vUR~o$)5T89=h{2gtH8(+kiXQ81ZFe77 zk~j)bOnW42{SkEMu|SqHU}#MQJ8JBRU{a-_vJQF|?2qjqDV3Uv{fZ1o`7)SHv41%% zbBCdV1nWeu1XW3ukSu=v2G>kVPwHn4%x{*;>))_!dglGo+_1SIz$iWLv5Edt|LkSf zmqpGFNlJ!P;S`~5RoHhPaMg+r8L{wdb*2ON3*qVr=B`aY|V|(>7~E=ELIK!(Se<3D&o-4ri}u=Rd=?L5|j=w@RemwG0++=UZJFwE0JLOKdf zIR>Jg4*Tc@>Q|hJt4Kqh*>^d8rm~IXdhy;R%ATR=N#z2teRh%@n8<4j54k zfh^Jj>#Q5dmfwPnhX?tMmI4-YP+@SgJ}8hw2y!WFlkKxR!>k2ciPRdDMNTS?YMDOG zK~&KiD9`_NN85B4GIu+6Er!P3JxSuAQ-40So29wbs^msJPWT@TM!~l>OdVCt% z?YSEVJV}epd*Uf3AO_M+#|No0hx0o4{60n=YM+ z`7>DUHN{UWDI~lAl%iVe*U?ovq7ZW3{tp9=&MH9sSsX%JK~58YvpXcI*mE}- z0qhq==ofYTX+RvfKS%gR9T+lzg}XJ<<5`DZ{waaRlG)`SEeM=b zV`O#bzowJNaxatNd?aQZtrVw?m(9t%>R15TpQ#-wrWys5X0e36G`B<}@{mW;3{wNS zYtMkB$mVZJe|YJoQdPR~%7DmmVC%pP;OK@+rn-_s@|2T`k1c?h$tF?BU^*gd6MSI9 zUB*tSlb3-ZE9R;K z4N#t`ip+C0hK_kX`0AD3OyjtdKJXMaD3b$Mg>xq7@^KD6xtECO`j4!8iS2us1Pgj zhDnjL?3>*f!=zZod2y7X1DJij<-GYv6zj&!%N+@PI!W3iY3{?hlsei;OK-}J{;*r_ z1^Ag+u0PpeY#+>h@%oukC*k?on-D#`-ZSg>sX9K6@2(MT+fO^Ro-!=)$cKI@*YR%W z;rm*UY-v>M@XlPc@infpFQ-GJd|<8Lm~QJ77K*0FA+)#V0bVwJEMS_9$6pn#D0I+c zyNA|!qp$M61hn4S3bEG;z9cjPKvv5-y8WKzF5FoJ+?FJn`qMoexXbzL{W&~X$aC@n zCZtKxH%J28|CM>bamO zXs!+Eq!KSL=A=HJ84>tgVkV0w>C+uwx*6Yd#r0kNKwHvs$=#-3#ui}%Zq97jU$mMb zxp+T$$~=8OxTj6Ur8?^-IFTIlRATnIT?0CXn%`pTEKi$^_WH^rBj+O$V6JX3j%X_OTkHppk z1#oyY0x6vNl*O@ga0T&!=v_9*z!7*eMe%-J-i5fnXox-jX22UL(yZxTY5eKa((smS z^&PE2HR=64I*GDGPe|abE`@z&_qUPIUDE)wcD6VZ*E#^ z%-{Xj#)((-{-0(WxeM#6<=LKG?%C9r_7;7OzOGOc0_fr zr~1Olip(u=*mL@Ml{$tlAJxN1k0S7VoN&MY{sT#8yM;q5u*U=Rwkr5%#>FV=0?H^L zk*&Hxv@0A4R{b3OaOW>`yXt?s(F%C^7qes^MIHdM->93Rp=a1Bi!ETc1;wClrRRV&%0@kTaXijI?n z9gCW9BQ=A06;dW!r^4wBjuWnB{H$%kH!F&0Xk>;p&r4P{P85HfGrbUgbL`Q)017T^ z;~PzMwp@4WCAfR3Zpk{ZZd{(kd<6-uD}siJ>$gm}uXp#w5cC42Del(qQW=IhxLFd1 zAY+-VbODsVyud?kQpvzg+MsMzan#a0Fa!v(eCE$l^M#Q{6fR}VLoXT&_Zppe8|nwd zm<>e|Qv2ZOx48Kd-|h#aJ4HJq9BEJflRq$tPbxpj%fdeWFZPhgdS@=mn7ZyqzPJg4 zSM%b$q|?&-5A&bQ0tqAJ>5hg$bV85QuYULCkTQGL_02uWo@k>$7qH%$ejl_o@#GtI znoA&d`7)JRy4Tza{MmPFi??MznJ?`&KC!GS198oR2jf7wV&q2W2KiTRYldFo@UHCA zWFto0<#tmB|MeJ@vdBEUf#{m NUObVCsOylFp<8fw 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 amfH4j!P*!1o?IN@M@?Dld4r-=#Qy+q_ZCV3 literal 0 HcmV?d00001 diff --git a/ts/features/design-system/core/DSDynamicCardRotation.tsx b/ts/features/design-system/core/DSDynamicCardRotation.tsx new file mode 100644 index 00000000000..0532ceacfe8 --- /dev/null +++ b/ts/features/design-system/core/DSDynamicCardRotation.tsx @@ -0,0 +1,429 @@ +/* eslint-disable functional/immutable-data */ +import { H6, IOColors, VSpacer, hexToRgba } from "@pagopa/io-app-design-system"; +import { + Canvas, + Color, + DiffRect, + Image, + LinearGradient, + Mask, + RoundedRect, + Circle as SkiaCircle, + Group as SkiaGroup, + RadialGradient as SkiaRadialGradient, + rect, + rrect, + useImage, + vec +} from "@shopify/react-native-skia"; +import * as React from "react"; +import { useState } from "react"; +import { + ColorValue, + LayoutChangeEvent, + LayoutRectangle, + StyleSheet, + Text, + View, + ViewStyle +} from "react-native"; +import Animated, { + Extrapolation, + SensorType, + interpolate, + useAnimatedReaction, + useAnimatedSensor, + useAnimatedStyle, + useDerivedValue, + useSharedValue, + withSpring +} from "react-native-reanimated"; +import Svg, { Circle, Defs, RadialGradient, Stop } from "react-native-svg"; + +type CardSize = { + width: LayoutRectangle["width"]; + height: LayoutRectangle["height"]; +}; + +type LightSize = { + value: LayoutRectangle["width"]; +}; + +/* LIGHT + Visual parameters */ +const lightSizePercentage: ViewStyle["width"] = "90%"; +const lightScaleMultiplier: number = 1; +const lightOpacity: ViewStyle["opacity"] = 0.9; +const lightSkiaOpacity: number = 0.4; +/* Percentage of visible light when it's near +card boundaries */ +const visibleLightPercentage: number = 0.25; + +/* CARD + Visual parameters */ +const cardAspectRatio: ViewStyle["aspectRatio"] = 7 / 4; +const cardBorderRadius: number = 24; +const cardBorderWidth: number = 1; +const cardBorderColor: ColorValue = IOColors["hanPurple-500"]; +const cardBorderHighlighted: ColorValue = IOColors.white; +const cardBorderOpacity: number = 0.65; +// Drivers' License +const cardGradient: Array = ["#F4ACD5", "#FCE6F2"]; +// Flag +// const flagDistanceFromEdge: number = 16; +// const flagSize: number = 32; + +/* MOVEMENT + Spring config for the light movement */ +const springConfig = { + mass: 1, + damping: 50, + stiffness: 200, + overshootClamping: false +}; + +export const DSDynamicCardRotation = () => { + /* On first render, store the current device orientation + using quaternions */ + const rotationSensor = useAnimatedSensor(SensorType.ROTATION); + const { roll: initialRoll, pitch: initialPitch } = + rotationSensor.sensor.value; + + const roll = useSharedValue(0); + const pitch = useSharedValue(0); + const skiaTranslateX = useSharedValue(0); + const skiaTranslateY = useSharedValue(0); + + useAnimatedReaction( + () => rotationSensor.sensor.value, + sensor => { + roll.value = sensor.roll; + pitch.value = sensor.pitch; + }, + [] + ); + /* Not all devices are in an initial flat position on a surface + (e.g. a table) then we use relative rotation values, + not absolute ones */ + const relativeRoll = useDerivedValue(() => -(initialRoll - roll.value)); + const relativePitch = useDerivedValue(() => initialPitch - pitch.value); + + // eslint-disable-next-line no-console + console.log("Sensor values:", `qx: ${roll.value}, qy: ${pitch.value}`); + + /* Get both card and light sizes to set the basic boundaries */ + const [cardSize, setCardSize] = useState(); + const [lightSize, setLightSize] = useState(); + + const getCardSize = (event: LayoutChangeEvent) => { + const { width, height } = event.nativeEvent.layout; + setCardSize({ width, height }); + }; + + const getLightSize = (event: LayoutChangeEvent) => { + const { width: newLightSize } = event.nativeEvent.layout; + setLightSize({ value: newLightSize }); + }; + + /* Set translate boundaries */ + const maxTranslateX = + ((cardSize?.width ?? 0) - + (lightSize?.value ?? 0) * visibleLightPercentage) / + 2; + + const maxTranslateY = + ((cardSize?.height ?? 0) - + (lightSize?.value ?? 0) * visibleLightPercentage) / + 2; + + /* We don't need to consider the whole + sensor range, just the 1/10 */ + const sensorRange: number = 0.1; + + /* Calculate the light position using quaternions */ + const lightAnimatedStyle = useAnimatedStyle(() => { + const translateX = interpolate( + relativeRoll.value, + [-sensorRange, sensorRange], + [maxTranslateX, -maxTranslateX], + Extrapolation.CLAMP + ); + + const translateY = interpolate( + relativePitch.value, + [-sensorRange, sensorRange], + [-maxTranslateY, maxTranslateY], + Extrapolation.CLAMP + ); + + return { + transform: [ + { translateX: withSpring(translateX, springConfig) }, + { translateY: withSpring(translateY, springConfig) }, + { scale: lightScaleMultiplier } + ] + }; + }); + + const skiaLightTranslateValues = useDerivedValue(() => { + skiaTranslateX.value = withSpring( + interpolate( + relativeRoll.value, + [-sensorRange, sensorRange], + [maxTranslateX, -maxTranslateX], + Extrapolation.CLAMP + ), + springConfig + ); + + skiaTranslateY.value = withSpring( + interpolate( + relativePitch.value, + [-sensorRange, sensorRange], + [-maxTranslateY, maxTranslateY], + Extrapolation.CLAMP + ), + springConfig + ); + + return [ + { translateX: skiaTranslateX.value }, + { translateY: skiaTranslateY.value }, + { scale: lightScaleMultiplier } + ]; + }); + + // Inner card (border excluded) + const CardInnerMask = () => ( + + ); + + const CardLight = () => ( + + + + + + ); + + const CardBorder = ({ + color = cardBorderColor, + opacity = cardBorderOpacity + }: { + color?: Color; + opacity?: number; + }) => { + const outerRect = rrect( + rect(0, 0, cardSize?.width ?? 0, cardSize?.height ?? 0), + cardBorderRadius, + cardBorderRadius + ); + + const innerRect = rrect( + rect( + cardBorderWidth, + cardBorderWidth, + (cardSize?.width ?? 0) - cardBorderWidth * 2, + (cardSize?.height ?? 0) - cardBorderWidth * 2 + ), + cardBorderRadius - cardBorderWidth, + cardBorderRadius - cardBorderWidth + ); + + return ( + + ); + }; + + const CardPatternMask = () => { + const cardPattern = useImage( + // eslint-disable-next-line @typescript-eslint/no-var-requires + require("../../../../img/dynamicCardRotation/driver-license-background.png") + ); + + return ( + }> + {/* eslint-disable react-native-a11y/has-valid-accessibility-ignores-invert-colors */} + + + ); + }; + + const CardBorderMask = () => ( + }> + + + ); + + return ( + + + + + + + {/* There are many stops because it's an easing gradient. + To learn more: https://larsenwork.com/easing-gradients/ */} + + + + + + + + + + + + + + + + + + + + + + + Using React Native engine + + + + + + + + + + + {/* */} + + + + Using Skia engine + + +

Card
+ {`Size: ${cardSize?.width} × ${cardSize?.height}`} + +
Light (Circle)
+ {`Size: ${lightSize?.value}`} + + + ); +}; + +const styles = StyleSheet.create({ + container: { + alignItems: "center", + paddingTop: 24, + paddingHorizontal: 24 + }, + + light: { + alignSelf: "center", + width: lightSizePercentage, + aspectRatio: 1, + opacity: lightOpacity, + borderRadius: 400 + }, + cardDebugLabel: { + fontSize: 11, + marginTop: 4 + }, + box: { + justifyContent: "center", + width: "100%", + aspectRatio: cardAspectRatio, + borderRadius: 24, + borderCurve: "continuous", + backgroundColor: IOColors["hanPurple-250"] + }, + debugInfo: { + alignSelf: "flex-start", + position: "relative", + top: 16 + } +}); diff --git a/ts/features/design-system/navigation/navigator.tsx b/ts/features/design-system/navigation/navigator.tsx index 46cd117c8ca..cd15ac8b7f0 100644 --- a/ts/features/design-system/navigation/navigator.tsx +++ b/ts/features/design-system/navigation/navigator.tsx @@ -68,6 +68,7 @@ import { DSTextFields } from "../core/DSTextFields"; import { DSToastNotifications } from "../core/DSToastNotifications"; import { DSTypography } from "../core/DSTypography"; import { DSWallet } from "../core/DSWallet"; +import { DSDynamicCardRotation } from "../core/DSDynamicCardRotation"; import { DesignSystemParamsList } from "./params"; import DESIGN_SYSTEM_ROUTES from "./routes"; @@ -365,6 +366,17 @@ export const DesignSystemNavigator = () => { }} /> + +