From 9053178fccd90ae51c2a22eccee0a2371467883e Mon Sep 17 00:00:00 2001 From: yfyl1005 <2812723117@qq.com> Date: Fri, 14 Apr 2023 15:02:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9E=97=E4=BA=AD=E6=97=AD=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E6=A0=87=E6=B3=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...米便签开源代码的泛读报告.docx | Bin 413204 -> 0 bytes doc/标注/210340049_葛朋林.java | 873 ---------------- .../210340049_葛朋林/NoteEditActivity.java | 873 ---------------- .../210340061_林亭旭/NoteEditText.java | 264 +++++ .../210340061_林亭旭/NoteItemData.java | 224 ++++ .../NotesListActivity.java | 957 ++++++++++++++++++ doc/标注~HEAD | 1 - 7 files changed, 1445 insertions(+), 1747 deletions(-) delete mode 100644 doc/小米便签开源代码的泛读报告.docx delete mode 100644 doc/标注/210340049_葛朋林.java delete mode 100644 doc/标注/210340049_葛朋林/NoteEditActivity.java create mode 100644 doc/标注/210340061_林亭旭/NoteEditText.java create mode 100644 doc/标注/210340061_林亭旭/NoteItemData.java create mode 100644 doc/标注/210340061_林亭旭/NotesListActivity.java delete mode 100644 doc/标注~HEAD diff --git a/doc/小米便签开源代码的泛读报告.docx b/doc/小米便签开源代码的泛读报告.docx deleted file mode 100644 index 8460a7cf9f7b84f3e5548f7efb348b095884cedc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 413204 zcmbrkV~{98(=|A@ZQJ(D9ox2T+qP}nwr$(EW8Ja$-Y52r{hl{=e{DxpbVb&QtgI8= zm0c%WUJ4il3gF)rCVR;L@BTj*4Q34Sss-V~djvP52)BZ`@e*H5Y1wk`pud$%FKG$j~NW6#>-D zEP_s|S-G3O!j#m#w<|9XMm`2JYzL4jN`qI=h8{esDP*iM7(F{x7DI%^H#+xB6Fhvt z>SbAHlPzF5jNV_?)FR*^FNZB>Gz{M0>sD2KSF_2Uq&S~{{00)vdtGK$AY z=`6*!NG+d_k&w+;dJ)@q!b6bwyS}_E)>bfm?ht1?_IT5zI<_y_-at-O%&3H!1CbaC zlP0aHAG?BuFslf@|jKK&BX;4Z$-% zXt<;t1tl4Yufwdw{82D8=k)`}Sc+b^ zu=_23%m&J{Ia{E>vCT3MbDK&yBAdK!SFEo-_%5RuMW^NNFW(O=a9CAL-Khb~=}IuR z7!Ulx<0U}qjk=QlC~oiAsg}=5=oT9%EE*;$i8_gnYemS_R`>$oY2;LOEKkCuzL~0v zP5G#g&9FipUl;g-tocJoRAEuv+xf_rmu3El6ho_OGizpx@Bm&k%*^R2_yPVm;f86* z1eAXXNBm1T@_!NT;^b^+^N;e9gel7*1_Y6pknf-c-Bn@*9MG+SI1ov6SeBVq3=LVB zRAU-W8;Y+Ns$z@t!Yo(L?Stuz4EMLn&V35-Evy^>BtryoTIrn&AE4Y;D-Q4gmz3J7 zS@R74q-On$-QD4=fk#LCn&tp8^DO@$r!OEvYB)s|w#SBN2_rBSPCYm;JEeJwwN*%WY7K={7-n&`Zhw#@ zoIj9p1i41iPMXyot)Aclezv6q^C^F-_I~lXTk}Gt#o4Ic9`7%RwVl1AUxp?diV_kQ z^cjekx-&&BxM37k4gInqQ_Jcyd@=G)KBAnNj6NEdo7>2~3$HOBM3!Z<| zOw%jH|HthA`@RDDmsvMEN8|ssrx=i1S_HrX09=>=0Koqb#L3yi+QjJ}@jE&*j>qDN zy~qRH6wZM`W2$Z+?4@Q#R~ZAymyD)Y8@y^#E4DGDDe=p;UbET|a3BK#5P`tj9DwYB zz;|pgQ@x-XzZ9!TRVt`iy8yj3;+7{r8>yOltEo~P^L(EX#AbPC{=}0it$8(`ab-&Fi>*KASIU^k;Qq( zoZ9H#CnC4zgZHWYPDa{bYghaO`jEyb0~OGowE$tQFVPFJ)V+*m)FOb4UXtjgM0|5p z?rqxwyB=vGkja?$oAZ?ju(!yVm-fP7U;MH}_R-2F`BIxZ%Q; zPDk*!0(8UB)?yU;0S$46GcySP%ni#gt>2(gdhvnE@2XWRNh+DY?vYJgXRLPJ(S0?c zJ7ll&x_f2RMNJVwPA9Y4=Lnd9fA{4(HAY8f>zS%$bSkSI&QYhLbTn}hcHoC9y^uu{ zrqiEKdQ2Gt<#cgr@W}nS(W97%I`x21_4}Nn|9+a&dno(rt}%YuSkej5`>xqYP*t5M z!x9y;7cAGEVg%dVV4^I&IRgNrV2Pjg`y&}$RiU-(o<=k1@7s|-(UlFxkh&7I#sW7t zM3C?8UFCJFt7k$urT-|ib7bW55cuZC(oP4EZgrA_axyRlo>%If4R9qVC0$^)0e})p zGt^@0KwLKvg$)@Y@I%_h=U8wqq!9dul?+OnJ%M9~ou7HKb%x^u%r%CQ(ptDaCF$OYB zzY2|svn;c^u>$qICjSA7uz_HXG3Fc%Z%(3CGL8%oqqF^L>f$PJ9TZ$64Vrf(wkDXk zwEm36NoFA87z>hffji=F*Wy9Y>?IQvh2ZUyo=Z?&Ke8&P8iaE>6WW9bl{o0+Z{tfPW${M?w^9-~cb_2wXh8vCH*VZT% zd)=@$$biTBm}PT0+Vd!pmgz{#to{xn%#IoHPWxBekQCH18h2+~>oVFD6w_7`(GyGz zEV8Ma(X8}&N>WAxtqCHawnUL&ThcAu?#}1lfCzB8s?+*k1rlR19Op4!h`gCL@s}sn z^>ANSNVF#~t5i4o%yY9Zm+@Yxrty0SOOLjwsSeH)r*GSYtw%mFwrOgsj;;b-sYyB} z8?&kHq@EyK!Oz2v-|34mrTK2E1CNm+h*}H%G&Y>dqQt$Q^ROvIMp(UVA&e%4X%3wP z9_d<7q8-RL-Gmh>`zjz?H_v=t9l%>p2}ZMKT#-sqH~8KXX1|)5o-gRGWL-+@vb_m#yri|(&VuNAQ)7Pd-?dRJCI>j-qo za1WB7x7FbqgF3fDDoa(OBy?6<^SNjImtPT7lS|w`6Z}XHxZ+2T@ z$Bv2Y&k*lkX4864>4}Eue%U_rY_@f%h-TzS$vte^HIZ#eAEnNw zCrW{ylQLM2mNr;U)?|)J&bewy7{#JF4%dKrP8MLrews@6t$+qr9*Y#1uKTyq{cYcf zfoHSld-rzmt^wHJV?~4$I zUlkw>KRJ94=HGDsP{#IJ9%AIJ4m0MSRQX|**?*FFU1g`F3*DOt+eMtT#=;y{MbEqi z5Tu&V%BKgs`2x5S5s5J7z)}OEJUDXFSX|SkJZJ|i^RZdO zbQcJ;M^Du*fI8NFC0!G;Fz!JU?$%mA#g@99$eB7U@Luc-Thm-&#S-}kQx!q*KeZP22%2U{2_umDj*0M69M8cz8J zBr&-7hJ6o~p}~jC&aW6ej$)026JhKyk|`Hbke0Pzx|FBEj>L^@VO`4%us%gCC4;i9 z)5RfTK3K)EvsL>sHnwWShiYcMga_Ts{00ZINdpfJOcyUVR7ybzHOwe4A4EFfjn;sd zu~r6*z~O~4|EO@?a9QUJn~=HI4iI7FEYG2?ry#pMa|A`35-x_VUXaJvIEAtWTtN^I;-)L@k0(2)WyR_u{ zKw&!0GMODst7FO}{JVbt)ygZt+?f#3D7 z>w$Q7w5efO)Uwro@fU_cmCNpm6L|eu#Yub}{^x|V{O_VrlH8n+V@3x5f&W)fMgf1F zLmK~`3E|&N(%bS5mN|dpCi5)!zc`KoX(YFs5onQ<{{J5q5QJphN>%v1qE?|PK8_#N zK6iFSR%#yl1G0j=QnZ@1lE~n2P@M=SBi-09sZg^UNEF|yv>Qcm^x-z~OXjkZB(Fb@ zfXZA)T&f2Bs-NT5qlKf$w_kroqXlqz<-uF28OwJ^OPXRlZ4N(=mScv3O-{R|vF!rN z*H+)8H0o-;kEB$FVx-ltYCGKScE-#aA%sx4-ST1Or_t^8tO;M4@2)DF$CMokq z{@K5Z=9g*5SF=$_CBO42vQoF8RvO45OMHNCoZlanJ)zVCW&&FTHVk z^@Ne6S2g*nylm0x{r;$PXZ&SwBaNlw;YGs(O+f)3(*mc6oxNuPo}$ynS=hjPMepD0 z{S8UTp){m9R`bo4qO6XeiYnWN2W$dhIciPF$G(j1wa(P~m2)VMd;pEL&}xV#!589} zy+Gk9#3aiEDmB1IAx8~8M+xF)cYKLMuxX^m{7#1JOb+E?ndF`A-IT5w%FaMj@d1nx2+;+=~Q2{lv>8O zR8dCj0iQ2_+`1R3m+Lbr=iPSZwt~KTRJ(9{Zb1;(5h-?{qT2_`hZXAk^d^={mC|qW zZE!JZ0&Gks&UivWx01Z0>$K2zA{s)x^K;GlC;vozrtENs?@Jk{1YeY>dkWFh3K2w+2!|~f16Ow0eEu8*AE#W$dIve_iJ(QfH~!pICIB1vHl}|&S8OyaiO-1~{6i*j zI}p06WSHofHD&4zzYIbJ##3iSW5r*0k0Nik@bTfIxYt+SMg!Sl1JH#i_2oSRV^G*p zGvzZ@)95Ai*U_CbA$KRE`HETY?+sq>0kSXkEVgVxLVF5~zFfA)rRr_RM3$=efG{CW zvKW*dLMwqg+{F`T5EEAjs~P`XBigh>z5U@gWqmZ29eVm1*AMWam|Ws}YCJe>`{cgn=mme8_wbW88D z1&l&NQND5#$`&>Lk4B0>ni zwhXH*!SWu+``f*r>!V-3oScpvzu$i`rB5>!stdAC*1HG?z96jHy&(Zl8l(VMk!bBi zd-Pxqydag{sQ0$+qtASSO~L8pR5Q>2e3+(2_MK&IPH$%BY;KYF%j$jIoTgqC>sn+G z-*S)0p489geWCyNQCYe;>;McL06^leDD+R8_|JjP$;8>&!q)6R=d~7fEvKzkB;Q}m zr@!1EZ^8it0+*G~??Sa>uZt6Qq~F03;z!a+I0#HMzMsrInvUI%TsO~?%5|>3hJd2< ze0?aQn!HRhwbiCDJ&a~%l~XQg>TJ`RvaB3#W@a;0RWoRuOH!MHEKU1*zi$0}H|Vie zTI;Jhfl*bOD3(sFw_2YJ`Ro>Js7xM2*D8U2i)Jad-mPuVN?F{vK6zA5X|}#`(f@g7 zC`&z=6=n70+{&SBWU|Kz|RaV*3%Englhwrp( z_1KZ#ob0QD72KAUywQU`?4>Dn@iOdbb%b%NlX)h&SKGb>u`E(rVUf>o#2BPC(dDfm zyb38SQ|=2;o&(={kVOqguKMBf+(n^3POyYm=^kGb%`BJ(@JFV7WVRO_0;CTt2*#%<5Z=suej?&CPnS|{pTeaS0 zTt$G-=Ur9n)VYpc=%VtfBbnEK>j^H`)u3p$)uWjfmG)ulm*(aPAX5Q6Q(7^&mM|)1 zb5v_ybL_En;mt5|W=Y5F2(#>A_IU1MvdNt^RGC5%Us6157edh3T@K;tUL*5cR-ul1 zrO4_x<>Qgy(fU>Km9&!b-Ceclx^^4$L#dS0$v`39wm6RB$mod?fG&!jv|;Op4X_uH zt5Cc5tb>aMAp>b+OBdQWE~r|e8Bie@5~e!h2@ZPQ+xuIi>l)oeXMrxcTdhF)HdByo zEB{iG*GWwqJL82C8{+HYxFB@5W%GB|bChL4!=shSGp@c{g4#vTq+Q!}7*wQUcDN5~ zW3MXw^;-ANvjEQZ9t%~13^q$gwP4ZlPMS_Z=0J#O#IYdWW35l?w@?ZoT;Oj@wc3;b z1Tl!ms8HEn& zb@Wc_@1_*feWo;f*2w{rr;RFU^$$)(FFv_pp$~G`voBGAWIMirbdOyuGxrZDk|m)J zT`6+$@?mlBac(0!VYgg;@4g@IPjn8wyx-6E9yyCsua17GdyQ4@THapWJfHVpTSF^H zt*_2LNp`+kbX|{uC&*s*ZsVRqJ7ehP3CMqFqQHgc?aRf-cpYiBPz{BD!{h9=(BP*) zTH}dOh{+==MGN6*-8BsHwFzmDImp`tbLWc4+u+4OTwu50A{F4ti&o(4Z7c0Kl>y?$ zJ)dGc0Z|V&9g)(Il-ubZzVb!7=gAAsPre~SVqUc1Z=mI}|02uI{}@A$?kcwv*dK<> z4C24@FHnJqK=oh@t&DF3s1qDNle<9Xl($yaI%Y!3UytB0LZd<+BFnh3o1;b-s->hN zra{~P5L=J#II~6JA9Jg>x8T{a$@3xrDZ*2=Nf;JJDBhf>)?pvD=jZUxG!iGlE2+gN zIwK__lNJ`=D^L}8-zQ{BeuaC%9Bn9y4@VflJ_(Q_u8vypUnemYm$BFvPL)eaD{sUs zNDVrfF(qmU4%y#y1>U>IB~j!i3bv==o<4xQ$Mib~d;qXx5hXH7z-1yAw45|NP(UQY z2^;L-w;pB(udYWJ!fqd>81pQY(w-}2Tzu0$L^kCfv8%=HNDYtIJ?Y$b zwZ1BL;mx#%Kx;VSwzo7ag9*d3r;5)Ru`nK(2sS_B5f^9L$&qtIgFn!R0U}xB0qQ3$ z&k>fl74w1H|Fc{Xgss$ZwhP0Tbz^07GuX{V9mf5kIq+KEi9tSV*_NArdJ0@bX`%p; zK13#(H}1F~6V|Z#I5<+m(k9k(1Qn!c!1wi9T!o#L;sO5Pz^lGBB+jy(M(zaCdDuTi zjZr!ov3s>zB~cmJ@e>R>^jzk(1UVBoaEngMgZ|_+7Q!RjRms(-;i9I>8ml$6arDg7 zc~N}uTPt1VWwMygL^lX)SVcqYgEZnH(t+F+MaM0aOEp54dwF@_GRM{VOH zqCLBZ09L}hwNX|6;zk4Tt{9!yz}xK1bTI+Q4wNA&cZXiTSZ7u_we3#45Zyy{@*VT3 z8XI}PrMPaM`QUr;Cy1B-&m-9D^Uwdc3JU!{Nz>Wf#Kz=*X`%1?ZSOi@007%We`_rN z4g3$B@t-1ktvO?h&5qEEe#TAnysO^$gp8R0td)4g=87aN8HrP&W0}V2Mj4-syAyf5 zEEND`kst(&((@>f0y_@?yD5Y}8WP0f6Ast0NJpuVV1p5&Fy0%!Z5KL}aWIyVV!Q2~ zD1Qs#B%r?eIJG9(8@A*hLK2ht9khExzUCt*o*Ww9h{FEGi1s~G6Zfk#fXyTt`6|Gh zicMiDt^~)nwk86gG@*Solq19pcodn$V7#a$zQ|}kYrf@4v7$AVAn{!{5=q|6je!90 z`P=hhtP5ZFRZHm_7fPyFu{^^6Pwiq1En*BT{1g=7XrV}lTd?_3ScstO_K;lhtpW)N zkNG?4*J+*2j=E45G9eZEIF@7AyB!fbA_V-}Qzp;FX_P9}ilhzqS{=Dm>? zlLY`2(7J_bR7F$g(z=BjxjJyNkMo)B+7`A6wB6ZWdXq<2;ZMkyJwZ*0V~DO+V8ukMb|FHwmU2or9`~h0;!cvQLD}^9439|IY>KY>aM4! zh(AD}8}Vjonuh&~9TaOwkLmY102BlwiN(1%@b>_q@uRfD5_!mWdBP3KQ~5H{(We{A z1iwp{BXc1*FegiYHV_5|D4KJ7J)HhLK20p`$>#EMd%Q?CdpSr||D{M=vq>G~dg zeOP08K*y8SGCpY<@CN@?8wdGZnkk=WZmIO)Zg9g z8{P6r=?86cxAL~n&59g)fovF19sRAZ!vt4x3ytAspJg z{oXHV8!ES2v+*`2KCmXZVCW62I2qM4Cs8<5+z^6f#qEtVzG7@Q*t7iSr>-pQ6XBP6Q$3_<6xk$T)r7a^~V%6NV4U6Qh0SC;( z+EQe?+VIuSZG^{yN3S;*9R|j@25O+jL=E(vvB4KFL9**f`k_yOls({!Y&&$4q%3-RcgNHe$acJ$z-=|-#t|rELikp>xB6keJh;b_%HVpCUyx1|(wtm0@ zj`(qwZX_~vDDqPBi$&Q<)!)KHIiKNAezxWN3RJj1!lO+1q5KFX^b<=bS9%)exyWoY zQ$7eiI~k_DaA$$FPCIW)7tP8ng2faB@s2fdv)LmqnIX!dglpwSQ@X>hI(uZi=5IWscg}!e>YC1ft%ka~RY#SdD&@5GB$t5ND+j~boO$7l5q%?*dBD2jhdlAsLkykxM zK>2a&41T31^ZW|8?MEwYm3Cer7VCFl_at!qBtmUs!Kc=6(K|k#c%H5gdPQTHj(8iA z!)SjNPLmJ;L6YBiq!LSN(&@}hGA^72Hq>=OHufelR{S9jDlu9jPlc3js6|j>8+@Ja z4E+Ht@J)~NPN^_IdUzpBLk9&G5ZK^M|bO&ONf1O{v4H0ja+Dih<8YR*&fU! zcRfnF6=>B=OCHj;*bh9;WSo)CgR* zzr-OWT+ZWvHA5xxnKN3Z+Rwq#(p^() zC(MH^m0Fm6r>IF!9T_|ZRM#g%wnwBki%tZqP*e~VbUDP3`y>^{wy?ynH4H;41|D_t zd#4`bWT*2&>c5T3!8h+fKf@&xcHXd>pZ-@qB6!B%mEi>ds5}Dte@=UU{|#`lF|l?2 zPcHJ&a6+DFz4?e~{}DJSYdXT~PXxCf3vjaNEZ`Jq;`ZPDaxbJwv9TdZsZ}1GmovQ^ zHfDxr3$lQD+z$w4Ydt>b%dVl4ko!WvX=AFARB@D`n@FWOxLU_ft88p^RPX3zJ(>J@ zos(J!zb(ub4^3H5K>Hb3Ma#p1rYf+n{t=&oKb6Bdv%Du&p+rk0l9c9KbkvY-{XAXx z`Re<-IPzi;@FGX)r-DfJMl%XLo<*ko%KKcQu*3mCPAXD((V>ChMCJG8AOTWO@$*Y) z@Dm{+Ng`*8`3pM}wfkVC+_H)x3?@kY~uc2 zcM3wWc`(vc9EdUKo$^*TXNP|4#SzDxc8r+xlhDKOXWG4{&MOnRURiOW^hm)Ftx6}% zXaqk>tb-%|2d(s#L#!UBjdgCtz7OaM`l7FXMI&Bj8g*6J@OU`6fLOk_DceCbNb zM=ObxYR|CHP&l}eB=8`{poDeRyuND$JXBrFdyydCvUej%!HbxDJE3paz4*Q%G3eqG z3U{?Sq)utSqpQ4IWE?C*Sd%LTaJRDlD88Bi;h;Lq? zOA%q&MLNlSDMMet7YV8SVSPT*t;o0K}{I4Sq886c8O_sZ~>d{5Hy{@ z^rymrDL#A#(MR{eG`$%qp*ojK*&C6KdfB!iCMF0j#%X;Q^S00LU0mGsIlk?V^FRW0 z0%}$J7X0@!qR1C)hKB@P7zl%)>{o(*uxAESMgqIx!KqbkQuXb@Td8>&$RoEKl}R>$!nrk+Xd`P| zoOZX7zb!cck%nr1;wahtf zys%r)sIV1cr~w1Ifz|GA-r1FX|9*9TkgF)eb4K{R6}HWIzCM0IfpHKO{hv7h>0q~h~!=5xc`o2`T4`sUkJg|z?d zV@DO93=>MoaN=Q>Q@z!R4g!<|FLqLV8_jdfT_s$CfsZbJBF_Rd&EZgp`hyCu-W8zz z95Q{Y!WnM!2@TeD3+f9G*f}kFcVEEG#_+&nstp-E?nBZ8hOtzH57u{i=4vmH?^s2x z2LlqVKoLq}RNoSk#nNQ{r@uiRsmN|yU*`bV5vH1@oN8of(-hXZAn$jNfD^-bEn33) z%3%XtK!%98u0oJD2Af^{n~mnw#^clHkc`cD4cnWBmz!Qz=hxaM^H|~YD$}F=EjThR z5i6i#HA=7{n%uYqrvsv7@Z9OcVwvboK-x39!c^|;guEO`WtqgQ<5fTWsd)gZ`lTE& zcx+w+Jt)zbe_u;YPfJVBmXsT|M`t&pHnB{440W=mur66iLZ>n=?C%@dOJ?>b^thMa zE?b)Ib~P|1$)oH|qKsKC zxfq8x&6Kv(_2aoM>57pF(p_lT?FlD*tr(Zpa>P|>il=HszG|TyMTEyKT|=Gps@c!<5z4X;l) zL8iZ^&x9w;tp`v>rfe%LvzQp#gX$K7rO$OIOz}*5UwtiD^lzy1X289k;nUfj))MKi zSU^umldveJQ!xt~k0WGwGO{H)`5WXkQ+IP;Lg|!n?xOVkR;A@Jr^Pg$dm2Vx_#IBx zN?FeogbF40tj_9hrO|c$N%_aL!}4ov!=uyXDa5}L`h=0L<^fi-H67N2(k>BmI?9!1 z9`8E$K9bh#ZH8V6L$36N>NUpdkL;i>kaz^8m39{j^cZtlZkd zm@ZDq_i6VGH0wQ?F+MVDF*$vJl_`fv!nAkVqqdJ&fzw77Hlbm#A|81-^fGgNZmlL$ z{;a2Dpp^zvfH^Od*~UNkG|V-twO>RD!HB78Y#SblK6~n>CVU@Pp3g#>S_X_Rx7+VG1bDZ95wG4NNRj9>B@7CV94XP%g*5S>B`yz+qs{dRCL)sn7~(4( zl3g;e_7I!jB4*!^reg-+)q|Zw2gKR zfBX(lE%$HRvV{4uKs=ui<`8aPj_Vssf#?jh?A+w`pvQ6h`i2AU#c2b^6}K7qTZiiE zX^Khty~l0gEqXE}P<5OoH5!PBvcr#JvjAz{c^|%-k6G-(|DYZV_ikmcT&QV9iB%O= zK1X4;mNHqG4T>GQtJj@`w#V=s(8)vD@zlBo=4-CPspLM>8#TaDxr61vPu3DL&}bQ5 zdAZ)$LJ!vF{;S1Dabtg0PKCWUIwJCZ$JU#WKuw?jEg=ZA>ts6^xX0hCYPyXJ~@F5-RnA$Kce0n-M9|p;a)`bgH6fLsAd_VQAcHf zS|^~lAS@-+%?q#;$$!TylVV`E&D4eQVDw1>Qe#<`bnLHCIq0oO3?-r{Ls`y+wQobG zbC1K~NrQ9~XCR!;*b+a6oYHv?;Pq>Y6>Duf1$-m!T$-xnm-eC^y?Mn)$yoZRC_zhB zh%`Y<6=x(wDZ60=>}Q$D^nGnQx{xHoHUSPcOAe)1xBdbxeEK0IbykDX3}`B=VUZb% zifrodY!Is2QltP`Eu=XEPE2!X*u)dv=KS-z7OjpDQkyTrzPudW1yMdreBHC5+h(t} z<~Q=qm6uO4-Fv`U$vKF7q5u=1DNUL=376c2$e3xMDGHQ`%T<@;%ASDcekKfHj8uj1 zOI^x{2S6eRPKC@kC}XFFZ}<5UTInTKv}WwSepOg|As8_-m$1Es(Xtk2DE1ciwI-z^ zRgYloV>7j;CFmclUQJI;knR*HQ-sP)`4uSXDHRIzN-ToT*mZ3^DWagZTjWU*5O7HS zt;Bb)GEqYxN2(^q8Pw+K-_^b*3i-E6ZP8 zucROWotzvWxbiB6tgMX$Rf>NCj~;eu&~lAc26ofu@-%Xu+1+aBWz;ZLiK^}E2Ytw^ zkT4G__aO%>lvgW?=cMDe%r8>;ex*s2wO}{ZS6C3QwMW!Exkz6WDlAM-(UkN zKHNSNy5t_CAb$TX1#U$^j%KI41ASqVlBAhtgE~>WeQ0FagUF|VQo$*_lk+co@hiI; zpvC5I$5d@pRi!pjwACl*gwdZ#nm%xX@-rw4d2Av^$5adgm0ppCc5VQMt;Jc~4 zghf(>3*tmLDFyg9lZ7-p{m>IF({u5zlJ*u{?9j%8#A+tM@UVtHGnLGJ&e{R3=Wuw?KScvbvtcpyEH;@%Iy~s^a`+OqmTg^>fV;LN6c~qBRDexBG@u2FCfr zw0RcZT7Ll-X^IJr)nTdrc&OTa3@Xe*xCKG6Jj_)d0XC^~9 znE1hzLE3PZ^}8nntAWJQIvAr<^p%9NC;nb$wUA}DwYd-8dyZA9 z#)1zKnw)nap^&3MY(1*9_r}QC85_D(eoLGb%qeu7j`X9(5!7eQ!p)&mowsj%K;Bq3 z#WWb_fJ6!(0y$NE#<#lwB7fw8lt4a=ogP?nUzS*5J(z z__`OzP*%bskd#zxVT`&hMBNtFNHTpE1Z3aRpHST#wDS3MdTtX5v`^ip`(TN|IVMLf z!51q(B>EppiZTJ^ca&ciod&iE91=Xb?+IOL9l z^@A?wk(}N`MPqV3IasXwFoSZH+Xyw&1IAj0`l=^NreQ?kQ z0|sFK69vQ8(w+}%Z8emTl^XtKVNmGikT8xY z!m#-9kk(@L>3GRJ5%Go09Fkr@gB~!)UI`SpBaoeJcRtyH@P5Kkp zhJ~z>S!J8<9V8M{8Mb_R!2Zm@%mcj>m-}60nmN6x9F%~ob+$zev1l!T)f>I#gqqX4WVxz z@ELgCQ6-TA>o@`voeV@CyF1D5Z>=OjQ-^KOpv+v_yPhd(X@iIor$;vx`W*E)kz-Bl0o%J8(t10sYe}%$kgKCGnCZ%U zLRWHK5W)TdCA>6)|5oaxSZK(i?i(!YcdI@9?yfB>1=t&RC@LXyl3J5j>~E`=U}={T zY=6`_Tml~|QKQ?i8P_+`w4;j3u}VC6HpNCNa551(jTI>tepDBhElL;WWuu z4tzFH)bbIJTUBjoKtZvgeFCVvb9>rQ;5lqrm{Bw82q_tCFd@c&h&z2-`uwumoReCW zb#l>i>Dg%brKLG={T9n*lUdD>xpm=VKoDdIPQ2*7;2y;MhLh;}uo2#UY1s z3ssGxPFbIbBG>-f1_{g71iSuW{*+1NjM-JrN{OiN@T4!CkVeGZ=*5aTTR z{Aw2K?k^1InUR8>k&-2DBYHu0clR*1{eDZ)y~5IOGxy0OFZIC!f8DFOY46WUWVk3I z-3cq>)~vF*(@goRViKfQ+Y{`7f`H4l!zVt>;Od&V_?kw5$2WD0G>kTJ*WD`4*4PCQ*UeKnUlBQKA z8BclNlKJRj&49A-5!#tn*PeSvAtb5AG0O;rtNRrvR$4!=^;=UbYnoPm8);byr%k}j z$@)7L-#4NxTyYWKmuRT=1jK}3szqgcy7(qtT?eYXWmyZZrhnz?5z4z_`^6Hl#a{!k z3CJ|0VXfC?*@U}};n~rxKelz*H%I=EBboL&2L~JFuJiJaYY?v1vmTH(Wy=ck*jDEF zmeziFx|(O6%#QCK0u%v?0EM5zAAxNL%hsN}Z5xslDG_;M>7dw? zhGay=V2XFKam&8^etj!u=IS#Pm0Ea=i&+JEK3$?`qWA`pg)RnbK;WG7GMgM_f0MH9 z)O1PiEeePXR2nKBg@IDP@tHxwBBu{BWCScF^Lk~by4cAsLBo;J&n_FL5{4GgXQM@| zBc>}jCMhc85vOh26#o-)>aW_g0nx@<)A&g%HFg}UK(aPY5cinnc2`0~srvmSZF?B^ zc^B;afIgWp;@Y7<7R8o2ikBjNK_;sv4EvhO<}t)EuwgAdU^wmC@5nDo3aXsvSEy66 ztksPd^R=AYTed?#3K&ZyN=d}l#rA5d*6<;6<+~w6Yi?(lEIrRhucsK2;KqKML<5df zk83`|pAbaXtd`9_J)lKVDX4%NSt+j^QmBb9@{~*^MhV;0-@U1iH(eM0(xBx+=`^_f zbk(&bT5BQp@6Qhy00eXi9I#!`F|`qF4t=m&N;I~=V4BGV z;=&9&$KoZpa&*sWtYI=Mjl-Vb;~Ve*dNv;bUghlPttnMTQ%1UDkR?{lz4>~yO@k@; z=HOcrf{bOF(4b~~g^KC5!NqQ4_Sl9POIQy4P*FWaR41^J6Ko7xBjOF;U;%Hgo>u)% zHjvyu*4bR(pN@0>=Y>7~0id_9Z*}yo<%IMz3;Ok1gUkkOar}ijv={B?6ok7JT51cL~6bf*RZlP-{8!&*8d-8xIsj~!jZ?sgdd>AOxOZuoZe6U5pE~s+Y z6@=JhK`34Xw%QXY(`cgJiVj0Vur~YO7jK~csI_I&^acw@vuFebWHGe~bY05V*qnse z>SMY~-k#*Q@h$|&Yfd=IPm*+xBw3cYVCLMim##E<0QCqrt#g<8OL z7pyqLAO+tuY&zKx9QXyM%kvO>nhI?U<2@`zqyl_o#q2M6`)^&nzXcUv2DD>XCDc_q z*C7Rb2p@Ts*^!d`&nNb)lfhf&EB1!qLp8x49O+84f3=zl_3#wQ(c)K+6JsLlPvH=Q zSq1gIxaL>jn&IAJK9cW7Ul9gXF-@TBE5t7jZj1rgw?q`>H;NFW<)85FGCcfvqzPi$ zQG^PNKSl}mel%2L%1s{2&fl61A64UGgIU`8fjXZx$8uvyraFMX`pg(aM^#SN1Mp`R z=%J$D$^wAL=Hw-$qooMq2nb>+f0tu5kwXG8CFmf;@AK;i1Oh)nKnQgfiiXvXf~YP~ z5e8qiplpqTZexizu-WvGNTWpMkq$y!kb@@$u-MNVIPadYW$2XBoBS$v2ybEg!}!5i zBV)(G7v-oOW%Q1tR-KsYJE#)hI!lCF+#l8fwumlEva%$tV{wXXv%`pz#9u|YjmAuD z%EbMPK&)Uxc!-hoKE_~`P$n>kR{p|(p`x?rccG0twx)MoYD_`Ie%S=!kHPbh74aV@( zfxwkmx17!tm>?PA6G4*Nu?LvZunH0*bHYD_Mg)ZkLiuyELJE}8$hAgL=4`9<_)?<_ zfaXWuAX9#RWqK_xA&R4~V950>s@nnX9OZCi#?r{Oo_Bsl8tt17HVsjGVHuFwm7~hZ zSu{-$egcK5cO4G+T4wh`k4yJ0yW$+aL^uHx5*GzldWB-K&yxfx!xacc_!Z<8|0!6B zyvw72iznHf#$N+gwaKIUkWQ$E{NFXJlwLmka;#z~M^hN73&55%QWx(*Z(cY$cSY4g zzE1w5c`)gaWnvwk92QL@G=U{3SpBruiA^g67KMN>_S%{i$u-_pA~M;z8|#B3+iHLi z&b)f2&8`AnyA|zZG{3knmqV}N0XQ!Gv5CZ}N#qqnTYVSqMI^EG?Cf@k%;%JfekU_^ zE9=j;@GUOB1F)Db?&6a^fWCEr``nANYVR*lZv?%3g;uSmOU}8Lyf95AMVpJdG7QaO z5H}L&%;(!lP_^|x9c2sEhvHHa(B(-%sfPaC7vs-JYz;~zSTofyMr%QQoEcl%fI%51J3Z^ZaYiQUYO<=TY6S=I5Dn9gBg0s9mYW(egq>-u%BU%IHD|ho&j`+>YW)Gb4YVKMjU+vrQ;A-GK)F*ofb)BT zWjJ>kWnEfZKs(1ZML1SgvCeMJm=wxzWL;c~Fa}WAy+*yD5Kdm8qaEA&GSX*e)ZnBk zF|xa1_h$Jo?4iLcG`Er^5!IT2l6(*|r@%JF!YP;oiN!DwDej5Q0M- zu9?4gUE7cB-LeY8UV&}&x5=jH#`Zek3{#sKUt9;a-3GUL|2j?Qen46ixTFx#n3>#` z`oCy<%cwYmU_o>UZow_MOCY$*1h?Q2+}+(RxVr}n?(UM{7TjS7Zoy}89Ui%Rci-;a z_ha8X=k-i|XU>`KZ@RwHuCA`h%4}u(nsRj!%i6{pKR{6#x;Of%SKNN0*t~B6Jt_Cf zgtZ|%*j3k3*Hg3Cton@9o-_|lh?eNYxKGQoU+drf2yH!ciw{&&X$h<7T@^<}$vreF z8pb|3H49_mdm>4+n0f`BFMTs+v~oN-J_XarKCXd4?G+R=K{aHdr5?60&dOxyrZyw} zg_A|@6A%Vl7BG*W;I3}~kF9&Fb(?#qnr_P%%t=kE?L;DrlrPtJWC=8WUucE;pwx2` zXRRi_xc!ZSm*$6}n?~(6_=TnjIJRGE$^U`Yy@JkVYa~t)m zvi`h3{g{`&{^VBDnX0&yjZ+_v81V^YSN+UWZ4v-+bUW#T5gON0Rnx)KEDHE9B`HQU(eJEHl5$a19gC zT99K2w=vHX7-bba$fuJo>e=h7M`S#2zbqi*-A#IsEz2EkS~8bFCvhNo$`yyQ%{uCi znG#5O691(R0%4|1u-A=oWvBV(DK}|wr3qCk8Rkf+lM|3?32joGrVSmgggP zrbn-HFnjP|9q|;dcBg(#v>Zxi%r0*Oza!>bb75!zPS2>eS!!kCD05LW?dEQX>0s_E zwrGnoQ9|?`;gZ~Lk1Ki7TL;42_be>-OQBYH)fa)`me2&A$JFV=S2Wr#D1xRZt#*Ggof{L+RVi zaZ{1{gwVUJD^vUDil1y=O}9JWd76^+?*U6WFE zKt6JUSYjiY=U7*-?9@&c-HP~>mNer$LyFx`%j@>i?UBwIL>=~3l@5&@*{FQBZvl=k zOk3HWm>DGYpP#3&NWqhFa^Cu_ z^KhkFVPn!XE0z^v_7q>?s!Jg$buO&B5*ho0gWY_LM9k(aBgT!74!md?zDfzJIHrhNQ1Xcj}03WQ`an2*+ zb(B93iqm}DQxCY#Gu`+=&=HNW$i)qksGXzxj0<8l%FymGW_+KMgkOPRX-*S}_K@?e zru*1?gA|bYi5`ss>2cS5uPHP{J@8UB-`g9|gJHGHhM~Ac{UH{6S3YZ@-1!}AG-vP* z>$YJkjQmvZ-cPA?sey_1_V2oW?}>|??XcRU;^VDQt3bz%9;?w|p4Oxlp)7li&HLd!;~!%=%(4fo;C)m>kXc}HToVcKfLxQBC4j-eUV?RMki z)7#A05hN2?UZS`bc6bK`r{fQA8&dxfBv=?Bca|Al56sK;il)xxGdG`CYDwDv@~A?$ z&-hYPe}DRC$91J4C)aLJ(#j)h&-0fW^^%%4XFg<<{AHF<5n*YgTHx{TaHGu^*$CaP zF^ExuPEqr~=yifBIP5EV1?tZH*lqLHHGW(1Y;NeFxKin zwBn?EvnpYtN|B77FMRUL!;tQqon*za)ln00lULYkhg0D1FCztWzZ@hJ+l zZc#2I7-pJjR3mF0ylN^V+%!xg-8ucxZYqchu!ck#W# z<6mX$Xg1P$o_wnl49<#dAsf6Y7Ic%G2XMb}s;JC;= zP5~)s&oZa(NNXKEYybgW`>+^=9;4`!5*%75fg)Mtk$ada$8!S%<1b-4;FBfv!FH~8 z!(h>HVvpxsd{qn=pL6BK*f8X=iu?X4=>6jW?dikT=S2OUDq-?gvh9G|ySA(}V7Zv? zEnmP_2M5w@`E9Z@xodZdYSdUXmRg}UHtbikB34@Atc-h8imxp-cNLb45u|RbA5U7hR zjE%65;P3MKu6Z4EE@CAKoNwS>&kh&-j4luPz|PD-;gszA0Z|IE(E8jZsCgv^*N{8P z;S&d9V(1l>G0c|Z7^*T%(hZD&$@#i4HcI{Y^@f-V67nX6O<43w1~oELo78o7kLlRK z{Bpx*>yW=MhtE_`ZtLwbjvojrmQQz>eq{$fAx-v5!`w?Az;aPEJj@%}tUAMn}&~}?~ zT6N)BGfjxN6z@w*w1t6RX(ZdwNn&URB=08hl-&d~n>V+-Y?->GrWlocT$SHK6emMp zAE&v@vOHm>23PUTL8&-j0%oqO1M?@MTqA6W^Do2#xRNT?XzX_8!!3r2e@y(&?SGhb zN-rU6&)GR`MaiK)pCBSldP*#6;6v7TUK&=_`C>kzkV#s^<0I`P|DD&+a+gE*6DNGs zV(Z*_9|ugnxJ$KiOTC6+j^fW_el=g};xF3?1+UjqQxzG;OuWpAQps{cuUKv2@y%}T zZo8pI-Ol{+aa{%SQZ_KSd_!|+g-EVk_WsbcWTdeunx`CWUSJ{|u7p`-68ix)%iNF3 zndv>HA6OnR;`Acs2Y7H0^`}o_B^tCkXKNGgU(d#kxAbJ79+q{lMV-r{yqRQA;5#Wr z`HVEt4>BT3{@d~{kxi1g!k?t6Hf5O=Wz0D>OjNBYi%^7a+B&hqxHo7wc%_>q;Jeqq zn%*nLd{Lt7rz|W9cowdmQ9&&)9e2d6-gWpu^ZfOSF^;ws1Y@OeEf z)Lp^ithyG0vgdstohlIK{nh0a`aMp1zg8Q#g)P;yyVUNE@P!ce7X2|URal?;P#zl)`~)Om)j?cbm-_65VXrZG=K5c?jbL8@k@FVO20fwGGXrof>7=P|R#pVUb8D zMNeCw)BT=-XO>K5?a*e_JSKG(Tljl3wEwu_$A@2pUs*NTUAn?@6nI?vLYXTriM%7j z!JE*pK3ks`--+m-$-Z6UcqQ0)#4%s3vqZkwttO2B(*%CPXaWY!nJVH%Dc z4eporXqYco^=LtoFal{$w~;X#_G+hT3tPROR@{yaryC}w3bW+KPoAjZSiv!vdNxe$ zd>CQ{w5+iN$8S69jqekxc~tpoNP(z@lj7j~y|p6Z2tcFA2S_$8ktX)d)bsM0nxoB$ph8|PSf!$uBSE1pMxX0UQM&|vKZ3^KbLu5ndE1Z<`sga){aY(=uhok`?0HJAyUQYNs838 zT`QN*L;_Ph-p|62Tx^s({Zar1Kg3-tn&CyP7wcU-rqc%pf*)7q0**-6lG45(w1=b3 zaVWP2-#bzR1#Ep2T*NU5=ncgitPu z;-K&pgw86XWw8$o9HF>?xfRaNgh|rp?s*q_<#(KSBL=vX=zO6?IzwN>>$}v`Nc|>~ zfuW}=GQ0G*xyc8?Azl+gRbAij)FhPENkq3j4V!A>*ZMzG3bB2a5OeRl^NXmaO+NJ| z8+$wy#XkIi z!-;Flvtn-V6{9hohoN!2Uj~->$yUTUo1*AKDea~wie{|q8KGUK()gX4Tn?@{E%I`} zp4rHvm)Rt`g~JA)G+EAYJwaDZVH$z(MJqsO3L7*Obrt2Rct!#h8Zil?9f-mko0ZPMtGgZqTFNVC_M4NQC;f`Bb7iV z_HPaPK+Yp~8@i{XmPB1i<$Ao-6!nr&pK}*xhCvd_10;6oNPaNGlJ*2vmT6e#uEz#) z6C&4&h`SESs;BkY@RPq4ELZjU{jN~KFkJz`buArV!_nKBjsWF>Br`m02!U(t51$2Z z8UXFet7isGg?)3BkNVz&<6E7t+@o0BBm*9d8YJA!pE7l-et*n1p4QLlIIvKI78EFI zK#AF_ezlW8ENp5TpMX;1w>)~O%g-pBu2@N13=Caajo#+Ns*w%6SM4W;v^Ad?At4Q+ zr0Of8VgD{Cj)-`&)v~8p#)jSUmz8X5_EZJ z!D~Y<%MM3M1Xp#IE;xZ)JzKc1OoQ=B&42JGvT)Q)IEa=*Y|{72l#^QFqH9E-m8a$d#y0+{SG{3|(_;1TDy5wly) zC`t#n$%~6jq?s5E4pkQB*fDEzRL;R9b21U5IDOe=(cO1Lw5rc8OxRWnMg5=w3^97! z>4wN0Wvoy1%)(R*@^I$f)A=eeuZ-qEUcAQ_vQ*mSBHk7)c6a&w{I%(KVO?Q^I_nzV zJYxW-%kI?f&&2mrV^J~NThM5E5LGk3_(PvsN1BA43))@G-mdWRKHo&u&b>!onw4f# zL^`&i-j`nA%-;o_qw(KHgEuA`r5&8riC(Gc@3VQKJ~25VA*XT9;H|%XYc`Id`_Z4W*gE4bgk#X9`1wMq38;|!CW&=NobtJIIq9&EwH6L`PP zjKmccp=JS$Geg6#g zdcy0DcRe|eHseg>i`*dF)Sge4`TEOhYFXFQM&qFSauJa<**F{1I*yM$s+jv%BY`!- zu4rA9^IZuUYPrWOHr7Z_{+_BCw8EMB&SRe>2QQaFHMxGnBJD3s&0V?bt%&yVR8(wp zX7*$#5xuI}KW3NwIHs6=h44MtVl}kvFDi{uR!_!33#9(e*e97@1MBo1O02H=0aMj~ zmW)tLJ`%&scdY8>Xc&!IRgGt*A%e0!LH#b!jrP{|@5E0UPtPzURIgr?uaC&A7`KTE z_7-0qwgTvGq+YM&EcO*0w*4I_!{l7Dl`6t{FZjr*4Ei&1PzWG2BUYGI%)`<#+!xra zyjcj+O>&4WiW5Rk%Guu2(kSBTYb4{pda|^$Mn*pfk;M9+W${4eZ~LAmekZqj#V8E? z{FkHB=;LFK3`cCAry@K9N3uo@^UxvyB_*f9bozC?wo}VjV3u?e^QYZ zH`2)Yrl&YY)xp`|^&V_Epcy|ThD=K`XQ>Lhcku`aF8@1Ow>q2gxQOgyec%rrlW}0T zcXWaN&gA(e0awpn`_sErfptIM{)dx=KW@z^22lLaNr%IL*)O{D!6jaiAoC?Fy7aJl zj2N`H_y^2Q)pgUAbK3kb5P|iV5Vj;vWJvQSVg9~5z*MozH-u^1tF7HeS^)LnItzIr zT=esZXhlbZk{z0~>qWpPgOZyc;}(hRp!dO~-wOG1joSI5Y$^~R+7g^1a_QK(GrjE1X@Q(MzP@1wIr=mBd3cpSAsn9eq(e@eO#;U2)78Z) zWU**wIX$;z!6<3k`UiEcJR=vDUmXv~=R<9%$(zXMK|ghkRI?U@UuKy+LVwun2&BE7 z(K%)h74!9Nu_($kr_tP`i@+E>c=0zqs`|c&>Bcn1%XM!E5c(4(7mA!<5m}cc@V3Xq6kr!vhSq7np0tTytVU5!lUgB}y8uHw0KGpX=yqvF_L2d%H@grtD(1Fs z1VPxjpQ;EcsDIa5r!;AL%%yR;9%hmCNCiA_eXV7+m>Z|K`_nJw zV2s}z>@!1pHlU&R}mXW$3^Xjf3V;XST6~KU1}=-y9R|l0NJY$jkfsFC@xjf|7F$f?{QvmZ>Y5 znp`;Be&wxt|Mk1g6|zI?l`F*Z0fFjD87_>gL35eA6FbsI3@##NPY z*wuj^)trW8aHYi9D(@kAWHRE2*T(rxRc{`4Co)#E%1U~7hW2}eZjUp(+R;5d@{nOE z?f)K|@O^=h#4<>IMA;l!aOp^6pt$)aGK3kg(;)XO{4|2ltRnBd?9ly=X^*GuM^h2n zjAWPa@VFBy3!H}DUsek^(f08?d&CaWkZBfmxLB5E6_%TKp|fer#tePGv?9>K z&2+~mV9yzPhubCsPT!lwW>UlBT-hbY4w14sW6bGM07AaSCjacL1P=dM?*lE-JK#^h z&&{jViFUd*2xIlR~T?UpGx#f@6apQMny& zes*w9)OT6_@((I-FNdQVZ-$!ETa@14AF!OOZy&x%xAB^r+N+-f41YR1o46WqA=$Ci z{P;B1HikzwPiY!f2HS{BMWCt~kzaYCmKcBx?CR1sd_vT?od>HLJCb%pjgp2@T4A`= zLkMFF1w=3@X}vhGN=3J}DfU9;R4F^}MXC{IpLu{)0(=y-Q~Y;(S)?PMubB$QC-8zl z{5zp6{P_A`ic-Uo%bH%k6{NO70|2o9do2(LcY70am$zD5{|;Z*XpT9ov0?rs_zNU_ z=ku2m)GZZ>1Ba~Fjuc&}0Q{D29fQQ1n40?R9|5u(sWch?sl~&8bs#*2CjG0!*W4}9 zxFl-JmEOtU@|!pFQmEtMRQ}=6;slXZ$o&VEKFA;M0Z>QR%kvRkg4ge_T0z?Yw)S`z zqUqd0LL%?Hc$|qu52C2F857e#T5L*oJT$`wpB6xcTb{?!|?) z4o43RJE_JF(UE!mxO_;pI8>e-kA*>l#ign4QKN)4XD&ps@jKkfN@IORV*JG>h+c5Z zE`%p@QL~pMb^)H+{t1Nl`X-gJT9M%cjJWSjm%b2Ebq5`Jay><$vN+572dYt}p_9sf z64$-VKp6KpAewlVo%Md2yVeFs*E|V|V)MEc2gtNwonjF!Y#n%?AE=irc*3XJur&))D55SktV+zynm};k$3qnUCO``yCMAXCMYxu6M7;v(=`yqTMjxl3j$=n>%;bzqwlMr75d$4V& z#y&9QD{BIism5b@*p^g?t{7jtaq;9&y7ESr*j~gP5C9AqSGAl`qsQa_sNU`SZc|iXD6&no_egN}gtXqk@O7}XYfvM<&M0krkqit2hbDJB6|HVRh zG{GnNwccmgQd5cWUKlQx6>COCB&8M3EklX#{QTzjF~YOpHBd=mZN)QP$!opLyG(d2 zP)nq#Y21?UbiNz>ZvEsM6^3-*bv^yt`6ZE}lC2R#(N9X-5g0T!Wte=AVT6kj@Z9?% zla-|uMCKS|xamt^|C!$pRxu8#X>wsKU>`on22#A_~h)df%@*uQ(_;vVaQL z@~u<$4NsF&Pgl}~KDsuITM@SAk6Iqj-}zrarq=0&9CDN^GG#j7Z-^>}&?ONz?zNvh zJK=7;&k6r6!$H#^W3|j*^1Gw!^^DiEG&f0xWAWQf)G@gHB({n9ti3jRI2EUbTJ?MH zP*P%!8CZ?1D`%9P{^(2woN8v*Ym%PZNha2%m?!0sEEy}sTzDtJwaqm);iEZ6$Pq0O zr(GFsH?PpB5Jpm}DxuEUZb`Q0ms4++j_~v`iZ7;E*(CL>ce33>x>gZ>oSkFS>y*oD z;o+PQD;dqC*CE>95{OvKent~24vuuL{1D*=@}l9Bod`{(5mP~PRh0STo`_hdzaYV~ zH?S7s_-pt0%WS5MWYemI*#LFFwx5nf$(Zdy8FS3AY%bQn>(ta=DMNw}K?opURS_^;Ii5(HKxF;e{?7{YFR1akasA2uNb z0UM%9RT`a#gId2-s-SKbDwRKXi-^`2zKW41ij0)Cb5^cm*Wb#V8Bxdt03!EN6go5p zX>3kJC^o-S8wq%*2mL>bSkVoK353_b9+Kc-YBB%nREQ3(w_N!#IafD?{3%?W zZjB<$@P1g2*f0opGygJ(fj}D71|9*xW&_JEbideo*P_QQ$5L2n^PHlK|JY-k@HZtB zouS^1aV8ML_Rfr`tcLYrGY#0wBxcHvVItWz8K=Q)*&`QUB02;ebc*$?CLz> zpYvxO5|ea0my2uD7lC!51@H*Y!cEnVm>&=cOP_VSBw*%BiW7hTp@^2ThJ?bGIxW~z zPXz`9LLZl}HaA4i+WCBS)G@IwBW41{Zg^M@GJsRi$LoX33`=D*mn+?4(VKt_sfuj7 zmK!FpmML9(W|QQE0}Jp&S4E>b22C4 z0Bu4yoE{&WF=W9q1xC}>5U~v%d`SZ3-iOyuytKpx%1zpaGfMn~h{_>uXS1ZT?q!{% z4=eA_j$x)wZU!uRG!o4$__N)t+Dq>oj`mb_;$A;G>s{>i!;|c(Vb8vzn*~&lP4n8k zI{qIN+Ojt{vo`)Og-s+T8O0hR0D!VL!2j>Y^}ltrwl}skXa8j5WNrxne0vRiU3uLC zV9H6!N&#SCU;uyKUVzs%fcP8F!u)&xXM=@@{nrrS;9%hq5fBmo0TMDQG7=IB5+WiB zItmIZ+FL_Jevg5U_Ws}Je>eFz{NJdzHyRQm(!U=6@7ilG01F9_^==#%h6?Zw3kDVo z=5-K24gkQwzs>gFg#WX_yn}^db_8ru6+~la94d|=BwVqif`&e1 zYED%!-dh2E6nq-4ZCc1b)cymr|1-pb|36{&KM?!B@d5$RU}4^f2a5#&0$%P5qZt77 zfV|9d9Vz2rSv*ev`C*%PNPHB*3@{9ZJq$ft1wCLrB~m}`mjd@5_-D?x`RgtW#A7w< z<-6tE!X10D9RfxwrZ!~kcH^XU`ycz#h@jE?K%#6-FTW28B_3;yGT^Io%D#PEd}_k= z>_%Dr)`0pUO1O6cI>|j$ftIZId?SM&0%|PHA;7*zhZ19I8Z{dq<^+2o)Ray&*bMFW zJkOQ0@q~APfE?)5W^+O)&;}TRAHW1QXmG4L;{BrBnB2HF%HGMSyqz>GB}$4!O%d!d z)o#e~`xKITM$nvIb)oAc$VrkA-S}r!7g6<6cj$<<(p-QWqe`*t1nec&L^Ky{}>0Xhg{n1?FY4xcLeph{82 zz`AY{9&G?s9~37u_Q3TDpmW1jCS)6>i2j&*g2GVv?SBJC)UaV0q8~CfIUG5@vrg^J zDv|))|6jmB?a9H<*KsxFRs%8;Z_MP##lro4l;iwsrwi3LtaZQTFHaV&12efc4MhqD zs@ANUg=~X6lwzq>>K?Ibj|C7a^sBM2via&ErK`_m zBz?YOCb(tk9H;9D3%7?+DFob^1P*^-NiQqaAMiI0MA6e#LjIE?b<&|nwiS%@xO{n3 zce4D8e!0$FSn7D^PI=)I*}=h%B`fn~7rv*3P&%_LeMenI&sL%#sh{h1;F|6BVfb}E z<_Yc!Ytg|yHIQJmTfNSZ{Kij%W?NNO3dFa*YS^?}Yduy4W;as}3XS$BLmy1C0EHnCBgw(e(@t)M^X(0!f*ia>ag z6gXpj_EsN^4U6-^_7`y%HBdpXrvWkR_-yZjPo<_Dt)mCgJA4ChQ-9Jj zgPrqJH4oMUN&@>@ej&GIsNGlWNKw|>@6KPZ4D(C63MEW;$h-nBzQ1G)67`w!#k>1n zmYhsf2QY4*T3kH?S*6ylRXl-OYN3G3&n4x_CTvJ>C|+rbY>Enjta{LD8TbDpe&h*; zU>DvHZd=v_16T-d>{-F_2OMiK+Pj8715TH+(5C`6i|Kwk5hBCxTF7h=T*!m>)91jxP6L5iA-O9*UI|)uj@d6-`+o{>*t;F&ZrL)71lAr{}%C zyfu65WqiD48KE`5ncfn>W}9*Iyiy%s6K16FBz9NFM>gQ<4}zb+|o>jx05nE(SF=HY!L%ce14x{ttS%_!t5QPF3#I3=$@^!_{~1_kUJXy8H)?TN*w(0q%BfTGkk68%2Gsv z?&IE6T+K`2FACc_PmFki&#fDiczIc+Ym#UbyZi7-x!*?MR}&1p>q-K*5?%pdwO2rF zAW5K29P9Q)Y)cx%BBn-nUGa_=-&xwZj7zyWC}glI)uaH)$=ke-6k~rsAmbI#*S-lu zzZAf5zq}(n+2x-i*{Fd3Tb0kc)R?Bkf06pL?~d`Y?ezxx*kvrftU=*GA2+dNdGSNG ztgY=UKqo)l$-y;y*R_*tgUUrwGug%7rNpzyV+{)P`1D4KE9)1Y|IL1Ajs=2MFYcNC z{W{!>K7o9QC>cFOv4QkrtFB!`}yYJtA@@LOk&nKgzL&9=Ugd zZhzMK8je0Z=BT8LvuW#9LT`?2h3{I1 z%TUUr)(=w&g1QE}sPb78*cAhmR=ehZFyLVOwyyN^`!Lpswl~&!fJdfz4>VC<{U@R7+uS}KgJ+?0K)+x$*`B60~r&0io(YV-JfgLN422*g&+Jx zxSGgMtbR%vyN0LxTaE zQd>DV)HU}KPF?@QMaTfd?y%f!#<`0QAi20wo8`;KG~5?xxA!ytVsI*3p9LSA?4zm-u$u$V1JqlVihJk{yN7X4?I#O-#?9Z3 z?yO=3vFauw!CBwYke5@Cm)9-klLz+Uz5*;Sq5^mpxnHCQbeai3Lkk%hVryFM@$~7^ zpH2y!QPWMF+F^eHG?y&B>{6(9nB0%&lY^tb$J#9eIW-rnXl+;BMWm?*Em!X_)C=T_ z&FSe07)H&_# zM(Bf;f_RaUcb->zKFcHdVAcGP0L+*CSAg9G;k|h8tUO|bn{;b9gTeMW8b`L4j>g7b zgNP|RKRsMhF92hX^`2L0C#^0LXg-a5FT+%G7v3`OaSse2&P*-x_Z(u_t;f63bN#+h zHQ1@PYhPh%X^~%AL6|$B6)1i-v)3?;D3@Fq z@nS^Q!V<_&K3Acw#ZVZH@E?4S6O__h4)S9Jb%i9QJ3RbH~aZHTBNLPrY!kV=_XuJXt*i&%oW0&l;T?_D^!%4{rwpY2x?Pq|G*f8?m`fyJc{n8{b_SeEoGh~pb5aa+7CVdhqf2OCM`nd1a zzRPyRKO|_VQQ77`^Fs7e*t4~rPkJ9Q#3>0Lk(%!o{2@&wbFg@}bPlxu4y*HK5R#@k z-Y|=TgsKDkJYE4-4R(KpgBv_Mv?vmc^0jOgP^Xj|d zF>POKH>-T|NE6I|GfPY%GXJRbqYIl>=HEpXr1deyJqs-7450(ZYZuMNiIj)S#i zcI%z?Qj%ljEx!8;2n&#x+}jRy#Pbp{zvu9S?A!BpTG#$`^LOwsd$W%!v?GFkexZ}hGO2jd<3^qmUeGo4`6^Ux;G4c}c?#j) zM)q)#eOVU4dAr3fbPmcpALxjB1}hJdj^y%Z?O)EqNy=?!nf@QCb8{)qjl2;c~X6<-p|V2GV8s z(fvE7t%RSbz29?&p&zBmHBqBS8I9RfJ1l;*w3HC(`d;{+cisSVAVQkaeGquN zukY))NH%qcReIKK?biyPE}lFB`?Q5npU{rk{(g_os(NF;437$L$5K!N9V=s2nt|*J zp0XS-3TZnz10wgnVN=gD2@ZI37ct?K3j^EBRSitBAREU`T(xp;SC|r4d0tsv5HGdU zB|7Z%Ui#m%-tgrc`R(6(_%Z`8ZDwjne)wu#^QwdH_>&z5`2~yT?*4`tM@mo!f(+dE zXR-EsqMb9=oyneHRxTEKC5YbLQ5jvnGpsak-bI5ZoY{USR-!aD)i0b-FI$R9moZ&FtB#zjMONP}Gm$U#wx9 zVC6cJl4e=-((V~s6{b7R!5YSA3+((6aGlf}q2U5%)t;GN8WKXzKasj6M0zM$DL1UN zIenZ&eIhM1dmR0!27Uh?%)CMPQX~Z9>r#71V1U-v{N0h$XPk={2XWYYi;rK}Gr*9* z5Ba{z8!WiX8|G(hgsSgltI@iUg!tTYS**#p;M9vpO-+$x=$o;fZrfj9!0P=wH>283 z=|blD6+j;4t%>)$n@gp_^N2;~DO>s)8j1&pDf(7A`dPSAyyh>DX6qDfTXz_J)QFT6 zOe&Njy2Ef{Qdj&j{L}H9Pp?X-B8dz52V|mTE%)nhs+G)-uL1lDI78f0!q$~`#9Qhq zl(%)mf!X7kM~@#M+P6RxPczh4-KVw|)UXyaKi@pnp{Vva{Jb!dicQbcDm4 zmq8zl8*!qQ7#^p5%M}z{Nh}m@V>+$K?e$2N~k;Hqx50nb~pBKe&-#BCdDhl7(neED`g`Au} zlZU^p3Y_TU?1Z$Rykq1)wsiQz4lMcjgQ^^~EIE|;4Qs~==}*oKWZyjT#+PEvTZ5OD zXX@H@#Tl!|;xdUvVvm{DI~uxM;JU0(2S&5|UD=zFfFjBC;BYJ9dOd9)M!NGqYgGQ3 ztW+vGo@bsllsnZg3U_TOq5&7&y$^ATmmUQ+5j;i}Lqj;7KD8WOofS_l7v~72E zd3DscKVk^qM)O|(n3P+Lo;9q60*x4J%89Rg|03r;7i&CD%R=kX(s)w4)bYHTYo>ih zM)i0mfc{&9zi_wO%}4)w-gj;0vVK^%dIW~B)JA~Zi9fcqxBm>~r9!&h*N^ZP3!8FU0R`Gv)s>Ci_i&E0 zT@4spT8(%1eDpV6eL1PP?3hL{_s*jttX5}bxb--YFYc=AxMmmm;03F6uLiyn2M;I5 zk!5T@5x$vn({!!E&ymRI9zoMSYlYDd6|!R;vg=L9l<JAmM#r|KmmoO}PVAL$JJHdC~fnx1yOjJ!uZfmdnQ_;MM`~{l@xVLqvD2vps*2 z-~I+m-Vy8Z+F!?t#LvgkiUZqiFFks^w+wK8J7+Q5?pQNUIcPe%Tg=I=S=DVCia)#p z68O4!`z&1x!Yj9t7*;=OuhXq{E`MDfg{B3X*MZ(v>^-gIK~g`rat(<87WS{Nj*1yr zpG*Jw{;AT7kD6&kP?lu5Vt`K9dTcU~eG>q*N+5tv1Y)rWDQ&IWTuCp~Wcl^shDv%9 z8VwVr6el&nGX3#?j|7eEF`WkK%DmKy0K7a$bb#l(iv>fA4g9_zQ)y|#elGU)39DDV zN21^Inh!oqp8Q(!$%fNIsnS1RN&24r2Uv+%Tp*-KN2sN+c5b!y6jsJyoxRfDy`ucK$FB$#u;va%WB{I@)|;-3^kZb15TTl@GyUG% zTe7~t{w-UYnOsor4o%wUh5U`N+TYw9jc4z-HR4;0=KV89g}#>vbW^^q6GA#vJnBf< z@m=^}R?mU`!REI-C7LXN#Qj0=7I4qKGmYUD%o;c2C$P}%zs(xq8OPk(+E^%*VT&WA zR3Chv#2>d(m_yo)NlZorF&!4@8QhE#*o?dx&bqM=xYa!gp>**a-LL0OUXya-kOjbi ze#sN18(j(Qa5D{as#DFcK209s*WIc*YIJue)b}0moi@>@F>$7ndegNT9P2cn-Db;6 zH~UT4JL+~rJ~g}O_?geZHOl$)D;NR5f>PvPF7ypevugpA)?(`yeuGEg8#?LM%Sh>?Z zrt@Bu4nF0g9E)F$g9eoSYQ6GI11(G`);a>0#q&$+Zn7-X#o)sT_LK?A?>ki6iUfYs z@~t%`cRH;bBOOBn@4R4t${UhCE4>lv06GnPUt8ST3L&f8i7H4PV)_fxOD@FvBg>jW zT-V8o(gdc4qMCzQccd zKI!IKQ0?izy|6z!2mrO`GrDWwMTMkz+^4_PwM^IkEvM?d($H4icaUzcNdElLOO3Zp zc5E^$i3?-UZF~FhQl5V+_>$o#y*uhQ>K^lxSro4&r|ID%SJRio3YK7}uDe7888Hrl z1j|$yN`R5(Z$q$-BS8Q8^BXRn_xsEtS=T|fl^k`D5%dXrIxqfr!e=)sM+SNF5haFf z1yVhIj6)*dd1}4+Z+x0vKsV)n&Y|CLWS)cXv){b2&-YgldA+>blO4}!x0b8{mS1rm zk9zDdv+AGKcaLR-$7%(4G|y5Xn!5zyIFblG{2u==?n3(%B(;6cvWaI76gb17R#Ks40M zU~%2(j&R6Rdn+sa{o?Xz+7Y&2141OJw>`-qD#)^CT~)Rgc#pWZ?mzyGd1o-z7)aJm!5S)^;VWc?Aq> z(5tDp&lHf7%J%!!&JXO*&l{%odtc7=`iZ7=2AXE{Z) z^-a&n2+93odFg~Q8IG`YLx7RBh4EU1TrM>B`xS857{5bk$P{e{t3YFA{6-9NRoyw1 z0eAZfn^T8Txl%dKH@mVrOfD^5u7UyZH5d|aLf>LtW_>$vU}!jzehZc;DgG{PR2hv( zlTHB;NHLsqJXLxU7|wOt11eULFdn!dYR(l+QN`f zZM$kvs+u+BHL$Ueg)wIE97qAH)0Ohi{MCz2?EZnux9>3=1j3{+X9UPqtSrLi0J3}K zfZ^!@G`1q>3;e~%g#0)Qqco`L`%jRV=z`e0>)w-?=a&U2dxj`jDYiV%GT=fdRxjN; z!SZz+)aylVH}`dG7s2jZHoe7=WTp?LotKxW{#6O7k>I=-9tqI%D6PS2|H6Whm*Cz z*;DuF)7LBVQa84+!b2zUZCcvGS`C_6_x-gP*-jT0{X|M{RSLlOCudhLvr z11e&5%d<}0ZHFfJSgt$1O8ML76&81pe3pTqpAcE<4L>EZOfTZ16=)0L*1S?pY;A}B zLINRf{~fM6iF}|;X~_zH3#I#?16~CWCxj942+Ew5zuA0hwxuKcGhNKXe99UO zkWP(VF{ni^lC1K=t18sFhWL>NJqOQKN{s%c)IU&I$~=Sv%lTg@eXRdKP|greu8}`f zmI|}62T)asH@L~bm4{YPio|#SK+F6sFo38SGP%49KqMg#c5=%+jRJepU5D(Z49^d3 z)9FCA`@7GWzko99>v%D=e;%*jf2NCW^0>H?PmX(gegl_rWaXNrSfRX=FLbJiGITiM zeR7?;e&!CD`1N~?c)tda8|(OLrQO!8ZUqS@--87#%P(kc!s20gb19-YE(QTRNLp`% z(W>kHBmx2rTebA;)?3HU&}H-5c(PmB?HPU@?)%RuzO?MwR2=J)nC-~`N|V~X`)dlJ zN{rjcQVbw$)}**HOE}y~bM)oWReow6Cmya0!q3}BFT5T~uqs#4R-W1uUy6IHSnFR| z;MyP4bg*XzlS{MYR1nXU_TF}=N(nm*ap%*_X1r?L0g#+`@0J6=fL99##&#Wmts1+A zD!z;k8|PfqxCT|PX}|CFoHuV1Z#y;jb2-&LS^##v&i<6PuTl6LGv-_FO4lB7YD|9S zvBQ3ztELbT$(OI#J7C~hK0?SgjmOz@|2Xp~w6@*d+z8-NYq0b)jt=<6oRa61E@vfD zUzENCkfsPr0)X59KP~QxHf!X8_!50OzOX^HKU$$MrF`g*_+5{^Rr}LB@wBBB)eXwL z{kN9crebE3RerX18Fg}JhlA)Fpo{FgyufS35(f|DmVSIgEiy3A5#^ehjGCVeyDfy| zKK54p^d&X68pP5!pa-%~zVQY4>-o!^dppY!FqT*29vqDsHq6sKAI`u0EX@AOdakZ6 z(dVeIAa!l3{N$f<{rR`$+#tIBK%%a2YZ?bkc zU6CZvDCx7nS8uAVko4?&7$jhrOmD4et-ClMPQ~+6Tr;O6>DCI~K7mh1rte@rhV&~{ zzpG)dD~W!u`p5V&A8qrKq!fW&{w+1vnT*=)Tq|=(mK+01c~?2mZr2d@=zHZ!>Lfv` z9YvIcw0p!Wnp#e5O*x0&6E=+J3v(YdT1dbm;tua__q=`|9EeGmKuQrS+bxn!!dm(6 zM3A3Z?y)@kB;;+RcaK{{q}b;Vbo@W>CpYNnv)JP7vIqt++kYUrWv|IO2&aiz%UDXr z)b8fy^a`>N)yRQb_;sEgRR?8gnvYT4B^RR#4XT>Y=W;xq()6eRys47slXma^;lxUs zkgS0yX4IAZ5>Pp^BghiOs)L;742F>Jf0J9G{-u>!1Gu!YApuGjcJg(!`{8^OyTYX` z@!32uk(rQ{@n>Mh)#WN}_3i8SfqwC;S}S*7C+^0Oz%4V$)FJH;D%mAuWT61)EaIa-3k9abuc;xfyT9E^zJB4v5e5%2PVtJ4c0NCCYX7}?+iK1MFDoGia zdyTLf7+%Ym9uf(#))_V{d8rD$uH+NBI8YfaQu?hE%Qz*z5fWaphm-_XRU|@hT$73z zwAh9&RCYgGdBRajqz5&eIxGYW>U?T$z8A zJn8F?!W(~FDEbGYOJ2&4FUib^H8Ci3b0_F`ldoKa9gLG{wD6_`?@_1WI@1HnM-`(I zpI;N$u#P7q*BEI!d1!Xx`#cwTd}5BWiAa&1@qeI)v*Tnc1u$6#7V6zKtR`2kCUZ|u zMKB9cp4||A;HDQ9T4JL=R!2*oW7pZwvJImS{N;SPbM$F6Se|+8ufY;8!N^`5{wd@= ztl~$$S3Z%w&D^S_;5Ds6+<>9;n+}lB(A`wd5$Ck0_xEE6pZ$c0oY$a7`9S*IP<{ZQ zx!n_dsk+L&LE9g-w~|u?od&hwd75oA`nY(M_Sj~nw9XCPRoEx5D!PHr($eO|wN*}? z^QmoXI9$q*={%jnOH)9#v8z&;MmDwrXjY3&uRR$>15s-kT}dPQ_4iXf{ww#d2Plzl z84$!PFRM|`LH*R+2YFj#r%YR1Hp{wey4PD=yC@QBIc-Lk6Kj5u zwhWd4>n0Y9EfllIsD;jYZ=_Cm`W=_&o_!7RiOKzQ5J?II{6Ya(Morm_WF8l93(}*( zJH+=G>45#5YV?zua6P-O#@jL-DmH(q-_aX*p{qKG57i4Ea8_Pb^m1w26($Y6RoFV& z_=NxT55(c{e5?O%d)Jm;fu$1b%G4-CJKq}2jvT<1_s2k-z%f?o@6}=X*zCg1-YnUH znKr#?d87OD-1ebrq4ZSz!GIKd%?5aI?^oc8i1NaK{S{HA2p zqsfJjb4)4Qs>%MW78d&0+Be0)IY&0*m>WkFkZLxbj1cwpK!ds8^or}d6%sV=%y(C3 zJfnU6Y)SX!JL7Kp$Nl=mOnU1kWw2ibtjK)Z-NgqY#H&fTH2&M}^x|bgU4iL&1z-AV zOw5t@_@2SQA%qvz=!SZQi8dd$m?Xv;59HL%a-emFz9*Q?1W*e^CO+Pv`R#5j5{H;R zkZYS$K3MziL9#C-=2+DJ<>!vK+X{*n6qD9;(G#IK#Ed~Exe326!*NdaR#W|rP``6z z@!L(N(Gwf7lRYJR3Wc7*B_YA1Dm(hzn>T}Zmm${z;LA#(`9l@O;s)c#hDKL0*L&bz z*A9Mf$;yOEYw@+1SjS6OYdCVL*ypjA!;_5b(V$E&4fc1Jejgt^$8zQgZH)GJ$V}*eeDVlCiWF7M{^bXGjarBR zS3N?3$+UX-ZJTPTrTMGY{2{9;bs1^dwXS-df*+$FPginDnWF0&H{b^bWV(exUu*QV zsWtA8u8nMe(RZL?nu)1- z?tNAjtFuya=RwUgeOM)-d{d^v_+{kgt9roAQZWHG(R&ces->d*9V>s~l`JZrwNwf? z6KNTu_-IFudCjla44o9J6uB?DUmNHO=S8vFiTiy^lYUSCb=dGn#>SI{Ja)E{Poy65 z2oB^6n+#iCkFH}VY&n>D7iN825E~KV?(<4EC=P@wUqmymo$I;={>w2 z+aq25p6gkT@O%c`BY70jbC`8IjYYE6@zAiX%>2-$7zx)s-0|@p2!Ji&qSaXzHT)k8 zo)kYc98!N$DqIZrxErr5fvnl)LWg3D)sa0yqw854)VthB!Vtl7KH@5RArN!A;y3GIn=hz?$*ie5M zLg+_;$ipzh!Q*XSapS5N+He>54-csXlUQ$E=M>DMdejx|XM^;!FPOren$y4ik=Uz4nruXoCwM|wzSX9xV&c_l zD=TaM$6w=hu7+G13$A3ronpk##-4e*Kl6W0PKtZ}EY2*6Mic|2i~xAty|UbY4LQ!o zJ0Oo^+*YMWJ1=hdipvjIP#4D~b*mrL6_-Z#UKEFE+~NsdwwP_I$num<;wi z@PE@G5yqhbQy;wb@*IDVop-bYop%E-Yy%(!Nuse-Y@NNYFK>QkT4m)}Vo?=zSn+X! zkloiWzk0myU(xGD0B*W#YQU?G-G==65nn)3KN$Odo*h%C1Sd?>>G;ih68};t$xpkfAPo8f0s1pKaG6Eya_*@RL7WHRonu+;Fk?YrW|0Vl^*n%qP3LGdzDD-RfLALGFi)I5JuE~)S=i>6q{uOgIf!X;75!w-5%5NiRd|7_w z_pa>~i%abMfeFl!nSfh7l!rv1@Y*(}4QOOCvFmWz1YeOF+8v!VwHnv&-GFEkN?6jS z{PrKq4==n_$e&)Q^+8su^EX}fn$g}FlL;3krC2@gJGOE+YW234VKi zweB;4c1UCZWe0no=1)_o&c`%N@y=V0V9^h2t9QbE^0E5$L$N}8%o`Qte8Oj9INb2` z$N2;Cy%+!l{bhJ04ltKuxLr<>oxzJ+0nJur83w`dXYXH4y-3VdeeohR%kHRI7yOC; zG!8mAdIk_nl;Vhoa2ORy8lUNXHT~4TrlN@=R6Qj@wDW|rKb?H0aQs3fy`B5>K=X+0 zcIy21Q8LvTR;tG_q;q@ezg;12Da)Y3z3MZ`_BHjeed~W98uINe7&TJxm95C&8a&we zJ}!bhrLBB>*|Qn1+{oKlL@{zAU)V{(Ylwo5{3A1HUm7q9mq*HvpW-**eW zC9=qXc0-Dh#PIVm_tGAf9SDE&_+?!bMqk>`)$#S>T~jq?nzrq{y%{zMT@s0^Q*Tw6 zWoRBBAEOsw{>e|F z$Ac6|XMI_T6?`>MgL0UUvg)gsD09KTf_lmOWJ+{*vgmv`R*~HKd4oX$*1`C#^P`xU z(w|*-@=5VIc;cu<#j&I|6+=5;u^f~gi3N~kXajOklkVUqS13YvMBz5|_2LRzgP#Cv$&@qK zAZ^KHcfG)3ckG4SslkE=i5<2m(zc&a;}KfCgD}k%t`M8DaJ5SPBh#qS{rB;bSdtn) zB2LaeIg~vVIca`VRu0xPz7vUWT3^=PeYgOoo#sqEiT4}gYb6f0B*-f8AosxMx z-{__6Bk6iQR^m7qzeg+DGL#qQF&FEmgse1P$IKuH7uT8X%i|QR{*Kg73TBvZ`eCht zmw$ebA+j7x|G(uG7yv5c<~f9j9v2MpTw~@5>uojl*t831cKKI$G=0!jJ8jKx2g3@d zyhwdiV^=og_4#-*JJIg$(^xg`UHw<5H`grh#M8?pl7DE8Q;G~>%R}%6tX~#4E50M< zi8LNZkI(p2+v*f`qcZ&50H4T$p;Tx2QS!oR69XeDkeHfFG-x_UWMowr8}V0$Jbr3K z?c}5`_A9g{3v_LK2ekvl(QEhc;D)FoAiIrK6{y(-=Wf^xwl1(+JO z@Hd;6#CgEnZF0aK_3gkZqP(DXD1Ug@ZOo$TYNKF`f&;=cUyy#`7&9J_r84GXj-?gL z2v;?KHd>(fx4=^Vk9qLu`36#{X}II?*K@DxKfL;>?#ti3VxD=`LPuv|&Oh1#mtQ+s z){zJhlt)d{dlB6__-R*@mS5Lg-6b8Omhpc~;%yE4r2YpQk5I71ijDy<>qeyDUB4^?&j=a7RIkY7_d@ zqvK72L*NHi$eWZzYw#|#9MxEfr9zt$7Z12w1PeYt9xQ(SlxLltCEZR9)&2W)ecRSg ziQ)kd6RRz|>)nzqBkRlk^XiQSFJercm&gOZ*w4o0F$weD$~fZPc@nc+TlP&&h>hz% z5H0EU62q;4hb?=j(H=jnI)fyWRaBDLo?m|-sPaHZ+HYMvxqbfuqMJ(qwkcucm zh+pko-5ZzEu2m8cyhDiq8LR2e3KSzRQYn8@D!`uNDh7AfYO0gC;X!Yt?v?lzx!y2f zehX3&#;VaR`N4ImZ_3-Vi{@5mxYfFiiccHmPun3RyWn=~F`2nQ7Axi=gi7|SCfWm( z0R?d5r!L^%u$}$y0kI|rhueG-qaH)U7YY*QqQa)!^2KZx)l470R&%IDJV;|bc)Sv_ z4Kn~@BTGZuu}TDZ%bLg!)EK_+3VD5eA4rE)u3ZJX}W$jb7`+QXy4oGxm*#| zjvhX5(iDehba|>Isjc7Kqfh}cKM2dZq7L1yQ@Dwc-5BXvTQ!F!4~mQYichkZYJZ6D z6AqwulFd)k)=6<=E%b-$ir4M|43hCUn5Yy+cwRA}$qvtEQxIo$gW6Ol>ko;%PG-&3 zMy#0(c%-;eqPMI+ut!*z2E%k^Hiz2|AELO;>*SE zc>5NswlCi{{bFn2wc9CG5s)Y4A7qggM7DXnh4GY@M8*u_>Bs}7DgmQX!1xv%sM3#x zw`)ox2eE3vUJATLmOF5&U(yY`A%v|9w0plxoASV~fFJ1iw-5WZs4mb}lh!gGiavFp z@7k1VA${gvBGbsvkN(u_zZf&XyOAkpfDH*SOGI%Gz%=H9i(FpBG=GxBkRS?EGp^^w zy_i(qh3GJCo-5ek+O{<(8l)Koe+Fsgg-_;?16~an7^85(rknJ#tVpcsrFptrRjo%M zguP#`#~dCLP-i_lDOjoZMoZflcSDmpAe#_L41c+ZqS{na#a8^(Wada;jrYEiIQ?Cx zy3?tF^}^(W2Gz($=0)~qfzc)h;Spb!`#Jhz9RH3;qy^Eczq8~IZ{$U-=FqjgnWCob zS+bRCbQrLmJu=*7tvw1(&z?b>Mg*wwelfgY@S_b>n_itgllnyL$CncJ&)`ql35q*7Qb7N!Ir+G|tO20GQ2Z0#!EDw_tOFiL7 zTv$najhr_d+PdX#IEgo~kn?yc%HPOdv5!EzAs4~A<599m(>(sM6j5mM68%OG;kNvk zKY2+KLu*|m(OQDD`@nj+}xeG1o1cZpN|r2Ab=ZES)_)`Oi_`M4RPAk`ag}V;kp)ne4Z^ zEW)a8XkNjS2y8VaHHTDdb%{w-Ny=H4oH3zBOdRhhMXuJ7vCY8I#zORjXX8z>Z@x$t zS!fcKz)#GKF_9nEW}O|KU3z5@BRKD~@Wm=v@{ZoU0cGo`PLYA`J0OOu zGDA4}alv;t^e|H>qEh>UW-)%AU^QN6Qm7T=pzc#pbdGqoa4+pc8nZ3AvZweKCB1q{1jA&p>>fn*g6y`BNIeru|4q2AA>vDvL7zLiUp@`?yjF ziG^YjvvVKt7B>^BR58)((O`crJ;N zLJn>3$=nQce-8s##XpegcuRm+#u{g<>*!Fvk!kW;jlbdiqY7Lx?jbvwTH^u$#mzj( z?y2CC92Th<#IrkN3SYXu6|V-gO}nc-`fJ+B-Sghl3ubaBP2DfQ=!#e0{rq>7_d%GJ z1LD@-o<|2}v#W~JXXG#FnX(;h0xjK5iR-T#1#uXSrWnx@xxaULDdIdCiY0DcF<-i# zB@#bs`GQf4^IEVtexFRM1RRDyP>wJm=4Q#^>x=Rmu#$fhdrX=hSxHQ)W!wx2;a>S; zpFkn0`P6t1&W~{L7SAH);B)R1dlz_3oB4!?-A>{eEZ#Tz!c|uVP3K3Xm2XGTe4yfg z2j2u%#TMR5T}81qJ?c7 zKG~)pzu&I<@YUf}ycK*?(4R4@!!erkg)=bxlOm2UzX1qfz-ES`Q4YAt&t}BvrEEr` zyPkY3ao2J9^^;`IJ4t5I!j}3!JN+nMnuMzeg41x{@CbO)(hC9onzhe*!WsTS;?}Fd zb^Yt={uJvL+A3pT&;I-DzF8KvP$AMc|-lsEkxv&V3v+%hcdePMFlwEsUj&8O&Q_1JzAaNRP z3vq@YiIC~_i2t3Vn;9Z)r4pE-`XhUPs=q)5sh2ESM1J?yA|+t(#XTXD{-3a2o8WEZ zw)W5HCkqBl;HIYvZ=AHKdjH$@_sdyS3h&_8QhZ1V#0ydkw2`B!DM3mSnlFEa;65lvwp$M z5W}o$>|5lLw*TFl8B|~UHx_ZXQQ+0J+W)dsxj9>d(_;dkZ`=Q_5N$jBnWeTor(@FgGfXc$1^db*te_{B^g&NpYVCof>a-3PWZezF8)1iWBzbNB3o zCl0PC`|&=w&J(Rn$|w3RTcac9AOj@rSJ4u4VL!EgHlaTx;5*7hUo(2@$1Q}#pxZSS zM>PeA&8FigwUZURFpHX`!^1Vx^em`dPy3efYnm>egKb!z=Q{n6@n-X4@(Pc1=we$?I0Y?IGRJBbA%zTOAv%ycVqgc|Iqo?81g2J6{g`=9l|-h8NHr)-`{}kAs3f-4{Ib zd42VH=Su1a)#R;;v;J7@^u*#2QA(V!R#vs>bDT|SCgl<3vAk-2T#H+_KcFDfnkor#YkT7*nhS0ghV1>86 zcBNr}DRzP1UWPW(qO(zbhc=VPS$PSF@srDqy9cz(rys@r;)6$fsqAyysFvWMCm=K;2+i3OkDbS|Bs zj4G4=Y%L|hQP#fNRPcwTlfqr4B;k|mH;KXf4JILNcTY&kD%Ew^xi zlkLPvnGVQca+c@qiHQx`(mgoANTYu>%`qvJ-8B__58&;{`h;L!bSp`7k+}9L*Ua(l zo6Ai;dR4VSpY}B!l5Ro!za`zka~%A>Q~8GU82*E6pAn0MlPgSj_Mkr4n994=a~WO~#ULv#B4t_}PI(LQ za%9@brIZ7}1`*U2&Hdn*$Y--qKKwxO8C6Mn`MV)PaSZ`0@9;L?iLR6#V z)zJ0Em5yId}b?DFc=jrV)nhsXFGd zEd%k7YvEHWcK>yBd3NbOV6cZ(t`NnJO9Q%2>^)o*x+_bc#(Cs_IUONARBRh42yYzB z6TeW_^blSbaYGcZ1pkj=!=3o{ALu6JRsYRbr!?0uvqR*?gPJ&gyL_u)WLDAmPLZID z$pQA@R6pAkkZrOdMK(%|rxhf`+V*ZIp5D%Q?vqgOEC|i4)u2Aip0b{*KCov%q@^K?zCfq~&?r2>yGb^5yp;fbtI($<1np81 z)uA*Mso1$zfLh#%R~4oObU!-z5aPHT!SA2v5~c5iAZ?LDq;dxTEV4xYUG-}?d( z+630`Ok&L^WTB=a3F8OaB$lFck%;UI3VksxotW8=>hBV$0^>@kw(^33GmF7n`=irf zs&>G$)9lYMnv0V&If4h1PkZ{RY`Buk=qWS_#d7iIEN3m$Tkqt1s*VN4z<3GC?J`as ziWgZBX~slZbv?>}wY>U~F~kT7bSG9CUh>jV;xD`zWRx-^<~n{Ged)=1hDnj5 zh5xAM7|UcL<(iuUg9eXhRAO~EZEr2hB=*elCA%jZcD^y6JfAmK%l;~FqK(o35B~4w zd-6BLT|lgXQAcGhTU+=YNf!A09jHd-eVh|G&R{E8{16!7u6a+z0x(I$7{t4UEkL<9)a)P27Ui z#3{k;KnY!32VRJ(sK3KFrQe^g#guiDc~76y)Ni-lze}qrOIHxt+MFe{^in_VY6Sya zLx3&M36R52j;e_`X5!0;RIBQ6F>+s4nM>QIuit3!yujJc=y6an<M-XIMXuJ^uHF#61nsfp4rF?T^wrM1NdrSy> z7TZD&u5x@Ie`6zM8FNF53ue{sS(-dUNy+mT zI_imL=@x9&$BC#r6pij&{P^TBqnaGGW2v6_y2=J(itFeu6iDjCmp{32H;L>`e7v=QLLna%q{l#_k*Cb_n}3Hv z#gHBqW-MkgFc?oZlA!+XQ`3%)s5-o|L350yk;wMPn5-fAVp*AOP%U=$eZZJDun*uX z3{z5Ms(3tyR=ZCffWpm}uyMJT^Kj;Z#8@^-N zrFsqmxDra3bKYlE3|B_ZJE_>RfDNCunVQCo3S*pC5UGopiC6+q!4v9Aq8(Q^EDU(t zY%=^NMQ(1J>!b*nVpGUi$eheU;luhg@#poZ4v`F!JaK<{n;{0pi7;L=6xS}tuYE4w zlC!mTN&CgdEjrt2F(OLwE(j!-2~x&v#1d97)8ui}V1mzB9ZSJX?|;tXzRrQ{J!Aed zt2rM^?)$D3n2yM_0R@k*jae^r!zHC%>uep^#e^q^UIkzCGwOTPypCE*2 zyu!H^i)-P!s7Isq#(-22`WD&u7P@P5VMBy8OwI13sTvilm)ZPrxR=y=Q%depB+*KX zuXiS~mLGa-vdBQ~LZ-lDzvQ@>4^Fz&7#8{Y{TB9XzU9iq==}TXbzq)FxpP}Bz}GFe zhpT%zyH}YK;U)>EolauHPdz&mw{p=&fgMY@$4EIq_!(2OrK_&OGlVE`D0B`xK;O;` zUSqef6mQNF=sc`rb&gAy z(78~Yd0mv69z=kcE+qQddnXweGe60F$-(0f?!tZXUwNwX5UK!|?@3TYuzn}))V`J5)fg;hI?v8O5$~sTI zha}C*ga5dX1BK4j=K?J2YM--4NMQ~985pDJCdJ3X*lU+JGh#FtivLe3J5bJk#TNSz z_$QRp8iw;XSadx%lOm^CLDy4}0GZ!dHG>?_lF`I6{vYz;TrB~$ z@-PO_#DPnGM=5%ONof515-J(uyzxDTYz`@U3Ov+J@wI)TxKyJqar=TY;NnRrg$DVP z<7K%Mt9Q3hA@ygE3q!7stcwmzt}C|i<&FFwGuAUL$=3bcx_6|zY7#>kN?AukTDxhZ z^P?m1Nl9mFnSl}X%5@S?cbFO-nOnhN+Q9cJxV?)@RB)vO1DNmJWSQ8$DnD49e#pc)$W1$tpI}-VI z_1I7Ug;G7OOMcu=^D8GwPZ{KkneiYB+A2c)DNCK=D6b?%r|}o z+gtY!#OdxZ-DYybXaL^1OfQ_D@?V~b!meX3dp1hDdJFGy)2vUXG~cP9-4Y@>hq3Qh z=qCy=0H!6EY;G55HV5|hCLxO#fAandv`JUP z!S@5Y$<*R_d-KbT3UFkG^ZTMVAM>L$u!THGr#!l$66S@zd9~jvUCDn!p&%aUa5qiJ z5lgnKpK`k^*|)_@$Jxx(s4ym?)a3M8@J_M++Ft)Aj}pylO3J>TUaysr?Ge0Uc6Xx) zy#^+P5?L_h-fZ@Y{u=>Fqs0|&^qXH1cd1oR^h`BOMj|K&#&^&p=Ac&gc?#4*;uuzR zEUeuz&kD}fTGP{0>z3p)V=wTor=%IQA}yfO`WCl~0eHp+qW^^tF-&W;&d66o%5;!A zZg$f<*K~F|Gy8UTA>FsW1+T<3Q2b~Usu5NP%SZO0@K1{2%{8~4x}=?__+_yUyDh0b zQ~nr#@RK*Z&N~jJ8M!Bya4(W^@pqtWn3<#U5nEyIlpYl@D z=zJTKmvjW7+Q&GKV4SMI^d!%yBfdaw8>e?Y{5T^A zPd{I-CD;{6304)!AK`)ark-;GEaf^v!Gn=Jk|lYdp2!~A{FbUxhkr?>#K|T<-{wP? z>ZwK$vb=Qy^K0dAOsuh2-an8>5U$`%iuz@ilxnl-+lx)yh5y_o!{i3k!Byk#NHkFX zcdLSw`RURxG)DBt6IZSr8=BGgzhjXpWL7kExL+5Z}Py!u1Seqo<( zx{)fhui3EDV!4m$c0A*itaqRs{8d~QnkZD6|CJa-*uo2!F2OG$1_Q^O?iJRxg_GAj zTPg|3`qY}WDfS}^KCmaKMpFO-m75?C__cie`eGmuC-V0G8&xQ{)hb!Yq25fB{pq&4 zyHhjdiP*aT1}QMvzC3f9A*5M%CeGvT8?+qBCM}ADdskjZua{~kGm#$H^`aCF?ZRF6 zFBH10!!3NB!jW#N5#k2O)CkR*zm<5&g5v2-f76x=qrYT7F1xp}4ljO#TYt;&h=MV; z^!U8&P<5I7O)i8EEuG|)n!&4Xwn-jWRvlvz5WOMt0jjYMTrPw`Bc+L-mvr)OdbciY z`~DuL_{nec;>JAxu|u@}KhQMF^%A`S+7Vy)yZO@dZ%m*Lwbd>2`k7Uy>AhXY)iTI~ z1#r>Q#%P~R$x+eq;d?)WvikX~^?34Zb{R79;w8BcK#uP{7Am>kSMDn&`rf%Zrt~Yf zm0#oj>|v#9q4Yki??y%L%!X>~Z1@VZ)$HUG!cjB7*umpCvy_AuMjeg9^X~y^PtD%( zAHd$>@Ky|yTOJ{hDp-u9T{+viQrrxDD(HuzN(zHUz{aDchiDy`3CwU&(@S)`Fs*k} zsF!uE%3u_JsOj9=lWG)xuPb9rD$N!RKUc$iI*M#Ejy|ty^oXuukCj*H#bOq>CosD( z5qIK@v^np{^0hZWADAKbo$L$!SC9&H!!AqP95|KkM=|4(+i65nmoG?&Lv>{~=_EU%nw; z;`vgSV05nLHQ4B)`&De|Pc>Ik8MdfYt{YMDhhDj6eu+}*qnGtcDz`5AN&b|t+$ZMc zZ|qb_Lk)5`{+?L=XSw*HO>FfM`z}CPU-u+xUGNi!wwsZ+aihL4#z|3lJTMaT;?aPk zzo?(zqi|OSFygtWWdlS6hJ?&*Z*Gq%F?dUG0<3{R05mLe6c2ynf>EBVjZ~N z@MW|D<~`&O?`g{g)t*${-Q|M!=`3!um!E_Gh(B1NXKIRg5R`7)kR5Wyt0R8u&bFW) z%l$4d&fSbB4SSN5ZszDzMA}1MX;lx-Uhq2cbR8M7&Dx!$Yj)`SOc3YIi$F6tV|z}ShAEl{%L7(fO*JKP5pxIC8anPC8TX~R^0%Rdm$2AOA20y|y=uS&GA)T%e_&45zHR!30?Cg`;y zQ$xDENtKydY?&^Fu0tEO^<)Cl1>Gmd)8%6Kt1AZ^jm4Br@9Ah=<6#OF2L}G)!&>Hf zNN|tEd8&=K=qQE4JPF>sOzrtsTkT~(_j>Mgaw=@1Dm`{qbC4aj!jX$7J*PG8=zDD9 z#qg)k1cvP_|I@Pzos_AMvb+)~*!KA8udgy5HMoUokI*1D>>b2|n)itU55HQfym)hY z+0c)yBsXVOFZc8XWMr|3ropv+Bvd>IB|F(c3YdKRu})>HA5uyQP@6+sg-5xgU%mNU zegmvhcgJf9Hj&&8a2e`QpM2xOZ7v?w>2{~xJ689S4cSwA?%!N!&=XJWXjIq-JQeq) zXtb83h@z}{D`WfO8>)0C$Mo!XI5~7Z{$_fmd>OBrD~To3%kz_`vFweMWYJjTOQ{jD zb`p0in)te(ExCh_KJy=FW%o;fWrVXeOA|{Q6iF(moi?1!?&=|wkxC+1;%-6CfamlLOy)$6vO0j48GHd zrmR5e*)rm>*$e%26Ps2xMT%B_pRf5<{(e;Zj4JWLchO@S5J?41%@44A) zz5pA~-tn5w*MJ|RZ_1{|^x6vRZ^hs)>yBaJ^BtuAR`tonvb>0}vBIj$nhI2Wde7lk zS=~G&U|4RX!(N3n_D?`{MkIF)D|42u3r?!5ZmPsbCEPrxxb><5RcZVT4oshD58+<= zA9oiG(dEf6gjV5{OLe?|&DpSEAVu|A4fJ?-k(YV6S(B@5_@3KxMcME-gP;I=j>kFL zQ@<#IF&@~e)}sDoI^8Sa%9-rkHwJ67WZm`v?NqUkzy6*DzyDtESbLF*bqbR)0eU5+ zqwr7^Q5@VdKe@iFlZWqa^z%bL3uDrx_jJ7V{Fk$67ImSru+Ax{69dI!9Obw zl}M~gWNLISc~+A?(rVcK&X784aoQYhRO>6jdVIe;)-odC*^d6-Ra%x%YRbbsmX_5K zISym_&{U-#HMz(C4|{JJ7vcY^exLy$C7k2QxWwUsyH)9}CmuAp5PDNT}^H*aH=KL^Y5Hv!#59BZ6 zzB~pWEUXkIIf}7_t;({w?2;3&7fwBS#Y>b;KpULSg9UW3CZz$3OTLU2B?G!QfhvLS zm++^UK`_ZVl-yPG0OFKJqVz_q)ht($yGijKjXitJ{hs9uJRIo9TdWGg1KM2giKWV| zz$T|08c~u;2qyXtn5(3XDE1?CAzJ5b0$$IHTva?Ao2<%ay}MSk>zlPFZ0O zL~yz2%TR9ndaN}8yHrqSNnz${2B9Xhw%z4gWnW4tKF1nS`&9TtKShC>QlzbNbf+@8 zqMVk~>#SHmg~eI-j0|A{fK`bSCbdWwJVW}mrt^%lW_8V3K81M3VozV`{0hT)^sHWF z@0-UN=mpRQ3PzwcU8Q>$=~1fpc_gB8ulA`XgYcnfB*~AmnN+If^+>jFe*T(7$7;QH8^xNhf51knnE# zSwn_Co1BFMphEk(0+<{P5d7a<0F@>hLo_1kay&&(c*0HpoI^~s0;jGWbREZdFEBnXO`x|nuSJ^IlU2r8Q8zc|u3gx7cIxmFx~s+TG9urHs{dZZYr1Tzs+wP8 z@D|Iq^zr7Z|4ilXk2dp$P$F9&8l1lPLgOQu-6E8yyfO-4i0%o;n`%%G3kOosaDjLRhMX zXBgWw9ocbeCIsaIS0qHgOF{(RU0c6Ii@<&@Uki^3v~}N{pnynKY?F5gR@rkRe-m}0 zik9!KM2^X|Hgd=&16lFkj4G6kAb?>Pa%jt=S2WP>_3pKu| zkGOQyKIs!^!mg9eo^lzWQY0CgiCX(Tx-nb^y8%k%F2J^CnWD42oNA|;XtQ)*fc|@* z87N8_J|g;)3<*##cx0ZBquSuqg0I%*KGn3YHglctRp6nTG|Lz|wu;0VSmnN7Zh>BU zcR|bH!BEIi2ziu0iaCEf*}Kv>r?*g|A$9n<8Y5*njYN)0yM6Z-7s3fmTbK3LAa!Z*CWnf3VNE{Vtr`z)i|gM2C8Yk@7|AVry7#H zi(f|(hOSHecDIoRl;%2hV1DD_$%hUVXxSGC+MJxh(`Q1|(9Z*H#CMacR zS72GY=9C_k_rqf*A$qgS0LRYA(8CEx)V>c3bc#aqIjBKY^?)P*|7&~oL-cgrlupjv zq3RQMuORA+EBJ{AP~RNfBH$@Dj#61IQQT6S;&S_3OZtpk>Rg42__;nqI4-cYPbuU} z1}~29)GS=Hw~4*~{W(#$IkJ z2%8-fL01UhHTUNKu_$HklUU&-A; zO@bQE5GIdg+c57Tfo7G`r5JY`uk-1-V3cIM;g4>tpA%BFLkLYrnc>pOIYs`z<+6Ux zm?zLS+8f%vMW*zpRKsBxHBW`_vqG%WHSIkfXfE5`V(p@gk70o}p606%u;dtIy>Z-0 zD{=ooKiqgTUgCbRQ2!IgYc2GT7Q8v{!KKPtKh#qz1G|+477D3fQHO)?wfpH%1RoCm zcV8z?PmA`kj#F3_nPu=Hap{4 z9)>_1p1g!mKmPoHhKYxoLFu)#K}`aM{7UTA)ONKuP&U=tk9iZb)DFIX?iI12t7G93 z;J0k@rdkC5k~i^e4sR-|XxZJ`?U0Nm20ou6EEZ*9Z}cKzf%dX0s<%PNr#CC7tSUvJ zIdE~2JJ~Hwk&{X%fh~|DdWubyY%6!)8CJd*hEDaSkUVx+CiN4fC(nu^Fq>>}fV4gu`ItZW8!P5_ zY`3Ci6>M#Ojr5|}%S!F67v8*s1kJd;eem`DbKCxX3C7KMc<|jwOF)E?%nAE0PB))1 z{g5IvRauYKjJuz&(|(!ViT5z5s}JBEk}hl+i5SF>lD_$n)f{1@Q+(%9ouEk`OFgd4T+8^;?iB|8Jx>nR^Rp`<`3?PWB97EAdWt{?;#(|(x#1a7ME1n5 zstPkts@1&^Cm|yBwYf*4DULPmWo#UVpm`&q9uV`?MTGQfUv!cECeD-_t|~dfGSW7Efu`wx=2BJ3SWiHfPda_9~oz z=CgdK-kp~!ksg#wPKY9&zg-uM{mgG@8@WQv~cN72Ptm01K47?@3h=CP`ORlytg~83M^-hq;VgR|tGeI`8^10Ni#q#U<8NCv`{S7` zy~XI>^P@@>KWO4JyIXYNzPnP<1~9B|KnHC3m~l`!T~M`-$ycXRGbNeK-Dk_2EV7Y&ntFNQpI3fR$01lz6bU!n+O$*Q z!VHUAaRKA5(9bS%ltdNt{IS~~8GybwRvv1HS6${I?Z=&;<@8636iF&nrG`HyWV!E+ zoP+Q7o)&X?)8&b=$d39SxfEHD*Pt~ICa8f1fw+W#zA*rOa8Jfv&%{nVg~`WR4`LoG zQWSAF$oLU4d^|ZYW^jI|ibu17*GYR&1A zOs7wHseGv7l#SNtCYAN?0Q)`IVJ67+_ML8cT>ZMPgA%v~!@cEF%sQfK7I|O4sN2G= zH{fR|KhX1&=NUMo6rwB`>|-;R;MUr2(3wR{8F^n(W-#>^sSdii8I9S;EzUJ_YdJ1t zgf1Oxz(Y*05>9ai>QDiozwko9BRIZSZ4~ z;Emp6<^~^$g$kXIS~R5&=XBw|=R^5~tlve|iGY{PeG|i0+4!h^e z-@>KAKt9exboMG;C$q8tE;ADo)1LtJ9FW!(OgHW(Em_WW1AD%riWflVuV?Tys%SG5 zrGW%JG)NZ+dlhQAmYTC&LWiW;97ZyeMwFreQV*9L=~K&Y9VY3a!#%_PDU|oX;0<9> zW$i>!2iO!m12FZVs-rF{(pGQs8uJTg1KR*ZEY&ZOh_fEakK(;_$7FBt(Jz1x2fV>n za__gE7U+B~7|2sl=COBor-P)>#E(n6S^2!a@?Tb>-veBS250bWdnx4Zf=ZyvNzh|i zp@#?}q^EW1CbE z$S;lgB317!wKM^ga6a@oqwEf56x61qcc|xc35yS9EwVh+HLdg>fL9KM+%S6*0H~lZ z3QR^qPF2w{S`pw;FV8NAT=R_7h!jY5#D>3uF0WEFhDFU~f0D{%6UXx}AtE`u`{2id zP7D$QN~~DEm`O%A8qfc7=DOko9LQImI1RE6zx9Ype!4O1KJWxX-^sl;b`YwgL;t*_ zUZQLEBn(PiLiT)BY%1NQXM}HBTwiDWM202QwvXimM#S-u8jsS?9SaKr!=~irYXOow>gbZ8hNwDq6#jl*wqIfj5(ij!rR?54f z*K^C4D3b2A?$(UJnsn02NlqQzVL4w&ajBCQVU^CTL^ghwNI(4UU3NTPY`DbQ;{A@z z>0pCnSqIv_G3U{P-1O!JV3!}PlOfV~nSyV*S>sxaMjM-BDm9(w(FYS;VGyEGt(4xF z#YG&}H>E(eF@KD_h>+z82!juV2e{Or7jP>O{w|o1%c5Q87R;A`T>8dT#eBV8-_yuCXH{==otxLXM(F+Nq zdnAfS7Ybxfm+os22fL-$fa;{OuPEY2VzJ<+Fxos;hw)S#cL5Q&21q9+#WAs1`BUt zbZDt#gs4sl>Q%|S`6SVI+dur>c9lYXO~dE7K+#YQoM5P8%conlbrBU~xiNMOcJ8U9 zjq2ZCBdQfty1GDFKl+46WqFo|=mjQl64{7gLKk}~E$bMrOs14>Cp)xqCpl1^*Klah z^+PBQ=SLb^XxZtF74Ee)#W6v}gL__H!iHc-*1UcGCE}K6bDrvd^v#`)a7A8D(9CxX z=USW07Xci93@P2+b<;PfpK3*|$Njq|wwX!o$*E(J2b!{_YCzOCa9TIy7AIJv9$xBM zP2Xag>U zDaXEe0qH~Fe(gGn;wy`ElN2_jbE9fl`x=6Gw>pi($J?(N~Oyc zJ#!R_-l)A}@VmEn&=bfFz>!2pltN7iXF_E?v@3vSa;OhxP89xjLABK?HkBXSDvwXZ3u*O&;PQlqI;a=JV<0mRAd0@BFsp^DY zO^kse|AXg#OJ_M*E$?sqj`uJRt8b|0yocdc)$njmnJy*@*^UogdlhMT#4c%ytYs(Dpd=Hk(;QXYj;!4b>U zjg;rbRRnB&7|Fwk2y60^>4HAA-VE9I7wgb;uO+0|ZHJlpvI--4RQws=cV4NGmp?fM9w)!|ue$P|;o;=(GJgtt z|4n&VPFVutaci%)1Fq?_h<2?pHRIg!JbrOEBBKoYFh;yE2a?%#znJ@PVvnPO|0ae; zJ!viY*_6nG>VPbNvX@ybZwmTgGF3)j1LL{H|&iMLIH5`tHAP}C|}QDziC zWjwnetuqqFN^=JJd2|yzBxtJ%jA;kBatZaMXc^WfL?f5b(O|q3c`>K>CVB5mz3YKd z>>sUc9JVc_9<-hd8NGI+zTf0f-2TY?Ih&qbaB!o_^H0CAfTE%uy^)NAlam_^SrkJ0 zq&EC#`a>^CnKGlXrtvf4(hc-DR;k3wCV!039WK<|r_T8pDZ1F$SiNGTVR-kNcV&3j z#E&t%&_<8lh4_A_@+-p77lQZjc9Bd}TzKYEGme*vjSJ1xt7_+W0U6f6#rk3C$$5)a zsu_eywJy5Cz_vk{`zv|!z)piaEo9<$6d#W)UD*91Rb}>ql)4KmGPX-*L(Bj^1fv<~#;Vynnx3Y+5kJ96y%Vbx`J7NR6ypib5+CO4q+7-XdR5Av zsx7Ad*S?o(uz@2aA2-4Xsd3ygFTMJ}No$8%5LMj&=&Ka%1w>de_P}NYHnc3m4SWHvnUZ%Y<}IdZppSbPes{-fj5;tAQ?m13ly-q{J*B z+!vbc9})s3?k)-T;Q{D~il!h_UWs;cH?(n_lb!IO%twDC{TUGe9FE zJSiKHS2s^l635j6mAV$B4NBS?zkkLjdpK(aM~m!st||!iz^vDgQ*?j)o%6ii{PonN z(Y#i0f5p6no;0{~R&A0;)mg{7naMNKp^cM+vY#+fCE>U>qJ>eQ#9iZh9tBWh-w@ty zK+!W{M?WZxnxbODQ!Hx`*jA-*ZjMG<`1@BnBj017Zb77`6@o+frn55KN=banEwQ0`!b=WBQ$b zo~V4ZhOo5`|J&jto9HvZHwhT$ptLHl+N*PD?6p6$oXB$m_LAGWK>&39H$jvW5^ZPm z?)b;z(@~R`)tAAS>V+`v;4%}d$i&Z-ks`eype1Yt6!oNk#b*D)tRW*bTRs@`(#*Ni z!g-ey`63*|GWXp*(ul>iXD(H3UODDvG=AzzAY;!^lgQv1&Q1Z4VE(-UUbJ*raViuZ z+g_Z_>OImqk>NHoHv+j_xXS34jO0xC<7ru}-g~DyrtjL)*}p*PffSjv{wZ6y!!U6? zx^nSw;Wg%_r#^63%`_>?g@T;h5dLWS+rT{u zT(_uwAVcTgEtaP&(r-145f%b5U4}pIeBC_oWKrBDf8m`?GUwCyhzD4x{cbWGMn~9e znWsan;B&iYrLj`FJeM$tO0D~q)&NS3>~~UMx6ETX|76Il>LtXB3ZdsU2vm=%?TgZN zz``m}nkTs5dRLAf2xx6DTBOywhfwy_@0OLiVQxwZl-Cd{$}h1V-O&bWW#9qAASB%~ zGe6rc~rx5j1+>&A%{7`||iNw^HZrYGHF;ZNArp_*(ZC!A9dY(9_MvmxY)#w$S zfwNrof_B!C_g7vO*Tx>v!F#Qmz5^Sp{KsCuoq&Gc;{qR@3s6lRd71DbX<8Q5-QJKHbSq0-QW z$ScoZ-CkQ|T-Pc$z_z5=7-CNoWUSLF6$6mjer)CPySXbPms4UUmo_9CC$y9O6Rl+b zY3iMHA%L4@M*9ffxp}xvo|EBMVzb^jX-uTMOYXlXG`^eDRCkH1knbCboj)YSCpfi# zwG>iEK4Y}AJlcvkJizf!P1*0l9dD**5*#)A1S!AU;3uG zA=;rQl7qa|ZXxkbH(s<}?N>q3UdBI&(~@4}Vx#1QoN9RA)=DCb;H>XOltKPk(e^5O zNo&U@Evgv4ya*@ILqZYH8q!ZEWn7)2o-OKXG#Wl@dtK{ahd6s3?VWFV*!uhKXuZuh z==~}ipA39X&^@I0z1oo`0ke4L!fuC({Eg{LXFe05{%1O}P`)kKi--Y6gVo}^x1*;m z8NTRO-#12oZ=Bo4xY&luPtIaqNxgpX^oNhwBg*rftfr1(jqFo1Xltz|BIksCQ)@W5 zfk~Jo=Hiza?vE00eRd<3vET^=rRke{`;x@hmdDSQO@rVjNB-A5euAv#2q982A5rYs z1}Oq5b1HbqLJ060bZ6!l19C$Lcpg3HrPA3yX3rJ6gt0xz`udNZ3Q97O~hd3fr`O*6n;AzN>3)rfCCc;Xyi9MwX{!2zp>-@DMp8Vsn}kAPW&x8V9}21f zhu9d`j>0^@E}t79t|t?$&hD=bW3O`IW_|trW`n@h5Wp;}#Ess$(nMNb7Yd&2Y4d~w z`}E2O={-GMuR9_1ZK5sJmd>HJM892JmB7*eHspUQw0AK8>r6i1VQ}4LfO!4dUn;Cr zJGcCU^58xW4A3mi#jbq~HId$N7s#_wM$2z<(lg<~h|8DdgRZAKj>yb0pkqvuThShW z@t%#PIfTsZturqcLHl?*RxdABGA802I!(G9>Fb6F1N$!#zD%)hlkl~$=SbDht9EH2 zK&q`|1bq)~0Djz{BMW zYsZrp0oFBPHb)Te&!=D{9o~KbXkX>#{SNgLx2%SVjpz$1gH`q}z9ZUMkhR_E>p}^F zdmrxlNWna^LQ$qI$78YQu!efTq`V=<4>W2gtKk6AlG#MO;n_LuT$)--<{FJ5=>hx>9C z-<7_rAE%-sU@Jra8ZK)FD=X+u8ZWcNJ*cXN84pZZVj3?^JKNh)F}&Ro2+dj#y#@IO zz1+o*wsUWuys`NC8VhTmO%W*eb3>SGeFVC@-+emHA4l^l@Ugcgv{fCt9G(EB5R`H{ z0j)5{{qUw~61YeMpxV*`y1NHYD!+%k6~2xsoL;!BY&b*en4*Zb5U-F$9ycZ^;S=I1-zJ$~X4KRZYw+fAE-GOy8Q0PG>OP~miybS@rE=<& zhHt!2&=Tgkv~NDTODNUbcq$a^yelo?d%9n1T+BISMCS2Ken%(?ER6_?Js zs6mhKiFn%!6>5q{D8$@*kOS+Np8yhZe`5djlG%X7bfH~%rQ~mBk1l>5er5oQWal~nRRSW}m!lSQd0DiC4^A6}Z58``4{mup>4x5;3G;XXho4=>F z?Dr=WWdyj8ozPZB8}CQ1LwdoW$AVmTbl+@N&8sc7xXp*6ZOInapW+TUcXFq$2k8Ia z#}&Q7;ATg!773DAN}tAF0*{5a?N6dXJ*czD-K|7T8HzZSDw-2<2_TazL`O& z9-D*7ggROE+7!HIFRKm)N(VmsNFV2`ZwZK^w?-UOydKKbR8$2rT55fod}k2x;mxP) zJIVxDSccee$`dVtOqH?z{1$WZGwERnQ$lI2SJVvZZ75M^PYLPVnrr6_)1Zqo=ba zLvgTKp(^-0)~7TZ(d-0NFBl8<`yM+_P<1bXq#K-QAJDhXkd%Q}A?t-fnx1UhNu+7=NF<1uwy%NK zvgHWA;T<$!q)i&P!Icx-CVnPdve;iSqIGt52ku;h9}8u!XwJ&3!rD=d*06Wp;@svZ_i{T(PnKeQO|KxAqD$-4 z!wYPCxeoe09$oNhoJa~gK2+>q=|(`J2l#eILFO*bbKv^>SV3~DA|s`^NNgu8EVLsQ z7BO(t#m3%<6=G~;{*~1n^3~Lso5j}J^bXn)J1j&&PVzB6IX-aGW2sLc6|u1H#$jP$ zGv2=k9D#zG4S+v)926x#V3iJ0?qFfP#FF|bs_d$}zwlt5YHa292j|Iu{<B*sqZ+2}YdCV36GOzF-!?o=2Q(sd5~hvfLG5+$A-e&#UQ=jGVU zvD-}A(tZDoPTnpLn#~5;0*H#u2-VYN?WZC?>#+-h`kc5ISD~^VH|gzx1e`*(+au$Z zH>k7W!9+I0fxHZFi<)VJhm~#kj2--#n zb9rRrj@Z|55>Wk5O*wsie4I@)@cR{%XIS`_RqdCv;lOw9G4AyXDMRXB89sVE?EC(# zf5H_CC=%VgRugkA22*&3Qyqr*HhuA^%er+O2Du*%zLTL^mSuZwa~Q5Y*3T%NlxVEfbH=27#bguN$h~f zao@bwqa_E#Np*}i2a*gUc~|c{On(hZl1t-P;Tl%TS60)m{;{k5{4K0um!Wcqe@|Hm z@4r6B)7Qnc#nigVyo~IjIaM~4n*jESzC~8k6s9l18-e+wcH+HLuJmfNd<^z2b22y z1X`D7c%Fu6IL{a#K&$Mw=MZN6zqZjXg3u2IKH6-rm+h4se8<&!D5_D%VH%qse+WO^h4+lJsnoV#2j$bke zwTy?jWqgjgfI+!fn~uMsFJVx$WhELhmm=zSFG&*QRke;e7nAL9m@!UB`jRa%qn~fQ zmFB_?+@qE%O2ayfI_@ILG`-xAGfytfqIL{Ngkh|U!p4fF`CRd)l50}EJ=J};AnY^2 zuP0Z_euT+;rHw-aseEIld8*?_(A%5M{Om|}3hTN|^o*8GvoTB4@rUd~*jS!??Z%k9 zC9Jtd!z9U=|o=UmFr#&XMrhNp^R^LP+IVPzIZc31$A4mmH6xPwc7DYUP}neGW^?0I zHG9pnK-IbyC#Fypwb_;Spp>&A0a!NE;i$s)9H7Mf-%j49SQ+%M>KbRo_sX!;cg%ZT zF3`f>;ws_xmeek~mrssv-y1oj-`wcc_$zsUg%jbxeJh)8(Ac%;c4>QCc57i{Nx=>% z6=RA9Nn`*P_R9Tr24xH9F~caK$$LUh51J9PmJ#2QNU9BV0X3tl5ZEvCgUD)I*Kb&f zj5CUipKb+}*k{@w&ev~-a}2$wk!0DQ$ejEmgqUuB_jz|Z3i#)>?+9UBES-GK9aZLF zO;s%j*I70Q-Q##TKO=ZK?_kpA|A5N)Tr8){d6#lLt1!po^00;$(YS;zP0Lg@RzmgZe`o(uxx3(XG zI*EdE;!)cApl>%mY>df+A(3DVGLj|7>-wC{N=UXO%&Ak6H7)B-0G9Nz5E!oVUKNah%EkpoZ4mvt~4n=?xtWpB5d4g=)fz z8rBOtl^z;0j5Q0-2>jz{{2)!_fwt6dAOsG63F9Z0^S)rDAmPeYV2;N3v3-4mA5&m|UCT~;o{a&8@}D+>2Y_Ckvw zHgzlaC`_u6t%(Y~Ao_n^ab0v7dVA$V_I}%h!@8~imRYXxY6&4Hqs@cfAZV6K;ca) z2e~U_*Nf{`Lnq6W^T!{R?5es?>A1`|c_S(_X1s1HVMFOcbAi%RaT5W3X4B)|oaIq) zv;Dlc^CPQ4eP)*n(s7HFd?Ve;8M3GRRJsYWt0h$2v95QS#ME&75^*iEDD|)=xiz3Xa0U zupO4heS>b=!V3i*19Y!PUw|}P+mMYb@=KWI;|nc{en1$CBsl$w-cE!(V?g_89k9Pv zR(-a5`Hx@mz52I*NbCS}?Si>AnRA}r5A&`n!bEO!zm~2?doRM1oHY1^vG4z4{5x!R zVfZnnjQN%-%E8JmQ;^z)nzc*(H2Bq^ja7fPCX0@Xx}<7hjv{RBkGojlHu2}Kdt-p8 zF344_kw8~L=z(hGU8lFnzfAjn&^u3nZ?A@Ha>n#HSriRLtC7rc7Gy$z-t|*gYIBV# zCLMyXJS6`ye%CmQS8%e;8iB(K9YZjBpQE-?elCJ+ykIQBOE2a9O38KP?@7Srb@81K zkoLV=BfOloWSwIu(9m5d`Y?aQRWSJ1x6nITflL2V%pd2KfX?T3Deij3rdT%=EPT#X zU8A_j(9+I7r+YMdG)`4(v(!Sh#&*FXD?6UeQZ}Nn11F;8{}Kg_-bU_b?U8_$Ee7(x zoo=Ssq+jlZp8kgk3wz*sy<-Zz_800+7rh?x375{&;sA!}<_+U9Srj0h5tt5~GU=HJ)AjLND_`jb=$j*ky2_ zG}>dj?5lIGYVAAq!^&Y{XQEdD6KsZEj;JA6M9-kqwpG7lYCBt8Q z?RGA_m|%AA4AHI3TCyDJ_;>?UWeBBfLeS+unH?tVv;IQ_EPWe;mP|3;b5xspteDIC zo~ooglB!z0)2?6T59w<3MX`L_{`KBkI5`Ky!Q^QHD)6Z~=>TRZJt;%>QF!>|CQ#gM zBaB?WJC~yxcAMU3#(Q3?Qk17F%kH?XaAOEo-d)0PPrgtQEuUYF${Xh&nJTV3kPg^x z(~e8M|BnVg|DZqqOnzpvACKC79Gp=A>C#4A|4Jxj?vS!40%jL>seFC0;_^j>X9`#( zC(rk1#!5#Q7p+U{H_16{mql)lSacc^0k3b?s%|B){6mhaV%a#3$nIw0&wTOj85=nI zGfcO6KfH{?WS|UuDVBpNx%{##6nnYgq9+-)Da}}7PP$YN4XS zvj}(q%%kLmOHO-}gEc=f!?&p6*ISuS3VQ=kstO-yq0Rpc@xiAS$;gbgF`~vV=QCL!MF>U!Q1B$8FFbJUy z?-HK&DoHTt9V;)ypxkqvnJ8cynD#+a;QCbpb{1-IW=X$)d3iZe<{dI zd2E|zbmZd%F&he#%>fN$PD?z(nZq`Od+hQ;inTd8?^F@+`Ge{HoMy69D>YSfN+>a> z8g@rkQ*3*s1W`FBp6IC&*~l0FhiSV1TuuLQUf!x!9e1Dr){I$t2C?)g^YYyh@H$Nt z*ZroU{b1;kufhE%43@=`PI1kc>%Boafdiukmm_N}?uj@Au&~rr_B5~*CZi+``MDUG zAO17Pz)ElK3!UefpLgzF*bEq9b!V)Kva!+ouyRT=4@4!m*#3RwduE9Jna#SjNRDT3 zKfi0tX{bQ#jCG$ME~KdTk$Y)S{S(({D(QFR(^>6ph((2OW0~=6`qdz6TE^Z+)&JsB z;kCqRdt#=U|Hv=foqldMT*G^Zb|6OPhwf!RZkH#b6Fd9XSoGiK1-PAAut;N|F1L~V zK929|L(h5Z*}R&h8oXRt_Z`+jnhmlmxD)UItr8#R6(u=u`9 z`CkI`cHG%ny5XZHqv2Z$q3f~0qq(`S*O~U&)OyL>V>=Tk*$^zl|9bAf=I@iFJ|Z=0 z;D?$nSAwon2^o4-#sas|akhhvF4v(dz(ZDOvt%uxPcE(RoJ{uY(G1Ujj^*E#vrwm$LaKcJMnw;@4yrrNDFfH;n|Mj!}tt7>v=kJVn2nX zc%~ci{~U_Huf+a*+BryPVBm6*M~}r!YpsOd5W`xM^@L$8#u)yOwEyF`1p*WH=!B2+ ze|e`T4Op4%=j6Xo|8wsDi~}GU|056owh{j`4*xR_|J@}1k39VUTpsrL&Ko(FI0(V~ zZJ(iM%p4wweRt>18bC%wlyCujfv*ywsWYf5RLhwHnQboU-qim`eEzuJ`Cz;ztF*M{ zBg&KFouCKV9L&hLF6aFh^q>2CC5Y1OI@Qx4IY@u$pG&@10E@Emvc!>hTYv0;JOZ7w z06EfeVN0>DDAzFFh@A&cAPc+tL6{U(qpZHg#MBndy>N_}^sxJxuUg4|bE$D-*`t?C*(Trz?$01*3 zA45^1EcZ+YQ}g*~IpTCwhV@@?N$Cv$7`LMUNP=sZpf#rS_cz>!105mH2LD2LHS_i| zm9rK_o&3vxq3y$#8|$+XNzly2Ur1prTQW+0j>Mey&|JK5uy3pFIAXHEa_IRToQkJC z_UaEZ*;DxCJ;xQOe`gU6FqTxs>?}08%zWoC=(x{e-1mI1VkM9wnaX9Jt^A87#ZU%# zX&%5MHqn<$uov^2gDIv{H<$2R9lPc!U5`OQ)N#8rmDBAUfV2%N$}k(t@vh)dC|02` zmvA0DkY|~>rDc)3CJXnYMIF0@XV!1qp*>@P!|_Rsm`Sc<-N z(+zw~VZu_kjIGt-G^I18?Y@&^GRQSmtZC%sW;<`!o%G<@+i53xFxs&ac)H3$sTrfc zy*y*G2gz3ZaRk#i-&^eaRWTy*{~l@cOhF%UP+})40gmbv=1joQ4pp_(T|X$SkK8<}YFo zg0)=lIyXB_YM4e}0H`0y7)%d*17J0C1A$NLujUTRyQy>KGla`E8P8rYFxKBV>6U&t zH|_x4A|=n(K)1ZAWpc{pPS)$d{%w?XK>T7@%}c~U+7@IlUv$R))nPZ;@~=m17Am5e zQRLs3t8BAI5Hk^=xJUK_KMr5bLMSZo{eeJuivx)8hrVtu#oP4uEl63Z+F} z0D!mDT*Ep^+AuIjXmP}44^32}k{q9LbcT-WN&o_B{rAdnZ|A>I66gSai>V1v1j7#- z_67ii)S?A|RFVNWZpy0pVzRt1B~O8@TSzW{Jfw&bR=mpJ(PptMz1AI7I~CUeFYG@F zp-X>JG{=@1qcHQk|9!Ad!08n+j!ERh-Y1ciYH}f2Z2mOG*P%+Y#fR1YeZ1AN*-jM= z3Kq2Qh#9I0tDER;#k;R_h#Am7s{y2Xl8Rx;ZHtP6VS>D1BhfID4Tulb@rKp(yo|Ld ziSf}Jf5Zr@_Zn0+BeHMWK^Xn6NGeOUu)v{V@a?>Fhz=0M8jNkxD|gvl?x7^X*U^s+ z`UzfzuDHMHBXE1V68|7)(Ur{LB>6Wb4$OKN5dbBFhl zSu?PtiRO5PB(H@jN1^x+ul1^T-)UdVFlQ=)mj6;1&0j3{b#f@2 zQ*GB0#4;6bRFPvX**Z?(n|%%e>yykN>WUO`zujVuN~^H7I=i*-2J79_YOs)z*?gL{ znI>nt;)3=BZLLfK%jRwotcIsSlf)~ZzUMC^R7uEhCzjK2GL$ATwGA!067OHL*^AUF z9I%^5^GESBDEG_UjAXHe{^hf-hFn^d9)9U=xV9bP+k>hcGIg0ZSjs@}UMuFrE09eI zJ(cUC2(Xv$Pb_#6L|9Oo-TuOH=}!XmFE(%BlzD^V+e$U`%ZcaglH~BGNdf!XA8xep zM#bBQG1rt03rc|-lkFzODcdqli#Ub_#{_RtXT}daE_RJ6_{JHF&16(BH9r{Zt0}6I zN|$`bJXSL#beS%;#jz0z-l7N9Ky4 zYV6YTE^;cc8tHheAKo0E%jH3N!xx6sckiej|A>Y;N>1?a_VHVc=SNPm#oheAOUU^b zD1JEGo6QEs;|5zL{H^eObSi?vV@(PN$s6b1JnRm+XtX zd7AHU5C?N#HqH2mSvcE^A`5Jmt9nGXVAjpEsxk#3?nX#}oS8kWZdkDx;iHD4PPp~^ zRKwo(TrC`V*Y@zZ;*S-=Ux@`e4yYEcS=eXNMDn(!XT)pH)4iA&{*PP$#sKL986Cd~ zv|88^kJ+D>XWQ9P&OcP1krk8z^5$IGdXK{Kv%)WjnC9I*Kuh2ALu(xY7>UyBd<1c4 z#Ebr9TuFYWbW{^ScC6%tuhzvIEC6Qezy``uD8T#|okSam+)kcUZ<7mNj4MGBbZQ5Z zIJ)O;+aGTZ2^{Ue^P}c;^u*nees4-lBWX&6BkD<{1+L++9TTh4eYP?B?U_?4gmp-%q8hR8wM{GH=XvK z5G<}&hw}QdNGY>xf^evlTtenXHUj zw7obkPLc~E1X;V}{LFozuI$6fsTkf1M4Wyu;5uZTBT}2p>jIiu8WKc#u#D^ zV|~EVf;6D`ZD9u^Veq1X=Zr4NttrDVN^G2P3|tnkH%~HdQF+y;?M7Am z1XzNAR{>#gfCR0%KP$)VVPUSwqh76U{_Q#QHA0=)l>$=rWuJt@%W@+@>W;kE0T^{G zCcsfdakh;Ye!1u|92w*Y6Zztz-pm5D3iJH=HlCNc#2fNpecrfdPB_PNi$6ebh^~X_U*Dbp5IemV=PGO-1fW)cKBNr0x zB>(utY~`-f`zKRu5Fl_}JP52QrYuPF0_qg=m1PPwQK@in?&uN=`M|tekw{@lQd05GKs@+G})o4vV{k$>*J>ZS3E3LpJJis5l&ieSZRy%*Z+5;eVXIRPS ztBcP5)LdhWT^!-*-jWwh=#-3m^Nq6?WYn_)E@Jg!t2+3xFR&Cj9(w1W2ib1R@Op9Q zU-U9p2TBLpGX0R@_ow0i@iX3%>rmmFrkL@$OwV@0kLrPS-CfTQptdg%voFj}FHCj3 z5JjajP7sx4H9~4;H;h%dL;A*K?_b?1&YNVP=KiZYO3cIz7q5!(%p-(G?lv_G~@J9Qc)5@6B0y8OtlbC9-osKek zQZ!D7M?uyoJATA0e;lv2rCjOqEAvPxFa8z2D!zfYi1NFW$Ea)jZe`LDQeD^9d+q_v z7gKsmhuO1u6_Y3JnVNi1WIJe<^|3GpX*gGSfF13f8*jnWZ|yj#UQNOvVqsO7I&Q2? zvN5E#w=LG$Om4Ck!BewP?nK}{Rc5w;WX`j$S(G-^VAN@BK%58op|t;8f}~^WB(*{& zROAh%&&jETzMJ)~`9IB^AG2u2tH7*cznZ89F7!tXKRoE0%qs4XZ;naBh|;Cy6sAd zX0LONUASV&eKB4OGR@~MW-`r}s<)K@pClBt%O@fhU$yNfG8}Jh7Mo5n&b#XFxRWG4 zl?EQqS+wV}zxkJAB{6C63<0o!ihBid599E8EgsvKII{H6PsicMUH|;kUK779*1{MI z_50&jrOCJea?i2NKF(sHFP)HH61FT((OUF8lfCh%P8RQ$yIw=jCw{`cbJ_4TfHEy* zsc^?y7r(%IKIdVwHTS$dNO`2f!Xx7DF&)vVp7Clez$gjSTc>!ZT?cy00x39a9g@l}im!Uz}1=}R$V&H)SX|Ha;0hE=tFZR1iB3MeTc z;ZdYPx+DYyr8_pIAYIY|QYxq*h`=VLyQLcp1nJtFO>Gd6E|KncF2HmA{onU_uIvBd z`S4uV`EWd&y;saR)?9OrG3I^WgP?WK_PQ%SFKO4*_|RQJwzjIqxz9DPm4a-z zyrJRZ5O5rpj@rwi?Uzd18fOs3(6dHV?N7goDjsMYH!q}b6Dx?lc~?yPp6l{Ud35b2 zP6$kJ<9pFvVtAe zsQSL~JLTSwcK5;3tw&8hJ$SNoFEpez`l1Sqh@%$7Qt@k91Hc^g-X5%x53?0TUZf#Z zF$FJX_DbVV5=~?a9Djl^0??H8h{Imd%th3f6T4tmDnqLKC?l2{7_^#RhMNnGX7NxqFNU0)h}EsSp6Ig6Jsm4UKmB7)zG?! zKj%aBR-UuMv;&qQ49L6Gs0;9;ZbKbYGVJP&sQa*!Le|oCfu6z zph+(Ejaf(ZRD*iv@KM|$WUWp&mdQ1# z+(q>ib;H&}?xVd_4Z~$uF0O6)%V5I32!{rsK%`_h(cXa-FxcU;*1iefo?gKO%}V)$ zz0U?oRE4*Xdfv^s)wuDE`_DM_GzILbs~u}mmxOO$yL$g6g%-_lDpzy_(L~sg#L*hD zDBUnpp^T<>K};lFK1Dl>T zA^>kYB$1w#4M$cdQ=UT#E`DXBptL4M@x4&*O0K3VoBLSJoq3vk2+>hk(k;G!r9RxG z`3==gkx#+n>e)KFRosldKXVQvFTlY}PywTDF+Sj|_6d%y!LHV>P@m2DHAl{3|0d-E zJdQ)@p+eE+-d}mfhi#sB$I*Ii*R>Nw; z{t}zAeEHL;3(h{?bJF*t>@P;OT`tg|Y}2B@KZ*|)#thxYA+qh$VuZC(eEotrODWN@m3h~4}k+SUJ zo~ZO~woM`pVh+KZuzfWZ9`DQPT*GO>62&PCDiMcs=qaDo7wKkJ18ye+vNLz$JS`Kn zSWfDI7dxru6Kgv2tKDFF)-=;`7iYI3!d`)12lxTXSw`YYDw-mVL#p?+r$OvSSkZCn zc-Stzi_dP_lyGW6oITod2hrUgAn&V~G@x-I?$}Om<4y}Pym!btt;l(;_PWjZQB0d< zwmT`?-6GroTi+mW-`ecjkqVfQA~kCoy`|GY<(s%C_Y^kt$L1m@dmZ%n?d3Uo2xc?r z&b0*y`}QTx*|ucVOhnquhbV{rsNGq4(FR*p&mXsiyon#`oSF;n)NGmeZ*Sm4dKOy- z+IIdjVEqrn$t2OH77ej(>d_wRtDoy-li|yWKQ=Sj;1w6amfgqq#*^zyxr+>}xKVA) zl58XX0>stTrq2AB*)3{0u@B3`Z)&IqXWo4Ai?T7#HoSz-IsRmYG9Pfl3WZiEo8GAx z@?yH8@{HNpTpm-H^Sz^4KvNg`^-^enj!E^ktH_HqVv!6mCP%4^<3xGyPcI)nI1DGv%B0cka6?TYahw^@#&i#IUD|Is?Gq^<=R0q8?ENA`|xW$jByV@ zFYc{XYFVo5TnZ8FAvrv^*$C%yrq|8)zz7OB@x(n1>ONNV{@%Y>S%s?X-ULE`GoSY!L4-B*10>8sD&W#KjI zrM)r4GfY_B=X20)bZj{2*@ZZu>fL3ZjLL~!G;=Lt)D$RyKnAerV9vz!(*ma~*tAi`T zv*z`|4<-rjm-Ie6CRn9urk4%xskIwz#OKddHCsk2=*(Et3)Sc?8f;J#3l16xij{lT zY@1ja_dZTb%25ca>8ROepSLiqbt~7HUX)feeO4wTA?cb(?Vd~15U)HA*Et&BAKSJS zoFNn#OnxpN>eWXaRyD$+o2#WxYzy*FhCfKOll$59+{Qd+OU6ZH^#c#xHTFdF$Yy>d z^JI^F@U@$-sxe0yt?v5VbseKBY2UZ~ z;)L$tVL5PbJL%*v5yCS9A8YRC7cyxEiodu%-;-LEwCuQ|ALp&J`VQe7?$z!$QKKCb>cxqjRq&b;O;~QJVj@k;uU)kYl&6*001I#+1wX5%?8~e3?W^Sg zsc!k}(_CsGmN$1g*I*iY7(GgE9oD1DBzP=`XUcZ!3?7l${X8nIQKf!Ly~HVp*^3_` zA41ci=Ex%d3A-wbJYS0Kz4AR*S|-f}O(fPGj=vT{)L8-W2N-!LvCT8^v5a(-Z|uA) z9l>gxs**yzG=AAzYiXfAB4{MP(m1lL{3RRE1~Y1(j{dajk<8!;q+AAfuWWqXNWSyj z)`5c~FTW%xf!rr8M4)ZCQ}o2{yyH zU9~&Hy7o5b$@=P1N6i|^l6Qge*3BTA%ddE8;-95AYX#oIOCaD31sf@o2(xnDltRk$ zIDwB3+?nqdNDIjmGQMgMP*~k{<^3gF)Czk^a_fa@$^$WJAt`E@<}w{c+v>?O0)Wz3qS$e)AH@oCMq}yT)O1BQhT-Z2r`}}g4_+#djL)bI zW9q(tO;wiR#BLuHcz!po2e+ts(~<&lKjP-l8dKb@O#MoGSXp! zg1(T%epcbS24xCdrnJf?m8{-W)pQu~IVbk}YSk3cexaFnrj_vItLsZ0!`JE*Zk357 z*G=F(f~KB8=a9kh8iEnm=me!%Gs>h^)(`zDRRC=>iMcJYk=@%w(EaA=xBQ9)R*pio zrT*@PJ6VId1&(etIRea+&ouhhCz z&V3Pd(q$pT$G|3F>sflp_@eD2XNIh}ACB7sbX@}Go>yMO-`-vCy#DsK3D$IGyuJ0_ z_NuXD&QF!s6EqX3YZd@vv`hKT8rms4Mm7J%XxjwtmZb>Y?IY&>RV#p!F1w?CTo2&q zv{GVTTQ@XkHazdcP{LxgK@gPfhx+NjiH?@ul{$OjE=w|8@`tThd7^SJgoAB?c_Ha~ z`3C?3CVf05RiM@3 zO?7a@Imf)prl_}bm(!;F|DBeRnpBLbzM^k z*De+R$rEHc5F@g1`G#uw4diou2Oix#c)$L$h?LFC&;R8uUf9v~i|t z%%))RY7)U+XdpPToeqQ%g;bYMe;TOIE6#|6#~Q&*b8EBFd8VV-Up@Hd{=?QJ$-bJd z@mSTrAg)#8X-9VJZ^}oppUz>y=P>>8_$Ctty!Tva*r5z`tWmuuj?+wmPKPYQbuq`W z8A1Wrot{~a)R?gW(fA{uNixtH0v0f5h9TRcQwuZ--U9^u4@HK&ZY?RZF3uO$Ut7Tl z(B|}kM!*g5@(+fT{WV-oBLmsPKNKd6!Ra~gSc(nxWoM-=a z(qHg~gG>s^71FPF&-qJ&1rtYIjga}KEBc&_n?JZdKm^vG9{_~4=*&(RPuBy>{+xc2 zc{=tl_3J6`uZh2uJ?9??W?~y5D|`2QhO-sc%vS(Y%}=rzyQBuyr%pBK8u{Nf zvIl_4`6U(1Y8sXx=;%FZzvOp;*5cdu4QES@n8`td6n-~I?%xLeYoY(wK>r^fLnEtY z@v&(sT6VjT3FJ#W+x8l~Uzbl={7M&VA~fW6Yd;skURNRvPQv3{U}P0Gy9D7HvxJEbGf4-<4N0n=kHQ)8CpgD|)sgo1to zyt#8+xHZH$x>jUV0OwEott6fZ3C)kt?;)fNngU%V^Ioa@s{O6P448O)k_^OX7wX5< zCsQrtP#s;D%>JPc8W4^NKtlq+myy8*FX9P29DED>MS0Fk*q3w_9~>R*W*Rs8%rudz z@U{Qq6fOi`|2~WWI*b@P>^ooy@q*m)yTfW2yWZ~uz!jO9z>S8%CBI^K3C~`227Uo4 zYqh{XN8}P*V$CBd#>6aO`q^%L)TbEB19(fGTHRFFp}s;L;=cfJ|2Ivsu!A^$0@`Ct z{q|Vx)D4G*UGx3|{YsN0J_`s&c4C@;Sm?}|eo{Zoq7BWV{bydcC0*y9JGik^p`wK` zOzpo}fZ#L)hh%nsd>Ac*D!c!4V(~%6m|LG9HYG$bsVr?Iq8G2zWojKdy*kt)K1Dy( zp1t#B{b@630*b^K^=Ss)X^LSqm7$vg%w) z$wd0nB|yT3xSPCys{*Js`-4$!IT~4UfDqcf1Xu`L^>B!^_q$IrfG%%9ipTH(2fR<8 zJcRvzV*$*FZvT{AU#VS%Jye?gB55Bt&w zOlm=onOKYATRE!pQKBnVUpAIUP;S9uAS&sR0wd$>$(*tAgD<>yYGauJp+Yg*2ziL) z04a@>UBC^r9WZn^blzXCl>W!|e&*EC9ff66LI3S)q# zp9f993Eqs<-`xRh88*r6H*8-$@yf!$eFIqIHU8#EERZp14&Z;A!6Q@iQ`KvNO~3zb z27ec9JotQ7i4OKN3I@&dhTdcVa(McqWiGf(&gj*P{u|C?^m@a72JxV;E6JgzdRV7 zgEM6W`YP2}DGo53*uv^1rXgKn!km8-Zyi$zTCKz1PC~ z`Zrs~i5(cnaaxrRyM%;6)10vziltBP=Km9zbOK4mD9hjq?zPZ#^|xs+F~0$3zopgs znxRJs{4~WrMEbkKsxIJ*UYnS8X$F4)jm4n;hsndiDw%ED8#G&XIr|0}7JL5=i+_g& zSOESV7XQu`|IQZwE+YRfBLDgp!14IkxA@oP{9o>J8f0r)0lYP>YzhnGZ@<`2@+NS- z6$gcxF?T@}GgIrsO#Az{FeczLCt5!*VF)7ypOjgjnfx6YV}O7HEBi*!E6Gw23v^P< zKKUJvNkRd{tS)g)8>b{z4;wYlPQA`s)}{`#ieXx@aZHAbrwOu?t;jkmA}*D zFV*M3i9gS-{dWWgGXTf-T=d|K&PJJ+D%DbMunTjXg&mJU^DvDrV4X+X?iu=&#|rxT zV04FSNS*T!!zPmWA=y9sgH)Q8$L#F>{?wp<{LiMnH}SbtcqE3lqbp+S-O*odYg(Jl z;c%TUuVNN@D9;ULwPK;H*2S7#3NP)$y+pgMF`I78glk#9mHnWg_5te48q+rS_NZ5q z@Xkl94zROl@S$|d1?(K$@YlC*?B5VxHz*ye8RsV^Y~)Q()zCg`clI4%1}ts7yp{Un zJ3yLks?$#Td`y9-{bi|lEZ0E`G{2X6tSfGFRPqBErgRUp(F-_Y3d$GG42%cIsXcEH zAkO>iTIq0Z9@)~85G~k`Qu6asx8#@gIE}8d4Z%HX^$IJ$V{q0k^s?7>i*3KxgVci{ zk*6pl&v{)?-aI3^17uEYP>0Qe4G(<)!k@Y`vGxByS*~JIel!ABJRocV_0V4%q|PYv zn-{(PpzW|ukZ7`*IkuP?1lg20Lw7XNWdUKuodcAzzVjYoY1@Y*~ zxq9_02@aVqw)=x!JaO${Q_B>dJ@?@yF3yE|CNn3;$Ev@F=Y24ANOg{M3b!#hsqmn~vBhdD0qNx`%)~R^T={uOoX_}?@7vqIUI|Y} zYEbOPcImgc2g58jOM#+Q`;jFW5tST~d%J+3XklN!slDFm;M4yeXknQz7F336jol7t zJK?k_8*oI;Ciyn#31=0RQAzmJ)fXZTwG2a5Zm%`zqC=%Gz-zW#?TvkQGwSK^;l)Sn zdcRW`)|Wt@$B+DTuGI_qgl%Yl{&>CiQzjK)%4MunZU)M`_G)EoS`IjMaJR&KArj3` zlW*KxU>ljtR-NN|N#~huh;lVW3e`v)Oc0wd4HmnVTh1K-DMY(G9S%c@bu!kxYB?Go9yVnCZbO zvPCF3`rufDt+7z}P)@-tZea-sJVJB907$w~`$A{0AVJ9h?`0aJ=*O(;PtcA$3W?thJ+^NU0C@3>A9UvSp2zrU~b9& zzbR)c-qgGvfMFO1Xh5?-gfD7-aN7?9YiUrPgWws2vD9-#YArYN&$l`F?(5Us0DM}N z^)|Mm7#5ApL41n?N4Sq5OyY4aPAMcIWfmHx@lct!ZXpI@A+|*NcNr5OK-@FjBVvhz zp6n&}F^{ZwS$V-zZzaYK){~CQ3}2MXyv<2sQM9=@7j{ir#GDQ3$Y0%aS?=n?ZWRTC zZEOErgC{!GY2ws*o@-wz;~_f634=D@<{f+qY3$lsEB*KTPq>Z@dczg5tynV+C{^Q9hp(c&rx$;MQl@ZfBLmPq%DaRyINSB zDslt_EA<>x6JdqzXUd2OI_=VL*3X#Wi-3eANMrlq&gAR(MBgKi5&0Z0ZbZ8z?|^lF znQzFvyLAd`v+%CrXnDwfZJ6Ql(P1Yb6Po%KIex2Id74G^f#*02Onc>r>t1KG#Wy36 zFZ8D6E5qIt|F~<)N-orOdtK2PP(_AueL0TuGm%mmbh=#CKS=g(>D%{y$*H-w0wxUs zzC8}JjEXgjVT3d=;eo~aCtUi-(Rx_xhTjrwQ}z!s*)moIh3_xgaz*P*ML~>r5=VW+ znLemN`G*SEtag4*%+#%SE#fu!_>)^2_=N__cgjGTc~o$*n*7G2Jpo-7KdaYWQb3$d zXzEQU3NBNLx*5uEU&vkHaUp$@7*!E54M1+WZqPbQ;NDaL0gFv zMvdmQHG3Xr^@6~#2(_y!rK+#FkvDfA*p&$4Xo8O(MlGqYlp94Ky|_c&xL@Gl-R^^* z#%Pt73hN_3aWB=F#>1^r-?vAr@|)VPoY!-=6Uk<; zArx&cB!GZE(KXWsd-ufP-dCwu9XTYow!x{j06d;YU1T|Dl&UHw$ zJrNd%Ak^mIjbpeQ43k4VtL&Af`D)J{FYaAKNU&g@~?Tp${$bzi;PC0$_gA4D($QP1U96cV=D1p1x{&qEiDtWr^B2Xk@~C5FbEMhe^3 zL6)z=CZKI0EC+<@9oY2G=h41}xikT$0eT#O26jieh?PpjC3_bLdD{D~)L_(V*IIKl zAwRD}^alL{#AM#rkeoO6v$$3eyWw+b?ZC$R=74^8lp)%P{IP*9a@Am`HyZos$9;+Y zq3)$<{KCBaW3y+^$_kCkpGGgb8MJu=GI9y;khZgmli^+p54CQ@3wfL;9&>xD!F7e# z4m&!Puc9qB9FX-!cS+fIOGS@o1RIN|!W8O_vim~v!4Ur95PqU~0Og3OIYHi7$f`m# ze;cC^s0A+GKJcpoD?<#BV{H$tb}AzC0N}i3>HG`oy{~;zNnd5x=E4+4v1~Gmy{$Xd zJrHMPt^yu=eH?jO{ZFzFCC#*gwX0+G`9HmhZ)yo($N6Lo$T1aWYO{Ikh(U2mdBYtS zL-+Oo4zUkxO;u4$jjpO@I;uLmqoUY{xJUAVJUu(AIQIqfvgld8u_)OQ9D}qPhBC;# ze90o!G;I}*@=zc$PwYF$ovDdoY?xr^aWEz8?XsLbt!Rv$En2uBdz@pYwckUMAf_D^ zhxhG_yk#f|$Xk^^0C}sR{gk|wSG{-vclRzj!YJA&8{v^huJs9q?r`n0=6)l(79kO; zZhVf#z?#D3c(q1TH3TU7ugW#BzNFF5UuiFQ@p5(l?74b>XiQC5-a+vDk{6YPpnLvK(LoH$~qRI zD_B_vRDUZ16b;X%nKEs%UV`fd(~#zzn=ukheQ6n>*{IbYl85+GPUAlREOQa2Wf zp1X`3o>IB-qp_{Y_xrZ*O67;@^*1X(Ewf>n%V+I^GeS+y^{O-2fUVFkp=p_|tQw$Z zZ9lZiuCvB>LkFjc`wY78t1=@gFD!KBGK!QI`pmrb-W=zkTAp0!y3gSfC#;)dxR{3o zWU2~%c1gj{V)L%^Kq2y5(e%KSd+C6ir%G-!?jj7ps>&OV7cL`{j6%|0=N*jUmq)%- zjg<+uJKa~o(*S!W=Jjw6R{(>@bs_c5c2&BgfM!GTmjW_IaCozc_3QJube>3jlzDEE z@tD+G>|O@z8=%4XlEl?tb4OM1PPq?@OZKJ)$D>|trGl*2`Ua|@4dLkq*>9rCHC5HO z6$8XMe5%%-KXjph73df4JC-dWIUOb54A8KWOKuQcF2}3EPjETNRzavNT7JHU5;3qh zN6&d_CRmi+9dy+jz~*b*N3YseS}O6m_THt0A55lRUb$bSAfXwRJ8Qi;>$7_7E!#p0 z@V*Q31zeVV-0vE9rn0A^z8XW0aJXp+;n@)211cj!2CIm-+N)Rw)lu@~w}%f^P0?jl z+a!AvO}?rFH*W7GKm;VvRedtHfOyLf*^HWdMMS-B_Uwtx3tHAlM2v*1yQZMF#M2tn zXoxGrYMUpT+6ZVf$cvCNW_O;U%jOIDV=?%GI&8s}GegSEg@?9aN;EsKu*-OA|A28} zzOrP`l*v#?LkCtKWBs~NtxO_^*aSu^XcC66RiSe*YZ3NlZeX}rT65=^x_*GXe-r!{#;Lyj@bRbI6xBD z3z{ogBzFsZd;OLUw3G|-P_Ha^kwrdc^{J~X>}Hxa3T8Qvb*&qb<{?M{IA+>NmNAp3 zLx#ljB3KVvSM5+4owHiIDt>)jog-;lD#MsQV>Hcm;bOQ^vn`4AF89&bNWS; zdJ#(w*#du5j}l@ksZ^?B98;^czRyFu_QTYRwz(J?VVgI3V^cYd!|Dw~=J7*Zc-jVz zUx`S4F`4RD)i`?MmMalgx|~vYa=iK$OVm<+0Z@6VX_5j*+?xdu-&LUf_>I)jZ;`qA z+Yj2fJZY_OXEs;W;Af_;W*2CWAFVFdGa;SW2hP$0>1*?W=gyHuKs5sVZNZM@P*s*2 z0zB(U&=xjIc`)2|*gJpb{LFf(5u&8Y_TCFF>oS_QHLJ3bCg}>`5L8MtX}I54(6u8v zZ|6Sg7^-jXgRS|_igOG8dc@mt4}Jj8rfh1S#c<7a`RN!+&EYeFb!??mJrG#$#2Fff=$}A&ZK7$+H`(dSFr)N=P)aG87$mj zq)^W-kU#puyk4AkVj=m2oMR_f_nF?P26?V9_Yr1ht4!@ia*akdLGe!7w9y@|Mhf`= ztwZtQzcQ2H@eE&y>0n&L(|xo>>Xz!+!pmj-OKi7OgE5PxQoV}IH(ZH(!=@dIP#(;6 zKnpcKU#T;C`W~QJI;p1Q)+^p^p*7&5EnL zU-Ztgh;Xf2ZnXyoH6^Yhv7|l8t(y;!ohMx!0_m_)N0sGl;Ld&}go|JtlVk6>=d8JU?$803M$IOnxen+d6nQ>I z=4Vl-T`}B{-2eH7cw~qfX);N1e1$;MIs_3T--uLOWX(VNo4~R<(BDu5qWjQo+M2M` zsQS4_Hx@+Z&54noy`0g721u!hXBl00i`E|BxjQw0SlAu1NOD!YNlFN3&3lhD8<3E5 zeU4ldL}aL~=CMx~+3~MvrZ7-jP9N8=dUuDGYf|2;)O0R#OPuChf>mhT(umR48314y z&JqP2k^1nvv&Qz5F_!Hgj_u`rE#OiaS2fSO(uCG5#%a0Rqx$ITS8VDzOE1EEw>4yI z@#PwCJFRAGp@ymenL53y<)PSbS05z(ViUYs<+>KJ-amWR{2;eIiy|b#*>sxq&fMk| z`=!hpyM>1WBC_iH??v71TN*aK%9(E_6!5@a7D=^kh&UkG-`RW!xO-7lGI?ImpH=Vsd6A$%od)P)Cy1c@P!B&g-2f*MJZ#R7Vk|!i(sxcDZ4a-~oHJr{at|Jv%`v2p%?{1Ssc zBVj?xdVq}d028S63y4*Y_dfOBo$ef*O=2D#auhk8SQx&8({XAky6TgYsBS&U9-6=% ziMJ`7vk>8`wf)o;)(^zhRk1ne+^gp$9)t~T`Bv~q<8BdW3__COCsU6#1UJNs+D1ww zilUav7L8_}6HD;r71ZSF`PQ%YO|!4UWp^(z$9#PMR$RcLZa2zfdDCjEBapDZbz{_I z{aFHI*6);1nI^>!^%JYnC(iS5R2);1PsK-z)*L{k7{l4f7{G6#Gxc1q(-;eu-#uM& zB$J6SV62ND+xIj3GaDc3UjR0W*iKa!2bYqko12#AtlZ4+jY4qA^M4)&j{WzN zXG83CB|U@t{%NFtZFy#zvr+f&Ao^!?{Expq$BkmO7V|uBFomAdg`AHzst7DgzvqR~ zp7Xwm8!v93)sA0?j872zjd(q$Fr}nWin__f5gT+`O3e{FI%x+_}=Ly z&W=j$Bl>;($x)IpNzKgpt2h4R@@iJNrDb#p{j z$4%OM=X-5LKQEhiQ-%&#V#@|1Af;&C`%mj%_4H3jK*uD+zkOxzU}HBw7{>5iZh9yu z)}r@o!bqik^Ovvt(p{4y|M6HaT@EIu`#Qy>lD1ll8d+4hAf0-V4n8$oq!>y^b$I3S zb<(M*xQ|hX&YNx`@-+n&sf!0%!W->- z;(v^pm&)H&n!0Ao#6w*qpnYaHO!hVt=e%bksZWsPI3p$<)#g1~>W^XSe-n)4h;D1M|NXk_f>pm z&-$A*h{qsl(kAx1HFyl)1J1q9p+rkE{@n#|LN)F`f7M-L;NDE7$;ST2zkbcK{o8qF z@bja@ypd_-f(8Gl+YH>(bpQPIKVbwueUsr7=gL}kQwhOR!%kc0xl>Hpy_Anv+Xo|U zL%c0xJ33r#1g`Mg4CuG34-)0R@r%an43BY}>s#hB-_qy8$tFAPkrL$-u839xUiao7 z+)9nujF6DSz1!T&gBc?UdZlb`b7l4Dy;+-rDYp^5kqW!HGvlf=-Kz9VREj@JQQH45 z?X`M%U%+&R9TliJP#7!f+_s!!bBSE`Bd>oGX+M#n`+luisa(ia?xwB5f_RJ0x5fz& zuw!R!3LOB|$rGK4F|~b8C}7za(73-M>a{gwVK?8GQFs6}tZdLV@I<|c$ILH)(VyJ> z;4;Lsh;~ROq!Rxtd&oJKpw@NerN+%C+FH5KC9Sc;RTOJo_6IvE-tTPb+LW#}=lHXf zr9#j;v`fFz$_9Y44S51F2^zuT1Y_?_I3yYlNd>sq1C@XwATe)fsU>tmq)W!ZHlpPn z@Z6@iFt_N}jZDU&0zLv@ zAj`;)0GwlUcwXEDi;k|O#-Mqu?a^{YwU&mFEh0dO%Abdlfjh(lD=elNI~~egs!Cz5 z)`@=FBYxU6Mt!`pplw#_&8nk4%45;>qgx?6mJi3j2@FirzVN@#c!o(#NN4U%|1^7M z#Gx_oRw*cMIg*=qlbGvMX5S6$Al9(BCcgO2VZrgIQ`FgF9&WtZo;>cZp*_+#y42FL@sHO6Q(V+?qv`{ z5UNVBztOLP`T$9IEWaRC&ZgBv-kSy0_NFRKb60!ZR3JTmTA;*VJ{_qm4)ng=0EDhk z?InW;5OlS>{lVNMwF9Wp}1#p)c4+Bau@GOLQF0VUz`Uhz6y&Muv-Fh#sz43mbp}*133)pwN7ju zJ)H=kv?i5Y#_$A<)?FMZutVl*2|W4vfacZ%Keh@0Y^)ZO;-AcISp-3vS7}dZ{o*KH|sXPZ${peT_mODM&4TmxRRNL%ygaW`M7jXk~=|}Mxd|H z886}65Kof)!*jKM`zAL>Qlls==p3dQ>(7N4#{q}$U+g1%XoudQ$LtT=Xl^RM-!Y91 z@3F;Rz-Xf1J!tgKsgrI!f<6Jsu&U1TsALIrL_vx+nc3AzddK%0{GgCg+(Z2 z%8PYCsV;MzYOX#eV#=hxre%_U`2lV38v>Q?;zWunZHIWaxTlE$asCpsqko+3 zz{={#_#WYtK|7bY;*Rt;$kAVFNQ8xa-8>($e;uX~Q>MHS{0i$eMDf#Ir^?tvP(vW` zp3mfKreVft19ee3jq%SeE7h|#aw`)}ns58d_3DWjbK@eY6BKeUBYh6{s-4}?t~!F& zxsP<;ZasH!6IrcWAFb>8`I)WrwU#=KlH%qQMv)6KsWz zxr z9bvc*IbOKJ;W1DJ@8{4ap!YN=sxItp(i|U4m(gZBUZ=ey`W!VCpY-eX8U#8^cELVR zOg~W(wYRsJL2f=25Y;(qAm-eb+-G%-<4*Ep|B`!(oA-Qy)|~R)3-NrOHDH4TrAEM% z3DeEEticGslbRO+|8C7`dF{28(8Ep??TyUc7dv9mG&ziUfr7JSe{ZXD*62wqKcDGV zzM0Nuoap*H>di-5;=YN%agp@6aNvzl7^oeW z%uAddP-pLcv@}!Ao0&fr5r*Z@bBQ^)iSIzyknI=03V$7=rpsDCmBsrB?H(KDJPKo+ z;P}W7*4^p_A5g_l)=Vn>?x&^oHo3HhGuj{J&4e$!;`AX{DTs@s7PQbhzNgs!oh$Sv zl%Mm!Za{7YZc99nruX_wXuUHo&bDZ`G&2;3*k7Fz+)*<)sEiS+0lK`Wp|6_Y(s#cC zNbU@wjD77OsN%AK=0tUli2ILk@9ZbkA2SP!0ZgYNeny*8;_d1!_X*+RVa5kwN83J~ z?;sAUQ>cG2!=bp(O#`Ou3aShYgI7h-1h(L7R|YMGmM=c)uhuQnt=hbc6y=Ha@-?U# za}B1bFRi;AJ)w!M&ZtW9I>+;dNKI^Bw3FS3V^E~9My>Z}r2vi@|6UDH5JKAXk{jk{ zC>@qRkl)W6aDUN$%Oozhk(L$81oH*^ZHXCFk*JLR}mLZ3!K5rEMJPmZTSbn?nz{tDT7?vQMaDohx;Eiw36 z-pt9HF~_Iq9TKWJ-DR`z)KJ~&9a_m)NMkmOgx%a%8wAXkXpVC{ zwt9owv`{{L-g^tH3p0|*GT3zrit%5x#<4TVw>_^GNsqf1`R)>h_*ugw@7@jAZ_fNK zy0Q-MUrj5@u_?1gwiyOvop?w7QrL-mi@a_stGFe>jXUbAp!+`szsYOH^CP8Ucm_H#;_#BI@~ADuYdW*o^s%8sSq z<_mlq#%>=hM*{bQ!-kAH3FdFEps2wn^YzSYO!A{p%a=DU&ndRRWa}((?%;{wiET4- zwoo((b2+@H7(p?!_uGY++{5v?)qbGjiv01w=9LUA@~O#i^@x1C?sQ|O(!F#H18DX< z^?s9gFxfyU5|0ZM!^xk%EbmgvE#i!27sfeBt{Kla>eyB^xoqK*7LKoDRET%0@sfZ&5qD7x>Or$^fYFKP6U#ob-%Vnqg70YX@k}iYa1uHMzlm8yc z+g)DS(r5v^kuNjeLal^JHyy)bZl<*HpLP-~_ar299z$ANpM$yd2dtIjboiHB)8k}K z;v(5me-mKjW&E1TWJJQv|Bf-NfUBnDMXc`oceiAKC#H~o-3o{soE{bChC$L_w#~44 zR#z7T``^p_Yn%TC<0csK&e*peF-CWs*s1^FV-%;pc6y#uZ0dza!9I66=Uz(!kI}Z) zuAcWw?zM-@Nvih>^V zbApiD5nI3-J*`faC3u4m^QOYmM9VEX?>uyd8^zM`qy#+{e6cIz`-A9NCZhehnhxo42fp`a%? zGhDisXyQZT5m3%&sgs+lx&G>OFazif=3mj0$*(ZQTkeze$I#Y)>GB%PjiZj|cYOw8 zEZFJonFA$%x(n|=f32;jr}jp{DdY-fQ|px{WOo^^VHi(=rgso+mz$aj1W)1+yrC5x z017zMUG^Y$qV=3hsQ~0AO5M2raFW4?(PEGX4^3K+rwSF`+rHOHu~3QS`3h8FR+Yzr z@ZS_87)C!v0N=39nm!q+Mz;k z|GGBN>}%$4Zc_sX zv~+U?Jt8nxHBrzf8+z5sebn(KTPaW!8i7b``gY}7shhTQlM_E+vnR#BfcG)YPU54I zUDOza4g+myx>%T_AW7C@aLd)n4{(^Jz%LjZAI_TzV|~j+-7D1`bys-kJB_ zd{&_{6fZ+{$hLxw4@^Qt3U!M=+XGdm==TB^KS6eA#w|zVvN2X+608-~h7zJuUP}K7 zRX_q|?hSDt0bkDz60a?@>L2Y!!E87d#~T}$fg9@D<+a`^Xo#6+3hG1M`Wi??D{>=f zB(jO`YAGVh9}Bl)4(~x3F%%(C&Zf~{!lv?3vE(!*>6dYscu&d19b&a&^D$(IohwL= zR6{GbA^9%IghhL3;FD-L)O^-zLJ8$q2|+c1mfE=*T{i2MO4^swBb0NWXT2){!k*m? zz-Yrspg{Jn8_-D_5O(GovQcDNf)qfjA_{)Islh3Pi0O~n?s9kNS4b^oS4y79( z_gpNnUw9X4@Y;sththpTEn+28-D;VU^sH{{DIrKO>6WQL@6dX=0E zWCs-g(`Q8(g65@l%ydLjoHe@gRL=Fr#X*#R(W2&pEJuHBgI~~WbelsuK z>J%K0ITB>Oy!x7&AR z#-PHgbWcJ3vttIpZ>=Q3K z0%PApS3nVK$8Pi>)6wYB^5lHX#IZ7)u7MY+OrQ*dA-W*R0pRpkiZ=l{W>F+9 z8iwHm%!A^bxecJE20Txpx_vM3NtZxg#eIF1MqZJB{AjI(zG(S4EmWkWa|Q zoyXhGUu&U~^xlKrn{h$afaI5S2*zSI?L)Dnohid5^+|GZr>`OfJB?7V{LNPqMbSJ3RQdp`;8E7I7|mQ4WaWd-154T0Fou-4BG#N5sr z1bZ9v{og0ErrV?AWd}Afm~`ulwrG8JCfq=o#A@Ldak|rS?;hL@hFd?Z?g<|rG&m}N zGWsBnIW0j4s8zVi5z&gE8tPe1Wn`t>ZDIYBYIh+JzqTi`3bkyEs&DWiZfGI z7XDxXuUn3gsj^onS!N614D&)rtIxqVjJ%f1%hR6ss);bltu`L}*e$h3$5`WHct1`A z2^%lrWr5@$`q%w78B2Rn2$vj4`59Ej9+v@u2098R2tQp+7=Wx+e`qlY@Kv_j{zVcfSKl))5Dp40Bj9jP#kk`FK zOf0YY5fxz9A0O=(IL~&KJ1BZe_oXq?4u_j1d2c!5+f*6wafdWyVwTF{i?}V#xe@h{ zoio(f$Fp9fz>x@@#NVNQ9E|$xV%Rz>ltUaQ|DrjBW>yvM!g3kGoJ7IPavAwjRg4=y zymD^5Hu2S*bZO}0&(unn_@51?$q~DYF@{jrUo;7(Fth^IWQ_RkBfgn`AWt+(OKH-i zk0RHA_<1@>bI*FENHyR{3h&&a$-IgV0`V7e|A)Qz4(GaW|A0%mj3OekMUtKDt%S<^*fH|`Q!QBe{>y=E`7i6 zalX&_dYz}FcSxnr&@Gs_Y5M9SCn5bZDWprVHhl4EO^5RJ^Cf~qUUEMR=k8F?QBQbB zI)D5t6)yi6HBUswis@JDY;;vl_7JIVb-8zTv&Idq`Dae&tk^SM`r#<7&Det4&m&@s zVZyY4!JPI_qyssThH|W*)2&L9Kj#{iwA`Hbd_`OAbX}y&_+5L7;+I)DzG1@2&$+L9 zMQ+C4UmkfOW~p9x%iHx{4 z=vMf;rc5dYkw1ltmeLxo!B2~n+nMyRh$PT$<(55FJ-RkFJ1G-4@Y2>tF6on<&E7ba zwm>?4j8achvgz3x;~(cO$8SV^!sw)M=++CYRzh9&i&bu!#Lp4FVHV@U`9aBT2VP6D zx9W8#TcHpJxY2WY5l>#q*HAkjD|oJ;-w!f)92rhHjihRBCtOp9^GVE1>B5cyk`)$x z)VGx*yDyNAOpT_W=YvV05N*0cIn!0%@M{w;O+7~9qSKRkE z3)nq)uEkFN(4vdw7@$SXS_YTh_=AKUQhsk1hyx z)a}YhvqX0%+%#>C$YCl}HNM%|B+|ES7;|GQiY;dquRR%j_T*BBTtaY!2C1}6s~KTL zxWpt`^uinr5-mD0*}~0vP8Kq@K`$lCtR?A8Cmu zdk0Cj9SmEmBW7QiB7~Fh4Jejbe9c;^lpbTRlkU01*|VV47S;2d#DXo}U6P88;zCQ2 zWG~|GJ|SY5X65nLIve+iip;wcD{RMu@86fVaqCe*BgIu+$GcZ&v)(kc>U|7e;W4XA zCeh<}qK?z6yiHoXKI3I|GnI{`#pk*V7C*3kzxb*ykWiVFl8z6ax_2wPJXUh{ zq4kzLxzZCs=Y?C25k%4qIYF7n*+4#;+JZY7u1Z&JmU45;!b_4E%`m<34GISiA5zQh z=mhmi>-fpjxGY3x>7aFHW@4rl98Lxo)%tUz7>2RnjykJ=1uh6&i0q^~Jf0lv&o9L* z^kkFnnakN+{v-V3m>8aOp|a}TFZ(lqsA}IsgxmQx*=Ho$)T;tlD5k|eo}e36Tb1?v z#N%qt*c(G0vu2eRu2R<%?$4qwM!1e))kX2yYPRBQrBG37bztgrWomsPQfw(CpwRoc zoT1Qii_OVJVT?$8U@gHpI-(&nc0AdtMJ9(pktN8~G|K!ud&g{iTRPI{;11LcIUX+!5^8Ve~T*ezCg~Q=Mm>7G<GurCGJ0};Yot4KHw&sV1-xoL{`Z3 z7*&xl7jXV}9fAYBEMnrVm|KMKs)AoEJxEGH=bw;zph5ViS|_TyJquS>Eb6$`%dCpq zjkF!cx^{#tg2kyXm4e-Lpn$`5vU}r6lXdeIs(Tm$XqZidP@DNY$_kZed|)ma!X?-ld!sCl>LZOnI!+ z&!cCVLq=VDY?IX5fRmv^ybX`u)@?cY(>*7=v*gQx&%_D3#}c%+wHMhu7M{iymItu9 zo1Sk;waQ~rd6H5{IHeii<;S|h?4X}|VooOTX{wH!T(lRN@P-}pnsYZ(kiC=Cg)$N2 z0o81+@Qte_WJmo!Ea14@Cl*OO(*!;v1eOmrIgj>*%b4d3f?w8>A?#KE;7F13+sVlI zJk)Dky3n2o@yI1J#oK|;#$>KZiZKZ--?0c!FOq$0`0*{bV$0)0GPPZ`9d9LCdK|=q zr=(@KbVD0E#mUtOaMtAGZ37N@5jU$NunB5hUgkhsbSu>gBu zrmvNB6!Tg34n7yt#Ed+zOJ2t5ogO?L>PPU@yNO)Q!b&+eQcUoB>Tc>t+~{|Ze>lWQ zHpLsab5qUD?{2xwjafbDArfzr;2x;G>G0>>GVI^&v1`(k$JAT!A3Wf`flC^0c5i#^ ztCQaG!21(861FYzeknTw{P7XTo~$Q+=+g$zu!ax^`jIX=B{X3x?vLj^dIGLxu zFmVa`#@R-gX1wl6Q|fg5QeDho5j0+f6OEy|~c8g%l0q z!UENKF!eVtkmlK-qoEU9xCq*Of6uRTEPR&f@^Z2^nIOiUiScDlv{bA3))-GQAKXR~ z>t(UVGi~Q3=0e={q%%f3$dxU+o8>hRgCmX7_-v!nRy*WUowDudv634*oN-ls@D}ei zg@lRT8rqFD{)n^Qm!4f!0LZ}E+)mHbk0>6!;5H{QA` zT0Eng;*P@?uAvY4uo|(PQGa40UG)_&iEEW2uPkFIhV2ZQKpkhH`_i~7>td2B#s3j@z;-lK}Ar5;zsh2M7Z zUehPdO=vp_swVg4L#9d-8aEl4K(jE)3?KU5QPXs<;1w<w{&Di@{6k`Op_ukM|UA8mO*MbY3( z_av=jUT%@LGR{}ywPbQ|D|k5RBz$yoKdpwI?a?0N+Pf9+6>x6|x^@2ogm@3&bgm&`6r)?|OGCLx1GFw5U#3a)v7>c5)5P#_mS{*rh1uj~p3B zCdE&Q!c0-gD=wY!vW=f%G`!=NcWt_l$Dl{?40pB_=y~->b%kY1^C6^n#mEB2g0RJMoRy7x$HzlJaRZ7fBPC9{D|8r)YDP zu)DXZX(4|x)j0_nE*SxzYR|?g%k7u|D&--;{@xeRHCgVrh4PaQtChPJrFj^1tB0}4 z7AV;Q(4hX{vnP%f_ACsiyo#~GGRb~(3n>kUo!OdDsj%T{NgdqT-t3w&OJ;eS*EI!U zTCAvy)Z~*0+!t0mEiI72S?yM){Z##-bz;=mEU)sK#)8RYX=*AXPrjJHPu`+$fkw}* zr!or5fmaj1XzW^0_?f&D`U1d~kkFj^&s5TR_4V&mr0O!1@vNKq7FV|hYHD5zqKTh$ zGM>BeCQA?R#L{i-9&f$v<*qD>GaZy6>N1&Dha2pnsZT93(;5N>`-)D?iOiCjiQxh^ zaeb!x+noJ3dJ{hA_z+15El)`mq$bt+J{3PRLW2pZI8u6ln-&_)`}l3)zL)e#7cUY@ z9s6NtFv!jmqhoWkO`YiCUxk z)OW;XU0qH;LhgL??7ixx1^+wh;^OCiWD;xe3Mb3UE$=HG?qZ%K;xVC&DlfRvKa!YW z(ObZJX&XjVM=sLk&&E^Au&KSS-qwzMG}(aX0K-`Im2z%ny{Ic2|vlV7M+2(o~{ajMH+o11f=7+S8Og$fr$d2Qejf9&r zkx{r@$zq9@6`1B+?H7A+9L2PJPh38N_ErC+hAuBD5oR-chwl>1p`9)GrXR%Mh>Ny^ zb)k-PK-grQFX?O&mg9vm$vAv8@1uQ4G5vA7?kV><8SS?`UiJWzXyTt_7Wj7e2&eN+UiC;M^3gal(88XRiJrSe+W$$qD^A&`1$Ct3Xu`=cW#N;PbjGnuvjZx zPM!4}eb0vXwJuL4lG_2gS9e1WQs)&l>S6`05%s4&v_QY7jcPoQYU%-_dY4d=`mkrx z(LR_pQW#;3E+VOiHelu618L4L+94Ywv3u|KX)d0ztY=d7hmm9|KNIQOXqM8Va5Q%z zOUdJzRM1W5gF^D=Z&G>R|Qa=x=UL8 z9j4k(J!HzXPIw6;`QC5pSAQtI5_MNJ7nCL9H+;q3-yvc$&}1xfq$bknmqVUt7V%K(B)wvbjMD3mNB_)jUip2~NrO+SKPcG|gfMgbnS~~M ze3y*i(IDnoYH%TB;!;uy&!R4#`f`P?LAr8J`!7nI-CsW_a{^;iM%HUl(&9YwA1)I7 zsZQ~KKcfF5%b0U~e#kUHs+Ed;?)*d1%V_00T3}nItaSvq4Rg;2iKe2vQea)>G7YFF zpf~s?Pw097&r1=A`v2m{tK$sP&IP}L+&j;HLBrJ4G`+3qPGQ5x=fW+FjEsZYPZrqG zeV^{h&|`GSGC@LIVDlSoP<~OzqWO|7?X;1A-9u-thcNC&({sXkF{5svuDeqs|BXlK z!sWgO`EpFCYS2*IU>$vU{+sPyda`9y%jtQbyL~{kP3ycv+p8d-ud_+)gePkmBx)Q3e*(V4C9@d@<{t`OERPW~SSkiI_E&?x&#uJ?cxFeRGp#`bo^_XLd;n{LzcgSYAVI z=zW|fuIK3=wVl%xWULX5hSSlG^xa$N$1KKQ-xe=s3xsmF}&Z;01D*)Z-7Goi;M*T!G90ozlZPxmGNIm`2VRS zJd@V%$&q>^u9mxERmxvqU|Nw#T=)xx004$VazbriV|hQDn!d(pjODU7AD|<1G)zLh z;@O$P)hZ6;$UR~?VV@suGdLeuap)K9zq<6dU1;7|Oy!d22K`u+<%?`0gOlWR!j*2H zl#>>4n0Bz?HVeL~q|{wQ9AzY6|GA|n-z-w;P9f_)-sP?+{!!)hwXX2z(It*~t91r{Pb6gfyXr~6VFatU0}9X}gh zlh(57N$efq3Ke2BcrI&LfO--**t3ttLSP9O5x^F+fnu7GbdkVJ2R1{$xu40Ikb#3q zCx<*2PEoV7^q0RH-v4)ZRS?dCJx0jE2#|UefIYcx#)KXWBhtnKYDNcz(jWV9uJbwo za$1m(7 zdmWTs3GXcaXR^@NQ){&)a(MoN|!k`6>T%9JeYD6a@)DN92J>)TKht5KC~aXnb7yw6v?+0> ztaLO=q5D_fn&{nMS!ch}&3@25SqRVPTZ@$7|4RP+>wj_dGG2@Lzx&u&s6fdX7 z&f#|w>aU!+U&(TN%RP#(^*j6YFTYOIAN?r4hP097Uw-Cqha!sC!u6M*`TG(4cMJdi zX#aZ)|G^XbzbQzeYIvxG#)6{4Or;*?iHQP#-{!b|?)yKzedL|$7GX>K`@WE8#0l)_ zk(Xx-Om%i1Gib=Cq5tKd#ofeaeoC$X20oacro5lgn^5L2bY0vure>?6u7*WvXDDJM0RB?AKdEGpM(GMl}+#+vavNrL}{d79M~30EonN>)TW2 zr)+nF&QwWMOR-g)^w=HcSU0xE-%U+RofcS09PrQzsOk;*saHI?&t@;(^NqCNxIk0x zKCAVn+M(A{u_X_hJU@g!+vkPXz9s13^%?{V#hZ0O*~BQC_J7t`$;XkN`b?Rn1s*T& z>i100q)Op;tTz`c*lVR^7N=TTE~m>fDOIpL%>~qtj>O{ROeQyS<@D5y%+!oj_vv97ZT~_?)|y4EfUT(zXvib>Lb zkU(^N-gNc6Z=tkL_lMt<_wTnH`lNDlsJ5<4R35YovSG>o^Y5RRZ;;|QemP}X4Nm``RpikMpoaou!=1@OXxrB1Q@KL>?+&_ z4no#689bEQHGvbq62yOBPUQk#a#~uXhbXFVEjg2f02=3*CZ!kiBq*f@aX!`8N-0iF z%`7g+EGX9UamsL6o7-g#-r=SHwP-%bM2M(o3G;ZwX~E}Izm#-(k4<3yiao&j(u7saUD2_ru0*jLNPK+GLCFB) zoCp8zD%4R(H7tv6e~jYepafuEAt0L!fTqLuJ-h&lFm=%Vn+m9Un&t(c4Hu6qrH&Sj z#`s5C7Bc{X?qahM3@{B?Y!(se`lN}6g3kBz0QTcgl8ug7orQ6bQBH$?&LU(7YyamT zJPQ~fox^c<>s#B^Sa9B2b8_puzt%i9kxar-z!$o7!m5KIS@k-{`A*nhNUC<4sme`` zjheSy`0~BVGRr?3C{(^CI;fTsfm@NMi%$tqg3;)M(7)NguB)B2K%Tp~KN&0b(|s(?nrr91wJ5WiHDP zVH12YZY!Ui0Fg&_loSKMAsU|@9lwqFVLyy+plLKL1p3;j8X@phH;{ptkAur##z3vf ztLV@$)16t5-N;E2E>oqQDM^tH`L8_QG>RD}BeeizD*jA@PX+L9K{NgBlWj1y0p&XH zucP^zcHHy$>+$f9m|olLY6L@YrQaVhm}aFS~#(Mr0HD8kAS+02)Jb?+={% zSRP!OPJhlAl6lZRNDF;;%Je)=8*Ka}U4tPObey)=AAzSRtG&b5nAZ*M5uHOdWczhs zEJq8NwRPOeEyF9)xm+C??-;8$XVE~LFZ?I___24NLP5hLv zoV5Bq$m9{tJ8j#VQGa!7n9O9Jz-G?Y^BWb694wr7CaNJ+NY9W_t6sO{puL`;$eWY- z%t*nNg{JnSh00CEhyv5baCW&yb?y#CG?_636(9N&HRQBd2Vk3C~^ODr!qoN;o(cZcy zj{@=!Cls`_?6sbyDvIVPF?M`>F7#?-c{ku{ZghJ-O8Luy*JOMI%^RDB8)rcaSid2yMYLrkKMFgvO?YtIvLaf_d=jqR|qEQpuRef4#%=g1o#3rBoK4} zfAft(xU)KOVl6_m^c)Fczi;U0qV`-pCErR=s|zQaO^9kD*bNq$ABy<|`|_MC|EzhU z&D<}c?P7C26$W9O`NL`9^i&cdm-jERU$o%t3xX#%&5dMg{fL}wn7uLIt|)hV2f8Tm z0gvLHDopKIT!rebLljuY$A;q4z3;qy5u`$t`^Na=P=0b42EN6aV*AO^;7#EAj}`zPUJC&n zJk0M@PYcx4FTVB<8~jyA#!X`*wiSa=@dm0rc^A|pl{aC(^XQlL_-8c2>Hf(<3MO{# zNhE|)T=^zNqp1oqB`1`VNrW~&Ggzo7HXk_T4;hh7UoHkD`=Ye>vIaJ-`|O>5|DK+n z(-(9_!5F_B$Xy3BuK+4crOF6qAgITXu%nZ)0ahB( zI6LVmFq<|`!2GBK%@Y!4otc_iKh0YB&FeI`xvFJF90|T69y|Jpws|?>_3x!uY{d-$v8IO7wP_f=?_<-!$zkBWPS^% zuu>&kY;x`xeD-`$(>yqANy9M!b#3Ndcu#A)nV0yPfXs(zviZ5N)Zw~XDNe`f9xja2 zFz%!L0`9MV@=rhI;8@}=QOndXY!qV6w>D&PevA*_DS1Am#u`t>M) zGqmIw)XDLFjNoEwRq1JUPfLG&y=v+nLwdMnQ=3gQ!wuewZ8EBC(9bYPi@Vv1IMIdQ zZY;ZSXXQZ8|Mc{K*#Wp8;oKH30VJCnl80;XsT$)|x78!4QSKThmM;@y+7_DZ^SScn zQyCKJVn?gPS6VVhI#e(!%Brz#sSgy=L!$F`csVIsFRwiv%xjbN*Q!hpeQX9|J)LWbG|cgtGV&B+{N@1j@-Qv4 znDN2!bz{HL+6H=++8bl&|Llza`ZuA$mCsTX4c2_aNDbx5xm~Z63av-46DvM+jAzyM z_l;1vB6Gz=+TvzP5~q=@Oi2+(?cT#3ZaZc~w|~5<+GyU#Xv#rjLHCPT#9t*geiEuE zJei(57}>v-^cgR#D`cqjU=#o9hdeCLH}rBrdQ~FoBkKtwlGSPZ0 zbxCZrNgT-Uzx~1W^0#H*;@$R+8ae}Q5^iggO>oe|`J>+XPG3(Xmyq7oQXyvNaqH+5 zxA@X}4&}Np8owUtKY1_6es7SV+1n@T1UTP*?<|$e(?H|9cIis`1=DWZmKS0^iJyt< zeu)eI%`z>tb*CnW2IWrd^08KIY?#ZZrcKWGFjZ-5sbBE&m6Ga29axipxt9HVgNIUS zL&&?FZae5P>p{&T#S|ymdd-F5#=Fb^r4rgPo8M5pp#Nq46!uyG0T9 z>(~7&0Xne7%#w#MRS)~lw*TdC9sD}{5SM=plcrz=UrFTOUgQ4JsRp5W`8MG9r~Jn! zEow%Lcg1{~Hrf3@mYHmF$nA&GmMi`=k^klqdL> z?lt|k!pc?x*s4oG&@bWPkM*2?S@~&zcChpqo8OBn3BuRH;(yu-DM{Vv{H`F1H@lao zS{J3}%iJo;>|_U%f4jp^=Rg>Gzh_T!{)3QyQbwn|Gx&jb_@hoWqRPwUvdDTZx7WLG z4F&cv`nVGqSD_hRF|WFpHED4}w`a+O-F(fT-46a3HAOMcONqT$He-v6#6uPXyW?$jz36B7wiuwG)kp&&%H#b7|x1_1tlQ%w} zWfbf0uA)VpwPR#wr)>~OE+IJejf!>NmXG?kUF5OAJrr<#b&>jA2r%m^aKJ$Z8 zY<0A&yTaVl^F`d5FE;m%Ce8wJxtZLZ=M&k##cW=zBraHYCEu#rHkd72F^;5m`CZ!l zSwK9x@8j;j;e)qiEQCg8QEtHs9+{ZBTuVb?D+z~TH4x8FK|r9F2RQ_i*e~OI`m6Fa zLE%DAe|1RLiWTnw>+WI=?^@+{LYInznu9nm!Ec*Vx(^a8emp_;S6#EWzj{POvfGZa zmEvu0t_FhvsD&X?L~ffafg#H3DT1mQdtWBXbSj+B)=)cj{mq*%pFiCbD$mg%Ux4ks zq9`y+EK}hA?dzD$;0$lG%((t0Hn3UHtFUq1Er?X9flXQ3rwfiGF+9hvls(N-`I>lb z_T`&|{+nI3LaW<31K<01o4)crDy$iaWZm?Ndi>jSQV)S$rIE7M{F7cMlG9Z?ia$9q zq2H5d@_1*eJ*AC?#Y(fnYGRl%E&XJof=LW+^PXSFZ|Q?eLG(~wLnG4cng^?StT+x0 zj5Fj(l8cQoi_*zB#v*%UPvCBddO|e(o#Z4H$(m|rrdx@FbJ0i@ExuXRr zTU*ZRJt$yd9*CV`fWVsu z(TlVwP(#>)D46$A3)#|s>pmn^iwm=CRblSzXp59yt$cz+4Y0k*J%AZCRCPkcd`*yI zl3rx}8j^zxfGqRY;)Xg9_{+jC=w06VoSK$N3d~@4ToOv?=H{F-vcZynEq@EZ+WttS zK$QiN5eg;^)i?s)Uambi;6bO!4?#V7>a_4+qM+Dd+pg<5D#!c|<;Gmvov}|x7I)=( zez(P<28Sz$3`m-9il#jkcGw}UAF|O zBUW(x!+BAI^g(XWI;|Sm*j*QF^|8+gZ_QPq-l7wKBoH+(9)biRRUPFWbGxZ-RE+wF z%2qRECA#5!7A1kntQiH_C3fe9@9QhJS!F8^2~(x(^7mAb=XJcbQI6&jl9N8i$zn>{ zhB+pOMF-_2$rZ4^v|;=vAgY(amP=u_>ivEyAoUrSbWvWuCVx~Tuky@&6{;)J9@=&- z;`5M=GW3cOx-+7N0fmd@LU6w z>wJwfFHg7by|Iool^B!x7e17xm?Se0v99;UZnVF$+2l+c1X^t01==BKg%veTbA?&WC92sCYO7(&ETKVNP#}`LAMl}~ga(FkNa)LV9*8K}nqouW z^vw#-wg1RJ)#IOD>()u=@93)akf;caTwUv{<$L5*d7@mSX{P5l{UquQ&JgS1Aswd= z!}ImYDnr96y98DhLc9I0I@MyPvil19#vxDHX#U#JNGnPW%N!H)(iVxFj?l=uk;s+v zqPMUAP_9zS$N{E2fy5afIXq0fSWiB&ApDw!&N#~Sg7^*189Zktewhh!NBV@ zk@9MUE(9q4(}MQ~VIcK_AGJRA`6M-rHih>?b-}>|vb<+7c3MLX<)@(fq0PwG=(GkL zL*eGk@PgXhi%k$+HrKCpRqSwi6hJ|wCd+*}P1P(Te_<6^8I8GoUtw(c`X(oV0l#G` zlSN?F<3O>e^tLg5H^OGXa zgzyUWc9lZJ8Ps5;mD|$pn_f!_A4)sXsr)(~Y=svWe-k8KXG}OyuMHG^3~BIjS9AQ8 zPtW!>YFs`x#J8__XX+%yXK8UQGPG{+>^;Nqtja+sM={@JxV4tZ=4KLO@apbY=+O}A zv2u@Ui<&Jl3eDSO6U1;3@~Qrule#^br3>|fVtPZLbg)lrLwf9SsFiFl6u5>!DEuq7 zhS}CP^8#!l{IZ3Yc3xkgrsJl%ZLuHn= z-6DORd+&*V>Om)>_w5F~PJVW(HBstF)zs%)+i$a=RoMKK+&>T2zNi3t%|$96mf@%Z zwOqrR_0d==WYq4?4pIWm#p$$yZZ_+iegyPQ9JKmFclCjXG!$W$`Qb%nt;UdBTQix@ zsmNnAvf&rbK(ht{lU;9%KqC`PRgE8+6wglPM~0H+GY|Sf6HUGma@?3Z+QLeMyYoZzxu-<>X&oG%4b+o4;7=HoTUY_f$j%3Agv-JndE zyK;HsR`w$_X1#+Fxb$;=pd0&&;RaNl;JZ-lYFI|+dd}xZ`MhE8Im#Tlm$H!b;;r|x zp~)Zk7$+#Bj0~hT)JgeSjzovrTb4qWzO(sLcn>G>74u>p+ik)tn%y_Q*&+v;%;~xM zO4@JIvXIZRbiLp~=JvOe&FU6OO3E+AmZ~OSI;eirtl`1nD?AUYY0}wo*>Y@sd3r00 z-XJj8L!jcL)@W~fQU8Wc)KJesXs7!DE5P-(5-zRqO7&A53>hhD3imP3`Qez|-0!mA zukQIZx+K`lN;(!z$Ctx;(Wsh&ZnRWc~0 zsaWQ6dijnQj(>TN)L@`F?}yQGXi9+$*+fz-Tc44WdC)u&=9fwJ7#gJTwl=qRmb-28 zet#sU4>b3tOEoM7-TI(un^(IHg0Je;Wong-#0}03R2h7$^h7~=*_kcZmCe=&2^KxQ zFps3-kQi=X1@$S$d%r#H&}Ya?c;dhD#9hyaWt48` zT~N!~Vy)B(u#7HVzW!dXSpL**ap-7OI<5@OPu6@eC{4TXY_gd@HM-U}G+C1W&DY__ z={HE|%J-w5ZQ>3gReESO#gZib{B>mzC+-eQ22@Oz=fHdTsMBb%Ia}d@Oln7xst*ih z!W=SpGzoI7)0{Si-W4|VM{V61faLhR_}^Q!MnVp@RCeR<1a{mQf1g@|iMvHWga^8qCJkbX(V}e|)@O)9T8>>e_9^8KSc$s9x_8hdQ z4FWH-S+N1mfn1Ut1@NX`%SA2ab!dO(kMxo{Cl}L~tuu6J7z82QNJv^r5V2y51 zh;uFAzLY@4#XPQ={8r`o-o>akp`F-v)`e4gGhd&!`yu3|&e-M$dC6*(imlyH+uO3g z*AD!dsC`wFzQvcnl=G1}^9~yOfO*txnQOfRCDHd478R}6nQFX=wZofZLYazTvj#9m zy1Bm@DoCwTvv6%9t;e=D67Nsw^t>8&bF(`) zG61#osDf#1(facdnNJYIeb{W3kA7kAmu_HshL#Sgw!dp*yOmU_y&d}X-pj1pWn4Sx z&2}?O4KK!tFG?jUo*{|fz5&eQ6w-r@+4w`;Ml`^uR>ykZSh;_WH9T7g z_e$*4hg1%IXxrv34x(cgVkgx12ItQsyJfp_I2fN@+bEqwt7m5xGeW7lV}2+hEKEcR z(OF;j*-sXHRQZ;qVHs?;xy$`E_9C4}`RtpD=STd=9Q%Dw|M`M{c*uDdAsoMmVGgRX z0`7MnTCH$4D}@(8i#%$V<%tlF#T}UB83^!;oPm#v$7o_uwIuV=v##_mD^ny$$cN0k zcK#6Su{A_RB@{4QVio1kW3oOv+~gbX<+}^@-o!hKOGT4`;9}mPGqNv+FZ1qym zUV3zdXTne9Gm;0VIW--bSX!?{DoDSd%j?y8ylFiz;#_z;xTPc zF8#OwR+<0_9<`g`W15O&hMwbhK`KUYQxA;D$Y&96nl4S-#!{slLl#JwKAsphLPdep zy`c2q%_^^SF4FMeim8qXUYyGjlp3_%b${{pWtU0?Ibw3Vo$IFgewh8+=d#bw@`kF( z%U=2O+MM_55U^!B%cAW}^PG3s6oYk=lrcyAm@*6XBUcaqX8+~-V>pmwSS2g)JL5o|UNFGzyo*AqiPlL0a-XdZB3W?5yS6_n6KJzUt$ zg%gJ?l;BFb$P94E7moXmPj;y21me?5R0E(STEw#SneB7Vhy#zA*{c#@mQReXm5!E+ za8GsESK-)D&&M5c&&HH&{SjQ`NyqI_NX8ljTYf$~CH`Y?c&hbiR?@BN{0LM*@=mXLBz=ipAs@4;CaaM z4L>_A;9xF1gSZ<4Q`us!Gq$lv0TAXX_dWJth3`Oru^*x6VqtHsvjvZ;ox~7Yoqdqt zj(SA_zQGB@cm=j#TIC>In@nHaFnkN z<`hsN!QWytX|pfypK+f-Qxsp$ujmiUuD*qaV;T{B-e;_e$CF&6?6zow1uueYxUhOc za85MJ@vHNC#XsC1y65Apfco6CUqP*t29*OG3GVI=6>3a@H$e>X^h7lX$8wf~*n!i2 znro^E+OCUfoc(0b9zW}GSA{JN%|m33t|jZNp=sNKn5enSe0h}OliXp+=$ zHdm&}-crDadm{lgsdO9m&16PfLQCR|h*5v}=}^*SCq#R8=L8V^@&uz2HFtd`A+ zTUb~eKYf830GO?FYD3h6B0KZJf|2??3fA*bd~V>NP5Lwl6A_5^pq>!4CDDb+@ebTa zqL7_Z0JJ^!3K(}aQ5z$aF5R3dSu|pZb6WU7F9`vxEz9_*$se_OSTv!|mk#_fRSC2s z(Di-hw6)xp*(X~Zqdu23mZ4-?Tt6hie_P4B4OzD+9Tp~ya;x#g0Xj_dF*>{#{UMe& z{!622Rk6X4k|HkB{E>(IVH=ncTewcdPaN(LEx3=1viP^Q_wT-~qd|xH3UI5LcRJ3bP@lhaa%2S3Vb@JOx9F)C` z1JPzGG=`E>p6@@eI6CBVQdvyla=6j|KyV81?ewH*cM*U_OrZ71$LD*yLQLEF{u&rcu_ z-BNM@+ps`T?|@tsPCl5FU#~?LZCv;w`pMbTbDO6{1_B>2wodsnJX%}NC{UFR;oFNF z@`w)a;`OLYT#r7meIeA}c1li4$Wt9eqV@Qo!6g}J)K7w;Spq|2vz7%tQCiaho0_jN zrUrsR2FRLbDW2|)yL)zvZ9ia1Hudrxk1j&6w==hTXE{ahjoEb(=n%Iv`s zcjVx`e@xSZq~YzD%LmTtVKkPLr8=N6#z#~K)4|I0u?u%uM+%bKi8TE}1N@Ec@*5SN9U~F15)hPuAaW{p}Pi zG~*0Ec8}$c3g-ZzsGO>T@`(IE?Xa`ZHCXZVYmkTF{OH<8m)LWc<8C0UH031}+rO(D1IQ{}@7f3NuQCp) zMt$^uD|Y$$ji0XD-cy*$X7VPDl z>3R8>Q=R?_PGy8A{#lfRQ2f#t7GwPp30}t#gO(j0Vw|MM{8-W~1p zAa)ehq2dv?EFE5Py4{{OzmTi~Ntov~EXudxyH#<~pcolTqn8=w1dHucZ*ov|huDxEHws0I7+=y|vakUN3s^d4y()y@>6XF)n;j!I2$ zrnFQjPeFrslA+o_e>T^FV>vKls^B%{`LIKtBS#US1=Rm{*n#O)^qIXZ*!QW2iy$XR z$wyk`WugDQmsLad3FsoHc5^3Z5Y_7EA;g#MgkI44a0Z&n7mmgI+bl!e91IhiY9M3X zfBjB^IoiK`K6jr8?XEv&9X&uI#M5Z>;RrKf18+J#&NF!39KfV6^|ON9)fM=jF>n_7uGR zGd{-<4+|>o8cWl?JV@UA!M(uK>@>T~ERCfQ^HevxujGz(=NL4|8nU4s#b%qEOYrdH z@NjpRj^<|J-tIexdRt^vSD@ihK4;JL=#XdPUXm{B@5!r`C_26d_qqMB2ms!W{o8;Y zUs{CJS2zHF)4_RS5%4R+#52B$)+{8#+q71*F3(|T4gi>CL5@Klhu-{~%a?LMjj16g zA|&*;^tscK;1&!ez^fuU9n3r}?hkt|%#zk6C5q*v0@()nVEH%|ozsDWJi^=9%7u2YTwQk{K;T}YM`uEM7uL#4Qk;SjaO#$;K;Wr^PWqHEUrt*Z z3Vplg2n!EtpCTBCPVjwy)VI3fFuusDRa^}dxE}X*SRI>C;U870*y!Me=>m)Hfp3!P z1c8SzsI$AFqUrd>9%ox-2SMnYgD|7{)oe~C#dFgZ@6}cn z?A63<9qd6IQqJ={+x05tCt>7;WlUMtxDgU;+CE~RUWKFmZYv1g3-4$GcIM=zyqG&jj?^_}0lTj@qWi!*K6GGcdZ9~8-bPRGlqm61?qxu}WzN~*k;7X`@wq`YcdK)Ep_{g&!`Skbv zi}^qDAYJwL9!4GDFQUZmGh7HWoRu1Q2Q?!R6pYcR2EDTQx)w$kn260~%?q1^z9YOK z&4Iy<+qG9>OVinAHdMUj!#Mq!(#EEMl@w5)8haM{!OzI2ML5K0aLk)`zI@;=2 z6)9@4un%W}N&BuoFcOXQy>2F1bx6~nQF(7f8?39~e zUYsrgB!dL78x5*`@o_FSw{r(x!?pt~kZL(v*UGMiro%8-kuTeB#jal(TgiE!Y{-@8 z;UJP%_xbNCZGT7x9)3$WBK4v$FLBs&71Dwa)HYjN-y6j^8}3ZS-NSvjhve8)IK;;C z+_iz_&G%-7wHYIkO*KuJj5`1B7~6Nzq5ZV}jw|E{oNM198gDjOaN+%0ORzhk$@t)g z1%%)L=Sb7zm%|q2#+l{HJ?+P**^hB^`^|ey#tGDt;Gg+97f6u#R z3ykBDapj?MD8}e$>?Lh^6Uth zD5QTbvek5GSedX7c(AI_OGqls zv7DIr1X2_N`Vl1T-qWq2q36qC2nT{8Ywn)~t}35#c&Kg+a1;yQTo|ar6=3$ERD5)C z`#DhBdU1IA@Jy7e0o3uWADpdNBXj8n>Q@F41}9aKp#g+lC;bqCt607UK6f2t&z^-j!3Leq zReGQ5glhv!xA5^k5HVzh#ij1~2AXYebXCL{NoqneY?Ps7K8Gw;1rMc{FlmccLwvQN zoyu7{cCEL6_qo5&K={}Bwjp!C-WBync5!R*f3b_Sw6sNOFO%oPNDoMb?94l> zGq>%hz@7%dFiZ}G@Ej-tIj?{J@RWYkEtr2Ic`M}I1ABXW=MRGdGljGs1#nN*$jp`p zBm|K$%#Beqt`nzG0msB-41kJsyUdL};h`^f+FuEWR9Knd zp)Q@Ns$J%a8OWJ;h7@-3M^2hgj7MdKCW+@OR(Bb?iu)Z`1CKTD8h>yAoOcKvVmzE& z{wZ(qSHbE0AIPf(_O)e9wDsEDKoQ5QD4Xk3keHTd3>g{MgiP*^+IDjrvo6n9Cxe~q z8tVK`FmI;uZFQcst$OHss}!4sDkUGwK$M}Zv#n%9M~Pe9_vRZ!8(1l+FF}0ie+$mUT_bW|GX@uf*)*?`Jjyw zKhwNnoIT&#nW8fq?Wm0_*C`+q!O76Y4md&AuYf@n41zhwTSe6R^E*4qzLkTROC=k{ zg(DlmJ3RADkOqtNuw5P`Zz>1e+g{*(Y5sp925r)wz`@su!D6>yO3%Jb4mdj~#^3pl z_YL4-gGeb9isZv{-zL(sVtR$Z+vC&a0Y8tNzZB_x024!=8)1!bZuTQZa}hZXx)>mO z^4$tAAncJE?FLG+&FKs1%dN-#p*OOPE7YH$oNDylHpv1pqIpMc`L!eL*}bu2T^Bwe zg@`R+%r{v?{DI%r49&)y!K9Wy-n52+Ky}IT2{yeOE=YHP2ZxalT6|r>ejFMO z5Oyv|Sr@448eiy$KnnvPb-$oH!^b@y``yDwXuMCgA+E~pQ5bACJd2L+zq%?Zew0Y% zTa3sSyR67&pKCY^cQ2>=o$Z@BP5fqTGkVi&I3t@n?R`nYryFRFa>S}tP} zWYaG+YKE^+2sliknOz^K&P%uJfzwg!X4^J**BH8;FewtN^N8Io^qn8Vvdw+*wpL1s zExDV}UHa0;+FUwp8lu_R;D?yZSe`~PZo)29t8Gx$lz>8U1geTlrMfe=-{u;54?8#; zO?z>~-T#NZw~niFUAu(^K>>p~K}3{BLO_s`kY*Cn2$PbKR8m3|kQQW0cMF2jjigd4 z2ofqtD57+Tigd&Lt_R)cJ^THA``c@M?>YbN|MptTt$088eZ?5#8rR?MBY@&+K;-c0 z4ZlG5b%O*wup9S!}k>w~d_q63pxT?t@ynoX%m-;%eir(Ip)4 zXJvMps%m<`Rr)g{a<%(Q6TRO0bN2_dgEDYWtC4%^dG~K70v(jIIepw#c5eu}8Qf;SlQRWVWBSvmzgw!VWGWtdP3mv~m$Vf8vw&H7QH#P^-PpLVpX#QU z&c2=^o}~evt-rQ=&%y5N3yMm+xa(7H447b(Buj2qXw^%0#N;O4pR#09v0 zWVF)UpIma|0>YCck`4Ebo~D*H(~oTPb;}95!z|gnAqYNb_;*j*ffnPnRURCw_b6l^ zik2oO>Fe)rExG%H&cc*|`XGL#sr=3BFI+2Ec4(AjZ9 zWW24dOZ6&N+1?H{njGKA+T^d3|Sn z^S0IPE2Yy29k?9u_weiSV_;6O_!=XR;M|(Y@I>N8OS)GM&l$#HcwzX>mpzVTg~Z+g{vaWC$i)vsJ8 z0zwsqYyDVBDx`uk-Sov%ntosHXLZ$7WRiZw3_=a+oBIEh%|Qy*4)CL-y zzpbjy1SC+R)Bm=>IYQ;W5Uu$5-J9!}e4UV3brH7ek6usp3teY|=5q<)FQ_{T+UamT zlUA)`{HhjsmTJ*p2bp`cdeq=Gw5N;rYWd;5bB?7E~j4%^tcaiCE2UL+IH6B*Y9wDi4_%tG0ZC< z09d@QhAMZr$YMq)`8-u9iaKZqr#)Gra83HRMLM_6DE?>lb!5axd~-G<>-+sP+?5T7 zpsg_8m;2J;M;yzc<9{7>eXshK#`G*8-^w6;XgzaLre!?*!F~n!h#%leE?1+}@9|Ji zTFn2u3bss>z&Ds$xw82XI4W6&0Z8lnHCrX|Bl!3{1{<#PQja7OQ>A-e_l|T<-99J6 z=da5&>dO)$tQvr8Jwr)_2nVFCpi9u5uDv+Og~0H`{|<(~mPy#T{L2ZZqY(A@A~FVv z;3V$b_^0bU3wmmsc>MF(oFm4nN99Z6Ro*B$j+CmLV*BvE*79_X*8M0um-Erl&r#+i z;b&PCqN6Q`ndSMz*|e0DS&eVC{#rDFIZOPmXvVvlG`F|cO$WYi*U?AP_s#rL=%^<(PCNu3)6Y87{7Sc-OF9`RnokljqK*^H zqsN?zA7BGJN)!0NvfpgSvIVzFzVfUA(-)i%qr z`w6&%h854fN!r0@NBIxg%N!saLyyv<=|8)iXTfkMLWBDI=Tm0!LzN4f*vy8bdiX=@ zFP9O?3;*-aPKc7mwbMGK9C#;^rcVA=<`IX#$Us@huaeqvGJ~>fGFtdv9t^F7XC>Nl z>nam^42;k?K<%45>lSocwk1ouP&Swmlbs!|Uweo4JHHaXoS1+lP{r>qrq-*oJOUJB zwnhhk9~Z~N1F|i>$*j9%fw%;kNwol0j%R;<%>O!3S(?Vhw2p;pP*j;#;OJk%N8{$%Cyl9U}6a;VUjvq;b@Gd zOd3GDYArv7@xKnHU|RFQ2O~b)#rYBLK=F6LQ#N@~ltBg|*M!|DAa87lqR)>fB%S%qTS{EOGSlFS0bO~Cj1;aINu zTdx-dy1`zP(TbCB(TkkIr}2P(q9nGS=hSgupFjDWt;5Zri`pdk0MRf@v&74WG)BxV zUUqk){YUxjtRIT+p~v|XR1n_Mmj7CK%QAY!>3&As9j2{dzCodV5T+-yBy|TfliVF3 zbh*Gk| zwu+krSn6qN(Z84|;3R#V z5k3b=4;SO{;E2-#48#Nbq00Q2cj0G*FUAurN8aRNGg%JAap@LCfkVkxohI!UDP+5q zr!&cjCD4!bXl{ZK-UVP<8ire4AO%ZqswxyL9uO8CE{Lu7jK_HIvhc?p$Fe$1T z;O=Qy0;+Q5wo^zJbOCN4)x9bvBVG35qkB{X*( zhAN|BIpG_ab2lsCv0Zl6Q8!%FAm@%Y)41+c z2P-dboyB>mnX2;3^uXbjZ1DtTY5plSc^v2M6^2i#yjQd{ACXa2ZMFt^PL_wvEfGhh zQ*O#)B&rRFeaR(OqP}H~KZh$@)!Wm0M%eKL)h`c1G2i%?VARqMwgSAKmCkNhmR0?6 z&_Z>96lhTSr5e@V>Rf*(ZT9dZnS&E;VAr4~Btvy~nql)t>6LGhgAA!#nS02{_G=TL zczL?-P-;*~I2y{w7=F=8CF4Mbb;uOi>@vXTSeL^3WM{U?<195QyRFYLtSXaWXH79R z0EsbHN`h0&x6vj@S>pclXS$9&p*&^$moQa4owp)8;p~z~og#6f1lXgIsGf$jQ8ZE) zkvxfobbf2PN>hgfecttLDv^rjt$V-U!haPHCl)D^{G4rzY=>=&ZuZGzyOnz?dN6 zJFmqd5M8l?7c_tTNo-*5cmt?g^g8@a+Y?QrwYWI9BCksVG1!gn_F>9C-It`}m7CQD znwqCEj9P`%CSb9nu#kAu6~+QxKm!v(cDjn#FO^6y zRjip;ovZ%P)}BLHLgAShQ!axlA5+%gAZ6m)3@Ou-JVqQD-fPLCo>wEE4NTM3r17rx zg+v&hzq0%(OFmRtytCV?hgjD-IB&ozdES}k|LnCaF>Cs$5;@Qxg8Rz%a_@067L%hm z-v|uwV6$Wd_zX@>X7qPV_jERv>QXy>|d@Ry3HvXdH(P3Tb6;86xRN ziWJG;J-jq%l-rNKyE3bFc_F8Cvk+w)^wJ_iG)Fe587M1W_Lx4FqE*}&$Vr}c7})&XfO$>bPF!lI zxpVxsXWaJ+BZj);P-R3SRmMj>VgCOERmKnM(R>S^%(Ri7oshdzWawR4!QzeF_+4-e zWrX@YwI0+VOE5W`YPKtj*=-`5(>c2d+7G<~!HpRy{3o4(51hW6*n?GbUz_$;c`aOF zu2^W%W>v!X!(8B>bVS`9e!IO?NB@gFr&6DCpq{ZCR^2_fO|1}B3gc!}5!wSRk72

7){2D!I=y0V_V-DTbohmF$#Vs+G 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
M`KpF%klv3$V>5vBLy6-)& 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%0Dy(_rGvN)V~uE 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 diff --git a/doc/标注/210340049_葛朋林.java b/doc/标注/210340049_葛朋林.java deleted file mode 100644 index a4bd44c..0000000 --- a/doc/标注/210340049_葛朋林.java +++ /dev/null @@ -1,873 +0,0 @@ -/* - * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -//NoteEditActivity.java代码标注 -package net.micode.notes.ui; - -import android.app.Activity; -import android.app.AlarmManager; -import android.app.AlertDialog; -import android.app.PendingIntent; -import android.app.SearchManager; -import android.appwidget.AppWidgetManager; -import android.content.ContentUris; -import android.content.Context; -import android.content.DialogInterface; -import android.content.Intent; -import android.content.SharedPreferences; -import android.graphics.Paint; -import android.os.Bundle; -import android.preference.PreferenceManager; -import android.text.Spannable; -import android.text.SpannableString; -import android.text.TextUtils; -import android.text.format.DateUtils; -import android.text.style.BackgroundColorSpan; -import android.util.Log; -import android.view.LayoutInflater; -import android.view.Menu; -import android.view.MenuItem; -import android.view.MotionEvent; -import android.view.View; -import android.view.View.OnClickListener; -import android.view.WindowManager; -import android.widget.CheckBox; -import android.widget.CompoundButton; -import android.widget.CompoundButton.OnCheckedChangeListener; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.TextView; -import android.widget.Toast; - -import net.micode.notes.R; -import net.micode.notes.data.Notes; -import net.micode.notes.data.Notes.TextNote; -import net.micode.notes.model.WorkingNote; -import net.micode.notes.model.WorkingNote.NoteSettingChangedListener; -import net.micode.notes.tool.DataUtils; -import net.micode.notes.tool.ResourceParser; -import net.micode.notes.tool.ResourceParser.TextAppearanceResources; -import net.micode.notes.ui.DateTimePickerDialog.OnDateTimeSetListener; -import net.micode.notes.ui.NoteEditText.OnTextViewChangeListener; -import net.micode.notes.widget.NoteWidgetProvider_2x; -import net.micode.notes.widget.NoteWidgetProvider_4x; - -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - - -public class NoteEditActivity extends Activity implements OnClickListener, - NoteSettingChangedListener, OnTextViewChangeListener { - private class HeadViewHolder { - public TextView tvModified; - - public ImageView ivAlertIcon; - - public TextView tvAlertDate; - - public ImageView ibSetBgColor; - } - - private static final Map sBgSelectorBtnsMap = new HashMap(); - static { - sBgSelectorBtnsMap.put(R.id.iv_bg_yellow, ResourceParser.YELLOW); - sBgSelectorBtnsMap.put(R.id.iv_bg_red, ResourceParser.RED); - sBgSelectorBtnsMap.put(R.id.iv_bg_blue, ResourceParser.BLUE); - sBgSelectorBtnsMap.put(R.id.iv_bg_green, ResourceParser.GREEN); - sBgSelectorBtnsMap.put(R.id.iv_bg_white, ResourceParser.WHITE); - } - - private static final Map sBgSelectorSelectionMap = new HashMap(); - static { - sBgSelectorSelectionMap.put(ResourceParser.YELLOW, R.id.iv_bg_yellow_select); - sBgSelectorSelectionMap.put(ResourceParser.RED, R.id.iv_bg_red_select); - sBgSelectorSelectionMap.put(ResourceParser.BLUE, R.id.iv_bg_blue_select); - sBgSelectorSelectionMap.put(ResourceParser.GREEN, R.id.iv_bg_green_select); - sBgSelectorSelectionMap.put(ResourceParser.WHITE, R.id.iv_bg_white_select); - } - - private static final Map sFontSizeBtnsMap = new HashMap(); - static { - sFontSizeBtnsMap.put(R.id.ll_font_large, ResourceParser.TEXT_LARGE); - sFontSizeBtnsMap.put(R.id.ll_font_small, ResourceParser.TEXT_SMALL); - sFontSizeBtnsMap.put(R.id.ll_font_normal, ResourceParser.TEXT_MEDIUM); - sFontSizeBtnsMap.put(R.id.ll_font_super, ResourceParser.TEXT_SUPER); - } - - private static final Map sFontSelectorSelectionMap = new HashMap(); - static { - sFontSelectorSelectionMap.put(ResourceParser.TEXT_LARGE, R.id.iv_large_select); - sFontSelectorSelectionMap.put(ResourceParser.TEXT_SMALL, R.id.iv_small_select); - sFontSelectorSelectionMap.put(ResourceParser.TEXT_MEDIUM, R.id.iv_medium_select); - sFontSelectorSelectionMap.put(ResourceParser.TEXT_SUPER, R.id.iv_super_select); - } - - private static final String TAG = "NoteEditActivity"; - - private HeadViewHolder mNoteHeaderHolder; - - private View mHeadViewPanel; - - private View mNoteBgColorSelector; - - private View mFontSizeSelector; - - private EditText mNoteEditor; - - private View mNoteEditorPanel; - - private WorkingNote mWorkingNote; - - private SharedPreferences mSharedPrefs; - private int mFontSizeId; - - private static final String PREFERENCE_FONT_SIZE = "pref_font_size"; - - private static final int SHORTCUT_ICON_TITLE_MAX_LEN = 10; - - public static final String TAG_CHECKED = String.valueOf('\u221A'); - public static final String TAG_UNCHECKED = String.valueOf('\u25A1'); - - private LinearLayout mEditTextList; - - private String mUserQuery; - private Pattern mPattern; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - this.setContentView(R.layout.note_edit); - - if (savedInstanceState == null && !initActivityState(getIntent())) { - finish(); - return; - } - initResources(); - } - - /** - * Current activity may be killed when the memory is low. Once it is killed, for another time - * user load this activity, we should restore the former state - */ - @Override - protected void onRestoreInstanceState(Bundle savedInstanceState) { - super.onRestoreInstanceState(savedInstanceState); - if (savedInstanceState != null && savedInstanceState.containsKey(Intent.EXTRA_UID)) { - Intent intent = new Intent(Intent.ACTION_VIEW); - intent.putExtra(Intent.EXTRA_UID, savedInstanceState.getLong(Intent.EXTRA_UID)); - if (!initActivityState(intent)) { - finish(); - return; - } - Log.d(TAG, "Restoring from killed activity"); - } - } - - private boolean initActivityState(Intent intent) { - /** - * If the user specified the {@link Intent#ACTION_VIEW} but not provided with id, - * then jump to the NotesListActivity - */ - mWorkingNote = null; - if (TextUtils.equals(Intent.ACTION_VIEW, intent.getAction())) { - long noteId = intent.getLongExtra(Intent.EXTRA_UID, 0); - mUserQuery = ""; - - /** - * Starting from the searched result - */ - if (intent.hasExtra(SearchManager.EXTRA_DATA_KEY)) { - noteId = Long.parseLong(intent.getStringExtra(SearchManager.EXTRA_DATA_KEY)); - mUserQuery = intent.getStringExtra(SearchManager.USER_QUERY); - } - - if (!DataUtils.visibleInNoteDatabase(getContentResolver(), noteId, Notes.TYPE_NOTE)) { - Intent jump = new Intent(this, NotesListActivity.class); - startActivity(jump); - showToast(R.string.error_note_not_exist); - finish(); - return false; - } else { - mWorkingNote = WorkingNote.load(this, noteId); - if (mWorkingNote == null) { - Log.e(TAG, "load note failed with note id" + noteId); - finish(); - return false; - } - } - getWindow().setSoftInputMode( - WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN - | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); - } else if(TextUtils.equals(Intent.ACTION_INSERT_OR_EDIT, intent.getAction())) { - // New note - long folderId = intent.getLongExtra(Notes.INTENT_EXTRA_FOLDER_ID, 0); - int widgetId = intent.getIntExtra(Notes.INTENT_EXTRA_WIDGET_ID, - AppWidgetManager.INVALID_APPWIDGET_ID); - int widgetType = intent.getIntExtra(Notes.INTENT_EXTRA_WIDGET_TYPE, - Notes.TYPE_WIDGET_INVALIDE); - int bgResId = intent.getIntExtra(Notes.INTENT_EXTRA_BACKGROUND_ID, - ResourceParser.getDefaultBgId(this)); - - // Parse call-record note - String phoneNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); - long callDate = intent.getLongExtra(Notes.INTENT_EXTRA_CALL_DATE, 0); - if (callDate != 0 && phoneNumber != null) { - if (TextUtils.isEmpty(phoneNumber)) { - Log.w(TAG, "The call record number is null"); - } - long noteId = 0; - if ((noteId = DataUtils.getNoteIdByPhoneNumberAndCallDate(getContentResolver(), - phoneNumber, callDate)) > 0) { - mWorkingNote = WorkingNote.load(this, noteId); - if (mWorkingNote == null) { - Log.e(TAG, "load call note failed with note id" + noteId); - finish(); - return false; - } - } else { - mWorkingNote = WorkingNote.createEmptyNote(this, folderId, widgetId, - widgetType, bgResId); - mWorkingNote.convertToCallNote(phoneNumber, callDate); - } - } else { - mWorkingNote = WorkingNote.createEmptyNote(this, folderId, widgetId, widgetType, - bgResId); - } - - getWindow().setSoftInputMode( - WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE - | WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE); - } else { - Log.e(TAG, "Intent not specified action, should not support"); - finish(); - return false; - } - mWorkingNote.setOnSettingStatusChangedListener(this); - return true; - } - - @Override - protected void onResume() { - super.onResume(); - initNoteScreen(); - } - - private void initNoteScreen() { - mNoteEditor.setTextAppearance(this, TextAppearanceResources - .getTexAppearanceResource(mFontSizeId)); - if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { - switchToListMode(mWorkingNote.getContent()); - } else { - mNoteEditor.setText(getHighlightQueryResult(mWorkingNote.getContent(), mUserQuery)); - mNoteEditor.setSelection(mNoteEditor.getText().length()); - } - for (Integer id : sBgSelectorSelectionMap.keySet()) { - findViewById(sBgSelectorSelectionMap.get(id)).setVisibility(View.GONE); - } - mHeadViewPanel.setBackgroundResource(mWorkingNote.getTitleBgResId()); - mNoteEditorPanel.setBackgroundResource(mWorkingNote.getBgColorResId()); - - mNoteHeaderHolder.tvModified.setText(DateUtils.formatDateTime(this, - mWorkingNote.getModifiedDate(), DateUtils.FORMAT_SHOW_DATE - | DateUtils.FORMAT_NUMERIC_DATE | DateUtils.FORMAT_SHOW_TIME - | DateUtils.FORMAT_SHOW_YEAR)); - - /** - * TODO: Add the menu for setting alert. Currently disable it because the DateTimePicker - * is not ready - */ - showAlertHeader(); - } - - private void showAlertHeader() { - if (mWorkingNote.hasClockAlert()) { - long time = System.currentTimeMillis(); - if (time > mWorkingNote.getAlertDate()) { - mNoteHeaderHolder.tvAlertDate.setText(R.string.note_alert_expired); - } else { - mNoteHeaderHolder.tvAlertDate.setText(DateUtils.getRelativeTimeSpanString( - mWorkingNote.getAlertDate(), time, DateUtils.MINUTE_IN_MILLIS)); - } - mNoteHeaderHolder.tvAlertDate.setVisibility(View.VISIBLE); - mNoteHeaderHolder.ivAlertIcon.setVisibility(View.VISIBLE); - } else { - mNoteHeaderHolder.tvAlertDate.setVisibility(View.GONE); - mNoteHeaderHolder.ivAlertIcon.setVisibility(View.GONE); - }; - } - - @Override - protected void onNewIntent(Intent intent) { - super.onNewIntent(intent); - initActivityState(intent); - } - - @Override - protected void onSaveInstanceState(Bundle outState) { - super.onSaveInstanceState(outState); - /** - * For new note without note id, we should firstly save it to - * generate a id. If the editing note is not worth saving, there - * is no id which is equivalent to create new note - */ - if (!mWorkingNote.existInDatabase()) { - saveNote(); - } - outState.putLong(Intent.EXTRA_UID, mWorkingNote.getNoteId()); - Log.d(TAG, "Save working note id: " + mWorkingNote.getNoteId() + " onSaveInstanceState"); - } - - @Override - public boolean dispatchTouchEvent(MotionEvent ev) { - if (mNoteBgColorSelector.getVisibility() == View.VISIBLE - && !inRangeOfView(mNoteBgColorSelector, ev)) { - mNoteBgColorSelector.setVisibility(View.GONE); - return true; - } - - if (mFontSizeSelector.getVisibility() == View.VISIBLE - && !inRangeOfView(mFontSizeSelector, ev)) { - mFontSizeSelector.setVisibility(View.GONE); - return true; - } - return super.dispatchTouchEvent(ev); - } - - private boolean inRangeOfView(View view, MotionEvent ev) { - int []location = new int[2]; - view.getLocationOnScreen(location); - int x = location[0]; - int y = location[1]; - if (ev.getX() < x - || ev.getX() > (x + view.getWidth()) - || ev.getY() < y - || ev.getY() > (y + view.getHeight())) { - return false; - } - return true; - } - - private void initResources() { - mHeadViewPanel = findViewById(R.id.note_title); - mNoteHeaderHolder = new HeadViewHolder(); - mNoteHeaderHolder.tvModified = (TextView) findViewById(R.id.tv_modified_date); - mNoteHeaderHolder.ivAlertIcon = (ImageView) findViewById(R.id.iv_alert_icon); - mNoteHeaderHolder.tvAlertDate = (TextView) findViewById(R.id.tv_alert_date); - mNoteHeaderHolder.ibSetBgColor = (ImageView) findViewById(R.id.btn_set_bg_color); - mNoteHeaderHolder.ibSetBgColor.setOnClickListener(this); - mNoteEditor = (EditText) findViewById(R.id.note_edit_view); - mNoteEditorPanel = findViewById(R.id.sv_note_edit); - mNoteBgColorSelector = findViewById(R.id.note_bg_color_selector); - for (int id : sBgSelectorBtnsMap.keySet()) { - ImageView iv = (ImageView) findViewById(id); - iv.setOnClickListener(this); - } - - mFontSizeSelector = findViewById(R.id.font_size_selector); - for (int id : sFontSizeBtnsMap.keySet()) { - View view = findViewById(id); - view.setOnClickListener(this); - }; - mSharedPrefs = PreferenceManager.getDefaultSharedPreferences(this); - mFontSizeId = mSharedPrefs.getInt(PREFERENCE_FONT_SIZE, ResourceParser.BG_DEFAULT_FONT_SIZE); - /** - * HACKME: Fix bug of store the resource id in shared preference. - * The id may larger than the length of resources, in this case, - * return the {@link ResourceParser#BG_DEFAULT_FONT_SIZE} - */ - if(mFontSizeId >= TextAppearanceResources.getResourcesSize()) { - mFontSizeId = ResourceParser.BG_DEFAULT_FONT_SIZE; - } - mEditTextList = (LinearLayout) findViewById(R.id.note_edit_list); - } - - @Override - protected void onPause() { - super.onPause(); - if(saveNote()) { - Log.d(TAG, "Note data was saved with length:" + mWorkingNote.getContent().length()); - } - clearSettingState(); - } - - private void updateWidget() { - Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_UPDATE); - if (mWorkingNote.getWidgetType() == Notes.TYPE_WIDGET_2X) { - intent.setClass(this, NoteWidgetProvider_2x.class); - } else if (mWorkingNote.getWidgetType() == Notes.TYPE_WIDGET_4X) { - intent.setClass(this, NoteWidgetProvider_4x.class); - } else { - Log.e(TAG, "Unspported widget type"); - return; - } - - intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, new int[] { - mWorkingNote.getWidgetId() - }); - - sendBroadcast(intent); - setResult(RESULT_OK, intent); - } - - public void onClick(View v) { - int id = v.getId(); - if (id == R.id.btn_set_bg_color) { - mNoteBgColorSelector.setVisibility(View.VISIBLE); - findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility( - - View.VISIBLE); - } else if (sBgSelectorBtnsMap.containsKey(id)) { - findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility( - View.GONE); - mWorkingNote.setBgColorId(sBgSelectorBtnsMap.get(id)); - mNoteBgColorSelector.setVisibility(View.GONE); - } else if (sFontSizeBtnsMap.containsKey(id)) { - findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.GONE); - mFontSizeId = sFontSizeBtnsMap.get(id); - mSharedPrefs.edit().putInt(PREFERENCE_FONT_SIZE, mFontSizeId).commit(); - findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.VISIBLE); - if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { - getWorkingText(); - switchToListMode(mWorkingNote.getContent()); - } else { - mNoteEditor.setTextAppearance(this, - TextAppearanceResources.getTexAppearanceResource(mFontSizeId)); - } - mFontSizeSelector.setVisibility(View.GONE); - } - } - - @Override - public void onBackPressed() { - if(clearSettingState()) { - return; - } - - saveNote(); - super.onBackPressed(); - } - - private boolean clearSettingState() { - if (mNoteBgColorSelector.getVisibility() == View.VISIBLE) { - mNoteBgColorSelector.setVisibility(View.GONE); - return true; - } else if (mFontSizeSelector.getVisibility() == View.VISIBLE) { - mFontSizeSelector.setVisibility(View.GONE); - return true; - } - return false; - } - - public void onBackgroundColorChanged() { - findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility( - View.VISIBLE); - mNoteEditorPanel.setBackgroundResource(mWorkingNote.getBgColorResId()); - mHeadViewPanel.setBackgroundResource(mWorkingNote.getTitleBgResId()); - } - - @Override - public boolean onPrepareOptionsMenu(Menu menu) { - if (isFinishing()) { - return true; - } - clearSettingState(); - menu.clear(); - if (mWorkingNote.getFolderId() == Notes.ID_CALL_RECORD_FOLDER) { - getMenuInflater().inflate(R.menu.call_note_edit, menu); - } else { - getMenuInflater().inflate(R.menu.note_edit, menu); - } - if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { - menu.findItem(R.id.menu_list_mode).setTitle(R.string.menu_normal_mode); - } else { - menu.findItem(R.id.menu_list_mode).setTitle(R.string.menu_list_mode); - } - if (mWorkingNote.hasClockAlert()) { - menu.findItem(R.id.menu_alert).setVisible(false); - } else { - menu.findItem(R.id.menu_delete_remind).setVisible(false); - } - return true; - } - - @Override - public boolean onOptionsItemSelected(MenuItem item) { - switch (item.getItemId()) { - case R.id.menu_new_note: - createNewNote(); - break; - case R.id.menu_delete: - AlertDialog.Builder builder = new AlertDialog.Builder(this); - builder.setTitle(getString(R.string.alert_title_delete)); - builder.setIcon(android.R.drawable.ic_dialog_alert); - builder.setMessage(getString(R.string.alert_message_delete_note)); - builder.setPositiveButton(android.R.string.ok, - new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int which) { - deleteCurrentNote(); - finish(); - } - }); - builder.setNegativeButton(android.R.string.cancel, null); - builder.show(); - break; - case R.id.menu_font_size: - mFontSizeSelector.setVisibility(View.VISIBLE); - findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.VISIBLE); - break; - case R.id.menu_list_mode: - mWorkingNote.setCheckListMode(mWorkingNote.getCheckListMode() == 0 ? - TextNote.MODE_CHECK_LIST : 0); - break; - case R.id.menu_share: - getWorkingText(); - sendTo(this, mWorkingNote.getContent()); - break; - case R.id.menu_send_to_desktop: - sendToDesktop(); - break; - case R.id.menu_alert: - setReminder(); - break; - case R.id.menu_delete_remind: - mWorkingNote.setAlertDate(0, false); - break; - default: - break; - } - return true; - } - - private void setReminder() { - DateTimePickerDialog d = new DateTimePickerDialog(this, System.currentTimeMillis()); - d.setOnDateTimeSetListener(new OnDateTimeSetListener() { - public void OnDateTimeSet(AlertDialog dialog, long date) { - mWorkingNote.setAlertDate(date , true); - } - }); - d.show(); - } - - /** - * Share note to apps that support {@link Intent#ACTION_SEND} action - * and {@text/plain} type - */ - private void sendTo(Context context, String info) { - Intent intent = new Intent(Intent.ACTION_SEND); - intent.putExtra(Intent.EXTRA_TEXT, info); - intent.setType("text/plain"); - context.startActivity(intent); - } - - private void createNewNote() { - // Firstly, save current editing notes - saveNote(); - - // For safety, start a new NoteEditActivity - finish(); - Intent intent = new Intent(this, NoteEditActivity.class); - intent.setAction(Intent.ACTION_INSERT_OR_EDIT); - intent.putExtra(Notes.INTENT_EXTRA_FOLDER_ID, mWorkingNote.getFolderId()); - startActivity(intent); - } - - private void deleteCurrentNote() { - if (mWorkingNote.existInDatabase()) { - HashSet ids = new HashSet(); - long id = mWorkingNote.getNoteId(); - if (id != Notes.ID_ROOT_FOLDER) { - ids.add(id); - } else { - Log.d(TAG, "Wrong note id, should not happen"); - } - if (!isSyncMode()) { - if (!DataUtils.batchDeleteNotes(getContentResolver(), ids)) { - Log.e(TAG, "Delete Note error"); - } - } else { - if (!DataUtils.batchMoveToFolder(getContentResolver(), ids, Notes.ID_TRASH_FOLER)) { - Log.e(TAG, "Move notes to trash folder error, should not happens"); - } - } - } - mWorkingNote.markDeleted(true); - } - - private boolean isSyncMode() { - return NotesPreferenceActivity.getSyncAccountName(this).trim().length() > 0; - } - - public void onClockAlertChanged(long date, boolean set) { - /** - * User could set clock to an unsaved note, so before setting the - * alert clock, we should save the note first - */ - if (!mWorkingNote.existInDatabase()) { - saveNote(); - } - if (mWorkingNote.getNoteId() > 0) { - Intent intent = new Intent(this, AlarmReceiver.class); - intent.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, mWorkingNote.getNoteId())); - PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0); - AlarmManager alarmManager = ((AlarmManager) getSystemService(ALARM_SERVICE)); - showAlertHeader(); - if(!set) { - alarmManager.cancel(pendingIntent); - } else { - alarmManager.set(AlarmManager.RTC_WAKEUP, date, pendingIntent); - } - } else { - /** - * There is the condition that user has input nothing (the note is - * not worthy saving), we have no note id, remind the user that he - * should input something - */ - Log.e(TAG, "Clock alert setting error"); - showToast(R.string.error_note_empty_for_clock); - } - } - - public void onWidgetChanged() { - updateWidget(); - } - - public void onEditTextDelete(int index, String text) { - int childCount = mEditTextList.getChildCount(); - if (childCount == 1) { - return; - } - - for (int i = index + 1; i < childCount; i++) { - ((NoteEditText) mEditTextList.getChildAt(i).findViewById(R.id.et_edit_text)) - .setIndex(i - 1); - } - - mEditTextList.removeViewAt(index); - NoteEditText edit = null; - if(index == 0) { - edit = (NoteEditText) mEditTextList.getChildAt(0).findViewById( - R.id.et_edit_text); - } else { - edit = (NoteEditText) mEditTextList.getChildAt(index - 1).findViewById( - R.id.et_edit_text); - } - int length = edit.length(); - edit.append(text); - edit.requestFocus(); - edit.setSelection(length); - } - - public void onEditTextEnter(int index, String text) { - /** - * Should not happen, check for debug - */ - if(index > mEditTextList.getChildCount()) { - Log.e(TAG, "Index out of mEditTextList boundrary, should not happen"); - } - - View view = getListItem(text, index); - mEditTextList.addView(view, index); - NoteEditText edit = (NoteEditText) view.findViewById(R.id.et_edit_text); - edit.requestFocus(); - edit.setSelection(0); - for (int i = index + 1; i < mEditTextList.getChildCount(); i++) { - ((NoteEditText) mEditTextList.getChildAt(i).findViewById(R.id.et_edit_text)) - .setIndex(i); - } - } - - private void switchToListMode(String text) { - mEditTextList.removeAllViews(); - String[] items = text.split("\n"); - int index = 0; - for (String item : items) { - if(!TextUtils.isEmpty(item)) { - mEditTextList.addView(getListItem(item, index)); - index++; - } - } - mEditTextList.addView(getListItem("", index)); - mEditTextList.getChildAt(index).findViewById(R.id.et_edit_text).requestFocus(); - - mNoteEditor.setVisibility(View.GONE); - mEditTextList.setVisibility(View.VISIBLE); - } - - private Spannable getHighlightQueryResult(String fullText, String userQuery) { - SpannableString spannable = new SpannableString(fullText == null ? "" : fullText); - if (!TextUtils.isEmpty(userQuery)) { - mPattern = Pattern.compile(userQuery); - Matcher m = mPattern.matcher(fullText); - int start = 0; - while (m.find(start)) { - spannable.setSpan( - new BackgroundColorSpan(this.getResources().getColor( - R.color.user_query_highlight)), m.start(), m.end(), - Spannable.SPAN_INCLUSIVE_EXCLUSIVE); - start = m.end(); - } - } - return spannable; - } - - private View getListItem(String item, int index) { - View view = LayoutInflater.from(this).inflate(R.layout.note_edit_list_item, null); - final NoteEditText edit = (NoteEditText) view.findViewById(R.id.et_edit_text); - edit.setTextAppearance(this, TextAppearanceResources.getTexAppearanceResource(mFontSizeId)); - CheckBox cb = ((CheckBox) view.findViewById(R.id.cb_edit_item)); - cb.setOnCheckedChangeListener(new OnCheckedChangeListener() { - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - if (isChecked) { - edit.setPaintFlags(edit.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); - } else { - edit.setPaintFlags(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); - } - } - }); - - if (item.startsWith(TAG_CHECKED)) { - cb.setChecked(true); - edit.setPaintFlags(edit.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); - item = item.substring(TAG_CHECKED.length(), item.length()).trim(); - } else if (item.startsWith(TAG_UNCHECKED)) { - cb.setChecked(false); - edit.setPaintFlags(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); - item = item.substring(TAG_UNCHECKED.length(), item.length()).trim(); - } - - edit.setOnTextViewChangeListener(this); - edit.setIndex(index); - edit.setText(getHighlightQueryResult(item, mUserQuery)); - return view; - } - - public void onTextChange(int index, boolean hasText) { - if (index >= mEditTextList.getChildCount()) { - Log.e(TAG, "Wrong index, should not happen"); - return; - } - if(hasText) { - mEditTextList.getChildAt(index).findViewById(R.id.cb_edit_item).setVisibility(View.VISIBLE); - } else { - mEditTextList.getChildAt(index).findViewById(R.id.cb_edit_item).setVisibility(View.GONE); - } - } - - public void onCheckListModeChanged(int oldMode, int newMode) { - if (newMode == TextNote.MODE_CHECK_LIST) { - switchToListMode(mNoteEditor.getText().toString()); - } else { - if (!getWorkingText()) { - mWorkingNote.setWorkingText(mWorkingNote.getContent().replace(TAG_UNCHECKED + " ", - "")); - } - mNoteEditor.setText(getHighlightQueryResult(mWorkingNote.getContent(), mUserQuery)); - mEditTextList.setVisibility(View.GONE); - mNoteEditor.setVisibility(View.VISIBLE); - } - } - - private boolean getWorkingText() { - boolean hasChecked = false; - if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { - StringBuilder sb = new StringBuilder(); - for (int i = 0; i < mEditTextList.getChildCount(); i++) { - View view = mEditTextList.getChildAt(i); - NoteEditText edit = (NoteEditText) view.findViewById(R.id.et_edit_text); - if (!TextUtils.isEmpty(edit.getText())) { - if (((CheckBox) view.findViewById(R.id.cb_edit_item)).isChecked()) { - sb.append(TAG_CHECKED).append(" ").append(edit.getText()).append("\n"); - hasChecked = true; - } else { - sb.append(TAG_UNCHECKED).append(" ").append(edit.getText()).append("\n"); - } - } - } - mWorkingNote.setWorkingText(sb.toString()); - } else { - mWorkingNote.setWorkingText(mNoteEditor.getText().toString()); - } - return hasChecked; - } - - private boolean saveNote() { - getWorkingText(); - boolean saved = mWorkingNote.saveNote(); - if (saved) { - /** - * There are two modes from List view to edit view, open one note, - * create/edit a node. Opening node requires to the original - * position in the list when back from edit view, while creating a - * new node requires to the top of the list. This code - * {@link #RESULT_OK} is used to identify the create/edit state - */ - setResult(RESULT_OK); - } - return saved; - } - - private void sendToDesktop() { - /** - * Before send message to home, we should make sure that current - * editing note is exists in databases. So, for new note, firstly - * save it - */ - if (!mWorkingNote.existInDatabase()) { - saveNote(); - } - - if (mWorkingNote.getNoteId() > 0) { - Intent sender = new Intent(); - Intent shortcutIntent = new Intent(this, NoteEditActivity.class); - shortcutIntent.setAction(Intent.ACTION_VIEW); - shortcutIntent.putExtra(Intent.EXTRA_UID, mWorkingNote.getNoteId()); - sender.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); - sender.putExtra(Intent.EXTRA_SHORTCUT_NAME, - makeShortcutIconTitle(mWorkingNote.getContent())); - sender.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, - Intent.ShortcutIconResource.fromContext(this, R.drawable.icon_app)); - sender.putExtra("duplicate", true); - sender.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); - showToast(R.string.info_note_enter_desktop); - sendBroadcast(sender); - } else { - /** - * There is the condition that user has input nothing (the note is - * not worthy saving), we have no note id, remind the user that he - * should input something - */ - Log.e(TAG, "Send to desktop error"); - showToast(R.string.error_note_empty_for_send_to_desktop); - } - } - - private String makeShortcutIconTitle(String content) { - content = content.replace(TAG_CHECKED, ""); - content = content.replace(TAG_UNCHECKED, ""); - return content.length() > SHORTCUT_ICON_TITLE_MAX_LEN ? content.substring(0, - SHORTCUT_ICON_TITLE_MAX_LEN) : content; - } - - private void showToast(int resId) { - showToast(resId, Toast.LENGTH_SHORT); - } - - private void showToast(int resId, int duration) { - Toast.makeText(this, resId, duration).show(); - } -} diff --git a/doc/标注/210340049_葛朋林/NoteEditActivity.java b/doc/标注/210340049_葛朋林/NoteEditActivity.java deleted file mode 100644 index 96a9ff8..0000000 --- a/doc/标注/210340049_葛朋林/NoteEditActivity.java +++ /dev/null @@ -1,873 +0,0 @@ -/* - * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package net.micode.notes.ui; - -import android.app.Activity; -import android.app.AlarmManager; -import android.app.AlertDialog; -import android.app.PendingIntent; -import android.app.SearchManager; -import android.appwidget.AppWidgetManager; -import android.content.ContentUris; -import android.content.Context; -import android.content.DialogInterface; -import android.content.Intent; -import android.content.SharedPreferences; -import android.graphics.Paint; -import android.os.Bundle; -import android.preference.PreferenceManager; -import android.text.Spannable; -import android.text.SpannableString; -import android.text.TextUtils; -import android.text.format.DateUtils; -import android.text.style.BackgroundColorSpan; -import android.util.Log; -import android.view.LayoutInflater; -import android.view.Menu; -import android.view.MenuItem; -import android.view.MotionEvent; -import android.view.View; -import android.view.View.OnClickListener; -import android.view.WindowManager; -import android.widget.CheckBox; -import android.widget.CompoundButton; -import android.widget.CompoundButton.OnCheckedChangeListener; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.TextView; -import android.widget.Toast; - -import net.micode.notes.R; -import net.micode.notes.data.Notes; -import net.micode.notes.data.Notes.TextNote; -import net.micode.notes.model.WorkingNote; -import net.micode.notes.model.WorkingNote.NoteSettingChangedListener; -import net.micode.notes.tool.DataUtils; -import net.micode.notes.tool.ResourceParser; -import net.micode.notes.tool.ResourceParser.TextAppearanceResources; -import net.micode.notes.ui.DateTimePickerDialog.OnDateTimeSetListener; -import net.micode.notes.ui.NoteEditText.OnTextViewChangeListener; -import net.micode.notes.widget.NoteWidgetProvider_2x; -import net.micode.notes.widget.NoteWidgetProvider_4x; - -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - - -public class NoteEditActivity extends Activity implements OnClickListener, - NoteSettingChangedListener, OnTextViewChangeListener { - private class HeadViewHolder { - public TextView tvModified; - - public ImageView ivAlertIcon; - - public TextView tvAlertDate; - - public ImageView ibSetBgColor; - } - - private static final Map sBgSelectorBtnsMap = new HashMap(); - static { - sBgSelectorBtnsMap.put(R.id.iv_bg_yellow, ResourceParser.YELLOW); - sBgSelectorBtnsMap.put(R.id.iv_bg_red, ResourceParser.RED); - sBgSelectorBtnsMap.put(R.id.iv_bg_blue, ResourceParser.BLUE); - sBgSelectorBtnsMap.put(R.id.iv_bg_green, ResourceParser.GREEN); - sBgSelectorBtnsMap.put(R.id.iv_bg_white, ResourceParser.WHITE); - } - - private static final Map sBgSelectorSelectionMap = new HashMap(); - static { - sBgSelectorSelectionMap.put(ResourceParser.YELLOW, R.id.iv_bg_yellow_select); - sBgSelectorSelectionMap.put(ResourceParser.RED, R.id.iv_bg_red_select); - sBgSelectorSelectionMap.put(ResourceParser.BLUE, R.id.iv_bg_blue_select); - sBgSelectorSelectionMap.put(ResourceParser.GREEN, R.id.iv_bg_green_select); - sBgSelectorSelectionMap.put(ResourceParser.WHITE, R.id.iv_bg_white_select); - } - - private static final Map sFontSizeBtnsMap = new HashMap(); - static { - sFontSizeBtnsMap.put(R.id.ll_font_large, ResourceParser.TEXT_LARGE); - sFontSizeBtnsMap.put(R.id.ll_font_small, ResourceParser.TEXT_SMALL); - sFontSizeBtnsMap.put(R.id.ll_font_normal, ResourceParser.TEXT_MEDIUM); - sFontSizeBtnsMap.put(R.id.ll_font_super, ResourceParser.TEXT_SUPER); - } - - private static final Map sFontSelectorSelectionMap = new HashMap(); - static { - sFontSelectorSelectionMap.put(ResourceParser.TEXT_LARGE, R.id.iv_large_select); - sFontSelectorSelectionMap.put(ResourceParser.TEXT_SMALL, R.id.iv_small_select); - sFontSelectorSelectionMap.put(ResourceParser.TEXT_MEDIUM, R.id.iv_medium_select); - sFontSelectorSelectionMap.put(ResourceParser.TEXT_SUPER, R.id.iv_super_select); - } - - private static final String TAG = "NoteEditActivity"; - - private HeadViewHolder mNoteHeaderHolder; - - private View mHeadViewPanel; - - private View mNoteBgColorSelector; - - private View mFontSizeSelector; - - private EditText mNoteEditor; - - private View mNoteEditorPanel; - - private WorkingNote mWorkingNote; - - private SharedPreferences mSharedPrefs; - private int mFontSizeId; - - private static final String PREFERENCE_FONT_SIZE = "pref_font_size"; - - private static final int SHORTCUT_ICON_TITLE_MAX_LEN = 10; - - public static final String TAG_CHECKED = String.valueOf('\u221A'); - public static final String TAG_UNCHECKED = String.valueOf('\u25A1'); - - private LinearLayout mEditTextList; - - private String mUserQuery; - private Pattern mPattern; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - this.setContentView(R.layout.note_edit); - - if (savedInstanceState == null && !initActivityState(getIntent())) { - finish(); - return; - } - initResources(); - } - - /** - * Current activity may be killed when the memory is low. Once it is killed, for another time - * user load this activity, we should restore the former state - */ - @Override - protected void onRestoreInstanceState(Bundle savedInstanceState) { - super.onRestoreInstanceState(savedInstanceState); - if (savedInstanceState != null && savedInstanceState.containsKey(Intent.EXTRA_UID)) { - Intent intent = new Intent(Intent.ACTION_VIEW); - intent.putExtra(Intent.EXTRA_UID, savedInstanceState.getLong(Intent.EXTRA_UID)); - if (!initActivityState(intent)) { - finish(); - return; - } - Log.d(TAG, "Restoring from killed activity"); - } - } - - private boolean initActivityState(Intent intent) { - /** - * If the user specified the {@link Intent#ACTION_VIEW} but not provided with id, - * then jump to the NotesListActivity - */ - mWorkingNote = null; - if (TextUtils.equals(Intent.ACTION_VIEW, intent.getAction())) { - long noteId = intent.getLongExtra(Intent.EXTRA_UID, 0); - mUserQuery = ""; - - /** - * Starting from the searched result - */ - if (intent.hasExtra(SearchManager.EXTRA_DATA_KEY)) { - noteId = Long.parseLong(intent.getStringExtra(SearchManager.EXTRA_DATA_KEY)); - mUserQuery = intent.getStringExtra(SearchManager.USER_QUERY); - } - - if (!DataUtils.visibleInNoteDatabase(getContentResolver(), noteId, Notes.TYPE_NOTE)) { - Intent jump = new Intent(this, NotesListActivity.class); - startActivity(jump); - showToast(R.string.error_note_not_exist); - finish(); - return false; - } else { - mWorkingNote = WorkingNote.load(this, noteId); - if (mWorkingNote == null) { - Log.e(TAG, "load note failed with note id" + noteId); - finish(); - return false; - } - } - getWindow().setSoftInputMode( - WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN - | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); - } else if(TextUtils.equals(Intent.ACTION_INSERT_OR_EDIT, intent.getAction())) { - // New note - long folderId = intent.getLongExtra(Notes.INTENT_EXTRA_FOLDER_ID, 0); - int widgetId = intent.getIntExtra(Notes.INTENT_EXTRA_WIDGET_ID, - AppWidgetManager.INVALID_APPWIDGET_ID); - int widgetType = intent.getIntExtra(Notes.INTENT_EXTRA_WIDGET_TYPE, - Notes.TYPE_WIDGET_INVALIDE); - int bgResId = intent.getIntExtra(Notes.INTENT_EXTRA_BACKGROUND_ID, - ResourceParser.getDefaultBgId(this)); - - // Parse call-record note - String phoneNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); - long callDate = intent.getLongExtra(Notes.INTENT_EXTRA_CALL_DATE, 0); - if (callDate != 0 && phoneNumber != null) { - if (TextUtils.isEmpty(phoneNumber)) { - Log.w(TAG, "The call record number is null"); - } - long noteId = 0; - if ((noteId = DataUtils.getNoteIdByPhoneNumberAndCallDate(getContentResolver(), - phoneNumber, callDate)) > 0) { - mWorkingNote = WorkingNote.load(this, noteId); - if (mWorkingNote == null) { - Log.e(TAG, "load call note failed with note id" + noteId); - finish(); - return false; - } - } else { - mWorkingNote = WorkingNote.createEmptyNote(this, folderId, widgetId, - widgetType, bgResId); - mWorkingNote.convertToCallNote(phoneNumber, callDate); - } - } else { - mWorkingNote = WorkingNote.createEmptyNote(this, folderId, widgetId, widgetType, - bgResId); - } - - getWindow().setSoftInputMode( - WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE - | WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE); - } else { - Log.e(TAG, "Intent not specified action, should not support"); - finish(); - return false; - } - mWorkingNote.setOnSettingStatusChangedListener(this); - return true; - } - - @Override - protected void onResume() { - super.onResume(); - initNoteScreen(); - } - - private void initNoteScreen() { - mNoteEditor.setTextAppearance(this, TextAppearanceResources - .getTexAppearanceResource(mFontSizeId)); - if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { - switchToListMode(mWorkingNote.getContent()); - } else { - mNoteEditor.setText(getHighlightQueryResult(mWorkingNote.getContent(), mUserQuery)); - mNoteEditor.setSelection(mNoteEditor.getText().length()); - } - for (Integer id : sBgSelectorSelectionMap.keySet()) { - findViewById(sBgSelectorSelectionMap.get(id)).setVisibility(View.GONE); - } - mHeadViewPanel.setBackgroundResource(mWorkingNote.getTitleBgResId()); - mNoteEditorPanel.setBackgroundResource(mWorkingNote.getBgColorResId()); - - mNoteHeaderHolder.tvModified.setText(DateUtils.formatDateTime(this, - mWorkingNote.getModifiedDate(), DateUtils.FORMAT_SHOW_DATE - | DateUtils.FORMAT_NUMERIC_DATE | DateUtils.FORMAT_SHOW_TIME - | DateUtils.FORMAT_SHOW_YEAR)); - - /** - * TODO: Add the menu for setting alert. Currently disable it because the DateTimePicker - * is not ready - */ - showAlertHeader(); - } - - private void showAlertHeader() { - if (mWorkingNote.hasClockAlert()) { - long time = System.currentTimeMillis(); - if (time > mWorkingNote.getAlertDate()) { - mNoteHeaderHolder.tvAlertDate.setText(R.string.note_alert_expired); - } else { - mNoteHeaderHolder.tvAlertDate.setText(DateUtils.getRelativeTimeSpanString( - mWorkingNote.getAlertDate(), time, DateUtils.MINUTE_IN_MILLIS)); - } - mNoteHeaderHolder.tvAlertDate.setVisibility(View.VISIBLE); - mNoteHeaderHolder.ivAlertIcon.setVisibility(View.VISIBLE); - } else { - mNoteHeaderHolder.tvAlertDate.setVisibility(View.GONE); - mNoteHeaderHolder.ivAlertIcon.setVisibility(View.GONE); - }; - } - - @Override - protected void onNewIntent(Intent intent) { - super.onNewIntent(intent); - initActivityState(intent); - } - - @Override - protected void onSaveInstanceState(Bundle outState) { - super.onSaveInstanceState(outState); - /** - * For new note without note id, we should firstly save it to - * generate a id. If the editing note is not worth saving, there - * is no id which is equivalent to create new note - */ - if (!mWorkingNote.existInDatabase()) { - saveNote(); - } - outState.putLong(Intent.EXTRA_UID, mWorkingNote.getNoteId()); - Log.d(TAG, "Save working note id: " + mWorkingNote.getNoteId() + " onSaveInstanceState"); - } - - @Override - public boolean dispatchTouchEvent(MotionEvent ev) { - if (mNoteBgColorSelector.getVisibility() == View.VISIBLE - && !inRangeOfView(mNoteBgColorSelector, ev)) { - mNoteBgColorSelector.setVisibility(View.GONE); - return true; - } - - if (mFontSizeSelector.getVisibility() == View.VISIBLE - && !inRangeOfView(mFontSizeSelector, ev)) { - mFontSizeSelector.setVisibility(View.GONE); - return true; - } - return super.dispatchTouchEvent(ev); - } - - private boolean inRangeOfView(View view, MotionEvent ev) { - int []location = new int[2]; - view.getLocationOnScreen(location); - int x = location[0]; - int y = location[1]; - if (ev.getX() < x - || ev.getX() > (x + view.getWidth()) - || ev.getY() < y - || ev.getY() > (y + view.getHeight())) { - return false; - } - return true; - } - - private void initResources() { - mHeadViewPanel = findViewById(R.id.note_title); - mNoteHeaderHolder = new HeadViewHolder(); - mNoteHeaderHolder.tvModified = (TextView) findViewById(R.id.tv_modified_date); - mNoteHeaderHolder.ivAlertIcon = (ImageView) findViewById(R.id.iv_alert_icon); - mNoteHeaderHolder.tvAlertDate = (TextView) findViewById(R.id.tv_alert_date); - mNoteHeaderHolder.ibSetBgColor = (ImageView) findViewById(R.id.btn_set_bg_color); - mNoteHeaderHolder.ibSetBgColor.setOnClickListener(this); - mNoteEditor = (EditText) findViewById(R.id.note_edit_view); - mNoteEditorPanel = findViewById(R.id.sv_note_edit); - mNoteBgColorSelector = findViewById(R.id.note_bg_color_selector); - for (int id : sBgSelectorBtnsMap.keySet()) { - ImageView iv = (ImageView) findViewById(id); - iv.setOnClickListener(this); - } - - mFontSizeSelector = findViewById(R.id.font_size_selector); - for (int id : sFontSizeBtnsMap.keySet()) { - View view = findViewById(id); - view.setOnClickListener(this); - }; - mSharedPrefs = PreferenceManager.getDefaultSharedPreferences(this); - mFontSizeId = mSharedPrefs.getInt(PREFERENCE_FONT_SIZE, ResourceParser.BG_DEFAULT_FONT_SIZE); - /** - * HACKME: Fix bug of store the resource id in shared preference. - * The id may larger than the length of resources, in this case, - * return the {@link ResourceParser#BG_DEFAULT_FONT_SIZE} - */ - if(mFontSizeId >= TextAppearanceResources.getResourcesSize()) { - mFontSizeId = ResourceParser.BG_DEFAULT_FONT_SIZE; - } - mEditTextList = (LinearLayout) findViewById(R.id.note_edit_list); - } - - @Override - protected void onPause() { - super.onPause(); - if(saveNote()) { - Log.d(TAG, "Note data was saved with length:" + mWorkingNote.getContent().length()); - } - clearSettingState(); - } - - private void updateWidget() { - Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_UPDATE); - if (mWorkingNote.getWidgetType() == Notes.TYPE_WIDGET_2X) { - intent.setClass(this, NoteWidgetProvider_2x.class); - } else if (mWorkingNote.getWidgetType() == Notes.TYPE_WIDGET_4X) { - intent.setClass(this, NoteWidgetProvider_4x.class); - } else { - Log.e(TAG, "Unspported widget type"); - return; - } - - intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, new int[] { - mWorkingNote.getWidgetId() - }); - - sendBroadcast(intent); - setResult(RESULT_OK, intent); - } - - public void onClick(View v) { - int id = v.getId(); - if (id == R.id.btn_set_bg_color) { - mNoteBgColorSelector.setVisibility(View.VISIBLE); - findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility( - - View.VISIBLE); - } else if (sBgSelectorBtnsMap.containsKey(id)) { - findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility( - View.GONE); - mWorkingNote.setBgColorId(sBgSelectorBtnsMap.get(id)); - mNoteBgColorSelector.setVisibility(View.GONE); - } else if (sFontSizeBtnsMap.containsKey(id)) { - findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.GONE); - mFontSizeId = sFontSizeBtnsMap.get(id); - mSharedPrefs.edit().putInt(PREFERENCE_FONT_SIZE, mFontSizeId).commit(); - findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.VISIBLE); - if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { - getWorkingText(); - switchToListMode(mWorkingNote.getContent()); - } else { - mNoteEditor.setTextAppearance(this, - TextAppearanceResources.getTexAppearanceResource(mFontSizeId)); - } - mFontSizeSelector.setVisibility(View.GONE); - } - } - - @Override - public void onBackPressed() { - if(clearSettingState()) { - return; - } - - saveNote(); - super.onBackPressed(); - } - - private boolean clearSettingState() { - if (mNoteBgColorSelector.getVisibility() == View.VISIBLE) { - mNoteBgColorSelector.setVisibility(View.GONE); - return true; - } else if (mFontSizeSelector.getVisibility() == View.VISIBLE) { - mFontSizeSelector.setVisibility(View.GONE); - return true; - } - return false; - } - - public void onBackgroundColorChanged() { - findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility( - View.VISIBLE); - mNoteEditorPanel.setBackgroundResource(mWorkingNote.getBgColorResId()); - mHeadViewPanel.setBackgroundResource(mWorkingNote.getTitleBgResId()); - } - - @Override - public boolean onPrepareOptionsMenu(Menu menu) { - if (isFinishing()) { - return true; - } - clearSettingState(); - menu.clear(); - if (mWorkingNote.getFolderId() == Notes.ID_CALL_RECORD_FOLDER) { - getMenuInflater().inflate(R.menu.call_note_edit, menu); - } else { - getMenuInflater().inflate(R.menu.note_edit, menu); - } - if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { - menu.findItem(R.id.menu_list_mode).setTitle(R.string.menu_normal_mode); - } else { - menu.findItem(R.id.menu_list_mode).setTitle(R.string.menu_list_mode); - } - if (mWorkingNote.hasClockAlert()) { - menu.findItem(R.id.menu_alert).setVisible(false); - } else { - menu.findItem(R.id.menu_delete_remind).setVisible(false); - } - return true; - } - - @Override - public boolean onOptionsItemSelected(MenuItem item) { - switch (item.getItemId()) { - case R.id.menu_new_note: - createNewNote(); - break; - case R.id.menu_delete: - AlertDialog.Builder builder = new AlertDialog.Builder(this); - builder.setTitle(getString(R.string.alert_title_delete)); - builder.setIcon(android.R.drawable.ic_dialog_alert); - builder.setMessage(getString(R.string.alert_message_delete_note)); - builder.setPositiveButton(android.R.string.ok, - new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int which) { - deleteCurrentNote(); - finish(); - } - }); - builder.setNegativeButton(android.R.string.cancel, null); - builder.show(); - break; - case R.id.menu_font_size: - mFontSizeSelector.setVisibility(View.VISIBLE); - findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.VISIBLE); - break; - case R.id.menu_list_mode: - mWorkingNote.setCheckListMode(mWorkingNote.getCheckListMode() == 0 ? - TextNote.MODE_CHECK_LIST : 0); - break; - case R.id.menu_share: - getWorkingText(); - sendTo(this, mWorkingNote.getContent()); - break; - case R.id.menu_send_to_desktop: - sendToDesktop(); - break; - case R.id.menu_alert: - setReminder(); - break; - case R.id.menu_delete_remind: - mWorkingNote.setAlertDate(0, false); - break; - default: - break; - } - return true; - } - - private void setReminder() { - DateTimePickerDialog d = new DateTimePickerDialog(this, System.currentTimeMillis()); - d.setOnDateTimeSetListener(new OnDateTimeSetListener() { - public void OnDateTimeSet(AlertDialog dialog, long date) { - mWorkingNote.setAlertDate(date , true); - } - }); - d.show(); - } - - /** - * Share note to apps that support {@link Intent#ACTION_SEND} action - * and {@text/plain} type - */ - private void sendTo(Context context, String info) { - Intent intent = new Intent(Intent.ACTION_SEND); - intent.putExtra(Intent.EXTRA_TEXT, info); - intent.setType("text/plain"); - context.startActivity(intent); - } - - private void createNewNote() { - // Firstly, save current editing notes - saveNote(); - - // For safety, start a new NoteEditActivity - finish(); - Intent intent = new Intent(this, NoteEditActivity.class); - intent.setAction(Intent.ACTION_INSERT_OR_EDIT); - intent.putExtra(Notes.INTENT_EXTRA_FOLDER_ID, mWorkingNote.getFolderId()); - startActivity(intent); - } - - private void deleteCurrentNote() { - if (mWorkingNote.existInDatabase()) { - HashSet ids = new HashSet(); - long id = mWorkingNote.getNoteId(); - if (id != Notes.ID_ROOT_FOLDER) { - ids.add(id); - } else { - Log.d(TAG, "Wrong note id, should not happen"); - } - if (!isSyncMode()) { - if (!DataUtils.batchDeleteNotes(getContentResolver(), ids)) { - Log.e(TAG, "Delete Note error"); - } - } else { - if (!DataUtils.batchMoveToFolder(getContentResolver(), ids, Notes.ID_TRASH_FOLER)) { - Log.e(TAG, "Move notes to trash folder error, should not happens"); - } - } - } - mWorkingNote.markDeleted(true); - } - - private boolean isSyncMode() { - return NotesPreferenceActivity.getSyncAccountName(this).trim().length() > 0; - } - - public void onClockAlertChanged(long date, boolean set) { - /** - * User could set clock to an unsaved note, so before setting the - * alert clock, we should save the note first - */ - if (!mWorkingNote.existInDatabase()) { - saveNote(); - } - if (mWorkingNote.getNoteId() > 0) { - Intent intent = new Intent(this, AlarmReceiver.class); - intent.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, mWorkingNote.getNoteId())); - PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0); - AlarmManager alarmManager = ((AlarmManager) getSystemService(ALARM_SERVICE)); - showAlertHeader(); - if(!set) { - alarmManager.cancel(pendingIntent); - } else { - alarmManager.set(AlarmManager.RTC_WAKEUP, date, pendingIntent); - } - } else { - /** - * There is the condition that user has input nothing (the note is - * not worthy saving), we have no note id, remind the user that he - * should input something - */ - Log.e(TAG, "Clock alert setting error"); - showToast(R.string.error_note_empty_for_clock); - } - } - - public void onWidgetChanged() { - updateWidget(); - } - - public void onEditTextDelete(int index, String text) { - int childCount = mEditTextList.getChildCount(); - if (childCount == 1) { - return; - } - - for (int i = index + 1; i < childCount; i++) { - ((NoteEditText) mEditTextList.getChildAt(i).findViewById(R.id.et_edit_text)) - .setIndex(i - 1); - } - - mEditTextList.removeViewAt(index); - NoteEditText edit = null; - if(index == 0) { - edit = (NoteEditText) mEditTextList.getChildAt(0).findViewById( - R.id.et_edit_text); - } else { - edit = (NoteEditText) mEditTextList.getChildAt(index - 1).findViewById( - R.id.et_edit_text); - } - int length = edit.length(); - edit.append(text); - edit.requestFocus(); - edit.setSelection(length); - } - - public void onEditTextEnter(int index, String text) { - /** - * Should not happen, check for debug - */ - if(index > mEditTextList.getChildCount()) { - Log.e(TAG, "Index out of mEditTextList boundrary, should not happen"); - } - - View view = getListItem(text, index); - mEditTextList.addView(view, index); - NoteEditText edit = (NoteEditText) view.findViewById(R.id.et_edit_text); - edit.requestFocus(); - edit.setSelection(0); - for (int i = index + 1; i < mEditTextList.getChildCount(); i++) { - ((NoteEditText) mEditTextList.getChildAt(i).findViewById(R.id.et_edit_text)) - .setIndex(i); - } - } - - private void switchToListMode(String text) { - mEditTextList.removeAllViews(); - String[] items = text.split("\n"); - int index = 0; - for (String item : items) { - if(!TextUtils.isEmpty(item)) { - mEditTextList.addView(getListItem(item, index)); - index++; - } - } - mEditTextList.addView(getListItem("", index)); - mEditTextList.getChildAt(index).findViewById(R.id.et_edit_text).requestFocus(); - - mNoteEditor.setVisibility(View.GONE); - mEditTextList.setVisibility(View.VISIBLE); - } - - private Spannable getHighlightQueryResult(String fullText, String userQuery) { - SpannableString spannable = new SpannableString(fullText == null ? "" : fullText); - if (!TextUtils.isEmpty(userQuery)) { - mPattern = Pattern.compile(userQuery); - Matcher m = mPattern.matcher(fullText); - int start = 0; - while (m.find(start)) { - spannable.setSpan( - new BackgroundColorSpan(this.getResources().getColor( - R.color.user_query_highlight)), m.start(), m.end(), - Spannable.SPAN_INCLUSIVE_EXCLUSIVE); - start = m.end(); - } - } - return spannable; - } - - private View getListItem(String item, int index) { - View view = LayoutInflater.from(this).inflate(R.layout.note_edit_list_item, null); - final NoteEditText edit = (NoteEditText) view.findViewById(R.id.et_edit_text); - edit.setTextAppearance(this, TextAppearanceResources.getTexAppearanceResource(mFontSizeId)); - CheckBox cb = ((CheckBox) view.findViewById(R.id.cb_edit_item)); - cb.setOnCheckedChangeListener(new OnCheckedChangeListener() { - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - if (isChecked) { - edit.setPaintFlags(edit.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); - } else { - edit.setPaintFlags(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); - } - } - }); - - if (item.startsWith(TAG_CHECKED)) { - cb.setChecked(true); - edit.setPaintFlags(edit.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); - item = item.substring(TAG_CHECKED.length(), item.length()).trim(); - } else if (item.startsWith(TAG_UNCHECKED)) { - cb.setChecked(false); - edit.setPaintFlags(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); - item = item.substring(TAG_UNCHECKED.length(), item.length()).trim(); - } - - edit.setOnTextViewChangeListener(this); - edit.setIndex(index); - edit.setText(getHighlightQueryResult(item, mUserQuery)); - return view; - } - - public void onTextChange(int index, boolean hasText) { - if (index >= mEditTextList.getChildCount()) { - Log.e(TAG, "Wrong index, should not happen"); - return; - } - if(hasText) { - mEditTextList.getChildAt(index).findViewById(R.id.cb_edit_item).setVisibility(View.VISIBLE); - } else { - mEditTextList.getChildAt(index).findViewById(R.id.cb_edit_item).setVisibility(View.GONE); - } - } - - public void onCheckListModeChanged(int oldMode, int newMode) { - if (newMode == TextNote.MODE_CHECK_LIST) { - switchToListMode(mNoteEditor.getText().toString()); - } else { - if (!getWorkingText()) { - mWorkingNote.setWorkingText(mWorkingNote.getContent().replace(TAG_UNCHECKED + " ", - "")); - } - mNoteEditor.setText(getHighlightQueryResult(mWorkingNote.getContent(), mUserQuery)); - mEditTextList.setVisibility(View.GONE); - mNoteEditor.setVisibility(View.VISIBLE); - } - } - - private boolean getWorkingText() { - boolean hasChecked = false; - if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { - StringBuilder sb = new StringBuilder(); - for (int i = 0; i < mEditTextList.getChildCount(); i++) { - View view = mEditTextList.getChildAt(i); - NoteEditText edit = (NoteEditText) view.findViewById(R.id.et_edit_text); - if (!TextUtils.isEmpty(edit.getText())) { - if (((CheckBox) view.findViewById(R.id.cb_edit_item)).isChecked()) { - sb.append(TAG_CHECKED).append(" ").append(edit.getText()).append("\n"); - hasChecked = true; - } else { - sb.append(TAG_UNCHECKED).append(" ").append(edit.getText()).append("\n"); - } - } - } - mWorkingNote.setWorkingText(sb.toString()); - } else { - mWorkingNote.setWorkingText(mNoteEditor.getText().toString()); - } - return hasChecked; - } - - private boolean saveNote() { - getWorkingText(); - boolean saved = mWorkingNote.saveNote(); - if (saved) { - /** - * There are two modes from List view to edit view, open one note, - * create/edit a node. Opening node requires to the original - * position in the list when back from edit view, while creating a - * new node requires to the top of the list. This code - * {@link #RESULT_OK} is used to identify the create/edit state - */ - setResult(RESULT_OK); - } - return saved; - } - - private void sendToDesktop() { - /** - * Before send message to home, we should make sure that current - * editing note is exists in databases. So, for new note, firstly - * save it - */ - if (!mWorkingNote.existInDatabase()) { - saveNote(); - } - - if (mWorkingNote.getNoteId() > 0) { - Intent sender = new Intent(); - Intent shortcutIntent = new Intent(this, NoteEditActivity.class); - shortcutIntent.setAction(Intent.ACTION_VIEW); - shortcutIntent.putExtra(Intent.EXTRA_UID, mWorkingNote.getNoteId()); - sender.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); - sender.putExtra(Intent.EXTRA_SHORTCUT_NAME, - makeShortcutIconTitle(mWorkingNote.getContent())); - sender.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, - Intent.ShortcutIconResource.fromContext(this, R.drawable.icon_app)); - sender.putExtra("duplicate", true); - sender.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); - showToast(R.string.info_note_enter_desktop); - sendBroadcast(sender); - } else { - /** - * There is the condition that user has input nothing (the note is - * not worthy saving), we have no note id, remind the user that he - * should input something - */ - Log.e(TAG, "Send to desktop error"); - showToast(R.string.error_note_empty_for_send_to_desktop); - } - } - - private String makeShortcutIconTitle(String content) { - content = content.replace(TAG_CHECKED, ""); - content = content.replace(TAG_UNCHECKED, ""); - return content.length() > SHORTCUT_ICON_TITLE_MAX_LEN ? content.substring(0, - SHORTCUT_ICON_TITLE_MAX_LEN) : content; - } - - private void showToast(int resId) { - showToast(resId, Toast.LENGTH_SHORT); - } - - private void showToast(int resId, int duration) { - Toast.makeText(this, resId, duration).show(); - } -} diff --git a/doc/标注/210340061_林亭旭/NoteEditText.java b/doc/标注/210340061_林亭旭/NoteEditText.java new file mode 100644 index 0000000..db16bde --- /dev/null +++ b/doc/标注/210340061_林亭旭/NoteEditText.java @@ -0,0 +1,264 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.content.Context;//抽象类,提供了一组通用的API,通过 Context才能识别调用者 +import android.graphics.Rect; +import android.text.Layout; +import android.text.Selection; +import android.text.Spanned; +import android.text.TextUtils; +import android.text.style.URLSpan; +import android.util.AttributeSet; +import android.util.Log; +import android.view.ContextMenu; +import android.view.KeyEvent; +import android.view.MenuItem; +import android.view.MenuItem.OnMenuItemClickListener; +import android.view.MotionEvent; +import android.widget.EditText; + +import net.micode.notes.R; + +import java.util.HashMap; +import java.util.Map; + +public class NoteEditText extends EditText {//NoteEditText继承EditText的部分属性,设置便签与文本框 + private static final String TAG = "NoteEditText"; + private int mIndex; + private int mSelectionStartBeforeDelete; + + private static final String SCHEME_TEL = "tel:" ;//建立电话数据。 + private static final String SCHEME_HTTP = "http:" ;//建立网站数据 + private static final String SCHEME_EMAIL = "mailto:" ;//建立邮箱数据 + + private static final Map sSchemaActionResMap = new HashMap(); + //建立由字符和整数的hash表,链接电话数据、网站数据与邮箱数据 + static { + sSchemaActionResMap.put(SCHEME_TEL, R.string.note_link_tel); + sSchemaActionResMap.put(SCHEME_HTTP, R.string.note_link_web); + sSchemaActionResMap.put(SCHEME_EMAIL, R.string.note_link_email); + } + + /** + * Call by the {@link NoteEditActivity} to delete or add edit text + */ + //在NoteEditActivity中进行删除或添加文本的操作,并对进行更改的数据进行标记 + public interface OnTextViewChangeListener { + /** + * Delete current edit text when {@link KeyEvent#KEYCODE_DEL} happens + * and the text is null + */ + //当{@link KeyEvent#KEYCODE_DEL}发生并且文本为空时删除当前编辑文本 + void onEditTextDelete(int index, String text); + + /** + * Add edit text after current edit text when {@link KeyEvent#KEYCODE_ENTER} + * happen + */ + //当{@link KeyEvent#KEYCODE_ENTER}发生时,在当前编辑文本后添加编辑文本 + void onEditTextEnter(int index, String text); + + /** + * Hide or show item option when text change + */ + //文本更改时隐藏或显示项目选项 + void onTextChange(int index, boolean hasText); + } + + private OnTextViewChangeListener mOnTextViewChangeListener; + + public NoteEditText(Context context) { + super(context, null);//用super引用父类变量 + mIndex = 0; + }//根据context设置文本 + + + public void setIndex(int index) { + mIndex = index; + }//设置光标,并对光标进行初始化 + + + public void setOnTextViewChangeListener(OnTextViewChangeListener listener) { + mOnTextViewChangeListener = listener; + }//令listener赋值给mOnTextViewChangeListener实现文本修改标记初始化 + + public NoteEditText(Context context, AttributeSet attrs) { + super(context, attrs, android.R.attr.editTextStyle); + }//规定context控件属性,便于维护便签动态变化的属性 + + public NoteEditText(Context context, AttributeSet attrs, int defStyle) { + super(context, attrs, defStyle); + // TODO Auto-generated constructor stub + }//通过类型定义和引用父类变量,实现defStyle的自动初始化 + + @Override + //view里的函数,处理手机屏幕的所有事件 + /*参数event为手机屏幕触摸事件封装类的对象,其中封装了该事件的所有信息, + 例如触摸的位置、触摸的类型以及触摸的时间等。该对象会在用户触摸手机屏幕时被创建。*/ + + public boolean onTouchEvent(MotionEvent event) { + switch (event.getAction()) { + //对每一次屏幕被按下的情况进行重述 + case MotionEvent.ACTION_DOWN: + //更新触屏坐标值 + int x = (int) event.getX(); + int y = (int) event.getY(); + x -= getTotalPaddingLeft(); + y -= getTotalPaddingTop(); + x += getScrollX(); + y += getScrollY(); + + Layout layout = getLayout(); + //运用布局控件Layout对每一次的坐标新值x,y进行设置新位置 + int line = layout.getLineForVertical(y); + int off = layout.getOffsetForHorizontal(line, x); + Selection.setSelection(getText(), off); + //同过selection寻找并更新当前光标新坐标值 + break; + } + + return super.onTouchEvent(event); + //回溯至函数,实现对每一次触屏事件的计算 + } + + @Override + // 函数功能:处理用户按下一个键盘按键时会触发 的事件 + + public boolean onKeyDown(int keyCode, KeyEvent event) //当作为一个构造函数(带有运算符 new)调用时,Boolean() 将把它的参数转换成一个布尔值,并且返回一个包含该值的 Boolean 对象 + { + switch (keyCode) {//根据按键的unicode编码值判断 + case KeyEvent.KEYCODE_ENTER://按键编码值传入系统 + if (mOnTextViewChangeListener != null)//对输入命令进行判空 + { + return false;//对非法输入进行错误提示 + } + break; + case KeyEvent.KEYCODE_DEL://删除按键 + mSelectionStartBeforeDelete = getSelectionStart(); + break; + default: + break; + } + return super.onKeyDown(keyCode, event);//继续进行父类其他点击事件 + } + + @Override + // 函数功能:处理用户松开一个键盘按键时会触发 的事件 + + public boolean onKeyUp(int keyCode, KeyEvent event) { + switch(keyCode) { + //根据按键Unicode编码值进行操作,包括进入和删除两种操作 + case KeyEvent.KEYCODE_DEL: + if (mOnTextViewChangeListener != null) //判断是否被修改 + { + if (0 == mSelectionStartBeforeDelete && mIndex != 0)//判断是否有被编辑修改并且文档不为空 + { + mOnTextViewChangeListener.onEditTextDelete(mIndex, getText().toString()); + ////利用上文OnTextViewChangeListener对KEYCODE_DEL按键情况的删除函数进行删除 + return true; + } + } else { + Log.d(TAG, "OnTextViewChangeListener was not seted"); + //出现其他情况进行报错,文档修改监听器未被建立 + } + break; + case KeyEvent.KEYCODE_ENTER://对监听器错误情况进行判断 + if (mOnTextViewChangeListener != null) { + int selectionStart = getSelectionStart();//获取当前起始位置 + String text = getText().subSequence(selectionStart, length()).toString();//获取当前文本 + setText(getText().subSequence(0, selectionStart));//根据获取文本设置当前文本 + mOnTextViewChangeListener.onEditTextEnter(mIndex + 1, text); + //当错误发生及当{@link KeyEvent#KEYCODE_ENTER}时添加新文本 + } else { + Log.d(TAG, "OnTextViewChangeListener was not seted");////其他情况报错,文档的改动监听器并没有建立 + } + break; + default: + break; + } + return super.onKeyUp(keyCode, event); + //回溯至前面函数继续执行父类的其他按键弹起的事件 + } + + @Override + //函数功能:当焦点发生变化时,会自动调用该方法来处理焦点改变的事件 + // * 参数:focused表示触发该事件的View是否获得了焦点,当该控件获得焦点时,Focused等于true,否则等于false。 + // direction表示焦点移动的方向,用数值表示 + // Rect:表示在触发事件的View的坐标系中,前一个获得焦点的矩形区域,即表示焦点是从哪里来的。如果不可用则为null + protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) { + if (mOnTextViewChangeListener != null) //判断监听器是否建立 + { + if (!focused && TextUtils.isEmpty(getText())) //截取焦点并且判断文本是否为空 + { + mOnTextViewChangeListener.onTextChange(mIndex, false); + //mOnTextViewChangeListener子函数,置false隐藏事件选项 + } else { + mOnTextViewChangeListener.onTextChange(mIndex, true); + //mOnTextViewChangeListener子函数,置true显示事件选项 + } + } + super.onFocusChanged(focused, direction, previouslyFocusedRect); + //回溯至前面函数继续执行父类的其他焦点变化事件 + } + + @Override + //函数意义:生成上下文菜单 + protected void onCreateContextMenu(ContextMenu menu) { + if (getText() instanceof Spanned) //判断文本是否存在 + { + int selStart = getSelectionStart(); + int selEnd = getSelectionEnd(); + //获取开始位置和截至位置 + int min = Math.min(selStart, selEnd); + int max = Math.max(selStart, selEnd); + //计算开始到结尾的最大值和最小值 + final URLSpan[] urls = ((Spanned) getText()).getSpans(min, max, URLSpan.class); + //设置url信息范围值 + if (urls.length == 1) { + int defaultResId = 0; + for(String schema: sSchemaActionResMap.keySet()) //获取计划表中的所有key值 + { + if(urls[0].getURL().indexOf(schema) >= 0) //若url可以添加则在添加后将defaultResId置为key所映射的值 + { + defaultResId = sSchemaActionResMap.get(schema); + break; + } + } + + if (defaultResId == 0) //defaultResId == 0则说明url并没有添加任何东西,所以置为连接其他SchemaActionResMap的值 + { + defaultResId = R.string.note_link_other; + } + + menu.add(0, 0, 0, defaultResId).setOnMenuItemClickListener//建立菜单 + ( + new OnMenuItemClickListener() //新建按键监听器 + { + public boolean onMenuItemClick(MenuItem item) { + // goto a new intent + urls[0].onClick(NoteEditText.this);//根据文本进行按键设置 + return true; + } + }); + } + } + super.onCreateContextMenu(menu); + //回溯至前面函数继续执行父类的其他菜单创建的事件 + } +} + diff --git a/doc/标注/210340061_林亭旭/NoteItemData.java b/doc/标注/210340061_林亭旭/NoteItemData.java new file mode 100644 index 0000000..0f5a878 --- /dev/null +++ b/doc/标注/210340061_林亭旭/NoteItemData.java @@ -0,0 +1,224 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.content.Context; +import android.database.Cursor; +import android.text.TextUtils; + +import net.micode.notes.data.Contact; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.tool.DataUtils; + + +public class NoteItemData { + static final String [] PROJECTION = new String [] { + NoteColumns.ID, + NoteColumns.ALERTED_DATE, + NoteColumns.BG_COLOR_ID, + NoteColumns.CREATED_DATE, + NoteColumns.HAS_ATTACHMENT, + NoteColumns.MODIFIED_DATE, + NoteColumns.NOTES_COUNT, + NoteColumns.PARENT_ID, + NoteColumns.SNIPPET, + NoteColumns.TYPE, + NoteColumns.WIDGET_ID, + NoteColumns.WIDGET_TYPE, + }; + + private static final int ID_COLUMN = 0; + private static final int ALERTED_DATE_COLUMN = 1; + private static final int BG_COLOR_ID_COLUMN = 2; + private static final int CREATED_DATE_COLUMN = 3; + private static final int HAS_ATTACHMENT_COLUMN = 4; + private static final int MODIFIED_DATE_COLUMN = 5; + private static final int NOTES_COUNT_COLUMN = 6; + private static final int PARENT_ID_COLUMN = 7; + private static final int SNIPPET_COLUMN = 8; + private static final int TYPE_COLUMN = 9; + private static final int WIDGET_ID_COLUMN = 10; + private static final int WIDGET_TYPE_COLUMN = 11; + + private long mId; + private long mAlertDate; + private int mBgColorId; + private long mCreatedDate; + private boolean mHasAttachment; + private long mModifiedDate; + private int mNotesCount; + private long mParentId; + private String mSnippet; + private int mType; + private int mWidgetId; + private int mWidgetType; + private String mName; + private String mPhoneNumber; + + private boolean mIsLastItem; + private boolean mIsFirstItem; + private boolean mIsOnlyOneItem; + private boolean mIsOneNoteFollowingFolder; + private boolean mIsMultiNotesFollowingFolder; + + public NoteItemData(Context context, Cursor cursor) { + mId = cursor.getLong(ID_COLUMN); + mAlertDate = cursor.getLong(ALERTED_DATE_COLUMN); + mBgColorId = cursor.getInt(BG_COLOR_ID_COLUMN); + mCreatedDate = cursor.getLong(CREATED_DATE_COLUMN); + mHasAttachment = (cursor.getInt(HAS_ATTACHMENT_COLUMN) > 0) ? true : false; + mModifiedDate = cursor.getLong(MODIFIED_DATE_COLUMN); + mNotesCount = cursor.getInt(NOTES_COUNT_COLUMN); + mParentId = cursor.getLong(PARENT_ID_COLUMN); + mSnippet = cursor.getString(SNIPPET_COLUMN); + mSnippet = mSnippet.replace(NoteEditActivity.TAG_CHECKED, "").replace( + NoteEditActivity.TAG_UNCHECKED, ""); + mType = cursor.getInt(TYPE_COLUMN); + mWidgetId = cursor.getInt(WIDGET_ID_COLUMN); + mWidgetType = cursor.getInt(WIDGET_TYPE_COLUMN); + + mPhoneNumber = ""; + if (mParentId == Notes.ID_CALL_RECORD_FOLDER) { + mPhoneNumber = DataUtils.getCallNumberByNoteId(context.getContentResolver(), mId); + if (!TextUtils.isEmpty(mPhoneNumber)) { + mName = Contact.getContact(context, mPhoneNumber); + if (mName == null) { + mName = mPhoneNumber; + } + } + } + + if (mName == null) { + mName = ""; + } + checkPostion(cursor); + } + + private void checkPostion(Cursor cursor) { + mIsLastItem = cursor.isLast() ? true : false; + mIsFirstItem = cursor.isFirst() ? true : false; + mIsOnlyOneItem = (cursor.getCount() == 1); + mIsMultiNotesFollowingFolder = false; + mIsOneNoteFollowingFolder = false; + + if (mType == Notes.TYPE_NOTE && !mIsFirstItem) { + int position = cursor.getPosition(); + if (cursor.moveToPrevious()) { + if (cursor.getInt(TYPE_COLUMN) == Notes.TYPE_FOLDER + || cursor.getInt(TYPE_COLUMN) == Notes.TYPE_SYSTEM) { + if (cursor.getCount() > (position + 1)) { + mIsMultiNotesFollowingFolder = true; + } else { + mIsOneNoteFollowingFolder = true; + } + } + if (!cursor.moveToNext()) { + throw new IllegalStateException("cursor move to previous but can't move back"); + } + } + } + } + + public boolean isOneFollowingFolder() { + return mIsOneNoteFollowingFolder; + } + + public boolean isMultiFollowingFolder() { + return mIsMultiNotesFollowingFolder; + } + + public boolean isLast() { + return mIsLastItem; + } + + public String getCallName() { + return mName; + } + + public boolean isFirst() { + return mIsFirstItem; + } + + public boolean isSingle() { + return mIsOnlyOneItem; + } + + public long getId() { + return mId; + } + + public long getAlertDate() { + return mAlertDate; + } + + public long getCreatedDate() { + return mCreatedDate; + } + + public boolean hasAttachment() { + return mHasAttachment; + } + + public long getModifiedDate() { + return mModifiedDate; + } + + public int getBgColorId() { + return mBgColorId; + } + + public long getParentId() { + return mParentId; + } + + public int getNotesCount() { + return mNotesCount; + } + + public long getFolderId () { + return mParentId; + } + + public int getType() { + return mType; + } + + public int getWidgetType() { + return mWidgetType; + } + + public int getWidgetId() { + return mWidgetId; + } + + public String getSnippet() { + return mSnippet; + } + + public boolean hasAlert() { + return (mAlertDate > 0); + } + + public boolean isCallRecord() { + return (mParentId == Notes.ID_CALL_RECORD_FOLDER && !TextUtils.isEmpty(mPhoneNumber)); + } + + public static int getNoteType(Cursor cursor) { + return cursor.getInt(TYPE_COLUMN); + } +} diff --git a/doc/标注/210340061_林亭旭/NotesListActivity.java b/doc/标注/210340061_林亭旭/NotesListActivity.java new file mode 100644 index 0000000..12e86f8 --- /dev/null +++ b/doc/标注/210340061_林亭旭/NotesListActivity.java @@ -0,0 +1,957 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.app.Activity; +import android.app.AlertDialog; +import android.app.Dialog; +import android.appwidget.AppWidgetManager; +import android.content.AsyncQueryHandler; +import android.content.ContentResolver; +import android.content.ContentValues; +import android.content.Context; +import android.content.DialogInterface; +import android.content.Intent; +import android.content.SharedPreferences; +import android.database.Cursor; +import android.os.AsyncTask; +import android.os.Bundle; +import android.preference.PreferenceManager; +import android.text.Editable; +import android.text.TextUtils; +import android.text.TextWatcher; +import android.util.Log; +import android.view.ActionMode; +import android.view.ContextMenu; +import android.view.ContextMenu.ContextMenuInfo; +import android.view.Display; +import android.view.HapticFeedbackConstants; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuItem; +import android.view.MenuItem.OnMenuItemClickListener; +import android.view.MotionEvent; +import android.view.View; +import android.view.View.OnClickListener; +import android.view.View.OnCreateContextMenuListener; +import android.view.View.OnTouchListener; +import android.view.inputmethod.InputMethodManager; +import android.widget.AdapterView; +import android.widget.AdapterView.OnItemClickListener; +import android.widget.AdapterView.OnItemLongClickListener; +import android.widget.Button; +import android.widget.EditText; +import android.widget.ListView; +import android.widget.PopupMenu; +import android.widget.TextView; +import android.widget.Toast; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.gtask.remote.GTaskSyncService; +import net.micode.notes.model.WorkingNote; +import net.micode.notes.tool.BackupUtils; +import net.micode.notes.tool.DataUtils; +import net.micode.notes.tool.ResourceParser; +import net.micode.notes.ui.NotesListAdapter.AppWidgetAttribute; +import net.micode.notes.widget.NoteWidgetProvider_2x; +import net.micode.notes.widget.NoteWidgetProvider_4x; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.HashSet; + +public class NotesListActivity extends Activity implements OnClickListener, OnItemLongClickListener { + //OnClickListener,OnItemLongClickListener是一个抽象类 + //定义了一个Activity的子类NotesListActivity,用这个类实现了上面两个接口, + //这两个接口的 + private static final int FOLDER_NOTE_LIST_QUERY_TOKEN = 0; + + private static final int FOLDER_LIST_QUERY_TOKEN = 1; + + private static final int MENU_FOLDER_DELETE = 0; + + private static final int MENU_FOLDER_VIEW = 1; + + private static final int MENU_FOLDER_CHANGE_NAME = 2; + + private static final String PREFERENCE_ADD_INTRODUCTION = "net.micode.notes.introduction"; + + private enum ListEditState { + NOTE_LIST, SUB_FOLDER, CALL_RECORD_FOLDER + }; + + private ListEditState mState; + + private BackgroundQueryHandler mBackgroundQueryHandler; + + private NotesListAdapter mNotesListAdapter; + + private ListView mNotesListView; + + private Button mAddNewNote; + + private boolean mDispatch; + + private int mOriginY; + + private int mDispatchY; + + private TextView mTitleBar; + + private long mCurrentFolderId; + + private ContentResolver mContentResolver; + + private ModeCallback mModeCallBack; + + private static final String TAG = "NotesListActivity"; + + public static final int NOTES_LISTVIEW_SCROLL_RATE = 30; + + private NoteItemData mFocusNoteDataItem; + + private static final String NORMAL_SELECTION = NoteColumns.PARENT_ID + "=?"; + + private static final String ROOT_FOLDER_SELECTION = "(" + NoteColumns.TYPE + "<>" + + Notes.TYPE_SYSTEM + " AND " + NoteColumns.PARENT_ID + "=?)" + " OR (" + + NoteColumns.ID + "=" + Notes.ID_CALL_RECORD_FOLDER + " AND " + + NoteColumns.NOTES_COUNT + ">0)"; + + private final static int REQUEST_CODE_OPEN_NODE = 102; + private final static int REQUEST_CODE_NEW_NODE = 103; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.note_list); + initResources(); + + /** + * Insert an introduction when user firstly use this application + */ + setAppInfoFromRawRes(); + } + + @Override + protected void onActivityResult(int requestCode, int resultCode, Intent data) { + if (resultCode == RESULT_OK + && (requestCode == REQUEST_CODE_OPEN_NODE || requestCode == REQUEST_CODE_NEW_NODE)) { + mNotesListAdapter.changeCursor(null); + } else { + super.onActivityResult(requestCode, resultCode, data); + } + } + + private void setAppInfoFromRawRes() { + SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this); + if (!sp.getBoolean(PREFERENCE_ADD_INTRODUCTION, false)) { + StringBuilder sb = new StringBuilder(); + InputStream in = null; + try { + in = getResources().openRawResource(R.raw.introduction); + if (in != null) { + InputStreamReader isr = new InputStreamReader(in); + BufferedReader br = new BufferedReader(isr); + char [] buf = new char[1024]; + int len = 0; + while ((len = br.read(buf)) > 0) { + sb.append(buf, 0, len); + } + } else { + Log.e(TAG, "Read introduction file error"); + return; + } + } catch (IOException e) { + e.printStackTrace(); + return; + } finally { + if(in != null) { + try { + in.close(); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + } + + WorkingNote note = WorkingNote.createEmptyNote(this, Notes.ID_ROOT_FOLDER, + AppWidgetManager.INVALID_APPWIDGET_ID, Notes.TYPE_WIDGET_INVALIDE, + ResourceParser.RED); + note.setWorkingText(sb.toString()); + if (note.saveNote()) { + sp.edit().putBoolean(PREFERENCE_ADD_INTRODUCTION, true).commit(); + } else { + Log.e(TAG, "Save introduction note error"); + return; + } + } + } + + @Override + protected void onStart() { + super.onStart(); + startAsyncNotesListQuery(); + } + + private void initResources() { + mContentResolver = this.getContentResolver(); + mBackgroundQueryHandler = new BackgroundQueryHandler(this.getContentResolver()); + mCurrentFolderId = Notes.ID_ROOT_FOLDER; + mNotesListView = (ListView) findViewById(R.id.notes_list); + mNotesListView.addFooterView(LayoutInflater.from(this).inflate(R.layout.note_list_footer, null), + null, false); + mNotesListView.setOnItemClickListener(new OnListItemClickListener()); + mNotesListView.setOnItemLongClickListener(this); + mNotesListAdapter = new NotesListAdapter(this); + mNotesListView.setAdapter(mNotesListAdapter); + mAddNewNote = (Button) findViewById(R.id.btn_new_note); + mAddNewNote.setOnClickListener(this); + mAddNewNote.setOnTouchListener(new NewNoteOnTouchListener()); + mDispatch = false; + mDispatchY = 0; + mOriginY = 0; + mTitleBar = (TextView) findViewById(R.id.tv_title_bar); + mState = ListEditState.NOTE_LIST; + mModeCallBack = new ModeCallback(); + } + + private class ModeCallback implements ListView.MultiChoiceModeListener, OnMenuItemClickListener { + private DropdownMenu mDropDownMenu; + private ActionMode mActionMode; + private MenuItem mMoveMenu; + + public boolean onCreateActionMode(ActionMode mode, Menu menu) { + getMenuInflater().inflate(R.menu.note_list_options, menu); + menu.findItem(R.id.delete).setOnMenuItemClickListener(this); + mMoveMenu = menu.findItem(R.id.move); + if (mFocusNoteDataItem.getParentId() == Notes.ID_CALL_RECORD_FOLDER + || DataUtils.getUserFolderCount(mContentResolver) == 0) { + mMoveMenu.setVisible(false); + } else { + mMoveMenu.setVisible(true); + mMoveMenu.setOnMenuItemClickListener(this); + } + mActionMode = mode; + mNotesListAdapter.setChoiceMode(true); + mNotesListView.setLongClickable(false); + mAddNewNote.setVisibility(View.GONE); + + View customView = LayoutInflater.from(NotesListActivity.this).inflate( + R.layout.note_list_dropdown_menu, null); + mode.setCustomView(customView); + mDropDownMenu = new DropdownMenu(NotesListActivity.this, + (Button) customView.findViewById(R.id.selection_menu), + R.menu.note_list_dropdown); + mDropDownMenu.setOnDropdownMenuItemClickListener(new PopupMenu.OnMenuItemClickListener(){ + public boolean onMenuItemClick(MenuItem item) { + mNotesListAdapter.selectAll(!mNotesListAdapter.isAllSelected()); + updateMenu(); + return true; + } + + }); + return true; + } + + private void updateMenu() { + int selectedCount = mNotesListAdapter.getSelectedCount(); + // Update dropdown menu + String format = getResources().getString(R.string.menu_select_title, selectedCount); + mDropDownMenu.setTitle(format); + MenuItem item = mDropDownMenu.findItem(R.id.action_select_all); + if (item != null) { + if (mNotesListAdapter.isAllSelected()) { + item.setChecked(true); + item.setTitle(R.string.menu_deselect_all); + } else { + item.setChecked(false); + item.setTitle(R.string.menu_select_all); + } + } + } + + public boolean onPrepareActionMode(ActionMode mode, Menu menu) { + // TODO Auto-generated method stub + return false; + } + + public boolean onActionItemClicked(ActionMode mode, MenuItem item) { + // TODO Auto-generated method stub + return false; + } + + public void onDestroyActionMode(ActionMode mode) { + mNotesListAdapter.setChoiceMode(false); + mNotesListView.setLongClickable(true); + mAddNewNote.setVisibility(View.VISIBLE); + } + + public void finishActionMode() { + mActionMode.finish(); + } + + public void onItemCheckedStateChanged(ActionMode mode, int position, long id, + boolean checked) { + mNotesListAdapter.setCheckedItem(position, checked); + updateMenu(); + } + + public boolean onMenuItemClick(MenuItem item) { + if (mNotesListAdapter.getSelectedCount() == 0) { + Toast.makeText(NotesListActivity.this, getString(R.string.menu_select_none), + Toast.LENGTH_SHORT).show(); + return true; + } + + switch (item.getItemId()) { + case R.id.delete: + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(getString(R.string.alert_title_delete)); + builder.setIcon(android.R.drawable.ic_dialog_alert); + builder.setMessage(getString(R.string.alert_message_delete_notes, + mNotesListAdapter.getSelectedCount())); + builder.setPositiveButton(android.R.string.ok, + new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, + int which) { + batchDelete(); + } + }); + builder.setNegativeButton(android.R.string.cancel, null); + builder.show(); + break; + case R.id.move: + startQueryDestinationFolders(); + break; + default: + return false; + } + return true; + } + } + + private class NewNoteOnTouchListener implements OnTouchListener { + + public boolean onTouch(View v, MotionEvent event) { + switch (event.getAction()) { + case MotionEvent.ACTION_DOWN: { + Display display = getWindowManager().getDefaultDisplay(); + int screenHeight = display.getHeight(); + int newNoteViewHeight = mAddNewNote.getHeight(); + int start = screenHeight - newNoteViewHeight; + int eventY = start + (int) event.getY(); + /** + * Minus TitleBar's height + */ + if (mState == ListEditState.SUB_FOLDER) { + eventY -= mTitleBar.getHeight(); + start -= mTitleBar.getHeight(); + } + /** + * HACKME:When click the transparent part of "New Note" button, dispatch + * the event to the list view behind this button. The transparent part of + * "New Note" button could be expressed by formula y=-0.12x+94(Unit:pixel) + * and the line top of the button. The coordinate based on left of the "New + * Note" button. The 94 represents maximum height of the transparent part. + * Notice that, if the background of the button changes, the formula should + * also change. This is very bad, just for the UI designer's strong requirement. + */ + if (event.getY() < (event.getX() * (-0.12) + 94)) { + View view = mNotesListView.getChildAt(mNotesListView.getChildCount() - 1 + - mNotesListView.getFooterViewsCount()); + if (view != null && view.getBottom() > start + && (view.getTop() < (start + 94))) { + mOriginY = (int) event.getY(); + mDispatchY = eventY; + event.setLocation(event.getX(), mDispatchY); + mDispatch = true; + return mNotesListView.dispatchTouchEvent(event); + } + } + break; + } + case MotionEvent.ACTION_MOVE: { + if (mDispatch) { + mDispatchY += (int) event.getY() - mOriginY; + event.setLocation(event.getX(), mDispatchY); + return mNotesListView.dispatchTouchEvent(event); + } + break; + } + default: { + if (mDispatch) { + event.setLocation(event.getX(), mDispatchY); + mDispatch = false; + return mNotesListView.dispatchTouchEvent(event); + } + break; + } + } + return false; + } + + }; + + private void startAsyncNotesListQuery() { + String selection = (mCurrentFolderId == Notes.ID_ROOT_FOLDER) ? ROOT_FOLDER_SELECTION + : NORMAL_SELECTION; + mBackgroundQueryHandler.startQuery(FOLDER_NOTE_LIST_QUERY_TOKEN, null, + Notes.CONTENT_NOTE_URI, NoteItemData.PROJECTION, selection, new String[] { + String.valueOf(mCurrentFolderId) + }, NoteColumns.TYPE + " DESC," + NoteColumns.MODIFIED_DATE + " DESC"); + } + + private final class BackgroundQueryHandler extends AsyncQueryHandler { + public BackgroundQueryHandler(ContentResolver contentResolver) { + super(contentResolver); + } + + @Override + protected void onQueryComplete(int token, Object cookie, Cursor cursor) { + switch (token) { + case FOLDER_NOTE_LIST_QUERY_TOKEN: + mNotesListAdapter.changeCursor(cursor); + break; + case FOLDER_LIST_QUERY_TOKEN: + if (cursor != null && cursor.getCount() > 0) { + showFolderListMenu(cursor); + } else { + Log.e(TAG, "Query folder failed"); + } + break; + default: + return; + } + } + } + + private void showFolderListMenu(Cursor cursor) { + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(R.string.menu_title_select_folder); + final FoldersListAdapter adapter = new FoldersListAdapter(this, cursor); + builder.setAdapter(adapter, new DialogInterface.OnClickListener() { + + public void onClick(DialogInterface dialog, int which) { + DataUtils.batchMoveToFolder(mContentResolver, + mNotesListAdapter.getSelectedItemIds(), adapter.getItemId(which)); + Toast.makeText( + NotesListActivity.this, + getString(R.string.format_move_notes_to_folder, + mNotesListAdapter.getSelectedCount(), + adapter.getFolderName(NotesListActivity.this, which)), + Toast.LENGTH_SHORT).show(); + mModeCallBack.finishActionMode(); + } + }); + builder.show(); + } + + private void createNewNote() { + Intent intent = new Intent(this, NoteEditActivity.class); + intent.setAction(Intent.ACTION_INSERT_OR_EDIT); + intent.putExtra(Notes.INTENT_EXTRA_FOLDER_ID, mCurrentFolderId); + this.startActivityForResult(intent, REQUEST_CODE_NEW_NODE); + } + + private void batchDelete() { + new AsyncTask>() { + protected HashSet doInBackground(Void... unused) { + HashSet widgets = mNotesListAdapter.getSelectedWidget(); + if (!isSyncMode()) { + // if not synced, delete notes directly + if (DataUtils.batchDeleteNotes(mContentResolver, mNotesListAdapter + .getSelectedItemIds())) { + } else { + Log.e(TAG, "Delete notes error, should not happens"); + } + } else { + // in sync mode, we'll move the deleted note into the trash + // folder + if (!DataUtils.batchMoveToFolder(mContentResolver, mNotesListAdapter + .getSelectedItemIds(), Notes.ID_TRASH_FOLER)) { + Log.e(TAG, "Move notes to trash folder error, should not happens"); + } + } + return widgets; + } + + @Override + protected void onPostExecute(HashSet widgets) { + if (widgets != null) { + for (AppWidgetAttribute widget : widgets) { + if (widget.widgetId != AppWidgetManager.INVALID_APPWIDGET_ID + && widget.widgetType != Notes.TYPE_WIDGET_INVALIDE) { + updateWidget(widget.widgetId, widget.widgetType); + } + } + } + mModeCallBack.finishActionMode(); + } + }.execute(); + } + + private void deleteFolder(long folderId) { + if (folderId == Notes.ID_ROOT_FOLDER) { + Log.e(TAG, "Wrong folder id, should not happen " + folderId); + return; + } + + HashSet ids = new HashSet(); + ids.add(folderId); + HashSet widgets = DataUtils.getFolderNoteWidget(mContentResolver, + folderId); + if (!isSyncMode()) { + // if not synced, delete folder directly + DataUtils.batchDeleteNotes(mContentResolver, ids); + } else { + // in sync mode, we'll move the deleted folder into the trash folder + DataUtils.batchMoveToFolder(mContentResolver, ids, Notes.ID_TRASH_FOLER); + } + if (widgets != null) { + for (AppWidgetAttribute widget : widgets) { + if (widget.widgetId != AppWidgetManager.INVALID_APPWIDGET_ID + && widget.widgetType != Notes.TYPE_WIDGET_INVALIDE) { + updateWidget(widget.widgetId, widget.widgetType); + } + } + } + } + + private void openNode(NoteItemData data) { + Intent intent = new Intent(this, NoteEditActivity.class); + intent.setAction(Intent.ACTION_VIEW); + intent.putExtra(Intent.EXTRA_UID, data.getId()); + this.startActivityForResult(intent, REQUEST_CODE_OPEN_NODE); + } + + private void openFolder(NoteItemData data) { + mCurrentFolderId = data.getId(); + startAsyncNotesListQuery(); + if (data.getId() == Notes.ID_CALL_RECORD_FOLDER) { + mState = ListEditState.CALL_RECORD_FOLDER; + mAddNewNote.setVisibility(View.GONE); + } else { + mState = ListEditState.SUB_FOLDER; + } + if (data.getId() == Notes.ID_CALL_RECORD_FOLDER) { + mTitleBar.setText(R.string.call_record_folder_name); + } else { + mTitleBar.setText(data.getSnippet()); + } + mTitleBar.setVisibility(View.VISIBLE); + } + + public void onClick(View v) { + switch (v.getId()) { + case R.id.btn_new_note: + createNewNote(); + break; + default: + break; + } + } + + private void showSoftInput() { + InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + if (inputMethodManager != null) { + inputMethodManager.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0); + } + } + + private void hideSoftInput(View view) { + InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0); + } + + private void showCreateOrModifyFolderDialog(final boolean create) { + final AlertDialog.Builder builder = new AlertDialog.Builder(this); + View view = LayoutInflater.from(this).inflate(R.layout.dialog_edit_text, null); + final EditText etName = (EditText) view.findViewById(R.id.et_foler_name); + showSoftInput(); + if (!create) { + if (mFocusNoteDataItem != null) { + etName.setText(mFocusNoteDataItem.getSnippet()); + builder.setTitle(getString(R.string.menu_folder_change_name)); + } else { + Log.e(TAG, "The long click data item is null"); + return; + } + } else { + etName.setText(""); + builder.setTitle(this.getString(R.string.menu_create_folder)); + } + + builder.setPositiveButton(android.R.string.ok, null); + builder.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + hideSoftInput(etName); + } + }); + + final Dialog dialog = builder.setView(view).show(); + final Button positive = (Button)dialog.findViewById(android.R.id.button1); + positive.setOnClickListener(new OnClickListener() { + public void onClick(View v) { + hideSoftInput(etName); + String name = etName.getText().toString(); + if (DataUtils.checkVisibleFolderName(mContentResolver, name)) { + Toast.makeText(NotesListActivity.this, getString(R.string.folder_exist, name), + Toast.LENGTH_LONG).show(); + etName.setSelection(0, etName.length()); + return; + } + if (!create) { + if (!TextUtils.isEmpty(name)) { + ContentValues values = new ContentValues(); + values.put(NoteColumns.SNIPPET, name); + values.put(NoteColumns.TYPE, Notes.TYPE_FOLDER); + values.put(NoteColumns.LOCAL_MODIFIED, 1); + mContentResolver.update(Notes.CONTENT_NOTE_URI, values, NoteColumns.ID + + "=?", new String[] { + String.valueOf(mFocusNoteDataItem.getId()) + }); + } + } else if (!TextUtils.isEmpty(name)) { + ContentValues values = new ContentValues(); + values.put(NoteColumns.SNIPPET, name); + values.put(NoteColumns.TYPE, Notes.TYPE_FOLDER); + mContentResolver.insert(Notes.CONTENT_NOTE_URI, values); + } + dialog.dismiss(); + } + }); + + if (TextUtils.isEmpty(etName.getText())) { + positive.setEnabled(false); + } + /** + * When the name edit text is null, disable the positive button + */ + etName.addTextChangedListener(new TextWatcher() { + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + // TODO Auto-generated method stub + + } + + public void onTextChanged(CharSequence s, int start, int before, int count) { + if (TextUtils.isEmpty(etName.getText())) { + positive.setEnabled(false); + } else { + positive.setEnabled(true); + } + } + + public void afterTextChanged(Editable s) { + // TODO Auto-generated method stub + + } + }); + } + + @Override + public void onBackPressed() { + switch (mState) { + case SUB_FOLDER: + mCurrentFolderId = Notes.ID_ROOT_FOLDER; + mState = ListEditState.NOTE_LIST; + startAsyncNotesListQuery(); + mTitleBar.setVisibility(View.GONE); + break; + case CALL_RECORD_FOLDER: + mCurrentFolderId = Notes.ID_ROOT_FOLDER; + mState = ListEditState.NOTE_LIST; + mAddNewNote.setVisibility(View.VISIBLE); + mTitleBar.setVisibility(View.GONE); + startAsyncNotesListQuery(); + break; + case NOTE_LIST: + super.onBackPressed(); + break; + default: + break; + } + } + + private void updateWidget(int appWidgetId, int appWidgetType) { + Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_UPDATE); + if (appWidgetType == Notes.TYPE_WIDGET_2X) { + intent.setClass(this, NoteWidgetProvider_2x.class); + } else if (appWidgetType == Notes.TYPE_WIDGET_4X) { + intent.setClass(this, NoteWidgetProvider_4x.class); + } else { + Log.e(TAG, "Unspported widget type"); + return; + } + + intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, new int[] { + appWidgetId + }); + + sendBroadcast(intent); + setResult(RESULT_OK, intent); + } + + private final OnCreateContextMenuListener mFolderOnCreateContextMenuListener = new OnCreateContextMenuListener() { + public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { + if (mFocusNoteDataItem != null) { + menu.setHeaderTitle(mFocusNoteDataItem.getSnippet()); + menu.add(0, MENU_FOLDER_VIEW, 0, R.string.menu_folder_view); + menu.add(0, MENU_FOLDER_DELETE, 0, R.string.menu_folder_delete); + menu.add(0, MENU_FOLDER_CHANGE_NAME, 0, R.string.menu_folder_change_name); + } + } + }; + + @Override + public void onContextMenuClosed(Menu menu) { + if (mNotesListView != null) { + mNotesListView.setOnCreateContextMenuListener(null); + } + super.onContextMenuClosed(menu); + } + + @Override + public boolean onContextItemSelected(MenuItem item) { + if (mFocusNoteDataItem == null) { + Log.e(TAG, "The long click data item is null"); + return false; + } + switch (item.getItemId()) { + case MENU_FOLDER_VIEW: + openFolder(mFocusNoteDataItem); + break; + case MENU_FOLDER_DELETE: + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle(getString(R.string.alert_title_delete)); + builder.setIcon(android.R.drawable.ic_dialog_alert); + builder.setMessage(getString(R.string.alert_message_delete_folder)); + builder.setPositiveButton(android.R.string.ok, + new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + deleteFolder(mFocusNoteDataItem.getId()); + } + }); + builder.setNegativeButton(android.R.string.cancel, null); + builder.show(); + break; + case MENU_FOLDER_CHANGE_NAME: + showCreateOrModifyFolderDialog(false); + break; + default: + break; + } + + return true; + } + + @Override + public boolean onPrepareOptionsMenu(Menu menu) { + menu.clear(); + if (mState == ListEditState.NOTE_LIST) { + getMenuInflater().inflate(R.menu.note_list, menu); + // set sync or sync_cancel + menu.findItem(R.id.menu_sync).setTitle( + GTaskSyncService.isSyncing() ? R.string.menu_sync_cancel : R.string.menu_sync); + } else if (mState == ListEditState.SUB_FOLDER) { + getMenuInflater().inflate(R.menu.sub_folder, menu); + } else if (mState == ListEditState.CALL_RECORD_FOLDER) { + getMenuInflater().inflate(R.menu.call_record_folder, menu); + } else { + Log.e(TAG, "Wrong state:" + mState); + } + return true; + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case R.id.menu_new_folder: { + showCreateOrModifyFolderDialog(true); + break; + } + case R.id.menu_export_text: { + exportNoteToText(); + break; + } + case R.id.menu_sync: { + if (isSyncMode()) { + if (TextUtils.equals(item.getTitle(), getString(R.string.menu_sync))) { + GTaskSyncService.startSync(this); + } else { + GTaskSyncService.cancelSync(this); + } + } else { + startPreferenceActivity(); + } + break; + } + case R.id.menu_setting: { + startPreferenceActivity(); + break; + } + case R.id.menu_new_note: { + createNewNote(); + break; + } + case R.id.menu_search: + onSearchRequested(); + break; + default: + break; + } + return true; + } + + @Override + public boolean onSearchRequested() { + startSearch(null, false, null /* appData */, false); + return true; + } + + private void exportNoteToText() { + final BackupUtils backup = BackupUtils.getInstance(NotesListActivity.this); + new AsyncTask() { + + @Override + protected Integer doInBackground(Void... unused) { + return backup.exportToText(); + } + + @Override + protected void onPostExecute(Integer result) { + if (result == BackupUtils.STATE_SD_CARD_UNMOUONTED) { + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(NotesListActivity.this + .getString(R.string.failed_sdcard_export)); + builder.setMessage(NotesListActivity.this + .getString(R.string.error_sdcard_unmounted)); + builder.setPositiveButton(android.R.string.ok, null); + builder.show(); + } else if (result == BackupUtils.STATE_SUCCESS) { + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(NotesListActivity.this + .getString(R.string.success_sdcard_export)); + builder.setMessage(NotesListActivity.this.getString( + R.string.format_exported_file_location, backup + .getExportedTextFileName(), backup.getExportedTextFileDir())); + builder.setPositiveButton(android.R.string.ok, null); + builder.show(); + } else if (result == BackupUtils.STATE_SYSTEM_ERROR) { + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(NotesListActivity.this + .getString(R.string.failed_sdcard_export)); + builder.setMessage(NotesListActivity.this + .getString(R.string.error_sdcard_export)); + builder.setPositiveButton(android.R.string.ok, null); + builder.show(); + } + } + + }.execute(); + } + + private boolean isSyncMode() { + return NotesPreferenceActivity.getSyncAccountName(this).trim().length() > 0; + } + + private void startPreferenceActivity() { + Activity from = getParent() != null ? getParent() : this; + Intent intent = new Intent(from, NotesPreferenceActivity.class); + from.startActivityIfNeeded(intent, -1); + } + + private class OnListItemClickListener implements OnItemClickListener { + + public void onItemClick(AdapterView parent, View view, int position, long id) { + if (view instanceof NotesListItem) { + NoteItemData item = ((NotesListItem) view).getItemData(); + if (mNotesListAdapter.isInChoiceMode()) { + if (item.getType() == Notes.TYPE_NOTE) { + position = position - mNotesListView.getHeaderViewsCount(); + mModeCallBack.onItemCheckedStateChanged(null, position, id, + !mNotesListAdapter.isSelectedItem(position)); + } + return; + } + + switch (mState) { + case NOTE_LIST: + if (item.getType() == Notes.TYPE_FOLDER + || item.getType() == Notes.TYPE_SYSTEM) { + openFolder(item); + } else if (item.getType() == Notes.TYPE_NOTE) { + openNode(item); + } else { + Log.e(TAG, "Wrong note type in NOTE_LIST"); + } + break; + case SUB_FOLDER: + case CALL_RECORD_FOLDER: + if (item.getType() == Notes.TYPE_NOTE) { + openNode(item); + } else { + Log.e(TAG, "Wrong note type in SUB_FOLDER"); + } + break; + default: + break; + } + } + } + + } + + private void startQueryDestinationFolders() { + String selection = NoteColumns.TYPE + "=? AND " + NoteColumns.PARENT_ID + "<>? AND " + NoteColumns.ID + "<>?"; + selection = (mState == ListEditState.NOTE_LIST) ? selection: + "(" + selection + ") OR (" + NoteColumns.ID + "=" + Notes.ID_ROOT_FOLDER + ")"; + + mBackgroundQueryHandler.startQuery(FOLDER_LIST_QUERY_TOKEN, + null, + Notes.CONTENT_NOTE_URI, + FoldersListAdapter.PROJECTION, + selection, + new String[] { + String.valueOf(Notes.TYPE_FOLDER), + String.valueOf(Notes.ID_TRASH_FOLER), + String.valueOf(mCurrentFolderId) + }, + NoteColumns.MODIFIED_DATE + " DESC"); + } + + public boolean onItemLongClick(AdapterView parent, View view, int position, long id) { + if (view instanceof NotesListItem) { + mFocusNoteDataItem = ((NotesListItem) view).getItemData(); + if (mFocusNoteDataItem.getType() == Notes.TYPE_NOTE && !mNotesListAdapter.isInChoiceMode()) { + if (mNotesListView.startActionMode(mModeCallBack) != null) { + mModeCallBack.onItemCheckedStateChanged(null, position, id, true); + mNotesListView.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS); + } else { + Log.e(TAG, "startActionMode fails"); + } + } else if (mFocusNoteDataItem.getType() == Notes.TYPE_FOLDER) { + mNotesListView.setOnCreateContextMenuListener(mFolderOnCreateContextMenuListener); + } + } + return false; + } +} diff --git a/doc/标注~HEAD b/doc/标注~HEAD deleted file mode 100644 index 66dc905..0000000 --- a/doc/标注~HEAD +++ /dev/null @@ -1 +0,0 @@ -undefined \ No newline at end of file