From 493d377bad324ef218c295db5efc21ac6d90b8af Mon Sep 17 00:00:00 2001 From: Dominik Stadler Date: Thu, 3 Sep 2015 20:45:55 +0000 Subject: [PATCH] Add unit tests which verify that the issues from bug 48962 and 50755 do not occur any more on the latest version git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1701131 13f79535-47bb-0310-9956-ffa450edef68 --- .../poi/xssf/usermodel/TestXSSFBugs.java | 42 ++++++++++++++++++ test-data/spreadsheet/48962.xlsx | Bin 0 -> 50260 bytes .../50755_workday_formula_example.xlsx | Bin 0 -> 7928 bytes 3 files changed, 42 insertions(+) create mode 100644 test-data/spreadsheet/48962.xlsx create mode 100644 test-data/spreadsheet/50755_workday_formula_example.xlsx diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java index c36d8f7d3e..6b4170ddb8 100644 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java @@ -29,6 +29,7 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; +import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.Arrays; @@ -2529,4 +2530,45 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues { FormulaEvaluator eval = wb.getCreationHelper().createFormulaEvaluator(); assertEquals(expectedResultOrNull, eval.evaluate(intF).formatAsString()); } + + @Test + public void test48962() { + Workbook wb = XSSFTestDataSamples.openSampleWorkbook("48962.xlsx"); + Sheet sh = wb.getSheetAt(0); + Row row = sh.getRow(1); + Cell cell = row.getCell(0); + + CellStyle style = cell.getCellStyle(); + assertNotNull(style); + + // color index + assertEquals(64, style.getFillBackgroundColor()); + XSSFColor color = ((XSSFCellStyle)style).getFillBackgroundXSSFColor(); + assertNotNull(color); + + // indexed color + assertEquals(64, color.getIndexed()); + assertEquals(64, color.getIndex()); + + // not an RGB color + assertFalse(color.isRGB()); + assertNull(color.getRGB()); + } + + @Test + public void test50755_workday_formula_example() { + Workbook wb = XSSFTestDataSamples.openSampleWorkbook("50755_workday_formula_example.xlsx"); + Sheet sheet = wb.getSheet("Sheet1"); + for(Row aRow : sheet) { + Cell cell = aRow.getCell(1); + if(cell.getCellType() == Cell.CELL_TYPE_FORMULA) { + String formula = cell.getCellFormula(); + //System.out.println("formula: " + formula); + assertNotNull(formula); + assertTrue(formula.contains("WORKDAY")); + } else { + assertNotNull(cell.toString()); + } + } + } } diff --git a/test-data/spreadsheet/48962.xlsx b/test-data/spreadsheet/48962.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..7d14f77f0b8de26c48749c4bd5e085b380eb51a6 GIT binary patch literal 50260 zcmeFY2UJu|vnaYrlCyw-B*_vbOB#Y?$vGo=K!W5vNR+G~prGU&B`Z;~h)T|JKtMob zMuH;@%-ek5AHH+`|Gj(GyZ5g3?s{kA-c!4~y1S~os=BIrtEYv7dmXq25C8zc2Bhxb z)B9lozyK})Py?T_ES0@H{hU1gY>k4woqVkYgFGIx7L8!>6ad&D{(oQpr_Vr*(Wqyi zFh!^79^_uPNkUDF{%B)*~FHk53&%Oi7Vmys|~Q%Q{GOHX240Mh?+Pl{z2Lz8-(qKQSo^Pw_+W30*R zqjATau1o|8G?89=95ov3&%5cj)p{zigg!GX1b&iB4L5%g$Zx3a9?bL9QcjM{?fdb~ z#pTWM!<*E5B*pJF&6g|BT$s%W@qez!5X}sF+#QfF>Nk{r9KVD5zKi>UJ;sAV+3jik zR@iJ$!ty5hZh@HY>jw4mFTJ}xU5r6XOqST#J2WJzVPop%(y!n6UMuXP=J>$u$^4@L zjSm1A3=W|8A2crflTjWisBtTxLJ9lo)iXw1hF{x51{r`m=6JLU2<_M$|Y3BQKfR5JBOchPn?D2Ldz*y zny|A}2$O64G?!H0yI(ZF#iymVi0x|PSXZZ%m^qm_iw(K|TmNB88h`aXPl5Ib#GBbk z>zV^xcEM_)!%le1!S$`$!UN?naK`f>&W*=8zr5AEw`r;jGw@eLW2o*qs=OX3PB&v@OQbm^dv<6#`Lf zM(Y;w9!cdF?yv~@$?UY>&6?Tb@2T&*Vd_Ti?4tjR{R3}>VQtXSblBh^x0ZQ0D9!&W z>&aPzo=4zK%>rcH85@}}61?$n}E&o;%)5 z%}Jz~*wJB}thhTmJyP*mF_1^n={L{RB+j0wZbKW<e0Ock4iqH*3pXcqT`9jg9F8+fOLdFxALA zL+j{;8p8hHb_iS%t-C#H*Mb8cod|&|{jVa!er=So1r!4k8~`8(F+h>|tFXK>(Dqsq zCg~!dhf(<1ek~c9z1EskXWalO>(^L@ns7?f-b#q$82iz~BEY?rXdSoPCxm>K<`{fe zdNe}e$+hso?4&4B1W^m}JQ0QoIREjg=|#!hWKn!#kHXjNlO@TmNH`)n$PRbiVQ}er zdo6{2%eteL9e&;|(ret*FCPfm(<$uDV{^C+R`IM7bEoWx_DP_LuSulndq-CVu1}Fr zz5jUcV0hN=*_@LDzwDRf7vI}ub}J4ie4L%`=QnE<@O5)h;|FaKg#T)g3`q1$B&9nM zO8@m3`qC~~zXqx<_KY_EHN+}7jd!k2id5&6uzrH_^Nqt4O*vk}$jCAcIffe>UY|xB zH#3k7_}BuoF^HdwH+>Kz-=NKif}$5N#(I z!uem0Z3ew)eVXuenbKjhfA%R=K*(KxejTW$g$kPc86=P9SjzC5F$=Z_Jm;2Lj&PaK zof*!NO_LSWoW*N>EOrTK;dnxDu^*x4`wCW;q2Ea1GrLPjhv3TFE~2WHl{c1rznT+` zxl}(>b{ST0_v*Tra*rm|@a{lO-8Y$N-JWP?r^P}(Gky- zO*1)}*H|=5|M*SDbjTn6Mj9z1X8s*}PrCKVNY3|_ps*L_+B%9`q1icgqCjxpPG!etw*J(jgQ`k3R=&` zO6xt9V2Tcm*jN!Y&&&*#Fbb;jDedp#xa5u^BS>+9UwdM*#$J+j>z>ymy&#+#)G@0Ulfs9T+)pWl>bia5;0KwOF)3L87uMdCkOS~zQZn?j5JgX78 zmM6dgZ}KW~wZinksl8;P2{}muo^4L{%A&aJuD_17R(N?zU?^WnrJ-YAGW38{(k9)R z%Uxhs*6jEefy#AN9Y#r6V3Bv>rFiIO;%wyGZ`|0^;r!nf`w7V%Y1bDM4~w}S9(JH3)!IY>wq zw-<2FIQeOt{zyh-)cBg`{Y6KLNXRM*2vIeHRsHbOz<+tCNWd6{hk#J|sgpjQdWT%Da$s6aFh$i*E zCzY6&s`{w$&dFtG?9w^V`Nb&WVAeNQmp}Q{dzOTcDf~pA^6^_Yh153ce{JtS=DF9f zwUot(ddMN)q#h=7d7As+I;7)!e`13fKp7!MW%{V|Qa`=ucVe)KA9c-3^5-fPAtogC zaD&8Iwx;g{FJ(>lJ~VO#XKf~J7WN?T3#G;czd>$3oBv!E6Z12JbO>s#uRcKkn6x$Q z*CXlyueuCdQ;3!Ih-4$bW@R(Bd;Nz*K1|TbHe9YLpSfqaZP=9NmBlmBnIj%qE6mZ{ zT75?&(x`Vq$VcAFw%_f7H}lP$Z5cT@ z*wZlH8brGS+XH@Am=j?Be|IXO@xnI97_BwBi7-jUD8UlT7 z)KrQHp9RM+(S*sml%{XWY4knJG9MdA8)l3*SS>rl+f8e`+e{w+5|K6%43woM4E)}N zV4g?2iKA6Bzu45L?O)*BiOjvJsP1besRhU-KN7yfTvsdQT#5U-aJpVY5B-x)=3;?fgWIEa?a#a_nW&YK4PEDVNHHMNa!NiYs)( z5~u!i)Og$;oA&aH-1JK1xKq*%R>Id?M6lsrhDXF3QV2UcnOPBp09~BH#|Fm8`MbU= z&w1%1q!+-N?zn=!6ayjdls4jv)?IHslLxHAwSW9RGpt}oyjFON50r{-N} zlOaK~{g(5vHl#DZSa2=w@0%Ak*FRQ2ZH<*^zCJ2&s`Y{P3#~_uOYj$siqrrDLQ?8Z z&BCV{u_soRjTB3*jt@QuX4RmPl>#+kVN`R|kqr%6R3p@L=4Z@Wonp)uyVY-qly-=N z$g3ysj+=id-U!f_9=oe+V!JX~>1qh|a5N-YTKmOWxO3+hAG@vY4(H=~7sZ`r#vGZB zkfg?S_PPh(T)nv%m5URV z*acBHE%rlOwKHD&@sQn4$z+))c%DkX>QdZiIBBjSfZs6byzQB~KpFq~X-|%FI2I#A zwlLkB!Ul(>HmsaX=<~|Jy(LM-caCw@<_5eNyqgR=Ls?OdJYb7-_RRc%|s|=EbnP$1erWLRY%qnllL11HFgP9-%v*!-?in9pdi@?0?vL zPnH@;NOOIz!aTi0-`I7lhu*h{JYHe(jQR`URj;7TIoHB_{IKyyQl!WGXF>7SWTwk& z?-zz1ISh|2@}5VKerRqxC!_Gf8>aPp670n@h0WNq(6{&&8LoOW;T$>kDL{hx(B|lr z~r8_Oy-r?L80?+5-TV8tW~Rpn z#iRS>KNYs+Rz$8P{;nf;Nmamaxv!B3eNpx4yxs}wtj0{D&TO97+3{L0#Lvj+am#FM zeG1W%U%FcMd7|dtuA3bWw1s4yL>(HJ40(O;_ORd-t9y()68_|9EN3q#G+nh%UXAo zGV+7Sk0(VHRdrL>zZMGU!3%lYBc3SjD?*PWo)-Ot{8TRu<0uW*T*N?0M%O9T z2FvNqAh}Z=(T=7ZdTu0Xiy8;VJw>ahZyzZrl$vZ9L}(WfBu@9dml5sQe;u?e#TFU4 zJs#qc|Lfe{`SdJh^F^WZEsiY>_6nO?+$S7tEaQ&T1V2usO=od9XmqZ+U#o_$oL{4>V4l=n1C8MU-TVx0Kve?I3xcz#exrjbpYm{eG2UuSG8-O_aO z;2jbp)QfVk3k{SiVN;a*EHeM;WgERLm*!sV(}X%_?VCi=OgD|hm2@1F2>qUzvjcZ= zBBt4gZ!3^!;R!J)4x;h2a_6!Us;UFiHy5d_htW=c^u6nL3m>i*N3b<7R?gIW(4k2q zE6uGsRyB#S6izE?UjV4PL0f=jk$ZAoPg>UtYh40miyC~{Q%bCUJK}Nj+S0CZ%S*!y;kso-D z9~M&Sy2%hHn%DA+SQ!()Pu_}?)j#qP7$Sf74N$`azu70(2^R z@1|H2ZGB45igo01tzzgs=Z#Bz@iX*dV`)w(uMoWRWJ4l;ev8i-PSa%$_X@rnBO^th zNoX5>F>+`d@gySjbf%g+|2MKR8S}d%E#eGm2%)&`S~W2`mVfyZy*nx-e|eJ2&5X)= ze<9MT=5T9*$tUJCn530{_-#%`w-k$tP~UXndrHLV8_((wSgSAXw)@2s_B+q9bK=Q^ ze9_|*EsO~bMa&~@Me|rce7@vZ1u=PRjouD^E2*Oz0k^jrI&cX4ma)>8K)rY>6e9kFDlBG1`DO_}w` zqmp%!y-&)G{K<3qoDS^o0(cj+aS>aj=YqKdf(ASx>zl!hzBa0!N6{uRo73?JlN`4l z)-v#)7Tq{_v=x2m)24JRI)KIP+aI1!#l7qz85QdHwL(mr;=-BVkH1h~=0dV;Bsb?y z@py^{S*OQPiXE|PMmPRn}mTiAomm7z_?G=;h`vb?tNUmk0umq+1&HUdJ69_6I8 zA@!@W^WhB(oWs77Bg!AmOto*k6ZkA|-uLE)pPl~HOPpK0WZF<%NYnO@byaLe29CF9 zkyRCp@aw1ZGYX>gBgrS~MbEXQmR>pud8NdMw>NV48;3i;xlpig8O09>RuS4!i;ha6 zzsv4>`3bMq^;!~<<-4pqcuhjLYN|3V%q(UqoGo6n*9z0yOSv=f)2_x?6GU|p2L+R+ zezOpJr7g^ka}X#KdGzK54_ch*w>uZqLy=pu8%9b8FF_P}&XmWM*pyh?VldRhG)^8d{9j8Uqgp`h^=grsfr9MV#gr*{1H&3xdNyZUx=A zy%UqcSC%PkrGvOEl6VfIExT-!=ELs}vxL9RC?`^`sa1>(*|R94ddnB{urj^h*%4Vl z-fO=&Z4KT!ovoRAewa`4rOqKsRcb%$jEl2gidgc*=b<}HSg8u+}YQaRBpEGF-*K+xBHR1inV~JAU0R z^UVSRgB8Dw8qyofyJ+A1CZfHxW9CvTFCB7T)$-cMJ)xWSN%YCmE!pG0bI*J9CPXjz zyV%BD92Y1q?Ax`fwv6E8i9Uu1 zV=4$42ukSJNtM$IO)b2PXR=*tc~=+rAx}`>jA46+g8IgheieG<$uAbA zf;M{$Uwq#?>g6~eDPejmv42dj%5L7M8~21P_2@_qPH3rg>aNLaPwIB4d7l0C*H$dl~ox`5a4j_c@7q?ft*=B%2``z0>-+S$R( z&_qtykP|V_Vc^SOUz;jMzbhhB9=Au1P9t-zvx13UN#+J2#0~7Ea{RP0v4swzD<$8z zS^n*2$##b#cL5B5=)s-x#-E$zRffjb)yc`vSLlzQKX%MlW=pA?5+vb5<1k^gncc?x z7mp~8q!j9M;_pS#o*n1kr9KXr*&0}md_srw>Nj$fF_N574R5olFsHW*$ak8Q20D3| zik(c7<14Q@_^;kfJPY2%T$r8-A9ba=oUrlb<_KI!&i-aG>A7qSf-bVGB;5J&IJVvL zjQh*j5$m^~)YXliJ_fB$+W!1i?+jtiJNIE zUnI06D$PDmsE>Y3j>fE1N(C-jWcCbOWwt;Bcj7xMzu4K^KF5P)sD_HpmBOI=?}+vb zZ~tuF&0(jLKDs@+Ggo!obvqvxQkN^Sl&xUkpJ|(CG23wZQQl{j_MF(|y@CI0%yvC( zJoYl(t55+M!HYC_7+osbuI1_XFur*$my2IPt(cFRS-t_09KZ8eVQXR#Tm*F(L)3^4 zcFYL>&R`~I4S)8fL>&5p9shBUu)=tn9cHe$RK!}hwrxy0OKj`c#(Q01j^~4qnVPgl zFb{1aTn3L4`c0w2UYg@^w)MB~5h{LL;0vjI4xh^NmlcRfJ>1GpmCS7A58KORFC`hH zGfGt~-1Lf?@kV>fP&E5t=Y7w(2XA4U#P_@3}us3SBQvBAaPni=Oq_du8$jH9-!=55=VP?N3RSl+;V_P`AH0I8cA^RcR6v zIUwj5NSweNst$x5mqdy_f3AK^mVT>*q7CJ3O=&vEb6woEk8ObSNkXA{$fugXd#Mfj z&aCWmj`ubeZYPtnv6m8Ht)4p1Dj#nH-pF*cUo4~UtZq#GUeSCO?S=5HQOO>ju)o6o$S{y~z+Av^S*u;sufF&PJg zRNjy9Iq!R1Wh(+45+*mx2EL$nd@G*rMX|x_^tWk~HSl#^Ud=_b)02X5VaBF^Ub*hIdv}u*H1`=KeY%uYq%u}y9;7SI*y&xKqa<9Bk&lZ~p;?Ifk?xsjM&K-Y_ zsZt<|)5|4Fh7TGgF45X;a5*=f&{ji?6wy58KPH~zHqZLJT4YgbS5z0X;~*u$Kh|rS z0IW)wH_XKt$iF>&JHx{P$y04|)g*^hUekW`nm(;qiovWp=KIuZrC5TfgX)A4r)wb} z>{Yd|GrlFGNKOv9P%|W~NaGHcJ$|k0Ez_TLQ|HHU+4hEx!q@KyBs<&f8aWo$$S2f? zcSD_R8&BU=$kaQksWZJwDST)tJF`jb^~I-fP4Xt${@d;TEz;=zO>bb`VaodgTVjC^ zv;63{QQKXbWvr)sg_l1Zfk1Ao)vxbK^_btxy&54deA!OX-aLqzvk|D8`#rVewVJ&R z!29`sseR64b^VPwpOd9-Bm9XVXOEuRFb!cj&bFwAfob`_C+vwp!+&+L0lpbxac^<~ z;OeFWOB}r%^nAR$eZknt-^1SX0ra7uo41n-W*)N+P-v=Zr~+76Sb#eC2Vgev6f~5T zZS@RvRWgz$LnGHn0ullM zxL4y{5A^f)1L4Rk*yqpk=U1@(pK!$=`c z!WGU?RSgj40q3_~G@TabU5(Daynv?kN-jSUoiilz$?4*XT60#0Mz(`=1c6KWk&{o*bpq*v458NX#;@V56~Wr|Fet- z)CZb;0C+3m;O`UgxACyBJ_CTCQxK^00HEyU9qa>jarI*r5f+wYRRm3z6RU=&gCIZa zgNF}U|ETh1^>Olb@(FNq6a;*oMMeJT2a7}rv=gfs%n_)6_~`&}@eG4GFT!9hia{Ed z0pR^Z3>@%N34%HUfVMVp8*D`Y;9@ZVpm+WU_3~JZ|A1AocmSL~%E7a@cqnjXf3U#& zN?)%o&>sKs{^u`t0ruZ9uz&)bzr#S`6)I*4P`h`~9LSFHWP*?*0(sQ*`-{e!W8^0f$_^<#mHheHWKfXlbv z#V|m89y7|TB&d8Kf(cP09gw~5u1krEHt!jScck-KYV)t{<)n-x64up`cn|XbBq+`a z7B&$Jyd7Keb=sh_WKydmRKRcM#BMmbeWgOsWHq$a#y71vE<8r9Nkl|C;n?#!G)UA|qmHq(Dzp^Baf zE-EeinIh>tc?3OagVphe`63)PCBN@fp&d~WC-`gIJ{xWnY(v1eFM_)X(KQqwM%tPi z+PER(VKCHhG*w?yFR&otrG5TT*~d`V4|1a4z18K4i%fS4UykP{OTo-ZI6pDwOJ05R1#fYP~6FAa!#m9saZ4A=SOC~1hf(E-QAzh3RM4>!21{i-?1Y2*@#QsirTly(3$dsBj#+|=qmX)IuK@V{?AuT zorG2lJ>4X#ITkZ>t@apfcvp_-Yk?@e~9!7psS^y_3z8BK_f5{S$3>9;(!u-6J*VyqCf zd(^LXyDbEs{wO0kvy^s9*Kevxcj7g)l9S^{NrrB_+iouGzcdv=WyOeU_(jhF790Z* ztHHxrT?2cF#8)gf-p`xo222+qlI8S=`Lq+jWOYB=PAFo*k+*bf6--YdYlyw2SRJEIoUMbqwL0Ca)^KAJ~21_K;( zx#pt;rZB*7s>pw{s4V}&F93lng>hqmLeYB|pw}}W1AKT6!1`iPpkOFDCt!f66$l1+ z#smB-WqQ~wk@Z13%x#rvF)T!v zd_k5ftqA=73u3FpxxsEuR2qDZa-TMEjcoQ%Q5RQkC(bWLRB1fS`C$a_{GLh3=gW6x zmfvzx6XfPf)A|hx3U-zBt&YmMwz#_H`!wXkty(;qmp$BNme+gjZ=3iSbCv#3g8B@K z2kQu|LY#M@e44)kwwfR=J^#XC=JxCV&rT}-7zSw3?W@N^$(;J3`Zv-@g93FX#SiFu zEnfe~tTH!Ww6rl>DSzIuykw>5b#weP^M--?in%W9oXNF2c`}5AgF4g$hRK_p{ygv8 za`s-1ramu>9@L?F^vc!f(R1rkdY;ytaE6fO!gX69%x(_N2$$1UK(aixn;eTje%=sw zq%d33-4Z7wm8@@V#r;H}IB&~1vm}qeK4GEz-hCSS^0-EWIJS?gN6EW9ZL=f29U+Zh z8>~L}`Q7zg4lXo&DVXgBm0T&_9HWTng#cmU=gPK=d#CwL0oBOvx%+LXXPe})0lf8# z(C%ANlRt;%)KO_jzV+7Z%?=m=styC(@17N~n+!AF7$aV@3NJRc71`J`7g%Keuu)2M zdt&Ie_FL8B*W4W64+%{Cei!9f3~D)*wn%NoKi})#*!?z4NtMV=FJnxWDgFB|}hZkd8R}XM&}`2_ra!o%XYnDw z2{FgpIs2?L+t$4t|3ZqPPo7=}w-!0xCRo1gXgzOTs}2MeDZNpvQR|0^H0*nQBBNlu zD)S~59egb=W&74F{?${Te{oOBawCZqCYx7?73XB}i(GT$QtDooxSpv+v1m^=*GdfG zwl+>3ugH%X$4w3meOZ(`IPefCOe79sS1(GTG*(#hXubLu=+R~Av9}cZMuQ_=gR@A( zoO6L)`J8W~=YsSSG<$s}M;IX6D2`>pmImCCyg+kE)s~NLFCgbd;>V*cOVFxq$nCDp zdP1m=D}*G>_;ke{1E^$;Do=LGl)L9#tF2ty(|uIKug6(ctSkO~j?!|;LQUr5wTWBM z1BTMuCMKEc(_Xck^n*fbUzUzlBgTGJ)vnCkHEh$;^v;cFi~4PKL>|@CG8_YQm9zMz zjpg#bpB*zr z3>8<+TdM>^eQ^)Hd`Z$?79Jb!F^i?HX?J971ooG-%$ggjzYFK!XDEJ)N2mK770J0N zp^Dd`uA^291n&$%l06XAy&?H&-8^9y2$T4N-JH1C;v2QHj5Y486D{huUfcIfw#aB%E9-Wcdk6`@ z-zKV0<2d}w8Ug{MO!crXGLg2IaiG*<061ST1{kdZAdTI8paZf7hoCvVAiw<; z@J~$#VP}kJa3hMT-N68Y6*w^n-QLjrxctR@M4ew+G&69yoF`N3bxDyQb7mR~YZZKO z6qcJ}cuut4f36hNx!d`!4!ukLIoqB5PLpq?LBP(d9glZgyq1#(^Dp`+didEH4@a-p z?>h#<{*zo)@cb9Z0WLqH>M?*a4BTT8nVlE_JjnYO0mb=WHbFmy(z=O|zY-&e!*mef z+J;#cNF-IFWX$9Bt!4VNY3GJk1af=?T(XVwc(w(oVxhO5K{`vETMA8#_$KSGm);g< z*XOnQJh;L&TWwSEv5V6t#X`jMb`9sX*#UAUBoF2Sx_8@#UlnYz{VvH=0ZQef* zXVlh8l35AVZhaR!lOq06G&*fEaBGBKfiz&09OI3+G zyE|eHkqeaf?n?XyIuMFtkVUdF8NR5f96pv@%a0C(Ggem~Gk$}&MGr_@HEC|k z#-@t5^MCTz0l40Ur?`NERRvq8!T{{$OA{C%|IP0ap}{7&Zt7ZNL>qGKbOl9suIL6~ z45N2Jz~Hp6;Yn}9sQkyM`>V#PcIOx_8)_E&+9e0N7?o`gSSX+vfXqKg+@UZbJ)D-U zV##g%TNZfq!7~4H?t(~E7cIE~x?%bw7qywN@i8ILuq{hs0Dg!*s0Sj5v-^mUNpKd%1;a>)N=h`gu!G9S;59aPa8_54=4#=@l z@KCxWF(LXOSf52;zixtbSq~z5*oMg#C+KL9umr_Ec-npdMwNaShJCBtGtK96ZX5mD zbIs5eMnWfRiSLwxoJk*!tnVW4MnLdyjL}66J$P`}r_bz_xEtlGnypcK;~1k-$CV7v zk*1Iv%gnb8;uz`T1~mC{^b2h=p{kN?VwrbGN|styQ}UnpkoDO0Bt@`yAiScwd4uBB z5x>4CL6Q0Efyw^l3u;68OeeZ&?Xb8`UIcqD24L`K3>Q*G3MF`GkD_#kVAL(JNZNhG z$0M`3V=a=&QIfzhyCEE|4paGm0`q9C`Pt_!|&Li7(X6C?6__sQdP#`>28$aZ?C zi1)wIowGdv&dyj+T>1SVL8uB{+2!UhJOm} zjR*G!P38ucaxilbWgacZ@W0ckvdC_cTeSclPEKwry<9KlZd(l2K&-u z{SX2-hWyxLzR`tdZL!b3@|g}CQ+M991_V2X1_X0BJ39y3f70OB*lsqi8nh61<7n0N z(fV;eUNhID-5Yedk}c7u$0v6?@)<8b)3VSX>qfSh$JwYd@VHzIbh9v?9f;iEb-N&(J*J^;u|cIX}x~Vd=gZM5l#fL3-)E zLDWUNhe8oYgBg}q{iS9cZ#3J*7tC+@w~?gtZdt24K}4P^h?fzym^%n38oP-hjRaqP zo$4}M-EF+%R~c@2{o=JujRafy2;+)=uCC|KMrOyzX%Hls`|L%}Rxt*61Y4{>UVP>7 zefRtgiv5%wUH##bu+ku6GU5oeg#k)MJbuE)G$4nY7yxM;koFVQ6d>(4;hu@sb70q<> ztZyCtxj4V(pi4|MM)R5AXu9IJ6P@e%uq;x%IH7-{?Z#*54N zBe@>eLM?jYe{eL>F0P~;i|%Gvv)T6y?;MZpONPw#?GyUX3!T8Q7IfjEq3&bU%7GQA zh(%knMH|3Fuw{PxC5w7nJ4xAMxPs-dl%2ivhYvW}CMf&GXee=25KW8mMEsMb`<55L z9x;3)O0i!2>GS238$+Y4GbFGFJiVP4B@DpVFb|~Gx=?=)vHPVMGA${B1hkw zV{oS{+t=vIAty#TE^~F%EbT4^bxgMqTT6s$C23`pFIr2l-8)s(p8x5J)AE~lo_oi6pTC6rJs>9gQZb1z8KM&g`a8&p7$BOQGaCl=@8(g|_abNnq)jvC(fwNcRy=KB~5So$FaXq_2TZS&c^oXrj~-Ge%vB2N28v_mOYRI z4821J_KwQY86Y{=5-u4nQK4#`3<0%upKF7h<=F2}Tkw=?%VPk2_h(RO1Y!)g(nWT} z2l<(}#!)jik_RO@+;c60H7M{N(ln-J3~#Sp@<|vSeCBcKZV8dVT!LW%jdUB4^jy`5FO+pJTOc_1WQD}L+7gnp7m3Kp zmaVHs+^@A;=wD=re-!EJw1{8$`qJD&+)lB8EO6MCLY^2cj*voSY+8HuNlQj?dfbv> zp&$+tm+^4k8K9%E_(m(w9If8k(~aaRt+!gS>@9-kkk%DfxE*QV3<+-;mBPglde1_0 zc@3>SSELVeE9+*_<(*(W?im$~6WQA-O2G#~)FZTCKNA1dUbibWO%aP{CpO^+YSW8;H zOZSi0m}by=!fq+^E9z?}q9VDu;s(yk22?IWRDVv^6u#s|g}Uh$LD+%t%-_&$Zq0Xk z;81~9oEUy0OJA;1y{dLCv%-y;b%L2mr*BlJtK(g$O!Zw0ak{KkSNsYLVD}Anj6Vr_ zgV=KzAO(!Tq6gt5P+e;NM>G|42^X1>!+Q_vi zLD<8jwMDvNNDKM*qfJQsqH1wL_SF*c5KeqHRxpBzCi8 zw}YcDq2rbL6ihwL7N${A} zcP94>k#e*YEDCa_35j-tQNcE|FQ1Q8eINqA9w@+$l+7Q!q(tVmZNl(SxvDdr;x6Su z64n->p#oa>r|aqkzs@z6Pn_HlA8al4pin=^{nSWE;F$X|x$+!pywuNQMnwBS?WXKVYg_)FrXjr@MwMThkrH20Zq|J_RwG%1q2ZwndF za5P*7?G}3*uY|nW`bc2rdAb`6kz(sMTCPFUCtiEBwDNkCP!+wo%Lqm;W8`ard1Hr{ zV*{eU@^N~;hQ78eGh`X2SDHJyyT$_RmFi@yxsLep_*^ZB(E{Zc!5(Hm=hX~hLKP3I z4Xm;u;s?F3!vqm(@de2Iluq8waB3T5U_v+kH)dj_Ze#?Vty`O}2NW?nXcB_=k*l2{E>F4%!yrwQKf=rwXEPAhgO|9da73{_BBE?DEv4>wAJr@rm$gPG=D}_K zF6wY#v8-j&n$Bjn3t!DsSBAyz7EE96aN`iYIoDR6L5+_z#gXR=IkK8-YDUY@ zN!UiLMf*D;P9x9wO-~Vf44xUcJ!1tIuH$T_fyuyLd0F{2D$g)uxb9+7Ut0j}8u>8~ znz0TwI>>w{cgThSH37d6+Tdz>gp^nnB1847B6^-UA;*RwOd3ejp{M&H_kXUsQSDo3 zz7$)k6=CARd4-Avb#VrvWf{~2@I>-o%t)Bd%A zIy0AYVeD;)>p2)8@i-UuUCTphZYV+)C5j|IjX}vFAvP#?q?&Q|K)TtU2{S3`E+W1E zGz{hMQM@n@4GD~^w>9l<$_pxLQ6MkJ0M7N1@;E4*b4|1xYVZM4ZT&I>akPOKdl4Vo zO^?#EzCQlL)8Cr-!P{G%M2ib;14`sp&9-bBasFq8f5Z9c5h~W{=8r+Bi%~sX}EK zTrQ!~HV%_*q!B`iXyst$6^2nQg!bjLQghXA*35O_*Y6&eaJqh$CfIjtL=${x*fv%) z=*(UunPhHT|E6)lE0ZA8>>9O8~WsML4_ zm-AIYYz_$)Hn=Y1^frTnnrl7XsSnq-+>ktYyl%_PZ;{sD1v5fAcLi_Ag>Ja?TOP*2 zn)A~jt^%S8D9(*Fs-Oi@c?F@#)Zm;sJr$xMTKG+&~Ozqpb^}4lU z^bY?pm{AwQ5<&~)$Jrjs2bqHT91~k~2zV4|2_fnE7KW(5B&+E`od7I|)(Cpo_;0u^ zn#ml7+yjpRAEHIT(}bhG9+Y(B-=g&eloOcs*@*?yP9QK`ffI?UMhd}C%MnY%77_WI z5Ykm!n;=Vzw&s?$nOe@g?F~!%ES?7moG$4aH)B=wwC-R>3ZW?`Yw9m)g9P1Qd<~{k zoZQ6o6lBMu(`{k(NHw;p8F=NG@fmO#MZ(r&+XfG0)>RIlh?7cgq_$nFgv1{+nJOV? zGs{sgzFBbACy0;g5(l*zOdNzUZG`KpjC*;Ugj;Hii-R9sPSxC>T3J+T&5ls*9x8A0 z5BAcwIM5WRZo9s9{ddu;42|ZDP&xn4Gf@?lta z?s`}XctC_^#A;6q?4aeGL3u+r?Ub3|A{z}o=R;X;;P(n$GegT{n4t>k4wR8{V4yYJ z%R(;BXN$Mi_Y^HR74`@}Da_Irv_$dIWYHT98`|6&8g(b1Z~ZvcatFw#WPY!=Ah%!p z`ihyH&R*gp#eUIIe|Xx9OX)6uBi+0#OQ~V-x_-56y3Flcyw0rHt~hBZ{c{yG5o*_W zLk1GPM$<`&ytUcqqT>-R%UNgPw(sCkqY+Ml0 zY3xbA<$VgAg%O-e`pwEqB)BQ8sj-IS;frA=*wj5IK1uUvQb3BCx!U8_M zQ8H z>)v}*u4g%mon;?4M}e(NF0?T!6ye*~gqquMNd!;e2~nO*YFZPsXD6O@E?u)N9dB#I z!l^YTkM~1YY%OM6wBBvT^{Y?vd$sU2nisbCrK;+YKxo23zyw@ABgzoolPK$33bm0& z*1pawhOd#xTEu=S_bqp`80?An>r%Ru;p2NgUL&4HVKrRnI+t^t z8oQcv_;M{@a0IzTnQf&kFquW#;@(`3Qta*hLWb3QEXBHh%KEDSuYk-{3ppI)Ur&Ro zet)L>L~KQQu$!P60VZdYnizT%D_coEas9%zz7l znUEk;^|=VHAZqoQhsWX4e4l0XkS0m)q3*ZmEvox{y#)3~aX-ATd8S@{OZfI)4MA-d z3nfP>15HUzdwQuvPDoi!N>2DhM!llMYd1}eg>nPJ@)@y}sh=*RdE8U7kd2-t7?>Sl z1M}+DrxA#`sBYR_o4XS(S>#EpY)DwrB^ZYf$rD5?w;`s`5ae~?FbR~YMD|7@%M-6K z-*s!v{XrYfDZfw_^8bsn_l#<4YukmfA|ghq3PMyw6vS94iXl8?0+1-f)>Xghf)^=ECbD5b&OBgLbf@XW;E z%hMU_-P>8N?7}8X%3dpb`y@sO@0gxmSk9tBPWbRDPvF@O*;%NwAG zq(?zm@hxCT0t;qItRRAn0veh?caQMP#2Pacaq4+^Jh~D+zrGeKzO-JWBBJ(4_DkNw zm6ZShDD9<2fNmgBzrI{ zpIDC(CP(4(hG!+3iRb$Y2ye0YIui*ayTZeyv>fLfiYv5x_4#wF+(2G``R^Hh*WczUoRvbg;rCJ$eT`>;Msy&=k-&Qnp#Mm8T%t#x4+>!*`H2y@t>j4UHa7a=`LALY#8=*LXr9 zigl$8T4)VjXcOir-=*o2YM^Xg@iR2+q`s*CC6!^PC&bR10h`(u1vZ3McolX&he2Fv zt%J2$>rtQV-AFr$&f-p z+M1c9og&RV2vXbbu@sm`h}KZ+uYL@I%xQ5?@T|(P^|GDu!jzU>1_>psiIFIa z4+8Bm4My4t$di1!6rwexkAy98C(?iKVQ>m3Dbp||=rAs`enMx`{fvtwArKD1WrH5S zq*kskAx45k*T4Y4baJYBF>V~aUQY4j#2HIB^I$|RF@k}kSBAze>ESO7>2vO%5E}}I zVi*lOB(Qgpc1>9ZU|AXIGWenBb4{C`n(bf+OTz*k$5i+C+7B!zvraDWBdl)_uz;+Z zUsC(wbA;``qb|ckWb<{Syxbd^#qJXv!+gIQ6(6aLvj}yq?T|BW>LEV!>EG4(lbhKkGjMETYzo& zzv3&4c~sIu-x63Vw&pKBfLBuHy(jE8Sg#!;)=ZdZNsK`@pB`sSO(2<-l9ZtY*J-Cb zhBM~G5=dr1dYh5th_LEw(Ih>AyaB9bSWj}c<1ps&0!|F~E5py5G1K0EhqWY~0Ks|T zJn?-BqXCL^Gb0#;Vox3aCG|CBk)lRCE&3gd=krE%`B`~F3lSQiytjM6WmZkv!Aa6U zO)EjpZX(IAr3>h6k?aJhF-sfdred!SHpoHy3@)~ik2cut#u@vGmPIN2xzVmIfrsj9 zs!=&fzocFwT_g&F5J`2@dH^50dh{Iyf-BBKRa&3E4TOmzg%)fRi}$~zb~l_}bC)z5 z(G?oh%SdOQw`Q2B3ZU&_RhDkqIARqL=4XGLoQSJUc$cg`dkbm<0CDnB(gEb#C(KNBH1C0b~T;_Xn zNZ~+QOg^;1ST(gtMbj4U)+oN+u&LL2R;8z!O~0ma)A)2X6S1BnzB9>6W}<8R5Epb{W0T-*V3l`hn1c|M^Uzsr64TJZ@m(w=RX_x1&e6p-py)tJj&E zL0|6(z^IwN6{Uf}fKje=HuOjGjJ4jTF?rus4TfnA|6dO%a&KOxh`l?La#p=~(8$ z&-rmkO+J0ISRI;J&B;aZE#gSKfi*szsz*%!S%v@j)KjY#^QJjqL=(pDe#6-{9Jy^=qX8&j z<2_}YSbLUej}U%BX?AEhYrd=)np1L`u`uGj@mX~kbX}4TDSJfOMb?q@)`T;kmwFJR zTE>qI>7#efp;W5q78Syf$NxE%t?5ooH4#SoCTbR*skG6cM}(%y*D0IDvfW69P=1nh z(@F7lAe2UO2qBYBd%v2=Xs6O!jn&gw0KwiUJU!`KLnJy@avU6D)0IXY$_JtTY4eQN ziFA9RF8zNIpL5esq)F$pH~!B?j3Mc-mft0`d=l>@0V1y+#NqzBj1+KXefa=l+-M@ zWKx>YGDIIo5IZr~XnMZ4^c&W+ZxhGhshlR1d)y5@t2fTOJ$p8K?4#v1%hHgu48_0G zpJuGvg{C1O7Vfv7PNUy=E?+z9h9IcZ4*?_j0(SH3ug8cO*dzF^1_J?l57DJ*_l%1Q zCTS|RL8p-0Ru*Q$crmDI^7`9j{U0Ts!_0E6tXCOUUd-oYy=CiNGaYY3OkP~iIT}>& z<*w(+%Phkee=|*0ve(a`RX(|U<%`SPu}1yx%+=8w!Dz(>b-w30{?MbcTO@QYcWiW8 zg(KHuc)O$=ou2g9DDjMTMpu8~$_uDMpQSt_{ULE(0iD-5E;W7nyox4hmbC_7K1u1! zW38x2p7kr*tUrTxr5n`_-5d5pBcNa@$_*TA304jPN0-px7{qwXAgphirvUOWi4g=N z-GInT=hxuk%~24})V<-~e|!T71>F{v^%9mpXLzn%qC7-W5paeVTZ~m&=yBMcNZ6VQ z`LFPm`=|q*P>0rQq*_`tfshkh^(|o&l(UTcknjmc=!Hh1lZ5f=^9NwAC2LQgzICMG zRBJ}1UfAulm+%)9An17dW~TOfQoymw;k5l(E&+|HBVxi5Bib*1BAUN&XvXhx zbeKtQ-chHHoIMw1tn6R>-S4xf;OK|K+|f%Cf3XcGqXftv!Vc+e=-li)^$% z=JwgN2ALIp_)*NZOIX1E#453W#%@2AhR_pj*U3pg&9=G{Tws-X$yRaJHhAu0$c(vb zSlgNCS>3)WuHZVr5Ia{J(O%It?L9Bdcet~Uy=~9amo2m!>{+aRsOA$QgZp+cLB&N+ z;jf|to=%RRpU|6o!>dY4d+U2@{9e_2+NwNwl61B~r^?CMalv+{eUi!+XWQ*R9$lM) zhu=v^T~s;r++mt5H-NN`xKl8lp)$It7n~XDS(|WXKW%>1BDPX@QGTxG2U6m3rzw9L z6YwqXtly5S_v6wmz4Swjdmh>b;m%$>I=iToa`~Zik`3a&ueW zr7LA#cm9qJyU8zfY;`I8a@@7BkKLE)5*oT^=3Xy8V1f}S8uDOP0gYl2S+y@9gucro zKLwGRgLB~~Wu^EP&i?Mbaq!ceL;taot684qozMv9W=qx1N`-_Frz!0{#{+y1y?EhV zSEV@WnX>K6!0U^Rm#+F9@h-Z^JcxC{UCFU8x!KIHZoS(aQn39_3Ye#bFRrp0Vu!la zDZua1f%?|Cx%)A*jpUyXLe3x~E5%<#wMvRuyp|S<-L$5>ujDVuN5~6~8 zH{tI-12k+8;ni`ihuav0kG=-(3kvegtd%P*SjRp>zyUW;%)R*Q_boSzzIWtcPFr2c zqTTqJ6RBAFwQ7Cj@Ir(a$8jO=RyAY$+Z>l|Irit;PUhKnaz7=F=6=ly?|bDzYS8i;?uD zE%*CtMy2!j%IFOpqNSgj4&3&UuBMBm@%b_Hr)RNV_jf>&(Dw3E zE&RrZqJGWjM^g!@t{9;!(c#5w*4tOBTyaa?wTpjzFw82qxE*U9`lS1y-JWZ)m)vq> zb)bn6>dab0t0w;u91dx&CvLvLHEPy|}(g7&69Kne84| zJsM=a^Qnhpf99c-sCy1JZJ+d}b1RwY@4ohoIH^~@m3QL~8X5j}EdA2?i0eMes(kAs zH!qwz>f7=C6f~iwkSmqFa3QrPiA?7Yj5)-sWG zWNyb*<*zOAV!#OlKhpX&>~-(K%81a|kj)#LlgSO-(68%(a3_z?bQh168r|I5+R{`; zXT%u8sDE^bw55#bWj#$Y;}|?slJ#B3Df@&M*I&HwmBFT2x$FP*tYUc;@^+^=Hyb~0nOKjW z9x93{-d@R9eJWIR^z?U#TA9=#3GD-s4V<)7DfZQH(P@F9q$8lh!ywm2B>!8@&GQki zoK$M9{d;}cXBWIv|Gx1PVnspR0u|e}g|AnEBDV(P3VMZ2PY+~O2&><@~~V@t0NUzdL+d!o(NGr z<#P}p=1TrbOk|(f-|}tS;l}**slK5f3saGGFBZ2yt<_Ku!puY*8cn=spOoIX*F;l` z*qIZ0z~-cH0#493cq!naTKto4o;)9ryk3|zg+whS|gic_iQ<>EFe@IqUAl& zpId0wraYBi;heM>=!e&>=PtT@wGBQSU2#4*>^ITO*UuM&SAJZjb)5d0V)6H4Jo1kl z$N4TDTYsP5QaCm8kR?znFHc>UYzdVlGQ ze0LCP&gyYZ0R?y%6ab>kJTo zw-o0^W2*%PS&#MHT^kB__pDM~J@&Y&!!ozdiH?h7=)M8J`koQ1WmT`M$aer=+m^iDNo%{(ozs`IKTc9#mSHM9YDB?9?Ru%bf%AVo|J|K% zgi{cQoPI+5eefZ|P~}7N&6>7)0ZIPJVW&5@+ZdLOxl556oW;-0u0-?COPU(KT^jzD zL1qhD#M!Jm20Uo}IBGX32(*K)C0QyxAw0F|RdSI}E)EzQ>G-iX;ET1|b>iP6vW3AR zz9FBj-t7M_N8bKsI9}^W?{j<0{8wDuEdApzDX%XH>}K0j#aj+>ag7ePUFc`um3U2@ zkyW0k9k5uy^M6TkLt9UJ;>Hg{C@N>Yak{Nn$;rrg;)B~c&mGZY2qC;@l9x87X71%wRCC*4(^46-5a3M;Zzi5+P4=CoI(p7-<A8y2n7y#iF9|k4+QMZ36*MEUly@@!r5&2%Cxb zRs@a|*(!9rhIW5trV;|7>blhB$B*nk@p)D`Ep*DJ?wxXqNo$^`n9&fKaK}#{!iTA~-{UHGs{HZ2v5+*IX za5ii2V9sCzE}xretM1TTPUN@(E31a-xg1zJVY1QUy@pm@hI{?LriKjT*r-GL=_qb)P zfB6lC)F&cF$|mJFv0_gFe9s*7XwUMI>u(y;I@{}pnj_@=npe%fCgnu=rym_;*2g*>ZGLg|({Vkor+0Q59Lm%4)mhHQP?i_d zzRi@*)^=o)ew%C_8D&r2IrGu{Gzz!@-ttovvKs{#+klUSn_5vjgv*VUMl?i> z*at?tRoP!{G=3n$RgA#n3rq6?3dcGs_Q{f|W z>2t1OEyiV*(E`rCEr8GO`0iLlxejr!w6-K?r{8#%=9AEL<0S1|n##WNrI{lUzuO&b zYEz0V@$c|UCRPYkT4=k)fuNtzYLZWASr4)V-S5_=Mdi&gcjM)p1FU#0n4zR&_Ok)T zyvq-5P<^f8NqO9MlYu_H7b?!8leliXEtxfD#){rCWmMOM-Kim+M=vr2ulTBgL;fzo zeVzv4wU|YA>({gSx+WbJVPEz#!rgvbXQ-Ze0oTGgB_C!Q)6s98aPLgjjGZ*Q&Yo#A zP%^MO?KsJshVMh#yH;#2h&49ixaRH?^EI!$@Y+Wlh&9=Z( zN0w!Eh|)#4fM}z)bxv;4C}p7nT73<>)DUqyh-`$+HfjxPxRlPZ;Y1Abr?Px zz3e!J(X*9*v|wYF&mfq`Mm)-~yh4ZhIpLa_Hum~Y{k?tm`2NvRdc?NqX- zo1JVzUL0HJ&)UK0B0Fw`-Toe=ozTuoxY&-~=Sg%IJ?uB2Brs)#p)r+&Jz+}^F zhtl3=L~FxBfISVo4b@IwZvDCxbZq5B(L;e%RRu}ow2bMV^~#_f=UT4;!=?T| zYI~(5n(SB`UNTq4^M->q0|X2&HaHj`l9Atwru7 znR)X~4#H!{VKm#mUOhEFhpJDL8Fig`^YY>1l_%fvYxTOiaX#|4@~Owr`dOMgr*ux_ zaBQKL*!W4v>$8@%&M#hj){h)|5@3jH+4H&mtVnU@dTk@pU|*-gpKCijk2*R!g%gcW zcAg-2r0eagj@hSEu`_DR83{3M=&bF(Q7wZdR6N~KBtaV!_vY$`j9UY2}k;;j6wJ{b>-hae7nx!@{u0=C4k(j*NLKu$9R(f-X;OrE`Da3*-@P4ZWhZ&_}t036yJifUa%GyrC8}Gr;OWg`B+{m(r#|#optXndS9wIIH zYKux-o5Dz{qj7rDqSy^07lYI*HSd5=jkuDzq0ltU^0I`UKR(KCx^lNz(i0nam#!J| z!UNY)qGK+9rS3~^QD3yeRN^Ch|D%>idpm z_xipQW_}(-ZKDaOG03noq6J2%KGwkf)~HwO2O7->7WL-X zC#ya!*H?R)`#HVB<@I!bf$AR#q&HtOEv{(2dSXG1ZTm|6y&c)!{o%ChvGKe;I>%i* zp5#49#znQeG+#S;`cbjKSyL{m;C`m%hfj{Pj&}p67fE5l0>L2T6*1isuwe6&F}B4e zm@!;9C3$(;01p0M2|+y&+YSk#J7OpPpMk;nEuOmU&d_`!;vz7Zk~7BkE5Oy6*Ploj zA(^iRWI4X6)I4LwxOHe!IZx*bex$ZJA;&f^4-t;fDEV?!x5GZR?8*0~pdCNXmYFJ9 zY)G2|!w2{}j>6%%u1OqUxc6xV(o6Ytw)Fh%PmXUKPxRmHx|pit`b-N}Qg`_)Q<=zV z#ljklfKJO=$e{d{B}qoG9^@rdroD9ijFapJQ~XN(xi_-6tR$8M29F$q%m(<@0fvJd z_B~8qb>2&AUvPc;+MWPs*|nA{1(^JUSU0v7=EVUSE6ahG{Jmzc@7k|;U-?k`?p@ap zOZ?5M_NS9~o&~BM%Q^Pk^0s+9-E?Am zrS3JdT~4)Kvt55lK28i=xljvCu@OmcJ&B}gK~}Yvkdl0>L1ls!mqCe^rXeQY zKAkOZo#e%bx5q7eYD6$BY$!WsQ2T(o50UGCrYAjm6Rf?rjrd5f;8VYfc14~})luWD z4_?AXos-eNzQ@CC0}gRbR6Q(Sc>8-##dMth6t0q^@50m5 zJ9?`RGh}S5jG}X>%|(u>2HN(Wq9~A`%bjNAlFou%1jdX+S<*VNJi}{|pViPE(5KwD z7i$4dkoNhTq1W1RV8sIi{>^>oEY79xu?pTB~P! zs`d4AR=;z0G<$e*EQ<7ago4&_4ECK~k{=bt+{7a&P!x zoQm@37zT2>xx+|ovZ}k zM%n;SFZYQ9Ue6iQ1F|IQy3LX!{lSStQSRRf4Y)gZwn2pyv7q~>tB%#Hj8<>1U8cpe z3-(3J3Gbq(+fIG4>UV%uMSQAlvfg^EL9#Ug)GA*kN+Z;*D#_wsW}QWuUI#y&+|^cM?$&a$C@~hl#|0WEF=CQ^ zU-&+w4iv6kGC$eW*X$d7`}mW(L}>bQKj$I!{Vy#9l*@yGS zb;!3|PW?OM%L|j??`=BA1I$BIam?`eE?#Pf^X~vLxzv~LbM#tv%Gakaju?lSlxoz6 z6k9d=59pf8$vCqoCXe(-qZrXoZ?66gt;q@{j*i z(5u9Wa(7Jir+^va^AJQdUypdVOb0ENu&Z0S5D^l-9=@^j?HUaQmgUT(vE;hoz%`Y$Ep2)TtdBk+?@e^(B$Iy83{-FFZ%2?$?o-5(aY=O9+b~^YkyN> zq%{7YzaxEE`yF&|A)f|AgtTT2nKchDeWBfar;x*D?s{(h4zF$xSDXu1%74cH89X|j zb+n{v+p>GHb47iEYhKN}-5;N5?!WqN$oX)}nD%VhPkMYcd?Rb307C@Rg&KP2yr5h8 z>q$QKJ%zi;9Qc$Ycs}N0R{@Sfl&1V5z#blz1@FmebdR)!KZM>r)lWVOa%@9v5CT}c z9-_&iYdsHFG;6mvbZmW5-1-6jg(lfZ>s~Duiae;3#ps4tJX$p^L3K2~xDL|?E!9)$fc@VhR5K%&e zM2Jyf5rS65+ZAT4of#&ui-uPmF9Sa5X`1)w1>+-w1c6b+m0evov?}_ong8dX5b@%m zz@p$N53q0O4;q|=x~+9UWSu5Ol!HC_i(%<3A-Z4QgSM)JmgNqs!4DgFmpyTXUdilIce#iXH^ zsR%y5(nr?Brz>a411_!SY}DLc&msdtt~odL9V-O$d*H z)O`LJY)lAjtLaOk&jh8pjGEJ)hQ*aXZ&fX8fx#s`S^I@6tpur=8uG!K?r)Xq8ZcS^ z$2eg2UtpAN%u30guG#r+(;Er5>WfT&j&2}Rt^P69I8!T@XpYD zwnB;cC3WI&+V_93Nejx_sTo#v0=ZknrL@RGH39-S^GQb`5~bg7g8>q)X{KzVDKtvI znYHuHdZqzw2OguGi7&-dlno-zKw$W8F{ZX&83petB~-z7jLu;F%ir{uCH}Xq|4vBI z*aq2OrGhjM@UeilN&Gt)GXX9qp+)H|0QO*sx08f`RFFXq<>1%^n#y`xnyU8+vI(jlhxqvG=eNVk__ z`QCZtfl@pi_ybg9Uv?+5Ee4q|f7O*1Ikh(Ia9T!8S!{!Ej@Vzgd0YvoN=_9NUF{KT zPk3%9%@umoEsILqPk)oFNWA~QKu<;pIPc52#R9v9Ey6U(sK@#%h)4K=1&cw=I1EqK1A-ry)yqw zBkVMECtSQ`4?YK?bXn^eEXJe{iI_Uiu|rjM44Ts1`@%TV{Yu0Y$ul4SNEz8UF>dv7mB^!0Gt-eE}}m{evX?T&#)GZ z$$AVOBW;>UEZc@Nu6ba7zQcmDozS>>OpE0qYTEH?y4( zaECD}HUdgB^FHJC!U|1q@AUg8=dz#tYq55LKg^(0TQH+>3QC0Oj~bl9Cge;7l$KPW zy>)bP8;EuhLWWt<@XaI>NLWys^a{K^bDN~sFeKeZQRBL|%Ei`(@jJWJ%<6?sso(wx z3^};?ulPPj`6s?5tdDCoqS&|VrQaZp(^&v|!O^i>s9i+fd({Le(Y6jbb5Xolh^MGR zYd9*f{C3Rw`={B-%R*QyYxAt?5Ss-vJ#=~oqtw+nlu(wVc}Y1V{@(&Z0KZ>nAy!-w z7%Vt1{c*9L5&|YvIAU`HYuwdgjzohyi^A6IyU&79SEJ)_q-VPTbpof^=c;93zPhtYiwM$P@re)77{7aDX zFI@^;hdh8*DF9`FIRT+{P4--*g9m_k&x^ybqL=XbA=DO)GbxvW0qO&i;g{2gNtTmp zT?!W;neRwC{4(Kwt<-%|7{uRbve%n>Zqpq=-pK=N+=c!i#TqmV%K?Y1%4q^-Rmhsz zG_T@taYzx)0jHt@-x0jVQTCjZoCPW|xsv_$gAxs*X=}#QKW4bGQIz}^DGn74IAv-J zAW@|v(TC03T!#7aFP5n^kkY0DaZ)NBLiq?4;+mUq<_*0$<0=3&f+_r@a}bKcUN;pm za|D+(fz}N0v{O%Rjpee8ftu%;O=aN9KU9+jP(jEMP}s%v=*~&lR-!U|xfjc@U*MSWwx$MBfOK*{yXQcCt5l!`dD~0u`bg<6GwPr|Uwps)GSofka2rM^}|7lMw4^WmSl%@on@;N;^Fv zYY!MCpinDFSJohktR^mC!VWIJ0;USo(e3g?-%f~lr1BQxQb_J?Fuk{1}pk3_epbkKL9_KI&&lE_9toNq63 zw*V@e+leVn^eqzk&Pm!{H|+2%hGc9a$$ULNr)nWe;9lIYOqj1fIhT;W7OxRQ}ZaRO5mN%>7{XWLpL$p&?kJ-m|>;ki2<4 zBZNT9IxI|!7oc~6y5^1D%hsA@VtDUVUlmsN_s579y}ghpE23ray~ZGV;haF|p> zC_v3=w?Wy)IgD~1f15#Z*YW1RH~smK8Pb+(04-7Mx8*B~e}#{T?IWQgO&zm-xW0Y& z4qzpcV31b^bPeM?Qhk&mOdhorsytjmZxW-y^CU#k@P!-W2csq-2>haEWqGFF=S>;4 z(38I-M*Thz0usJ-H!7r4F>O<2#RtPjSo|8OjHXx#tD*i(#SLo9 zeNpQ4cw@=~WznFV4MFVUXHqp#{k$OW8{_JRX=7=z;&)}CVRk+qy3JS~2o99C3h*YfjsV1hg@p#k(_ooY^k13>epjsaoU&ORSIuZ2x!VAizw^9SM{v!d0(0ZD+9lF#AzyS(>1n8P+hs6g~suc zv(A8iclZ&k5sMZtJ*bvYwnIAfUa?)?XAZPto50h8on@if#IJg~R(*jB`eU%R>Oss> z1?~?y*_I6Lczx>}-I-G!e{JBSAgRK`l4>eLa(Wk_)ZhMzXy4?i=7+0bduLFuoC( zN)Bi+DzR2?%g$j73md6^(ll>b)I|LWnkD&501%;atM6TjWp;GEY85Yi-; zE-mOaMFZaY{*3!4B^xOpv;n{M2l~8qBkpDCH{H@NNKg%X;xkEGQz?T)JsZwzL=hkn zIzSoP!&=(%Ql{`9yMlkY7Qi%x-!l1nb{>wxPtObd$Cdj?N+m>^W7RS|_Ox=-M3QnN#q=RiE9|s4d zTjU%jXmMh{myq8Je6N~2FgL4OB?P^N+xy-d-=G<=r@x~Umswj#wyZv+I{p=S*AwsA zOL8y1xhn70Ug*CX!047%C7&d}mzQ+*NqUS~&5=7{_qmHL4E%&M4M~?ZFD@hwM&jFb z*A6_ZsZNThFV%NdFn${aPEE!Q7tk?EPdQ?QbO-n~n zdq`Fdpd$AME0?J3skv|))T%tPjM(Tt%iK$|FOU7?!;jYUsO}dndhO;>%IQrZ9)j(=cDY3m7s_4)8o$nUDVeB5FAZTYy zeq1&zYno>%SiDc(XQYfbo^5vl3^Vbfa*=C}RE03{@;a5YMd;H?k&$SM6#(RFdyAe* z6I`AQmDel4RMbQ_!Xh4tn_Ra(&lGADFlI54t!;S_E4TR#$Pl8wopUXyt?ou{5_sMi z)GZ#?ta`dh77Ic&+|7l;A-1B>BL46?U2F#QnF_CSG3wS$cReoT&#k&ZWZ&(hp0k_I zr?V$rsOEj-E!Gn=1hIW^6F&kS`*u2XD5H`Le=^9wZ=yLln6kD_j2_ghf+ewbN_LMn z2~}+z1mEf>MUz7l|Ds}a=jJAaf`6pit`AeTyQcGtllrhQcriS;bSX|B`z zWVQNxSGO4uc9GjMjG~Z6Yhg1(7%#>IHb&K`H4eF<=w=$jH+zPR0JDW#g0b=G8Gh6% zSN*tPY=Rd8q!w6D*hFB2+9HGTltM3jxL0Fj4#o@L*DW11S(bz?4?YCa+a=ndcW4oq zX03#+a%~r&cN3pL6QT508|x;F7d?L_+$p)J7<}#kQiP$9@HbM$wr9aWw-~#dQ{pkR z>*F6hPxB3bV>gjb{zH%ln;7Ctpd~<=V6mSMfCmJytvq6KGdlYFv_vJ*RjAD-Y$F!4 zYgY9ZM2`dVXHy{cUkh{Jo7xIz_c2|lfu9kY?j!8qs?x^dE=pv2ilO%+$H5g211>GH z?kp8>O>~PXRAx*B*#44o1VepGNvcAXR!$rSn;2~3XByQS?)NaHjLMX+dN+_IC;yFo zCCU|87P|E2((NmymK)KN+Ve86h(WE`3Ua!D^KdY0do?id*-IM?@(u8pZ0~PCPi9)M zRSg*h$_X8Ia^RBytUZ`Lu?8J=kxE@w5y2=qc=I4bFSh2IpHxk@*k?V7CwkI@+D^3X zY+m81kxbDoyo4*BAil|AY-E^N%P&nll)>x3MN=$^NJ)*0d@VKw;E4^ge%aOZo!LI6 zpo@DS;#SGuz2DOI!*XwK>S97W{Xqw$LSmBG`d?DH3YWK{-`o8>B-!yx>dj#&j`G*6 zq?R@b7PlkfRGMuB6c{2Q3t@sh6~fRbKH#sN^ZePFqefpioH+k_2z9mks3-(i@#SIv zPv5{mmrn8Ey#?lIVusO|uO6JdfwcuD_XP*KMEpFAI`d1aJp7jw#Ftl$4VPnyBcO=% zfGBd^%J&cd?;00P!4tqE7ERa@m_TKI8AxdzMCl02T6kQ9pq-6~U6qbTO8W#9jf2|f z!RJD?^Po!s$sJ4y3JSsFpaxaMJOhd7`Oj_4MGl1^y~Tw$3>C_dh@^8Kk%u-7Qf|_s zs?n9w)CM~s$U#U*Y>@MwHk%v)NCf~Vnl+p) zj4K;*mC7!Lta_Nz5Fjo8_dB8Xf|}6C9*h?(^)Azr$KmyZ%-u~z;;=V^%tJ(LD0>G8 zSUbxglg(x?#i2gYy*D5+!;dXX*~|r__+{++ML8RjrExV@|Af>yRU*RybRmnmW|lh1 z1nd*4t@*r{A0;O8+gt7AAkPq_uj1-DuMMF_x*=?Tbe-x3_{E781eq2BbQ01hR69Y7 z)f*y*piq&zP)5SleR@DB`~!C9xkw8*1mA$#K-vVXBt!mb5mxJ2$Pi#kfQ}(y6`2YH z4OavNWie_1VNeu;)o`E7Qtl@q1bf9;hJQv`9P*L_dvHJT$#;`bGgX`An8f!Ry2u}S zOcu5=5dcd-dI=cC!9aMKAJ=p!xD%@Rw8@WcL@^ zQXgO^(1PNQtcQPc8Z-wNY|}bpE-(IgbH8gzfT29T$FUWN`hN3ZTg(#0>FA!NK^6 z#RuaX21yD8J|UhihxC0p&2@gp$Br!Wzdq(?`dGfH5}MPlGxt|WMr+H5%Jgn-8fWTA z{({Sq5n@NcsFk2FJAN$cG8l;mzO|nRKBY$Fxf5+}k@tz6d&tl$kU05WIiEkPMH1Sx zc7h>=bHb(wsk$gWq&f~@w*A3Vn}D5xRNB;HHjp?mH9r8Xx%D0bjq=1kJ>;X}0HI2Y zTH+X1086|IT{_zJj6_NOOOb~=FZBg4!e&({N@PvP&J`Tg^ z>Sztzz;{6dmsm03)Tj{J7Cc%FbpoW>_3J}Qx;mSo_)7GHaA*)0jg)-}_6ex8g(bSo zm_J-PFWpM$%SmJ&^&)013f_g0kFeszC;2wc2<6{y5g5z6V1*E{v==12XYF9&U@@wQ zR?4GIY)B3mz)3_9LS{%8a%gcBm;rn*xU>CzIFm8Ki@Q9%o0z`>`PKC4uUnfBBJqXL zh_{zeaxAB&c1>~PzEX{UXszd{^FU}?wNY%Cb+V6X zAl3&>0csofH)C@u5X=4za5n|kCce_3A(b4F_MRI`6=Sp81q3yJS%EAA+am9O;(o9Z z1+XfMj)lLy$x>wM5<~5Pf=A1c>%fjaeUPl`f#Yq2lr55OjZN!$NC$XqKnQ|5l+%`R zuTiMLZ;x3LRe+`ANKei8)mR`7dRy%92mL4aBii4?hbx-t6&%_D;bJUVi)1M@&kg}T zt?*Y8_Y2#_`?_P|AN0eKqzKSktyzgsqiUBheopAyPSYo-GTIZagOQ@dxL{b45f2{B z+exH(^@z9R5zE?E!$}r)(&HZriG9$Z{;wr^Y}Ur^rFC02#7cb0lH!5ZPz29I4Wu1c z^F2$YV4#e2fzOLVZ}SC=*m~M7{egt4fKUMht7-m2gq&nO;>k}Y4A}w_#^gV?l>$Oy zC6Ah}ta{yt{f1-?=7oP8LTUD;SV*lOdSMAnIWPsoGzj@;huCxW?+ zj;ogFkYX0LPIA0cL3~PBSMs<54#V=D2L8;jTMQ<0o zY0!oA7I;NLi;3)euanGyW%w2hbftmDz6rO85l#aJbeYl4BGA8it!3A!AWHT-+^rQl>6E(e#k!jq94 z6I=C$z;}Va;nFjH`(uneO5aUVK1NbkFU`pzs)<5C_ym2&^bcP3|7!2s!=YT;zDJ76 zW@Nu9Qz&h0+SruMOeG{sR3gNzk{AAQNK=Y5~G*7F?4`+nd1{r7!y9PYu)b=~)U-RE^(=jM0*&b%kYn+<06M}Umu zgzszUM(@J++42^ec*NR)R@eE&DvC7xkY528b610#geE-e85%MIa7tJ~u`PZU%{8=~ zgPDY+9JAHD`cq&Pmz?DDGXrIaAT^%R%kAg90Gw)pBK*Pz%!dF_7^kI1MLL6_c)s6&2FQ)wKJ%TM^klSe*WI>D;pq>yPaur5Oil#z> zqh|=o%a?i>El`kG)ghI4j!%L8ekEup|xS+ zY6lw0ap4=`*Ezf3E=crDtmFHhVJc{j7-Ag(*zr`aF`MZ(R%_(e?86qC*J^Gv$#kQ8B$-5fsW%rpm+*pjvykN$|5il^=_j`iRq#4*e}#GjQ5L^ z{^NE5Eqmi1co@JA@>drN_nh7mdyZ05{yZAJtGJkO?&4|@i zb3w;Y#aLU#!;ZG{CegX%z1{ZTE$<5z!{6K(F{y$*14>|DWZVGXuGodBh>bJ3O{|$~ z^qbQg`ki%{Ad__3?E)Sbbp5jJ#T?7}p1DD_=e^U)?c!(d|E}$gxnP}UTJZE$8VyIN z)BJGZ2b-AT^;XmrI=~SV0S04+yUIF}znWk$@eG3F z7cWp~@NO1N-)`lPwk3Gm!pWM9t5ZsfccwBNo?JO)U>Sk2-OjU)A+wEpwx*uU+4-3l zUKeEG?ZQ+^@mV5E?EnzSS*c-9+1Jv{O)r}(Qi>c!osYdoE5m7eW4xu=m^yW8@b>7% zOzVUtDNCJsU{|`}0-2dDO%hSUosV{Ndm=!3J{t?$3vVrB;6nqLuU?0hulrCXFI4sG zkG(2SZa+phxm+K5Z3hd1}#V5~2A?_Y1DNXzeJuV`3)d5O9+_qoUKxYubt!*$H0r@AliU9@pb zd9yENzliU=6^y-bvtV+0;9F3(@P()kGuT6yaeLb7w1Zgh&l%@j2)Fic6&t*?wsthT zd8vR{wf05!e%|sK zXIgzz>K!ysupJb0rMmwrFY8q5HAna0r?>29J4xA|N&el>qzNlC1&v@^3*!K!&DOhr z?ZAf1G^5$T_nL8QA(a#HN?R4%BLwP~d@S#^owdB1ull9x(z(yxj(1a6?5|q;d_H^K zs8Tb+#;HNfZy*-E`NPOCj#laB>Z?@gIy`jlBb?$$9F7bH( zqncw@xKulaPqT#08w9YW|Boac^B1`h7XYx~h95iu@n5j`4$oxGpDEioT5FEsBJ&o=3OAeZAKx&S6hBm)mhKGLk)6rcC{2ce=E zn=!agp&a|9B?*QEZhDjepDtZFM6_;J-!u@|t=?LqyGm;$uO-E6clG$%W~7y#{WRCzTb5X1#geS|S3Gu+WKNDyvB7BnykSQ@_r;-g11sv{1UAv!;+||wi%<>3x00(lDh6&@?j{??`kq#A z6P>#OeW}A7=zM`&dm0gLild`|ij+viAL9iBPApiR9QAEGKb^I)YCahR ztdDTwNPZj&QXtQ>Z$?Q8yO5CPsCROZ{vA2NJ{~`^6fWdyjcC+mIaZTZ2Z{Q}Ue-h2 zQKd^I_SJ~c_PC%jcvnt5*#8MNq*Hx>Qf7D>=(wrGGZs9hW^?Q**n({@7e1)24w&%@ zVaq%>qRY~}tl$VwX{MwQX0_DLQtkxVt4t1Ljwg~ZPwXDrqhjX_x*SEZ%?uHt!6f5( zaFjr$Sb&Ca0c8NA!nm>)823=<5y%t{L85T#Yb#eD&3{Mu5J6}`t}JG8RiZhauEPM( zD^?>)lHlC@&FTK-oPCh&`C*sgIy3_913w&{hj#|Iltp9Zgh-NgFM9vAqZ zK%a#oJm<(o$9GF8d15L*tOw(hNRTFmo`Zv)jtCqF^mPp9DITW0?l_V-_w)1j2A?*f z)=!a2a+pkD>Y(btepN--k+f}~uDfngfUNBf=`B$k@3vGrap zea5)ZJ$$X&55u9h0GD)XGga0AJD70{gjKr%4+__+-0PV@g*P7aj6gaCVw@X%=v#WO zY<&gy2LBL0qUVuUJ=+G@yfe7;q3l*c%JBK)B3~OpK+GOqy7r8!E`0kVUk6Y>0}Z-t z(7C~=Ha6Y>3m+HUEQZJVdqFL=x}$I~B+&*EK~B}Z;&}tbcVYxE|268*-XD20&}9GU zlfVW-#w;B?wh4|~^MG3EJbM!|b%C{cD%B`yA6H#U;=|h?MHjXC zG#+x+0OR}06Wm_YFgejkU4chvMn*71%(`R4Q9NuybqNb0I0=_<8LGlw^}Rf7j3G-B zUz-sJi26&ln;2^sbrm)IX9907nd4jb`?!wLQ$rv5ZdGqyQS`yo%+a2W07Ie(8joMx zBG(9jX@ux{ecmXM%zjmck|6|PqnOCOK#HfBP3Dj{QRAFyAF(!lh91Y~9W%(HAgx4z z<7{?$v|Co-04F^eB$1)QR?KG7p4BwEm@BclDICFbqU5@f%z6zN2`q&ravUv3EtTz^ zsK10#Cpx#$54?g+IrHP#pSLe;PrH?2h7{x?4;YN23FqTNWfpaZO z*SDKPXkv-^crbHBg?0E+EQ3Y7KJDsU~wUY|}S>Nibprf*AM;813xp^!bZ7`x{$ z%d2AfA^p{MnC6TcXWP7yi0}?!M=I$|?J5<$*@NWUOR~=w*w#Pq_pi5n2)Cc*F{?Sc z`z}LbPlwE(>ItOavYHP6aS1k8^K`V z{!eE@)_5+cOLYb~U+Fsmsa2T2aG|x_!(-xGU}Y%)+MV+D`(l_>Ssue2c8VGKw14Ha zvc~a;4o?ygrQG-u<)VU<9WEYeMnb<@fPcu@^*o5dx7^9>a z-X->mmZPSOc$(sfQI3x;n|BA0Eg1ece~y*e0RSX zFyT&i0}>X0Qx7% zw`ZYs;rwK+`KOPYKEb`M&PH82HuvO)y8tCfo7%ekH1$LKs{8N#a)I-t!=QhULGNnU zp27Ji(evXAx)*ReGK2iHmrBo0)fF01AJ&H1lOh{x_Z-<^Y$E*WR4U-oRYX9f|Ks~_9kgvF_5AbuDWG~8XvINN*3T|acFQE|U zNZ!!)<+h{)?D1IA1~PZW+_Xg%Bwl(!I|^6xxQxwi@E)gLl4lru9@+5wIb29`+Lpe= zfa1duqI1(_;y!nYT)PC@(#r>dVQdkkQ$b90cCy!Y<_*mmONFQ(Jgar%Zg5=3#<>ki z#}NbX771(MoYzwxYLJd_TW?giKVcE0#`0wz+NJ7c+Df%5PfTw1c{&G*^NGZNCK(9ZX%JGd;}=jU#Qmdg!82gcNQjYVLQ80O zIks+L_A8z}yK|1^1_Eg19$XEP=(6M<;!o;4BY?dRI=0m!_p?qt2i#aCscGo$> zS1Q8trM6dJAnUB#nl1P+J7oU+&2YKeFCu;d^U;<*v0uI|P5J)j7txDqb4{39J7Q7v zaY*D+(7x+-{q(yf_I`1ISVcOcs8jKC#Y>+CedIbK={F{4#m#tw>QC>Ga??A!Vyps_ zohY*_E&kB!xUn0RR#O{xHz0I!*1x-$G?u<_K4ItGM=3UDcBNX^+9E3J>ad^=*}D6` zM&!yK2i0)iQV#RZH#O!%>pnho%+?KTM%`IbQce0T^GfD#H~8y<_Umh>S|_->XwVk4 z!i)~--_CNx9TqG6-xpE^|9Wk9sC}QHmenNUp zqLyFK)fUS&uaoxV25GHnB5EEG)@RIsC~K&4@P>)8S{+?!`Er21Qh~ zR1sI`5z{e+)|X7e&e8n9m3|{2nsM>|3!HI zyZ;lXlAL)r?t1aM+cU1&mm1Uv<(Xqi-UCZF*?Q@63JcrPAx_$X<%f4&l&?12_7P!; z8YXGr_RZLbPEku05S7DcW$I!R;WzE-IR z>VnuucD#JLav*=Yb_EzWIe7#ftas!x$lNGSga=j<=Z{|+3B)ciF)Op=wg{w&{?}>L zDxbkUES{|-SfU75uu!h(+eBdq@Jol40kVs6OHf3 z6AtEVgYmqC1r93yI|5HY0XQ55;Oc9*d@3{_K_Fk6SM3_bioq5w!QuKmu`E+^6F`ZE z0iNV`l(bc%f!z~V_d%i@_FR>&YDb^wvOaLASwOeB{GTC417mQ!J);w%IIm`t+<5bi z44HaD37YogSusZn-(-TW=GeJ8^`i&PYHv?Ef9o21)wy9uN`l24;z zD}1Ta^=ew^U2tdsItwZl;2_bHu_uz;7a8$rwRdPFOm3{9Y^P_BhR(}RNnGzJb{%wy zxTfkn1A=br@|pDtY}O2Q7}J81CfRXbS+ry#TT93a=KzoPv7xOm0KmhC5Uxowr&qkc z(HdGNIBBAID}S;VtcdZTW)^4oWckZpmi0@-B49EnS7Znj2yNu@eAuE5RgH?JZwFYB z;-@5ZKi!zLw+Cba*eQ0}z9-pn2~uz*r~MX5g=<^lm;xM&Zq0XnN95o6eXglW^yu}w z?Y{j*pFaWtq?;y?6BllzaIhPJG4_KtR=R3c351!$caWS=5(aoAaxz>TzQ(Pi#?ZIG z=4^~Kv5m9E=+m5;IHc5&kz>rHYZy0w!dUg09pEm#H^gjg=P$n+7(>hpM1h9904%r1 zL>9l9x7fMrQO1fRZbTUZn2fbTdDz&33BrsMLUW#{3vPKtAKJlS?=myy zn5N$cnbs^>P!J*t&Kc9c)VCPe>lrg=5ao7E{3EA+H|!Ty+eTR+nRB_s+>vJw9g+TsjX&JW27xF z_n^dK*XdDmeEs3tkvqTWGGdm>q#He@(hKF8%LyPlFe|Zg5cGRCs7y()?;Xi}?=HQ z#{8iN!Ky!tM@^9{g9VE3hKZ>z5Ng&%DQ?l-vkfq7DuL%Nj-!jdukOOIjgt&1aU(<;8=_1DRcLUjMBK-uV6($O0xnD#SOfIR1K2JOE1N9{|^y0n-{$7245Cd`2ylM!k*R0lT$& z9DG^FD~nu2DZ)-G7NCyI9(xJAhc+Y~seV_xC0nzZez3plEaa5K>00{mG?$q&gfAg) zk3bWcWN##_Tg8%mTwV!tOQ+Df(Bq_H7x?#X2T1(3j++f!$7ZcR|B>k3E?hrQ^-52r ziX02@@Hc2hlS9G>>0dk_6Wtnnhl##zPV`HNIYID>1Q4VPBwJL%Qo$-CsF-9O%tj^i zRqbjrF60sMHg)|~TkP56w?JI}QA(#B&DPFXC>thWF+kr(tPnCke)JLUNpatnTtX=M zv=$*usNaQuGKp5=jihnxWeVd3mXCc@(bO{dZmD137f8C=tI%!Ox0Z|J-_pGzT^hD| z`OBL@r;)yoH)V>FGmBmTMjA&ucy9dEXC%U-Rc_ECl(5mP`>Ih<7!a9Dj8k1`tD zM3Ezz^1xz4L^dmZ%bueY+TIMkmXAyM=>8MmsK>^kJ) zOwA$H4TsKl&9VIb^ur`qV}4In&+k?Bhe@<1X+3P63(K{Jyv+bn z8dqP}8%e={G)ytN;8D%;rlNgaa;3SK?jnCnezf06<@nF*J2>V0?M#+3agVcYTncML zmJH6F-;aADpL%k#$kKq>W$JFQRLdNH=>{t`#;o7KtGR6xv)`s?rb8>YL;KBCC{ye+ zi+3A7AdGegOZ_@0vcMNaE{>2?K%M7j;3?lO!ThN7C)i2{t7x9{;UCKk70`Qt7>Ep3 zjQp-7mpu9eM2A6nKrlM`k(i0I??7UXH-NqriT-ZSp9A#izN|s<6Ht2#LlW%K6&Wqm zC?j=kp8jp2qRWVY0L4T?G!83?uHieP&WnvQTL)NToKS0)y43AeiCOI-6YmY&^@dxQ zZ?xMdt^}NZ)jRWZpGS-6;#*duaC1hhP~B~Q{eCW8gs}sUq zyfN91a}IItHy1q?A6p zThj84p0PPIXz{uGquQiI3SB-_!&$-}@jhu}$W4~>wzkXgg z7okf$!=cQiav3s{>YI3&mhQoYHjh1!Sn3W&F6`NqV*-bA^kt?)m{mzi$NK^M zo2^aUxsm&ZdrWap-?@BJ{534cFG9WJzcVIT`muDC#*#r|c$j|UyXm1EYO(Lojd&fC zpF-$)1wPBFUeC&k2XSSI!>=$WYME7`ekXoke~DK9qQC03|Dy!km9zImZT~tZ|0;YU zDe#^Kp0!pl(YyJ1^G36ZPQ5J8&DShdGg54{h)ww#x8KejeRBJ^!)xEIRYc3dVNYCK zra~@9v;C~?`uzOnt5%P;b=uWc&@1Yq^>p=h=4N}2>y`TFrW~4`+j^Issbr&h!%Fh7 zF1bl!wELSvAX1><0$jpR0A<}ekeslw7HDKofv*Bo#r(fBzr=G$t~^52j8GZoPYpC@ z>b~k?L>m_8=4>%y9?DBMRk^Q~Y#F!TWUu7YM>1ANx)7HHau6lTfDxlEQ_)v{mi-F- zyRO_%3x4`RpY)htGynnc+F$GgQ}Xyh;>_#)}F^{$O_- z9;^x*sr+1kEteaHP3#l2+vG;tp_6ajQK#V>7*Iq|W{Bv^9ep~oIm~2$80hsO4kDU9a;W&Wr_Nu1pRl43(RDJMm(dcYX0kYLl$g0z`feVF?g%!lVBR1!XuGj(?Hg!c`urcyGBH2N_2_=v5W+@8@t2FdFfis-= zjJOY|J%gT2sw_&l0#TOb@}hnKm}xHXJ72mqHeTKE{dk3)?C??e0I!03?m6sJj>Y<( zhMPIgaik-=Cwqu^%bN}6iQI1jJ7yJD#)q-S%#Mwb6gUFr_|nkk99f7GKdz*TxiuFw zF9&06`$&O-a9*A2T*+v*;`C|A;}$zBjaCk!Up~TpQ+!y2%M4p(=3Nnim)M}NJ7ZRt z7ebH(JEu|$GB!sSzQ*nzIx)cALa!uq0eojXy526=mnB8^)?W`#3U`yX^XB58-~lng zU=TT)AtM0MX`pez<&S;Sg$E&KC5IyK>RV2%bgijCwDe&{sf-#vjop|B;)ZhV0*&w; za4aO}45ddFhWGTi3OtyafH|Pv+-p={4PM~@2w&qXd?VekAFT@KEO7ir?&NHS?MDeR zHeMw}@fPQA$t4`ZIvg|Ps`wL_CEQR46}ImuHe>sQdgtx9KuPoFc17jrQ27aP$67u} zyk*TwjH*#?(KYN$t?POgw}H9?D<&|AW1j*QT5HWqqgidhU82-g7&rH5V5eyMJH}`Z zwTfQJVJX6iXZwT-B!kp;va-Mil(y*hf+E{kvVr6~Ql-KH6Z=^^HdSFNN4&pE7u7Vh zMxfUdu1-X;#bZeNUY9dMn6UsPlQK0lTm3+BS6M`u`-+_KExC#^v&!@2rVUWcLbc-o zn0gCQ^H@13!|4gtvN*;OU^PtXxKb0o^7 zU~==GP_1B9GbcTf-^ZJ&@OEuV{XRcX8iAaM-rLAQB8cP`R>h6HQql#mH{8)7ZGvti zV=L%h#%;hp^;(@bJ@a=FdBDPtG zf{oc>7KdvG%yb_TMUM%4A<{LtqVv=%Ch5@6hI^43koZje3a%RpXmj;?{O}n*lYfi1 z!jT^`ZZEav--pJsGupbv@GN!uMjwzrD2GpJWlOjt*_33#c2NHWR1u6sgS}~FPx3q` zBVmrNJyLUDJN}uTUIRM1eDw~-7X`eJGP?EFP#LE`CJ_X@R7fYW3IZD*AtKyNV0AOF zYz>Qa0iJ};IKp9Udzr~v?Cl`Ai-A-rVH-;N@{8W~7(jf9M3P*@hM2vlZFR4TcBAFN zT);4J)A-fP?Hp>Go$FL5KxE08NfeNN>R$vIlWt*39HoYCalu78TqXsm77TM?@g@&_ zo`1C;dwv7S3_x!O@fcY%OLP`*p%o<~IG|XGzOPXIrADM3D9>w0R-e>w0Z6tFuo_os zNNPC}Ejo$aY^LA`2EGXcyDY1#L&#YP4mnO;34rY(R1-rsFiE0W9a#ra8YmL5#-1|C z3SuRj7GY*Py6R`(W_R@Mp$HR{GPv}EWS?0#wy+vkAo$s&utm9EjSEm)>hk@-P&-Dl z95AEA$c8u6w$H4NcCVSfj;oc9W@jG-7^*7c#J|;hg#yuH6@BUh%|c{<%Fx28Ufrrr z8RSETSNGr^j(+3(Q1D6UqpN)k9Tna!RE3QTVeKZW6oGyS&riPv|;EeA6627&p@#&Wa0O=3j_tw=g@eBN&h ztI1@-(d}24`$RbJuhomwSfwl1EkB%F>1(6>!h<;bL=C2jmnTr5l`G5OGN;zfUyj4D$ zWhX#N&FfZWnb-_(_vPo?{`B-cY&GhyiNA#ynq}G6l`>!a%3CweyY^PfH{RGV-@LuE(qO-r=j`ymwyD+12PS#!->fAP)h!Q%|$yxx6tzv{wAHh(nL7WW*ku`!+Wj1ue$$D&^? zp7kuQb-8xfOYh*A;;#cW=l9nosh0+--wSXZBWm4lBzdNVOyZd!(Cq|Gz7J*b?D6o?OVUgo{>$pId?X_ zr$o)9%c?~#_cw@Ye>z+gf%yJi6!B*%d~lU(tAB6 zDA7J~9H$diQh{R5=lSQ0Ev6))eOtVW@ZN0n2b#25hg}Xi{i+5}!O<9^ zJgIsdy@mF!8n@|Qy;h&*uNO$6Tv^}#-WqY+ZC(@M5W-kv1t%l+{OID2L)>@~@xef4 zu93#}Rn14vR}kydE;ZiU++1)&rOrOYeB;3viqc|o>y@5uLMFR5%rA{-eG`X5Y|Qrm zR4;e(5YNs$gTzgH*=suQK9LW3yWjYT7o6=lR7gMcJ)s+tnUiWX`!M}zw_0j0hxY4q zMpVe>`;Twz9W-o1cSW}b7 z#Z>~qXDw?H2)Tbgynp=WWlmiSW# z*TDqAUiZ2Zps)Ai_}7Ma(p&u(K!aM)Q1wp@J;V?Q;uZbBw+$v-$6q86@ITJ|Z~M^{ z>r|@-7a$2vhx}7Ncfqy+`uSrIf4vCz6j(6{T)>bN0u0I@UjZBc);PfD!ga4pX9BO| z{JjJI?fqZ%l`39`K$LDnAV4R7c)4BdM**4! z`gr+y{r$M_-<^BgKAEgRaBdawb>%;t8G$$eM)V)I9^m8U6&RrZx3@p^0&eebuWg8c zRD+o3SqQ|BAEiI_a&#*K@t>P)pihwBMgI%9D|)_Hy}bWAkbmBr|JaLm{U18{kDdCj l&Hucp{;_!}{SVFmvBWyqt^>pNL*671t>Ee1Z2a-p{{qVU7FPfO literal 0 HcmV?d00001 diff --git a/test-data/spreadsheet/50755_workday_formula_example.xlsx b/test-data/spreadsheet/50755_workday_formula_example.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..c3ad479b57c8a5de8af5a5e9eff39bcd8b33f811 GIT binary patch literal 7928 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 literal 0 HcmV?d00001 -- 2.39.5