From 0f426f71dca2118700449adecd1e1ba679365710 Mon Sep 17 00:00:00 2001 From: Thomas Boy Date: Mon, 17 Nov 2014 16:30:32 +0100 Subject: [PATCH] =?UTF-8?q?Prise=20de=20photo=20+=20(optionnel)=20possibil?= =?UTF-8?q?it=C3=A9=20de=20mettre=20un=20son=20=C3=A0=20la=20place=20du=20?= =?UTF-8?q?son=20par=20d=C3=A9faut=20de=20l'appareil=20photo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../res/layout/activity_camera_view.xml | 1 + src/android/customCamera/res/raw/cri.mp3 | Bin 0 -> 48192 bytes .../org/geneanet/customcamera/CameraView.java | 57 ++++++++++++++++-- 3 files changed, 53 insertions(+), 5 deletions(-) create mode 100644 src/android/customCamera/res/raw/cri.mp3 diff --git a/src/android/customCamera/res/layout/activity_camera_view.xml b/src/android/customCamera/res/layout/activity_camera_view.xml index 1fdb7fa..11ea781 100644 --- a/src/android/customCamera/res/layout/activity_camera_view.xml +++ b/src/android/customCamera/res/layout/activity_camera_view.xml @@ -91,6 +91,7 @@ android:layout_gravity="bottom" android:layout_weight="150" android:minWidth="0dp" + android:onClick="takePhoto" android:text="@string/PHOTO" /> HndEmK$Nztv zA%Ro`@ZTIEoB3PjFVUNSECPU=azH~vM@L`Z*qA^dSXbtg`%TFtybT? zJ3Rd4$;8CVmoMMFo1OjseQs|4v%DF8;XzavFZZpm-hbVp3l#ud=WI0}ZvtSnf89rn z3C!nTZ~V{kKQr(@Gw}c449xu)4FtfBiWFa+D%aExZw`;A(~DV)ZUMS)$)aEGqv20v z5CI%#Q+B$N4L2sApR}j%Gp>wH=2EU7YUAshNY`ky(;gn|Vb!LU>4=wU<7sgOCQOr| zs&Vt0?PL$S@97b(4|h9kXDW6`(8McLG+~KDLLUC4xUuGW-}cxX6GE_9UMfKQ5U;(a z-F*Id!$#fnkA6D0k&Fvri@$)`@eMQ*9e&4dLfRYE#zK(46 zFh8u^{G;TzZ*jnN=ejyk*RUse>`93g3Y$k1KY3DazukWcHZPBK>^P&+^^FjH2g`=@ zy6SKLAm)D1Uodx*6z;2c7Rw8I@+2@okxi~{MU##_d2+njg+|?(-F=FgJ<#mjQC({W zBqyBjDh`|C;-s;g+5I88o&5EXpqL&(F~xhbYnmN8S=C-gR`Ac!DnW04e`QJ1*Q@aZ zSSps)gC)0tLWFJH{7Ftxx@hpy`?E-Qud<@^BD9tcO>rN%lJI!#D^&HHw-2yDVAime zKgrhL-@&?Vt;Fx#^({ZQVLTB2yeB^bNxBSWr3|RZ5oD@#&;hUktg@BF*=}C7VYt*lOG6l=-4nBg zPF)nDbOfk~K!mQ}3_3d5ZykR+LzgOXPHk_)AU)$;uhE?^!GNTsHhDE`EY**g8d7F< z4Su%u1TRfHF2FNdSH)KW1 zpDk*{wp%jsg4c&%$ZF$v*#-Q`*yLUQ?eZp9e~VJ5&(C-|(XLlsg)TN|c#!kQ1xoTO z&dMtI`74hv$F03$e@E7~!_KzkF)re*7S;8TL;Z#fX0P9cecjVm=kGZlEAAPo9o@Mz z()^(6%7g#C0K1TZxgX>6O!)iAs(|vFE|d?iJ6Sst+SZL-HdvezS2*Nh?f14&AGn0T zvn{yK7>rV=8m&djNPg$co zI0p3(k!KvqO}-Eq4oLuLm;&KT$Wp_05rbB*GAt^-UL8Ez+x<8-qI-hz4Jtne#ObUg5oNmAUy&67cRxD)A%4vXq?y-U^5Dt?Cqe)a{nd($1 zQvkqJ7=Uy*mR@YYZ$H4_PNJ_e=rB{-`%du3s`*Yt6+@HcpFf3=@QsCZTQnVEjPgZ1 zff{1Tv=mC5lPH>Ce)!3t}yz4(r7~VM0pU;p;4lH z3V^x30hT34NWe@7lCH1bETz$&b^lU=qf!zqbZx4U}dQ?5Q z?(Q#(&`&4#CO^qcF2}}1F?x!_3nlZ*!GAdZ4F%m7BI|a5#?$^^_s zy|}LaR7tidu6uGoa-Pue0NEhn!rv%Cj3i5wsg2_!iE+Am6G(jv2%%v>T%|2kh*Gyn zk0VX9QthRlqSCAxGG0euS{U-cOzrV9tMQrXEp*5cKPywMTE{XPlnWmaDW~if;NudB z=2dwTwgAvyh1G>F*~Z_;gHWPtTXkw`bvsOCU8pWL0qqW(F4R%=j2{Xw3e{NhC{eg_ zgCJz}@mJ&bTOPugwHr>@p9()14(Aj#hCe(h=DJ@JWy{>CQfG)u>k^jH&o@btb)4$q z>dwIs98QmcRx{duI)YfFPk$;~oNUN(UzGuZ<~R2OYcVhoc^$2ZUqy2Mq=^JcdgM4;Lr*d* zwTl~LCl1g~xDw$1;m>QQj0T^)+G)c$DKp;V-0u;X86OsHcGdX$RtI9r!J3C*mpE70hpmk@aklivzA!9dOO=k2Nh#&mSAlv3v|M6 zK5i^aJ!!^E^i>(zqPQxWEPy?n&Nr5!6R@mStT@1F6;Gv2GGe`AXZWCOSSMK^f;h^A zmceM0D!e@+Ntn18?}3WSEAf=VMAv{{lBw8W)o3ZhHDpgm8yLO^&g&j_RvRjO+C(uZ z6G^Ixc4cqF1*pGTK@YGIV3wF$U{GL|JoY!a!Kanv$Ge8~=LDo3Z509rEZqIIFLl4o z{e1Cv+@}{AyARIZIQje5-1YqrFJJw6VD8hcrKW~|tzEl+?#d&}$B*M40fvBr#<$f| z0l*>7Dx3xK^Ur-@&KcP*fG=Cz0x3JMFy+^)n zagmVP=h?1}Lwt;e{?Ozua6L=0N2Y6)Y=C6u0eUlG5F7@j+TzWDRL8}jzA#%}hm)9O zbt5)ntwhY87<` zQS{5gP}d0yJ6&3tCry?Qc_K49q?n_$zZ@>3YMjE0Ezdoh8~Z)Y+$!C=&bv7K-QQ1k z)GvN{X4Bi+GpnAyJT=FgdOP~4Z|CvizPdKUp%}_UIcEaQcvy8+cqW+0HjC^3H7;6y$<`v{x&Kv1B$9DK4>tx2oi%;hXaY0_HQ2B2zbt31(XiPf_!T!ZMT0>nE`Rt!HA z5VOq)Vu$Qq1~kQl-5ILQr-B0a7h|O{Vh=aqF0Oeh9rB@!Pb^qx0Jy_0X4sN);|Ni}FKCa=&yWw+N=zA2;xiDSH_XUvL=X-m( zkw7ALghDd9tv|WEV36B~?*t0fhqHm6YdFS+7oHCs%EMC&h^nJ0k}#ob>#u3X=dik- zOIXlakkU5HQlD&1Y=^8tD{W93Au$j(XU2gTMZZGe!SJBfIiY2Kwh~r}uGnaFhF9T= zI?}c(I+pKEa!Pgxl`ZB|5=V6SMkgJ(-OGO^q8+F{pS)wdUnvWuMi$<-RE~*7Bv|N* zoLEMqIow~i?*J1qJQL6y}ok)K+4_Oho5g8S&?x; zKO@Aa_`HAlwjl}Ed* zvEkZx+vf4c2o>kaX(X^q(ENA8c=#@VwPKAoL(h+=WG$00yRofJ+UhEe5#>>dBp_=@ z30h)odnemQR!FefE$s}2dP-9+Z^1CGg;x(>Tdcb=B(XgyurIJ@sJrcVZ!!FiAyRybu z)(8I7B4`yi|Jwh4&c}EC3F`Ilt+&lKeV`?BV|O;+^N2ZRk!pG7*{#h(TjIKwzIFC) z%Z6CVNEna-!9{{04&RP%HR{9i)oR@>|*_8AwyT+V9SYgCp%X*UqcotLb0bp#5S;9>?$nk z@CJ8IfwKzjzm=onk#+=PS*y^b^)HYqm+;Gdd83?>2K$91>x5#FOs$ZzW*Gd?a|Bj! zqHt$^Wqp&I^k`K=+0F)Sqz{6Jk)*1i9(4bPK~wW^lmNnEQHi`k9@ zp8LCJ(1kOMyHjWAeYK~fgX>=JRmUwIL*9#iUKYRjSB)phtm)+Ykd0>>H?OHE+V0-= zpYiYy6oPH$p)j60J((!~mr|IyX&kXTzs>w8C+D3W76}^bK)?tg70_05m{1oj(MK0D zWhJt@9czezmDsEhajBj3Br3iL3zq^R0HmLw`XAPn4Us35vh<@EoxW}Rrn+Xo_Ynea&+Xq~^FC=|5)^C* zEYVy50*lF&Oywz-BB~fbu`KYRClf35r-DYS*z&L`M}>^b166-jo!)qeI=?QuCpb{~ z>9(HS?Lnlz`YJwZ8;kb>>cW50AdW#qt8$0_SZIeH0tbl6)&}Kv{cjdfY7H->lP9SN zEb9mKLqi0JNbVOrYB7F)>Kn&5jth>&oHVWN2c;fxuSbch1~YtJ3a6F)Nhbh3xby(% zx=ABgT@pm@@@yTuXpRCi*69Fh0}16D_C*Sj@}{kIZ1k)Xqu+mR%$bsw<`uP+9KPFL z@6!Rt&n~F>OMN)u?#;{3hO&J?*E|A>J#~sDSU=#4SP68rZc{Wcehx!dW^|VG(kC?I+>8-sR~n! zbNVc&G_ByQD%6yzz=_@DEOU`(nHVY2qbJD~nw(Y` zl#JE7;aIgd{@L8?xwSvHzB{+&`b2K>Ls)g1*Lm)C3{;`xbXoN>`q78gHzsG}1C|&* zUVQ()&aF(y5;j0IfSeFpnHJ4W^8 zS)NQOl%0cH%+QPqDlsuPxX#95C#%Oy#)o$s$cnP z%L-=OwTI!_?HLMJUk1=)D9>I178DG%?}?EB!eAvKOj0P`qjc3{c!+!y>M->-RD~+o z3p8P7cC)6z18Zg#KF2VG!pYu}GIdDM*S1UzhExAkf5auI4eV{nXpavc$?i@n8s^=B z=?Z`cT8cpAS{Z_1e9-M4H{IN9Cxz(hd$2zG-9mirD=3 z{n@$u@6sPc3H%kp>W0a-JfYo(VuPuzPUdUg?R!zu2`DORBtJ^v&xRE4IL$+%gue8&Nq)TEJPO9Yy2mqCg=R>?^3Hi znks~Of%y6gFL8qn{=HCNbX_1_su`c%>?b`fI-iYom1al=3LnEzgbpUc^ATuspFzot5H6R=)t#!~V*)MUYPS zLWbC;-V7uZ?1Nt535Sq&WY%b#pp}`LMW&;p8SvVx)*Mb9Dzy&JE((?p*-BP+ zrzrOrNOsHf6mL4zmWYwo5?e-`-*hWv&R9xsP`N$^Ezy~Z#6*xC*7VDbUcB3xdFR&( z$r)J1ouzpaVo;(gZ#xEi(%r!@b{PwJczKu<=1u7Qm_gcE&&o0&m*1bN2GMb(HUyqv zjWi%QI=~I2*Ys%#rr?@T>_R{L55=Zuml%6JGk=?bw^fH zC$TO(qUlccB;(NC%$~e$cO2`+9{UHY zPow{S*h^qO=ZbOb%3fFfL}rb}$b`9Bji6{|r^aO>B_rm=EwMdP>cg;NP z!v=M52vSRT_3T)t?G{UCq{;a&5PN9$#M1g%%RdV&D}J1QeeUh_?*f`KxD}2my%bx~ zeWLGx=kpuANPL?P!>IxiGx9orc4o@d%T1demB1N4#Cy~_D~e^K*^kH@itr_E{cHGY zItD!fYcE<98Q8kUKw{uut!&^(_K4Npapr1X>yVu3qn5#rwjzB&uYhY%=TkayaQ zPYRFa{Qmvo0n98pFl3B*iSjU3X%WPM{NdD`4x1pf$Q%w2Vhusg?IoFmxa|HcLT^mA zyniGRhOcswZVrH#r=wvw?XC%X|8#eNY5=5_lz^J_hpQ3S5C2|&*!SDBr*EGAo*Ub- zy7Bwd^;>j5?YgC2`02-E%QIdtdY{N^<5FmKLfjS`o6EeqP3p#rpH~lemo5zeSd(LL zRR24th=fx6)y)~}Nm*Eqie$RdHb_RVJI&**klFSw+tdumgvtoM*R|zqQ(HIX-9(ji z{+YPljc+S%+X}uEAF&^2duyq*YFO-PDxD@0C#=!syRx%bu9mWuwEJvhE3w7c3}7wN zwsNLy(T%}PJtYf8=^t6SZo#B9^jgy$XU-qk+KIP=d9`zE>X1>z3UU+JD z+BLX{n(`8I_0R|CjuO6QsXT$u%3>%Ds=HI``iNkg+?H+#2p#t3p7lO-`})RjefvJn zJ$rxq^TjD&@oks=@Bcpd_=bT5WoUjFkJ$NQu|D!$y0pN8TgAP4;NgSQKW}iflN~G5 zy3VKN{R4`Bps?a!N?|gj~UcAqL#M@P!v#BUI0DFc0>MOQ|5UlIUtROH7*Kup=u8+tZ{gqKfHtLm0?$17Se;z#Dp_iIbBZfGh^YMo7aDNUH|3l zhTpeo*blxkdrzrP#h%fS0;Fuu!lPPi_Ixre%%fw2Y&Z68MtLot;Zk-?eUR62S8p)lig4G2r&8wMB{xIme3Dwvi|W+KuJ zQr|NaH_y9N5-t@QHWLU|Z5lep4i?EB{0d})@_ zz$UUreX*P)9MtW?!G)fnyR{o}M9o1M8wzu6cn83DBT!~bC*mH}#oHS4+FznW zR%kjjKCpIeXh}|NT-zhs`{=`=@B3@MEj9V^71>&g0I+InK3S{t$+!)AT=E7_B@Yjl z3$EuWK&s?M39@s@g7HeP^PxBjOd0K(tdD%VJG8wB?k}2{JaPBzr zW#>|L{gIYoNF}+iwWm{U7`|KRUS->!rCfLzv(=jFIoTC{5m#MA%hv|gB@Fjf%+}m= zxB+8b1lrehh`FgFzEF3{3^0Nf_ooIOxo;_S=60)aW7Ob2cq{-DPNr2v<(=BLxXvS>N&T22&+^{@zicTf1$7R!QQm}t~Vq|Tl z$Sf|J_j|eSxiln;(L+hH0$uZH-PY-5P7HSrb>Jw?k=#E#_`(KhEJwuX6(e+1@ffql zWOi#Op0)xW;4lAU{rclSj^FG}zsjffEHSK1fA_b!`8~CZ=G(2^HCZ>YV?3|?Wdnr= zNoUGmJh|fgVD4nae=aD@gW(_hP)q$c6y8i`4$MR0MBD+q%kD6DPD&H&9^c&GCd-(7X>qFObXEN}%xmx+s-Id2c2f$9^opq@TAFDRX!MA~s zWK(NftMeYvSEGL@DMoUsi#fVCRlQavX_b^p2#m=NwXbANK;BqbZA2c}Y6@M?M(?8P zcRoTZ&7Iovs;#A6L-$&3Y^7>i3}y5vf&di#yrQRyc-Ppg*v*vs?z*IMx`lW7 zB*}sYs7>PuL;y5^})W4qH!6r*e$$Q`b)msE+sn*PW8`BIXR)4XX9CB|*n< zz8j4sl2COBNT!l)BHdrgMoBtmomuQaX z>h(B$)Oo1Uj;o1_q3B=(O#0t>mSgW(+fZ^DlnsETWO$c*Yj8&x**c_v#;G4%tp!$X zB;IxT2;A+m|uw zc}2Y~4*Syauw+m8kis=XUArLjZl?`caz~($=t&l-)N0_4x;zg`wE+!ayw14AYI`(Z zArDq(D6Xm6qCqc3Z2xByOkv~XgT$Mdt;=T>v%A4Boulm~J|HDPs;+EF41wffFHlG7=y|Y4QVvVtAp-SC_;+qVm^}Ed)qf7}5r9tSL{ww7TtF^4dkw zSw(3(F0ic*y)l$swM{S5UptxeIV^9>#;1y|z56E*sy!^KAXC^twF!hmrNc(WP=p4~ zoVWr4v?q|n_s~J}3C(I0d6Q27$PK34UwF}F8s!>Oh)dgg+?DNv%WnNZp5O*FswyZN zo`V|X7nHiawc*tjls|lxsAhlY7J*6@{XyYajWa8tP>n%rK|54uRjbKfM4r$LAn3jHcc ze!lyl94wvCc$Ve~*a8l=fkC>_m2M8n(NRU&bi2LMRn9gpM@x)Z-4t=s#83WqGqGuX zNg4&JPv^bi7XQg-N@OX>BH5w8un9MjbUn_y#4BpPQ#P76$&=B9QqD(=O22xVtGi8X z54_=IMaVW1t2xE7{R7 z;F)Mo1vG^FcdwX_0-TyRlL+tGLcUOb<|N3{Dq&!FAC$ zJ!yOX%K|Jzs#E^0ku`CYoX0MdT1itcI_5xlX`F!Rj!X=KiGpQpQRTH&Nm*n0xl@N= zcx3aIw7Ue5XN=xhISR3}rdfe5GIDC5T%JmE#QIgIF7LbW$J#S{pByhbbZY6wRCLh2RhzFR;L?F_}*;9@AX4;s=#c-qc~ z?zCltmOFdKXl9%CXp%q^!dBgzMgF$X4cM zI>2%!i~K;R7Bi9Jx?OwFhP~LeYuN-w{)Kv+Q46PeK;By14Se;bQdfwl3{rL%h5tV0 z#!4KD9yB3i8gNG1_{5scN zwOWGzwhziD`u{F8qEK1>bs~F9^`8>=RXo#Riq6RHHT;u}r8v^(A@dj)_E8;`o-QYu zv}bA~qL}r4E9nRVneeD_gZ?ptErW)1^vU`B!#F*LJp$APcIs5eZRI3!$thLx! z@P<8OJhi&Dg}qOIYT?)TZe4<}otKcvQj1Iq4Gw>yG3jaW& zPWab*lFOr3lW{3;dHBED7lzM$TC#uruVcGzZ(?aq+rnC*WstunP6N9Ox{5AouD}z- zUrUsDGJL17nJ(Q@_#tQJx^ykPR21V|6?)W5O6-$*R$i|K{xpq}CH;jeK2rJ@TbOqm z|C_2`c5S0ntT}ez+HL#+QG8)$G~QiPk%M)^Z_zNVXg-c#nXQ#Sy$Nrt@h#`;JG@K~ zU)<1Q#?kta9YUx)QSq&a`4X=xHx-SNrJ>o5cOqfJUJU+0c2Uwu|H@)h$og(`;F+=TlnOCST13w!gZ0c4c_TpIKVF99-Vtytu4; z6{#B^tDS(&T0QV(@BX>5Jmh)UTLmB>%TR4y;!%&mUq7%6_{JiDGo(B z+l=y23;E`)+6kxxaX{;7UJ8kBsbKLqp(xTAk-N`iYKdrgBla9hzs+SMK7hXXV^$Kn zh;9#S9h~KF|@%AX5P;sWs#jjpV#ZYPgPV zHC7GdKSoI>o8eT48)5WBsoxfb39tXd24qk63YYKGrBBiwjf@^w=(q^>uQPprGy3)8 zZ6En2aQrx!G-y>8o~ysc+|DWOl~&JkMc=2_b|5xOdN=l+y2sSEZO`Mre$33H5^eRP zQpR1sNKAfrQ(yN6UEntHZP1m7)nJ_BbBW}{z0A(xpI}T^b$g3I(iwDAnHQ+8?)niQRxRN4&gXC1zAlvn`Tu;mCw-q( zBG+&uWPZIwwY<()s_8BC?0Ct&gvYRwsSsnRZ7@QpUNZs3sg+2CKfJdUL;jYk8nx{S zDF2b^or(G(KFYjGUw2@Q4=Hx}rJG}Gmqpd-?QN#p|HuR19yCU z^c6C0ApOZ2%b!>A5xX1P5GFQSceZ%~UIAJH{~Qqj3yzhwQL6Itk}JKk1LrdDg8=5bRpNW|K1u9je(4EV~t5Vv{*ppTy zZ);DMG^@;&D`BHhJ6? zLDq*z%yNwqjPI?6&dF-6luP{i7*FG#WEd>hL>BCT_cka%d6M!XWZ_zPRvwlO<$1Oh zbE(>z^J&Z-Z;dDZmGJPG&wxdL%I@)$Q4E)cKOegx-Sv(xvTRSkGdnjIOk}6xnL{jM zV$q?^%5UcjRCk)CDV&5IjmIa%L6yh;Jjv~6$X2p0Y*cO$`*p=}8SeD@HpBhQP<~l& zY--9fRrB-T;UIm@>2ZCQUh5X9!SbgoR7jvrsc<}9aE zTTipRiSz^%a`W(>DIaCkhCD;na?R!q-p*NJA6ZY~^$RbH7Zsvl#iJ~Od^A`os#X)5 zTLUER!V*P-27n@gHCqE!kf7Bn&X6W`$KY87_^;+5f;Mi^VGW2k>V_rDL~ z6CTV)d{4aH-!nJ;BtihwsdT3Ekk@aQsq$BgN)<`pF6)ae!j689h&3q3wf0e9W&u%x zPvpSC^q5*_@~Z{4kqwwXiN}({vFPr7i z$>2!QM_#=q?4FzZHlJ1aHu9-w(Y-`z<)mf$qp|eq(2`r*sI2oE73XK&_ue_17;$Dc zXzv?YB_OxD=#bCIKIX~E9C$qwo#`0qewW$mgp-|av*vU1)}s7tdC7tWQwz<#ljTV$ zU(wg(&=(taVGK6je8S(FM&FmH+JI3cCT(_BrKtD`Kj~A!C;wurz3FkSW^CE~_aYii zcvntegeYOPSdmbZS9sRCVw~b<;+6HXI=KPYK}Y4LwB_DCMPIy-#7i;b>zxct*0A>B zR`M4~k)k7nP-)-Ftf&BcjTi>vVvtS+B-W@wvUvJsskoPJAde>#8)<-_2H+^ngyRwsV_?~j<%OHmHlU2C? zrX#u4xZfqy2z33PT`_X1i-#5CxKp$DwfH4|2150$Q(p z4EYPIpdAVf4`%O62H@)b}#%?=8J*Fw6$TWE_w0`&_&L+ceR$VQL= zIr+Im7qXC0vd9Oj6*NP^fmFyV>kG7+W)GnRY-)qeM?)&B9CvX^XTU9t7hL2<@ZjP? zc0pyz_%z6&d7PMUQ>~GL`jVPF&4w{d&u1G&N1vYDq;+oM$>y(Tu@B~g!smXS_^v51 zhOmN22mu5@dO!~3DqjFu3*Zn)+lI=@V1>dAS)T+qSPKQ-1Y(lli^VrV6Q(kIb4-5T zUuZ4S9_>cK8k%WspOZrD>^YDnz=jmPO7@Z@{gUQkq7Eb$NVnuZEEqPD4i&+Qf>ZG( zSq}@PhSCzFF5%2>=`>P!1cs2R3e&Rt$bpxg^1dpFlnEm zCj&FiW(6xkw5GcvR zCO(iy&a{m2GLV!1GEy$UYCzW!={3!LZ?3~!7=IwV?v5&T0yO_>zbf+}S1F=X##pAj z4RxlCk^DWBN;H~1#1pg1ioO zO|eqTQ@#^ss91!xRrYDb%C+HO`#KwB{}$~E#Tmd=F{A-a1Aq2K@@>ac%OlB!Yu+~o zfLHo6x;ke-OGJtSS*AA6!^&B+;Eo(t5AB3{N0z$1lgzN7`?Rv6LBj&WR;Ha~n^Bvh zZK5cxjHtp3)USKuI%umT`)EE&P`B@RkB^NlI6#&-PpfUf#S$A$vnlCh-^QH$D`NUu zz)Z^^dDgVLh~$sN=dm;_P~jyUp@D$PE1B{&(zO; zUvcxoMyCy>oo`S=oZoBD07eg`&Iq+@NP^sVJmqzE$^0LvDlA z3$TaTAUZw@fI&ownmqGG_Oq=7KTEA>dlLNPrL;fD`F&s~Xw_p2eUaFbMu#Ids$V0f zJBu`X%Y&JNtg{kc;84%7AE*VJr1Mppp;y@O1$^&OLc$D+q#baSMfVV|^-p2{wVtml znBu&P5Ib3c3Gb-ct;2~xFbN^ZV^t&Rx_(t`Z90)?2bsgtHAaIVTSN@NjDu1TgGhjZ zp3nI72U9uaN)JdWgt%lKV*X5lqVcZ+ul zzwI||))(e7%Z{x$lqPEQ%Qhd#woNd*-u|+xBn>}%?BUtOH)e}*rG=gal`A!)1T(IZ z!(`!wjZ!c1!=hjf3zm^IZvgMzWf3efJrFPLr&iUPoAJFZR$aq6)c4W&pr+UkDW)1v zExFAa%}_v$cG?@oXp@}msRGnWHWoTc{^<|N?I>+jh)B`(k}QPNg(40AbbO%5p$!JZZa2vFy;*V$lSh|M4lwJxk5G8^&M4X=5)|FK_31CwAWy zm$PM?4+fLM?1(&XSMf68eKyC0ZxoQp?MxGEjjrVI^huiSciFBKl}?R-$H$Y5MN;;< zz$v6Z#93oOU#7W|8>@p#aGYir%!i)1H(0w&mhZ8wyd-DAqH=0-{Y<6tE_{VoQ5lUC zQm89-#FWNLQV+T1rKqL@%+Qi(JF4SImvuQo4;JXYfPtv^aMqvH?R0~-$&ggx(y(T* zEjan!`R?6j5sLfA2`cj3->FacW#i!*b^WmbnQ(z3w<62y$uv9a$Qo$p3O8#rN(*Tj zvkYon91y5~j#{}jonVzg-bT8(pfnY#ean4${+w$*Yk~ni^vG)XMEWSBEHbwt(mp{~ zL8^|Gnmp?*Le7xM-da>7LIbKZgKMZTsXa&;p> zJ&22#v`^4d&_;!2yyHW}er1%XzDVtPf?8775h9=lws+JT=XN{OeIm>zmvJve6=$m! z8B{iX;SIzW=KQR@`Da@es6LXV3)t2$8l78vC2g*H&$8^zr2Ei?v-bKcSxt z#KQhFK1RPOJdxY{hMyKO^x52PotftXeGurza?P@9cv2;f+3TNjM;P4gI?~fK`Y18G z0~6cBB6Mu$J*{O9D5v|dZAwVqL40e#Fz^En^;#8PB6(MK&}iB$yV{*|z8}6oV&N#E zVk9Ogi6&BQ4$@lFBm(UDK(?UC2O;z^>Djyf^7`pz_36e>ubw$wxG`!-d+5r8T@6FE zUD0i^1x@$IKHmO)?&dYX+aSrfaEgV3lZSFn5f(U zL8QQ1Q@};bSw*a-?>FHe!k~D6%C@AUelVwk_D*erkwRMRZHTBQJ5^rplvN%*MB7TP zCF)XS!}B02)L;i)8%Kvp{IwV5@ z=d~adF&`ur!EAvEz!Qkkat64_I;;(%35|niTBd7`T3ys;t-ENFXPb`B!y|xU+(knE z(E!6HYXsJFAr+o!P!63uMt%#4j0F&+4c20an&b){oSXh0vH=2tV4fsXb#O3dA>^T9 zgZ^Lwo!1y3?x6fyby4fncjys~YdTO$G4)kyvTl;kYTKY#EW~Q1;I0jmJl%#_b{CQV zC(udZDKm&}l^QS8 zz}k~|8hq{-9^FNr$ikbc%xMPPK;x-RwIGM4iPE&1udJEOZ*L&6wri^lICS<_&`SP} z?{br5H0{Z5$w9f*F5|5fiLtPK+e&dowhtB;zckcC# zT_$r6ZvV9_@a-@4mY#s=>AAVzv-4d_=KpR!aBb-2PbQ(a$i%z5Tf_up(E{iFr()(# z)C%WT5&@xl#`H#5l>qRC(5cAoYtEf8gTg)H$|V5XT@dJpisx1 zK0u;-QJDwD^hePJGlJ0KV?77LXX}@vwMj(UJ z{L1#vW8DUN=v*kq^zzh(ZTVL?e3ux3nC^p!eagb!n0?s#IV{2!&TX1@9G*Xy>o*@@#jo@83i6ybH}`Ve1AYlEJBYlXwBO@*UT0v2S8@lS&o zEEbZL7|n}9Z+Y#*3GPmeTbUecxUqzp&N5E>@c(f3-ce2D|G)4|CY>Q95MUCDp+!)@ z2~9xM&>~<^5OmRXb&>#r6~uzBWs*P$7!d?@z!pFeJJ{B43L} z1GmH>4{1`nktxJ}TvQJGs#Pmrxq z+{5Jej>!_9$WPB#uyd>fwoIGO3bXjzgRzkrhhB`@*Ohe1y-)PdcyG>&C5t9bebDtF z`KR^Meslu2$@n16s(>qjinxnrW4_Y*zx!rxCd-U}D@z+@*7ubjc&2Oy^E<^euTC=l z)={%}ZsO%_u`X%KzUl-O!e-PJ)18RNrKQSeu27NG=r7O(Og?dg3tM~*1`{1*OJ%oN z5*Qf51g>p#8C|~Bp>d-ElWC?)#_XFfzc@zXFUwP`*r}n#ie=3njn77wjK3(Ua~@>y z2d1W$7>vb$NGa!R>wQxmT~pq!ZP6({=gB{}$ueHZpDk91^JL;28Ii$^umsvGV^=Q> zco8tqvU*LB>Pho}w!x*a@-xkKN$kMye>c5&hI#{N2p3JTL4AeHA|Y8xwIO@edElds ze=+lSchoiV@^`dUUh(DKyO{qeuNmNC4-C_d^0FgomTO*s!C18 ze!{ct%m#fb58b(H`?F=GbZe&G0)XGl1AJ+cx!r_$wt;z9zKN4Xr3nuyzVKTo@fFK> zskNEmZs9j&G9B|J4Q8n>DsBxoGI2I`met4wb=WPc(9RHqi2)5PsFzLg&UO}r$v-)^ zx%HiwlNeM|?@}28Wjl-cGaX3H?r17dMeU@Z8nS>5o}SjJeL@=we!Tyre{yHpylD$= zjJf{NBj;WeB=a(H;|&e$aoc~5}c025@1Xp7Q_LjD@>cs5gbL_5k=_S2K>hH zh86vHA9(%Lt#&@#;2-Lua2^`j%}VD~f&QSG-1#i1gRHhOT5V7cX^uce(8y4Spp-6q zyJ*0b0H8A^zGDcjrmF}WuOsD`69u(Gw(-PjC*E=2=yD{Fm`%BND7u|H#sjaQ*DPT? z-*|2p;R%RT+F&AqQm6XlL_`2*@J;|3rHUvbiikA)OqqTPvQU#+5-vdK%2M?ZlSl&+ zbER}cj*$yW5ix9h#u;F{|XEL28GR5P`LDt{kABlZ{-j92=WI0zd)glqbPm6{22)p;7zbJLW!UB z6_O_3#^~YlyD#LoH_JA&b85?Te}VICMlFdp$Y{z@n7Mcmt18Qs1?>5VjiHvy)&U7g zwC9?f>BKGNbM@Wd5Dzj#Blac!tY>URzFA}SMt>IU0Qwt3*rjn?LxKSIFg|k?XaC}J zD?15mEK8Uo*Rb0d(P-8apfMskMkb&QMuJ4v9#OU}b{_L4ODM7xTnGR_wbJSzc8AAD zpElhdYpGG)HqLgmj59VF*U%y5GGm3CZiLd+Ko;m|hGtVbM+zBcbE&YTv!Y|-*ROYf zozJ;;?&a`9#rl`SUjRJ8*Nem`8DhI{A&a$E5JbcZ`bP!XBzqE)^W{kH^{BiJ)AGRE zGLAA5yQ=ZTh_dstphhM(mTHo10Hk8NpXT&T;=b~;`qM?ki=3#*8%?}w;BCDJ0bq(T z&JK12rG_|8XkvxmwwDzc|2z3@bJUo4@VCfJCOti>`$TIcffWL313N!CRPGYY>OD##y-@<=2`@E6EsiCos1wy#Cc)BlRGT;QeToxn4$MPx zsY-l^Pb{|OZMYjuY*fyy!silrQOmxJass8_Q#a2*0!V&p049>H{+%2;QcHcK6gUwF z?e}jaNCdZ7S%fAM<8X$uA{F7NJ=7^a#4^0ANIV*$0$N|Y$wPul7OVR8Z@&#w9(SF* zHu@h=+1T~39}eG5091QyS?nUEgDqgh9A~Ih1@?o}A1Zkxy=ZySc~EJ`whex!nfC7C%~)vBCv*#n1cOP~EJr#M2@n-#7uLC_qC2 zI-XKMF|0y2QI1muzo8CrnvZaP@IyvgVEPR7tc@AO1JG9ID#xL@B9P?ZCEkzzN%xv0 z0?}D^-Bi35od$JNFh{fuhy^NO5f?VoNomr$W+$PH5v4Fv6&WO1z5sjHEFW5zP53Gd z1SWQ3!6|wVt-Eq^_wvz)S?-I*F!Kwf&u)AlPJaA#;djRW{rK=7pzu$H*CgoDJN#{H zp%oPJ+&YKdr+(zbS~v|#>q!BfJ&p><#d$?2iujC%S_LWMaG91Y_c$V}*qUeSo^7xP z8M?JnY0LQQzlB*23oO>Oob9O2ZrBd^Sx4<0qvOUkb+ARStCc1*uykxmr%8VjzS|yW zUc9F+|CycWhu#+jgjiS~~G<4o990Av;xEZhxY@KaLr&#D(so8rj z?ALnYYR)3qodTO+t`su*8(a|`*Qjkxhe@Pmros_Yu`=rNdx6d-R%)zZNL|Et4X&hk z;G2=)>uilMmoK5<+WRg1Lrz&-zwc9@fB!@Ec=+Jth)u(3ALf%_XS-4*3lVP zN%?dxiw;`{_Ly*Kh{F`;1JVJK1!BM@Q!Qu2$=AcA2fZxGbweA2haTwca15rgMLNgU z-j1AL*v;_G*l7o|udq$c=itW))#g2pI`3%M;7ZZi8Jc3K5*8-ME|S||4}rq-ipE2b zGw&OlI#uZuLX`mZ63mm7O)g53)r%yKPZnok;ca%NT{0GPkc8D^_O?`JuSGtA8m)|x zrLY@4#Jdzu>^7>$DXfz`$Pz5WSYW+XMVU|ShnnLl)&~jq8hc3cDp~&HJ7Y@K`X?iP zjCsC){lVd3eKiM<)GUnVY4FEFz-oDjG$5dXhH&(`2!uxv;f8exAkZK@Lpb3ho`fX# zu0p6-I|0cMqMo^)C#s7?+;A2F2ttX?o{0TQqPLvrBqOV-gg{DIdq`FUB2z@jIzEy^ zA>`IUgU(~IcyjKD)$RNtDsk1Xws{JxcK&>8SVvSqRl0Q7AziHeP@RM=1$_Vd;6D^_oR z@pZvpFIFx;I_uJ;SGo1)|GD*L?9PM317FA<3F%;lO3yy#9ybCZQyc132IH0{u$Ww9 z?#Ndj0C$s1564&b_<5APx~F=7X2ZZ`&el239;$GVhf~QBs%N7SiuQ9+$^k+Q)TuIH z!iI7N$3G(8>PqG5@ra*_qY^NP5$ex)AstCqrfTlG@`KBb8;4*bN*$pyByvdks=OdV zLhZm)U5Mba{aU(|h@kOQ*bZb~(M&a)Mu@Bvx;R8BZq+91CW-SdTfNw>stjXzti?In z+m%XX3L>$yP7**Y#a`M_Y4|!Ul0voeAJ+#8JsvD>>`D0M|3-Chd*#Z5_s(6<{67ki z|LZy7|1mUPn0RHwrGti#`<}g7`JvFg;vIjCb(;EfL__JTn{*PXSN_PI!i_TM!AQC| z?k_%R;~aZSIQe?k0_nE#y7!>;Dc53lx-J>biUy?t%eTUFdKc*IniWz9y}Q)5Gg!*h zhf4u~t0Msn9laNV?Ew_#rc8%f)*v8+^DTg$Y_SC(3kkE8f;LrOZ;B?T-_2XZP3 zk<&%giVo!o7_j{Tkv54pSHOS_5*7hwnqHbg-59MbruJrJFFVz7;N*+pe?I(iY52?V z_==BT*ZsDBcv#H#AZ^JTLU#>P0s5yH(CbsP>jJD^HWakr*L9g+fE<7|k2sc{aB99X z0~%!sJbBUD_p(UGPMK%n;v+1qyfCSaAkqQ=PB2N#)G;tJY_AW39nlOOtCwzp3@#R+ zmtwK)C0j@amW9NoNXfk%DI>*M7mxKy8Mu>4)}f)0aroA=Yeil zEGWeS_voQb4BXNP#EpVj2LRIxETk|F&Xhota|{otIAjAVC-tJu5Wq8B^$?&Yz`+^Z z(HY#M&Da=sL35PH#ky*gDu8!$k$*v0r!Z9{19xz?q$dUPXF2j)*VR zS3H!COjKE4-|G;q`d*1vi=4H|-GEG_#1z@H`T-rLXGxs#*;wr;;iV_ua#EzGy!9Cy z&W7s4WRH9_06>^^E06!#hw=yKI7;$xQ=>TMnH)oWckt?INJatwNhU!^iR@&1 zx`e$!;|dH0k=h^!;UtPoJ0j4xrX#JKY}&Y5;qAp8uMc3A!>Og(uC8J8yU?(sgK%)&wW1E66tMM_Yud z_onI!c$($(r$0(=v}hMz4q?Lq#ZBZ15(dyKOSf-hVN0>uu5Ir6`?6#1no*=(a+R$y zZxdBrs2_p&Kwxp61L9FydN8~YS-MfAk9K8{&frZrF<-09hJ#7x+u1oE$LpTNlCRcd zmI`*}DL5UDAyGN%Ktlt=7MgagfUT`!wAYJ!ja?~bfO{EFFnD^m1D$Q@(#vc;<$N4< z^Z4nVUw&Me`qQi%emN65um^}y-Ql@F)5z2E5iukqpfza+`e1`^C8Tb!6Wklre=0-#Te!BE6RI}eC7%g`XO zA+~vM&@FZYoM(@^**h>QO3;$PcW%`c6XQ&2qUJggo7vA0IiatiO2G(}38azqII53zYkFuADbp6;VA0JO9sRCtBj-qJsl6gePDu^0LIiGXP$*cwBcC2Bp2 z7J8uc3F!Mw(e3FbYtY#O+ODEemUH9`bDT9$-g@4o^R{?O{jXdIw0kXjZ#m&B zm5|y^vlDd_4Bry0Pd@HyIPD30nnFz0H^G?b3bQ{dU8QPmtpLe_(*p9FN*?UwMFAd$ zogUE-)=doCHc?@tUoWx;&F;P3=r0sCt+!irM-<|6dEz2P@S4LRantDmmJ%)u@ugfp z%XFHK?yt+Bz*CZ?F-~wI40|K+@&Jo~ZXvVbXufWhoAd#c@z>K?yV`gUQ!d*aocpTl zUE1UJl(!Gdo*w?KZp8cgG7E*=D(7f>b64wJz-R&8dor2Y7FCq}&)7k7@t@nH8Y4#v zV>yjGH&NMCO{_Ni!C%=x*(M1u+;)(TISHYhF&cXBLN4G1V(U;2m_{2qjM}*MlTvnx zTxpQ=o4IHfr~rn7Q8Cm2Nv10Aj2I_xZi z3IH%Bc91}V39>N0khEtZHXosmG9rrdkVZRw92Q8ok|Wg^-+{!Qg9_-1EbDD~I;=pj ze1lVf+A+0BltAf+JAX$D=v^suL|+^oBHk=T{oyJgFNvwGjXc_}L@0 zQ?RA*V1#0a9OFs=Op4Vb{}OUA>vv52kZf~2m0=Lb5t4=_cxg*l(1tuvE+y7RzY4%l zhtQ<{#tH-3-ogZ14MntATwr+V4>Q3GgD;O8ZtNYSCN-ZwI{y8|`|yo33q$`g6mRd_ z^l@)%z(NEl6qB-n1W*DtbA?QLXdBSPkJJ#i@d9$E6h5|4_oTPrZqk(npoddZcU~Vi2Fh?mN zo}@QnNKqJuraC!SZj4Wng*&(A?v7r& z;Pr*X;o(cq4-Vh98vmS!zdsY*XX}9Rm?cQ}27Y6^$^urfbhhXP3p4~tDfw=?5PXu3 zlE;EM;vA{7KE}e&ntV_>Q*Geq)1DO zv*lxg)N8D?##Kjh)Y(v^Qy5Y*RY!J^Uc579X--k>nQC&&lSIx5V~0|CuSDOm!&tfL zMZR8srg(2ek+s@puit^pno>hz^Q2H5KkQuMpX{y0h`?Yo8 zhJonfC)&ItSPI?OYA?g-ujEZ~OdKkb+;>}=+(J4UqwCB}2_K#J=8Wy7;RnP2L`MJr zl^gyuF#MZRNctDg*l&0_kkhxmMe%C~!480TbFB!5h`P7mO~PSGB^LSDy7XZts& z(@^cih@b6A)ono&CVi&%VTE0U@8xFXRtxZM8~yU8k=i?ty;@CL=!DUMx6oJ)Y7H}h z+f0C`6i`1ag&dMtnA@4i5tIaRg{G02siQQVbzdd)ZWJ zz)%Qmi-wgd*P(1Bgfj3b>-gXigcGJKF+ZhtNke)(+o(f{b3;mbH~ zAXmJ?!f~#tO)MORd(XsjKp`lg4?2jm@QTqe)qv}w#Vixfwsxkn5u08LBE$s9{NCrt zZ%+|^r}uUuUA&g?YDgeDA(5)r6&I6D8Ie+92WncA15Yp^riFph;26|cWCz2_Ji|f? zOa?N=KsErBW3Bu~A@f$&E53%`*Xk{jFi7rLI$gp9Bw4c5;!UlaVw-AiWKu+y@H=LO zjjQhPX!~D^6WeB`5Fy7Dz4;}O1e{b$KcKLd=D~`kHT5jXuL6?lx=S{bm;3Vr|#gcu?Kfq?{s8_0mx74*PofvK7o3=h?L^7E2o z=>DP;wmH5u1tr57B8lye+vYHWDO#H}TE;ntY1Kt)s%2aitv$sH)Uvw494HoawW%Wc z0>L2J3T@9g3aFW>w&`JZgT9~_m`SqmN4YMsIe^z7ZrF*B1Yf-cKpVdX)(fA4Keq0aA@YR$E{1d>ySCBpMOj?)n5V@sz z7Wp2ITkrC%pf8;QV6-}nqNC~Ub$}R@LMb*<$CP`zXn-zt%1hOGclzpFQM!eWdMNeW zTF&f6KFWSoNnQxABQRIlb>m7S8?23bv?M=)oEa4>`gEcLEMV2@mhMCi)vca}=8!9R ze?WyUGXOkI@2StJT`T>t_T%*7)$1RBxg=UY<=&h>3Lbx0`F`!%%iaIU@cbX3Fxcuf zN&WaQ{8e0zVafM!kLs_;7%M1v>{d{$px{q5Ic!mLRwUq`4giB>12YD0wC%mCAhf~} zeFw5n&(0o!1z|-tZBBKFY?qgY8&@kQq6eLN>joS3KQvyLE7herS;&U6-IR4?k0K+l zZltks38!V!%xwo`cpbQ1VHGyCc}^J0RU{n1=&drNaKX9FOQY@QcQ$9WpI#8%F27qY zJ3Y(S6M=2`(?V<3B@(Ac(_3SM#832aCT6dAmWhSyvWM8RocXdQdj_am;%u=7EsA7M zTwxFUiotLan3DVUO#@w}JhrWcCKw6ZTLZ}4<~*1UJe3N>7HPb3==xU$L$?si&`meIvc#~ZxeVzt z5T3%hzE{4n|6KX}Uy{eDbw2EkiqRHtSjq#WdcJ#>d zu%F=u59vI|XthyotUSASf8)N=s@CSB!cel%o2nb2T5dY)Tt?Vt(sa|EEx%AL3@Uui z*HShrUfbt&sFf`^u&Abxi;!GHbMq{vFXPtQ<#vQDU-qv2)%?qzBN`G9W(Ibx{J4I< z%3$XxcA$_}|78Ol@(29zKp-O=^a7UI6u{!m4K#l*GcCo}!S005aZpd{2JQlCV2IRU zbHXZf^see>3Y`1J;|GF)YI;9AWTAqD+NuEp>;{|3$HABEG^ok?0)H>;=iEjhh)y#@ zhn&0gQB-^!8+Y;tKI85b8NPy4gU^Qc7c~oNidXY;|MiYgHNva#^ERJx4cMVPMO(Gm ztt51E&4=^_FZy-yGKg&uvVIPcMLvU!lldW0(Mg0#7D3qJR(=5h5Skc4=Jq;R z{Rpp-bVDoO?sXMG!4eTo|9ZsUP=JsDHo+2)B-r{=!X3YWMAXF~RahIs6UQO$`nFQ= zQxu6k8|cCq7BDYBM@F5ckicC!5`--Q=q+nqcBI8|Xr6^?kXy*jc2ZWw1Pk#glE0>N ze!qN{Es%#Q#9a&fN&50rm9UD4+L1qVRpqV54ld%Info+)kL}X|8xHI}i4rb#b%ZKo z{vOq++IDo-+MkxCt=qX`;`Bd$TD$VMKQE6v=KtFRQ{?0e>8ppYu3IjmgmNvX2kxG3 z{htmC|5hX?dtPyv``j>S%`z_d9`0VW39((j54vX!PG5T83-DrDAPsKGgO9JU^@eXa z45k>ykUq7JB>S3QvhJE9z}qGe$}xznA{zu%7!1%Jb2v4@km{6S%5}co_Dgi()tMeU z470(w2eLSmQQOwF#~|yejtq`p9{RF>?9h{tjiX?;M%7OydqMHR-f?+(a!lVWe-XBZ zPRCjht%ubX~iZ(grt!4@D9~48B6>@Ktx12_6l6m8AWprgbhTz9AigEzU27i|w zfa0*x8;WETbTNv=x)WJxmD8{QpnkF7fGn?5LEOhuz9b2F$Bf&ZR_t(H$(Qe-(oM#E zRZO(<$-OFhVR!_ZF^(;}<^|uYMh{IE-Hi~5TSV0%!7TwI`c;ws7c}Ht zP+<_7?jSmG!d{kQxYmN1>RZjtP1QnCPfAdn0+kl>M`XOI%Bg4;-@5yE!=^XCJ3RPx z@2wYhFH|3{kIf1Rom}uds5Q0wQ1?dkitc4qs(&{d*fe&|#-j}soDR|Q=DwrdE`(ff zNB7gnOfRq+hJa?$J3vS32dhV_Z4(p_vggse94$N6<@|~U2Y=9OyHXK4DHyn16&u&U zsVVS{S4{0N%W55>nFRpoMT$vtq4iUX`$yA`!+?WJTvf0~LDpt3VXH%K_3??@9hllG z5gp>S2iqIdA|(yTWCt6%n#6Kg!BErb-Co`5v2+Nc1iO|fJaq58l(8VmkoRg7gO`~= zicX`Iz2m6!QURIPRSHa{5sc?ysSY`Qgxn1xUcE(BSRAhvZ0$RhI? zE~%*0e>ARk1sQnWYZFS~b7D%6ipNl78Og0%j>hDz92q1~C{8 zKIvW&S~Encaw{==Z7lEs6`-nD`7M(h)Vr0e8nkyB^r2z(Y%?m>0w?3f6D?s!ZVSu* zc;fufY5n)g_>pBN7*&fq?(-&{z4#`m>OUO-{-?+OzyA1dP{_5`w$6E;@_ImPEO;31 zetILqU8rY zJ0qeW7CjshmDer`j}xIBk&Z&$kR1m-BzeMlnPuTqWjr*23zi3*Ubcw$jX9uZXpYEv{dI|yU>fycYX{J8gN+S46AZe5#~ z`qy~-mWER$B;m}G!N>{1>i!b?fIpBycn0t=CNUCl}kp~J0XEC~UYwMkP$Lf{m8cnVp%fD}{zd9yfIBlp`F zorC+MFWt~)78*Cs$=kvuaV%y*P7Wt-+lzk^{`&a{d3)6FZ)Bg{8$(UoMqLePDwvfx zHRUvh8mTrW^sw8*S9Ao7I~6DNa#ou)wGZy zT0w-CFO^F|>_p<#Pp1N2KII!m=G5NV3r-$Woz{PS_hJv zXQ8V}^`TZGEWI&U+7MJI3|feef9M+_E*5!ME4Q+Rcw-1te)+k&j~BBnoIymP#6o){ z2qYo_!rPYbm)9 zw{TXhN$c;6&1JCx&aX*eXU?ploQEfS#htsL}Fd;nGX3_AtfCsPE5qvQm` zKQ=?=RixJT>*7O}&ra3me%sk?r=4Kq3~LB&52!azBdsyqrN$W;kl0WIC73!L*BGOK zmxkq#x4|3W8bNV~vDbBm)fh;e@+qPV{Ylw;5byocS1jh$TYaSU5f$;z50+G#2EgK? z%8Gf3+Z#NT)S2awtWw3_@(w4GalYQ>RS! ze%5mGaQV1Ha}Otu?Rt^%{dHZ`&DgbDCQKdP^>-4EH&t4n30@hFw@AI|S4*Xp?WRK< zx@kB2gz1XoYzf^%^$9A)0cM|aHN8*y1L-OWqs-jwUd*e#7?D;6HuyZ1yhx? zp-NRNB~jT5f5z>pT}lbHtJvZ{Q&j;z$3IeQ@Dw0IW$M}zJLKDpqRt}SR0=~FNE&qe z*Yy%61NRoV$5`pzZg%~>;n|a=;pUjU_A1Mb)Fy*MdL_EO!vne8n$fNwYKtLSIj&|v ze5LsZpJoFYYSObj-7b?-W#NXQ0o1R0%DMO(XBHjjdd^g}i2s>3=joM*lC)#Ku_NBL zoZjbiq;2KiZYo6}2xo!d`yf!y=Ak4AOPENcgZFkch4Clt?K))iLIxPm^jxcZS5%ZT zf=Aykt3>*D|1%M6O&>z;+)OOb^Ch%uyb~kN7UdRo9zk4izaoK>pi`sEd_~A=%F=NN z1q4-hXF$b~n2u}#lxko)!Pn-i z!{Z5W4Np~(j_fQuO%J)z7j2oPQGP}8YF8ZS(@w}d6CruXr)KbxLwUZ z{`q?K%k$q>Kl-s{_^tb+2VP+t=l&?$_55M#FBgyAdbGRyuMcgzx9ou#1|*LML50gm zV*Mx#pcqpM(5<9*!Od6*FU~9F2~$LHZt3lavBfP#s0;FXZ~msj>$}nLHy8G-M9y95 z(DnKdtJUH+)8=b`WX9ylGN_7{TbK;XMVhnUgzs!4Lv6lQ_)`=Q2(r9I{imQ6leUOD z4S9hi-j5^_=)h)nGuHISCHBXIkYj0q%~XZ+m2SIh4)&!ANm`0%T^74s7QRa+h*T7g z^7g5V!p4h=oY1>&C=noH2l3eK+8>ft!zF#&hQHU`3Zbmk)MS^`ZW|Y5<&8$?w;aBD z#%{*ZX{QdK{_XmTC8rKu{l9l9Sh3;XCxxS4mp80`Zuroe(`@AwT;K0@Vp+$Bqm}iS zZ(7v{c*pGY3^NxNOT}XBnQ#e^8zL#S^N~9V;}%u5m=!n3IP79$nMjsqGAtFY^dc{Y0V1^?7tzu@4Gk1kZ?84%m`m?XwACBy%e|xKbouK2 zT3B51g`QrVTmy_pg`>FZc$=97(UY;T~oG$Xn2RTJ`H7`95Iv@#+ zlZf3|I&rjq22yRPARxgcgep!Vc=&O|UOtzYsJzMN?l&O{aL+sqV_JSmd@33;Mx?*& zNRy^hJ|o1DQd70dqJ)5 zf@xLWVlxdA^cI>ba-l~ZjJ||x_gm~YZ}V$Q8AB=EwyhZ{l%=2gIR2aYSl^#r^0tpN z*8ja$dE(W~Vu{Z*P_Hz%;=W{r6>K>D!QTNH+8zs$ryS=#TO4e22r*MCcJg4X(H6uLlrKrM~;~M}`v+Xq0d?1@qO$9+cR&7rr zDKqP;QFHph>vZAM{dq0c!uZL*j+%e#m}h#)ts7_H?`~(@Z?|k&xcu4e_rm|Po%w$p z4*t`pe}lp=W7-@Z_K4qPT35kXIfc9bF+SWuJukm13j!hlYn=dOC0k$u1|m>r=kvzf z4pIdka&JYb1>IP9ZHAZ5u2gS2yl?C=9a0elF#2_yppy=-)(Q7YoSB~ z9rfNubM-aQ^`^l4THc{9C(MjJwT0=Fl=K8TS`GV9E$iH+WHL@FY(9V9X{b{mD^18m z{jG&)^XNKR1y!y$$T z&zPE+t+U@nqFdtZe7&4r-Vz4ChAbK(**wlRY{b z_6TukwG*Y6I-@tmIdnCT+%{70e9RTvi^ba!GRRndy2tgnR9Uir20==`r#6ft5~0s3ED*`x z2DZ$c&I4bU?iN^>W1zE2bQn-Tt2(4+mUxhf<5ujh&M1XOp7kdloQ(Dhsk^Z6oe^CR>cqh9QHjl zbn(t#Z(o}?=hWmMU;Iz5yRw9RAbDX4;+`!`O`#4Be{fqcULdYSWaMxkxiFAJpsw=^ zL{Ir6vlidL?z0*VV=!6N$U2oCn_|`e`|sy0T`IBpxpuxRT$1M;lzBE%=zxdIt~xfF z7VLCix5W4J&Z$>y#Wgm~)JR??3lrxqh>KS!fJ*XJuj97%mSbhX;*>+oJz%sKKUNwP z6r3b5#~m*(g;x_HbuYWJVvhvtmR?BczV^jZ!XNvovkR`Wae|YW2~~8ek=!4^Yo*Vq zX2l^$cqaS!62CR?O$3qk^)OaTOKDjU@A-7`temW;{%OVM?qxp+Bt$JcwzMB;LR?k3 zcp;wwDgkmaK<7h35T7HPVLR`ADUd}c)4Daa*$AnTi(wd@DsgOmG2a_*oAPt{`ik&< zY2cA{i^&B6bVlGw0Y}YU^-@S|CN1 zsY;c5csFA^N}m}o0DT9Z@oGjtKUmkB@>8~4z|D*b4i}|sM4%yBE7%-_IFa#aL(Vfc z#?QlYa;#F;87j4AxbOp^~?<&4Vr?;R8H=(N& zXcLj+NXin=M->#D?e|4_^vB7Y!;cPW^?hwlj<&Iknv7O`U0Zq7k!_9@<0o|7|M?uN zabV?$&QqDcb}U$V`fz4bS{0*b(T9?$7n{Gw{eLhyTgM0M%4yc0S~T8fVqf~Jw!6pH z_ek8=j;TzzU96o`>&1j)3!Y)W0H3hV;#WC6n%}W}c8DysWE!>_ zXicG5?=pa)++!;$@kO31zfF(W_TG-8d^JU+Zex7LZ_v8%C!|7V;iAuMdDH!UirM=u z#|FY?p;t3A!z7)jeeXQsAPELL{R-swtDWW?U-~0G+jN9o7x(Tj^IBKS`xRr`Ge~Zt zn%TFfDeS|_ljNdD=uOtU(Oaz!LJ>f&V9GhnRXC(p71(HCA<5p^u|!O+Z-%a4T%Uil z_R8?gKX-R8*?rV}_Iz*n+rJlFbw4(Tabb*S<(%<;YM=K`SiNt|h+Cs)E%==O%QYYz z0^&%w{wM`v)EzMx!|KCL2YRt{#dC5%YxZd|Yft9c+(8$-Ny^bQrQy7@^`=;l z(PRGHjqD7&uSnqCa$8=Vb|%30=Gizy918@hu@s<@EU3rGv^H9=6UGf`BQKk=#J{&K ze8Hgw7qcWx>)zD&GzmpN0Yf7tkk(#NB-X5<)h{u|2}jTuW4#OwP2ZelOv!HN%aE

wjRSHy8x7Sk>!Z-^_C*?W&gCP2IxN4m0T93W0f*euIi>QB1t zKOFS^-G`f*JFk`x-FI9bH|dX`pEuMW>{!J4WBI~8zkZ1f@}2O{)q%dhR{D)u>((}V zbzCcauz?}&riGlaIP|MR4D>}XnMa|th3JGZcW?}D06KqfVVi~qOt-P;IRoUwSW%xo z!}KI7d=p zT=D39bIWp0wP@NT`iw`5|6np_5?kV5Z~hhJN-s_LS69M+xk2*ZGsM4nMg`hhwXQGa z@t&NzB|W3ub0^u`<)xahhCGRX#YBM+C?E>(CSvFwaonM7CyA4C@x0hMfBt1YfSnF# zTrSfoq;`!gjE%K3+FUZ{XT^pN+5u~FEZ-!_FMBfQFA;+J#SD6E((dxSTINo!k1oYVBpy$0)UVi%^vK!wG=`Rut1~k5W#x`nM(hD_VSranTwLa~=X$en z?b02VxBU4WqmDLGq}-K&Vdh{2zI1ede|zTlfUi$F+A(Fzx3hl zM}M{Mj|iRfJ@+qV-*U&C%skH9TYo)zTDMm>)hP*?9P))*InVjGwe~qx&lLQbfU>+6 zu#>W1`fjD>1eHNdeM9i1U1^WNI&=>AT`1Zt!f94>DG8ln4a>gy8uW`Um?j7d{0`V!?4>SzCxZlAg4=De^`tk#OUT@a?15OFkU#pLRKE$(?JVAFA(6d3f^Yg`x9T zbDtk+9ymE7@aps*KR-Onk9u}pAGx7RaNkh{&enpYSPJGVx|WqD-3o`k!5aK(GeqUwSm5nM z5uI*8-D@}2=PsPNb;>^G{uwDAm#m|fGTxYZ>1tCG?YdLdP zRoWzEU_6+{E zFquDxIveoM@((`qV7@wUW--X>qvZ>&-?7O+I z9)tHi6lbjUVZOXll4SV#k^&k+tt^dx0Ytuov6KDPdVnj$cOgCsdMcM#YVp0 zk~J`3AX}}AbFn5Eu~GV|KT!||y7KU+Bg9gFu%_@Be|&9eiQXTXOD`=0>xmkca`V}o z8b4>wcE4@4uQsJ_J)MEf!q2GkrqnX4*Q^)qm?Y=uE7lmj*y@PQ+Ce&buFhm3y9V2^ zFV{CrEtRH&dG+W5jw3Y?2trEZvcsc`)72em-i^iwYPlO+&ZGIa0e;e zAr(6{8z}}sy&zFZnSB4|a?6?P{hvNPlQ=gOj&lood%=rwZS1$9!Tk49^On&LV>{NL z$r=+H@qurC;Z&UQJ*i;6ci+knHx89*4IOU3KAoXOtgT_Q!3WJDR2@~k#}q=+{kQhM zE2ydWU3aAr0t5&>AiZ}&l_rKNC19w66cai~FG^8K=wMJf34+p#0#cP?2?-!zKoA5J zETDiO_ybhzdb0m}pNlhd&dfgh=FFMdnOtPeBp2T|E6;l0_j?LwCVp|mn`tEcZOYBB zKy_+<1TKou$;=$Zyu`Y)*G$|$&a5KCr`6{jbH)LtxHg$JD;<F=g439+i?1lIDV9 z>?C?TTY&{nu!|A}BWm`CwgKf6?d$d5kG(nCqyzLjqx8?^X9`NosN*_xO+)G1!$BM+ z^EDp{J-jeGo^;BZG%2*f+&sCwk|s@=Z8Hq+vdP$husolzaCQ8GQTx}weFL^%j=hAssBL^LU3%wGL zcb#AUSFz#WLE&p(kd?rS`qP8RaZ+kVrLRo#zkxzY?Oj>WM;>iJo@Jnwt_%b|kN_~Y z$`lssnTR_tx|KK4F*!|j<=!fyU?@sNQ4&Uqat+Cm4Ty`zN(hdRsfzBQ4TFf88*=Pr&Fmz-s>-t(OgDZ! z)Lu=j)*`TwKxEqmHn=|#IkChTbS^2QfP19}3PVs5&_pY=slRg}!FH%NW+21zgP3-< z&nuI^&tBmtnM_N$0$wDBv@B?6yBV9y2(*q>$^ZPU(l|4!W9_!PQ`=7P?DoRSxa(~D ziw*(1`~n9BFT+>-Ve(Z!x6#sgKRzp(urFZ-22LL!;$=}>?E5!z>#xB&!pe!8RK-lM zbP9-q0(0bRb5eppq>3eqXxsI$ihd-ePk1Z4KM#du5%@fvM1|l3=@|7=Fp1PD%JPs* zN`kY5a`N~Y=F#V@AR|1;E}tIY&i5u#QF}x7>8SY|t3mz(e6vn2ng-D~O<=d9XEj-w zpxm&-W4VzL!z6~P6hd5xhY!^j!=oWQqAGz-DllecUH)Y3ZLWVaLttB;Qi7m0I(|^_oqD;U87Md z@mIK+e*D@=a3+}uS7(^_%rug(Df2H-Fh~MMx6fFJPgFwShz{<;xXhljkwP|L14kB! z@YNqnOYAtSnFdP$c;2XkA7}_NG|T0*%6HSIQ}bn?r2P?z`?6vEu=~ulpBv@1e^o8M zGYS>w#TH|LexSrd_6phyLW@D<0WJX~K%VBQ#0;?)f0XFL6rgs}l60{G>A54OzDzxE z!njWamNzGGlp@3=@CnjOV-cTNVUa{`R*u;U9U)L~C0zR(cG5;b7~(cRDc3Y;$fo{D zxYRNryI!*z0OmA`8R@0v`*??T!4vFF+8hw_Sln3@RLmdP+L_CCuH=Zu%5$PSW$5`C z)-Xp~#s-d`DsKZ;lNras@wKQf62#=k$K!sXE(nTd~L+JHWU4Q(SL!8wHoIP5HzCLv~ zJ=tQ?JM|@ysE~GxDKBedsptCI*t$>d@u8z*#Ae}lKI-Q~GswiHLkr8LyG-@{Krtvn z$Xpx&Q@{&Tf@V3Iu<^>5aX^Xy;Tm2k0qY%wh~e zBL{lA!Nl;PFozO0^DAg6a0!H$6C{`Z?9Vtk>6m>Hjen;k_zrk1fV(UN+lzH*<kGBPk%Xd3(?)!Y(3JDV{M_NbaHm0yE%+DgH~cMstG_tSwb=dMVfOqozIXOOO?qe zgi#tK_OGf;94WUgVyyB~Ym}3(YnxE;>|52_OO!L&-}4K{DN`AQ>=|n+nwmRvm%^H{ z1EP2+R?@;Q%Yw@{agZNAxQFhKVX!i4K$ctHJY(&VgB?Y1Y3a-XHws=lP&ob!M{8CS zPP_cOOwqQgAe<5->BfOd5DxA{V|II#V@c-OA|R{ShgV-M9)11Gf<3T?Q{gd4Ju#JM zh@lT-MR_b{``vu!;*PsM+&JC^NfJ^>;y`wk^X$;@OQm>rJWero4AQvTffk{@V0J<;&%}bCrn2e>5Da zH`0E8O1l>=`2F?WwA7?8MfYEyd+_KVcddfL;v{#~h0db?b3EMt4io;Jrhr%^MOzB| zR@?i>u?3fwMfOXq`WzBipNq{Yo6&Moihj@m?WiMr24w{{8dZ8V?=WgHPz~8 zr#;k6?bwPI#z&?2EpHH<(?3q{ul01-mu5Jm^1JJ`<+iM?ch2E{79TcbwvAYH`##G- zL8Rdj;wC%L0tQNHED_L%H79o1kLvf`8GEKx$|R zaQ~xm&KL$a@NT#VwqgYbvBX5H>7_CR5*RdNXeWuG>uL4rP;%|;%JeMBbiV8vUa+%KC*X0Q0KIiqS1C7^r*2?>z5D z3gGieLO66vFABh&kUR9Z9|t}(9+^IOsy7kDIVzRCBd)Ct?|fM{3!rB9;F+17?*fpS z*5tZE|NfK_>Cef} zYa`AX+wb>SD*K{7tj+k3m0L<9US5QFSt-(&eP7ouFbB0_YJDe%+_t-u2S zB;qZohN~MdKn~eUM@X_PbdE?LA%pfrnNo#^Ol)C^J*^GI-o^mn>?tN2>NKLmuFB8p za;1bAD1*4lOMd}J*JOI0vGc*e^xXV0@=ffzC_S-2^Qq)x{)Mer$1kT9gM{TZ2(LX> zX+l#%o4;%-j2FAF+VVGj`{!Y;SK1HbA1~{c@#DqXLmwZcDO51)rmvO9svY|LUcOc^ zy|VYu&tDI74e^m>i=hA%4GV}f99c34L6*EB z0H~sw0~iKch-{pc!8Hzch4jK%9C?5>agz{01j@+)dT?E+I0poP0`&sYssX?Xe*j33 z&84Q;gc7!I$9YP$zdu%fzHd1-tb(s_s~)f-&j#A69?cc8 z>ym03{JGPA+HzR9tRrk7&isnI+WdUoSIr2o6@FymD{=BemEElZ(TEwv)Zf~dwE`YI zvD+K?c`Q69C%0+($%f?Zc#|kC?x<^j{Dd^}cK+$t@|^T&K5lQ`B%}28fy^_dinK2M zStK-&s3#fBP6Xp^LFq&|J_*=xmA-^WD%)_>7~qS+W6rkeT!#>OX(9Ao7=z;t1Z^fF zptS!0%?8s&>|H`b06DWdL9{jx1A;!T3deooA8%IO)(^1C_bDHUj%**5HaZsC(2tm& z&-&GV&LBvk8HJoVi-%-baes;`Z~d+|rz=)v3jQfoDFgpGanLSXztgQm4tCptvR8@c zF@}+@J)>-J<=VCs^LC+{w^M`$o6fI)T1xS4m{k=%$O$?kuyk#0BU*f{)?^r3JS zbPn$CcGYRMB@@DT)v#OjvI0gR@5_)FB^%*hW2?+?CXJ3Uo%B97Itfmx+dr#oLB-Q! zhC1h=xwi&leAo4!h2?VYDzrO~kMc5V8QRBI@;ff5)I4MPU8Z_T6zce%L0Ybc=_tE=}E$F1e2cD=jqjsJ1es<+{3D{^Bl zQE=^jCykCUWC{~$bf^(iaJZ0RTgMGI_oR8AKonTm4kryVjc_ebx&xRFtkgewC|mkC z?SeI#n`8yo9phv>7wlQKX?NCwkj)Q+OUvJ-5rgmAb0tO+#qk^KwoB)^v1Xl!&xa?Ibt8h5 zr+m%wmOl*~hQv6QFaOgo<7M078oY67<@`4^fxI}@oRWOZqozK%GyMMs6aJ%8_eaItg{4=MnJb3&T}$eJ$7Zedq-$`+NtB}%49l1TU@P$mYf zD%}JIRC^sq36WEknzRuA(n9Nmo6Y6El*?AtkM|X~WzKqK@o}~#IQ+v~ot`rG0lsI%KWVJ>5tGzguPd&)HaxqazZ3a&l zR%ClqFag9sagz zd5WWah6yK`(y;7IB*>N~c!bGEmmkLZU`zSM-{Axtqn&I=8zfkUQhNQwnjWGQpD;4x zn%yw}i_%9`qThW>jm@TlRsV?`KkxbLsN4m-fH3|-#WJ@xz);~&5La<;9nixTqKB=) zoNM!qIH>i-z@@)Ig2h*FP2SOW|Il9EG1(ON%&haHAN4j;HAiChLPo$_Nv)mA<e?0$NGEFHmG-rhD&H8Ii{ST6L2RKo19``D|Go}TI;a{eyg z+(zLo_+cP(1Oeb4gJD#I&#^UuF`4)~uxyrFH$K~J)3WDJ(2fC}*o4<)3x*T>@xr{p z9JQ+WG3||$6Z!ENgyQ`WTmLoQG0+>a(*TY-!k>#4BGQEBG z9}h(rC9#3JFTXXac$G(gCLy*`QGfLP%A@0*PWkVOS+@0^afITgPCDIcj(6?(d42Dh zyUX{Lx$_q-tm<@bT~pfi=#p>v=J7$$Z|%gfcL+e^m;IN48NG*OsmD zYmx6=QiI8o_wPfsBDFJK9K~ntHlfjATVR;XO%?!+bAl~uIs#BO!CW;icvc7mk`NpK zM8RGw8WIvz6d^P?o)ZX$VEpj_Xai(!g>Qg2iDgfRDmIOQ2nl#HdoZ-d6hFL*!?(q# z2GWQH>iaF2rMb~}J>wUsS)*B26#+|MRSktJvoG*h45r@vMTvu!y8YR-`b!N(?IrH^ zu;hDQCnI5J2Ez|t22EcjrLQ4pYnKMONpX^q{Fhrw`Sl7;p}x4wn0$>@(JR4qIWn9Q zx8o5X^RBgs(hKq~3F70*Afe$h8JY=sKi9{e%^nqzuzIm${7F^u8z~o!gs{z^(YEYw zY~h^g&&m5r6m60hiKu|G$$CyMVjiiYu4eDGQTPCDq9Kfe1Pu^bHhd74T#pXCeJ_OIP8BArB>EA&x)(|>0>I(u{fnThl5NZ(C~dqHl@JO3Bs0L4&ADrJY7Tfy%;&!e5#tv)pW}Ed-C|Y5Q9x{U^w=Sw*Utcr#wY972mZ- zZ8rw>l#cVEdu!_qK}ZDZ!i1eAubj)z(u2t?q5#qeQ)Oaq?=Q_`DR|fMtdWPVh;H+3 zkI|E(nU3QY#ZTfKcdmxHdwESM1T^gSrtl#r<1FXQz1EyQjet?38sCy$ZQp9IQ0{z` zLDk&OI8ySwRyr!adq-TB@mFF#;jdH3`6SZ8X|>MxW;e?E?=4qC~b&#%d3S3nZawz=TS)B?GP-CgcUQ(?Y)s*wMmEZxfOH8xIit#Mx@*DaO zl(R}nakjjx&4-h-SYd#P`>kC2{AQCTV(qw8fNS!^*@@uw`FC@pkNb2dkA^cFwl(T5 z$Q1|s?mOohbSOL*T8kym$!vF@pLQ)ZQH1NK^{lnhR#w`b3(l$pI^CPHzpX!8VI7C_ zR~bWRbyRlQ%sPe=(^cC>cP1?qzG~`B^wX;UtA`K&bEXg;ML+Vw3jc2Ey+x`GS;}h& ztQDl4@#L;_!49i^u)zTIUQH%1=pI@G0S38^L_A@#NC7oK76wJPK7+t=7|sw0Om>9T(6$F9R>YoM(esDF-i~)&*9b5U@|Q|P zIklLLdQM5&_*zip=;lw3|F*QaTEsAk3cL`&dpPaxEna8_p8@FenoJ}ZYRh^Mf_z4* zmY5R22!*v)X}WJD8OJd*iwVZUF*po&6CbO&FcZn<#w6iSBbp4dFd={bZLKfxJW%VG zthGXQbpp6v4FyG>16tWx0M%u_5DUHODN|v>aX9~Rvc-*VWMcs!kjw-P&fT%)_uF(T z8W~?A8p=Q8yu?Tya&Pp!)XpgU!qe~8NC~-?`rP7^9QnCbK=W}m*j|y5apxyqtmrUx^K^dTUSu44e%m>G1HnLJH;3HK1AA zX|6iHk{Tb>F_I{;1tj9;R)2HYtpGa8WoX~-&$!;;FMNc?@Df-@Me#0U9NveEld6=c zO=AnOE&C^eIznF5-%?9Ivo@=@&EYTt0{crm^xh3||NYRzmF_?|qMMH`%`oV#%EgmD z@U`z6J@B*|*jLlDm5r~IDbCr7V;<3|pQ$m9mGS7bhCSgM53KH&vzSP1)eJh{NdSc< zaw}eJ%oW(xE3$gQ($u@nJMFrPua@o=hb|~a=4lDOY`5OD{Y=Xvp=>Bfk_rjOMv)~= zlme}w%Lp1Ch6RE8$JT`l>*aCj(C^!18}GNa#MnF-L^pxnLc02-=+l{hjmnS9N&a$1)nJHb}j z82VDs>_|aEQMZdHaB?=OnjhIen(sdcUXp9tq}G?#%C!%FxChXp4XI{F zTch$)`@KH^;V6cW25A$~a;P`W<`tdoC^%pgnNDL7 zF`8gBCsrW=Q&zyAUx)cwb+0=NX(yIV>%8@KsB9(b)Ju(^HpOg?N1=o49W}F+!<>C+ zX>HMUoyt^$wwHu$Xv~AWx*#9h710L|l%6E@K@(H{U|Z128T9J@WW#-v#7VbIbU6@re;OzDm&9nuz2$vpPD|c%<^0t}i+ii* z|6Z#aZimKH-{hzD@>KrAWKsYPVMTGrpI0Ryjm|*=+-WuPz(^idto%@YA5fX;` zID`CBqYR<#VJK!sV96XkzdN+OLw7T&Y3nwjDUj@VX`ry`AU>gqW93NZHi;y^Z=4>r zzY~F)ooVZ`=2J;bu&wv;mb%O#Vw@eCW_4@7!in0@8F6reU%Kpse}hOtePeW6UO>qD z`%-ko_CZh1=s;E01vcx@kE4&XtR0B4<7tH}TqwxCpI(cK4ebyF4Y(hKYjb zDBX}vetGI|f6D)&uKri|z_Iu!>LJ&?WZc(+&DHbR6v?T3zdmjiFg_i8kZJ=(T~02kzO9eG^x3Y+=!kv`B!Izc7Jb^{8@ z;n=xt#;x11N1mMQe2`{oCus8-^6ZEHNux-qch9&KlyKFgOwEdG6#n*;RaO6p+1~EJiMb+TVEfG>rK9La>!}L z#Ay7F<~#m{o^$0TW}R=|9E`4?wEy6mCm<7IUq|G7Gn>9D?a$3|A|)`&p8u3My7`EF zm0oC)>#cc=u&PUx?WhEN{G6rR)cnIWiv#9SP2VIbL%-EoiA5gM0j>@af*nU+cv7O< zdb~coEmciU?p~mplrqLdL9*2*8zb*NzS#MpVJ$rKjt7TGbM_VJ-Yx)w}3zO?|QrQ2{yZ2=t(tlC28l52t z=0v~}gekqDSaA3|T8Wq)w&v)W37z)2tJ36j$t$#iO=s02m7{keb<0Qi@#EW{>cS~OeWoF5qpc|{)dk|l#Zm0X*@VQ)LV;IhN`coM$ORjJZah<;;^pCHu zm3s?+J99FKb$4#ZKRczm|bWwMV$8Yt}bpu+5NZt zUGf)haYN|p+rLzJzbc;k*)6^-CwSYZ*{^7A4N|!^d9paIkJED^9ES;xvp#xL{Xxzd z?98&KK-fm)U`)K*uzl$DcHbYLA~b9MlG=c$K@gE)fB7pV-aUqWD-HnKoX^ zciF6g_ntw1O-U|u6}Mzt!EhR}zFtu+l=Ct42g5h>_{Vor@;S0|(R1j)*>j4OaN|M* zDBZx=;$7dEysr!}oDZ@8UiIX%l(XBUN1~2rakFTZ`gaiCzN1oECisJk-d*SW--pLN zHkb?K0l5>_%SVL2GlJI3n%aF1kZwJf5<}lx)w#@05Ls+aQpMS|Xw(rJzCv?4j%&$c1A2hZ~{(B1^B(tVfN{ZDO|DAd8>n7G7V zC6_*qzqQvhJ}m6pW#h`{nKeZzhew=HA$nZC69HO%<>Ct~lOY{)m*;oQY}FSV?$jF&8LX8xYdAU0c+F3p zB18B1mXC)lpD*7TJQb}L$G++Ev!|G26NajD2^$v;kp`eVbv#Ezg-@cT0Ah( zY%J?R^FK~=RKI_5wz0sn?@V68VAL^{hWlB^;Jm2u~T=&Z7JAXIRwi@-yH*{MAl5F&+|2c2uP^BGx{&qC{YWVUkhslTS zag9FPL1K4L|9#z>GJSC%^~|y!z>@~YPQ#Z8K&OuG@l}fU!`Hb z7-=JG(77`+sH9LmRwiQ8Ta_|hR4{4vOxI}tWXTV32#-nk0*hW-i_d_tImX~YflsSJ zkeV>DYfswc1rSTORqmI0>)pl%Jx?b@$(wx}ujKl5Rs7-r8P7w?eEhWhiAE%KJ}8q5@h!U&WN-Rla_=v!LyY)F}z!` zKcdynnVn@n^QXarxtVLhKeF<>Z;XG7Ga~3p+~2>Ce!Y3`)o(QIZogsettn&k;+)#L zx`SpKOEb0m#pT$k8#8_#aZ`i3Xr198|J~`>wG-KIQd_8LBGUYNBQZLs@p?9KBCR@D zYyWY7qR6V`<%l+icSB9uDl+PsD90=Ews&eB+q#tsHx&g9^du}!DmOb-YdsF5=Ob&1 zBrS}g0&R9DwszRw@Z{jG6D^KcXh6RS(q3uVyf-lKh2h<~1gMifK2gzdTzC$DYZkXL zZs}$JLtbaj5Gk2f_k!6U6xa+huQQlv5lc!CXqM)tab_uNNP``gxN8h+fl9zl%t95! zvB6P@u7TvT)snH8$qF9iuzks@fx2DMR+v`fsH<$UwHVjtGQrYKS88-(HA;svuH1iJ z{+lHgO7WqNy$^SoILGZ$6U|lpTt&czexBE5SXIWs?&*unKAAa{!i~t`ltWFw(I}%U z%^_Pxm%Op%bT>`gwQa?=w+S)b+^alV*7N$RU4xox&=$ula=kuY<0>4X$Mc>F4(R#b zXm(Inh&On%v;-hzaVpd*-Fu9a=^NJd;cS0Yuh46IO}VkdBU{{LGsS6k&lk0 zZM%Gx`fcwW`+D1D>Cu>8w}v}nrsuM3n47MQ!iYsvnIJQ>0-oilsxq$}8|Zjilw~LI zqx4=tnU+dYkC;{N8yEBAf3IkAMx4g~3lwyq_RkH|{n e_|J;4SwH#j*MIN8fA7Hm?>pdTe&YY>68;Ax*}W+M literal 0 HcmV?d00001 diff --git a/src/android/customCamera/src/org/geneanet/customcamera/CameraView.java b/src/android/customCamera/src/org/geneanet/customcamera/CameraView.java index 5f4e3d6..6647da7 100644 --- a/src/android/customCamera/src/org/geneanet/customcamera/CameraView.java +++ b/src/android/customCamera/src/org/geneanet/customcamera/CameraView.java @@ -1,15 +1,21 @@ package org.geneanet.customcamera; -import org.geneanet.customcamera.*; - +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; import java.util.List; -import java.lang.Math; import android.app.Activity; -import android.content.pm.ActivityInfo; +import android.content.Context; import android.content.res.Configuration; import android.hardware.Camera; +import android.hardware.Camera.PictureCallback; +import android.hardware.Camera.ShutterCallback; +import android.media.AudioManager; +import android.media.MediaPlayer; +import android.media.SoundPool; import android.os.Bundle; +import android.os.Environment; import android.view.Display; import android.view.Gravity; import android.view.MotionEvent; @@ -32,6 +38,8 @@ public class CameraView extends Activity { static boolean clickOn = false; private static Camera mCamera = null; public static final int MEDIA_TYPE_IMAGE = 1; + private SoundPool sounds; + private int sCri; @Override protected void onCreate(Bundle savedInstanceState) { @@ -278,6 +286,7 @@ public class CameraView extends Activity { protected void onResume(){ super.onResume(); } + /**************************************************/ /** METHOD TO GET THE DEVICE DEFAULT ORIENTATION **/ /**************************************************/ @@ -296,4 +305,42 @@ public class CameraView extends Activity { return Configuration.ORIENTATION_PORTRAIT; } } -} + + /****************************/ + /** METHOD TO TAKE PICTURE **/ + /****************************/ + public void takePhoto(View view){ +// sounds = new SoundPool(10, AudioManager.STREAM_MUSIC,0); +// sCri = sounds.load(this.getApplicationContext(), R.raw.cri, 1); + /** Handles the moment where picture is taken **/ + ShutterCallback shutterCallback = new ShutterCallback() { + public void onShutter() { +// sounds.play(sCri, 1.0f, 1.0f, 0, 0, 1.0f); + } + }; + + /** Handles data for raw picture **/ + PictureCallback rawCallback = new PictureCallback() { + public void onPictureTaken(byte[] data, Camera camera) {} + }; + + /** Handles data for jpeg picture **/ + PictureCallback jpegCallback = new PictureCallback() { + public void onPictureTaken(byte[] data, Camera camera) { + FileOutputStream outStream = null; + mCamera.startPreview(); + try { + outStream = new FileOutputStream(Environment.getExternalStorageDirectory().getPath() + String.format( + "/%d.jpg", System.currentTimeMillis())); + outStream.write(data); + outStream.close(); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + } + }; + mCamera.takePicture(shutterCallback, rawCallback, jpegCallback); + } +} \ No newline at end of file