From 04de4e01220338ddbaa4fd20cfc909e45903e125 Mon Sep 17 00:00:00 2001 From: "HUOJIN\\92525" <925258474@qq.com> Date: Mon, 26 Aug 2024 15:22:13 +0800 Subject: [PATCH] no message --- .../picking/pojo/DefaultMasterBolManager.java | 51 +++++++++++++++--- .../pojo/DefaultMasterBolManager.class | Bin 47118 -> 0 bytes 2 files changed, 45 insertions(+), 6 deletions(-) delete mode 100644 target/jjwms/WEB-INF/classes/com/dev/swms/server/service/picking/pojo/DefaultMasterBolManager.class diff --git a/src/main/java/com/dev/swms/server/service/picking/pojo/DefaultMasterBolManager.java b/src/main/java/com/dev/swms/server/service/picking/pojo/DefaultMasterBolManager.java index e21b057..ecf5dbe 100644 --- a/src/main/java/com/dev/swms/server/service/picking/pojo/DefaultMasterBolManager.java +++ b/src/main/java/com/dev/swms/server/service/picking/pojo/DefaultMasterBolManager.java @@ -2,6 +2,7 @@ package com.dev.swms.server.service.picking.pojo; import java.io.IOException; import java.io.ObjectInputStream; +import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Collections; @@ -21,6 +22,8 @@ import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.util.EntityUtils; import org.hibernate.Query; +import org.hibernate.Session; +import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import com.dev.swms.server.interfaces.ItemJobLauncher; import com.dev.swms.server.model.base.BillType; @@ -561,8 +564,9 @@ public class DefaultMasterBolManager extends DefaultBaseManager implements Maste //扣减发货单及其明细BOL数量、包箱数量,增加发货单及其明细的发运数量 detail.ship(shipQuantity*log.getPackageUnit().getConvertFigure()); detail.setStorageDate(log.getStorageDate()); + commonDao.store(detail); //将库存转移 到中转区库位 - Inventory inv=findByInventory(log.getItemKey(),WarehouseHolder.getWarehouse(),pt.getDock(),log.getSrcLP()==null?null:log.getSrcLP(),log.getInventoryStatus(),log.getStorageDate(),log.getSOI()); + Inventory inv=findByInventorys(log.getItemKey(),WarehouseHolder.getWarehouse(),log.getSrcLoc(),log.getSrcLP()==null?null:log.getSrcLP(),log.getInventoryStatus(),log.getStorageDate(),log.getSOI()); if(inv==null){ throw new BusinessException("未找到对应库存信息!"); } @@ -592,18 +596,52 @@ public class DefaultMasterBolManager extends DefaultBaseManager implements Maste pt.setUserTracking(); } - private Inventory findByInventory(ItemKey itemKey, Warehouse w,Location location, Stock LP, String status, + private Inventory findByInventorys(ItemKey itemKey, Warehouse w,Location location, Stock LP, String status, Date storageDate, String soi){ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); if(soi==null){ soi=""; } - String hql=" from Inventory inv " + Session session = ((HibernateDaoSupport)this.commonDao).getSessionFactory().openSession(); + List list=null; + try { + String sql=" select ID from INVENTORY " + + "where " + + "QUANTITY>0 " + + "and ITEM_KEY_ID="+itemKey.getId()+" " + + "and WAREHOUSE_ID="+w.getId()+" " + + "and LOCATION_ID="+location.getId()+" " + + "and to_char(STORAGE_DATE,'yyyy-MM-dd')='"+sdf.format(storageDate)+"' " + + "and SOI='"+soi+"' "; + + if(LP!=null){ + sql+=" and LP='"+LP.getLP()+"' "; + } + if(!StringUtils.isEmpty(status)){ + sql+=" and STATUS='"+status+"' "; + } + Query query = session.createSQLQuery(sql); + list= (List)query.list(); + + } catch (Exception e) { + e.printStackTrace(); + System.out.print("连接失败"); + }finally{ + session.close(); + } + + if(!list.isEmpty()){ + Inventory inv=this.load(Inventory.class, list.get(0).longValue()); + return inv; + }else{ + return null; + } + /*String hql=" from Inventory inv " + " where inv.quantity>0 " + " and inv.itemKey.id="+itemKey.getId()+" " + " and inv.warehouse.id="+w.getId()+" " + " and inv.location.id="+location.getId()+" " - + " and to_char(inv.storageDate,'yyyy-MM-dd')='"+sdf.format(storageDate)+"' " + //+ " and to_char(inv.storageDate,'yyyy-MM-dd')='"+sdf.format(storageDate)+"' " + " and inv.SOI='"+soi+"' "; if(LP!=null){ hql+=" and inv.LP.LP='"+LP.getLP()+"' "; @@ -612,8 +650,9 @@ public class DefaultMasterBolManager extends DefaultBaseManager implements Maste hql+=" and inv.status='"+status+"' "; } List invList=commonDao.findByQuery(hql); - - return invList.get(0); + if(!invList.isEmpty()){ + return invList.get(0); + }*/ } diff --git a/target/jjwms/WEB-INF/classes/com/dev/swms/server/service/picking/pojo/DefaultMasterBolManager.class b/target/jjwms/WEB-INF/classes/com/dev/swms/server/service/picking/pojo/DefaultMasterBolManager.class deleted file mode 100644 index a703fc28033b3fcf739e0e4126a8f6544e39d44c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47118 zcmd6QcYIV;+W&LPotY$;8cGIR0F{;yngXFHp-7MfBoM?Nk|9J=Fa^ZAmUZpDfr?%1 zie&(?ui{#8ZELTq*j;s9v7z~WpL6cLGn0gYec$(wA0IMv@9F0`Pe0E&^V}Z~JxW9) zLWhJ&3fjN2p{}4RwydCOd0kUMQ><}WtkHbcRK^OH)>JO3sjn_r+HiD3!Iapdik8~u zl8UD0SYuH`ZAnFaMRlw(Oj^)Bek-y1SY!2ycI_n9FREyY1yw_WM)_6K4WMnOg1Xk! zFN@VTH#DyB8WS{TX1b<=@&(0hYK{}sV_{2EQ%!xWscCXUl|MW|0 zbx;|NX4N#u>VnY?P21K&K&7BKQ6AMZYa6PA+7r{(uBpe8EUKuC&1|T~^b#*#eYDmK z%R6gntg)iGrlEd%O;gbFgtRR;Ev{L*lu=-Qht+wQ6;1U)Vm;aWQ>@v; z%hdFN?OPjEE=Y5=3=*`9OTDOvpe{49>ZL7p3uBFQD;CyrKQkLDD{9Lt8f*C7OVrJa zYnlWVrJdf+Pz&aig)z_Zro}_)=Tc7|N(kxm8f!UeFPE}S()gPCn&yc@95gU(&uMTw zZN2muoVIE^giTv|hX|Us_KuJ+ZRHM;Zcuq9DH`O`-ZWT{8aSw&!Jg+*m?Hc%)TIo{ z)v+C%A zAZe^`F&8a!X)evfJC*>vV_>n@py4@QA7PpgMDQn=ER(hec~EX+tO=44vu!&-L7mE) zD=L?iR4ny4N!L1*tSJLqo!n5rsHU+_P__qZ|ArKC-2fV(a5uATuGTb0zOgdm!MT^4394`SoKi8#dS`7Hr$BxCc zdiX7*0_tcV>?WCq5hgJ5{G9;aY$z6U@fT}mtg7dA0jeI5j2V+_E1H_dwVmgn?O?NA zoT>HAHO(u=WzrHl#-&CA%kGA?=H3|nDonP)hbdg9#ieCjrYp+KYOIPi`bENYtf1lk zJW{bdc5G#ADGN~+`$lD$>Ze5LI86WZ$FBVJ>a#w*`u0!Hx$*M{)@-@^+)vNE@UvB? ze}4B3Th6=e+lSBnWc_)cpZ3U>3oiQnu?sV4Ii0|4C?^y2dy-2h)1R<Fovjh#^`F317hjM`8ka!@E=9VUIOXvjdeWgpQ=qd;Xo{UjdQi;gZaJc+6F0H0(!9^;TE{)Y!0fUmsz$=){ zsce!rEG)_Of}#U*E9$E-ies8r%vxlH!ff!JiNm;u8(q4I2NP*-uyvW}ZgFW1-3oQY za%hh^@45ZH6YMEMw*w2lIPKOgXP#kkfg8NjrMu{EK@OIVnbv>==B83m3azpvK9lZs zX)WCcWwNHJ2#8r<6$2c=whv*dc)+CxDGoMN*%+&6jzM=UUQ`NIvZ<+p<;fw5e%fPj zASjb4Bpt@5XbXl%u6Jnz4=ud7qN&udLse4+rXg!EM33PI3=ry_Tndg^kcOx_8WJ}L zuAP^rT02_A5>%#;Nyiq3g?4*n$51u&M$DvFs>Zuwsjv0+Ya`A&kUD}UwJWrJK7jtL z&6cpiAi2P#+X}@IP`Cc;Wd$Y)dd{Wi>2KgIJ_|)t84DX~r^ISw&9N}OC}{8P4=`Ap zqFFN;r(bgEWtL33wxOablQz?=d|B35o^-;uDv)(5Jvb3_Vancf_g# zI0QAozCH)f#R3hj^BoIAYnnTecl!t^7`CX^y%gz2ZWvLu*T z(0nFsrC(h7mGz6xfDs%fzIMS`+g$pc{;*lhsNqSO2UBlH0@+wyN#)073KB9bL|XCN zww5atYsakiKnaDzr+HdUH5ARTaDWKgr;Y^qddrb1G;QM{L|l;}@DPGaq@os6PC-Lo zeLn={h3kq=qBB+wy|csPz!pU_qEA>v1r6L;5V>L(u`4JJQ%&HlPjREub{=3<+lm;6reAnId$=N3 z^aTziKVk z6q(_Q1I0|>0<#imW8Hmzp3ujj{)$p4*kV>2z1rtVNd{)BUd`lwkSpehGAo}agGCqD zFM={quycg#R{+7z6Z69YHhmi28myyV%@qf;+8L>7nqJWa)a6zVamAtHFl#v3R3`RA z29-y|5rT3$5bQ-OP&Fcs0+2u`#jL}K8BAG~uBZ~w(mThFja9Zl9k4zc_`Ew%Ad-DC zo;${Ppc2YQCe?@<*udgwp3Mw)eyGLAfT|rvG|;K$ZwQGrWROZp zAR|v#4UCrYJ71YK(lDS^W(@HD9z24UIF2MZ_}9an|gq zrMx=Fx?%Qj}%F>_E3javXv2WCXg@JdO_eI*>d)^ zU@~VX(ze{R_VWjB2JxIL&JT<8l87hOnzZY}K7083s!G@@td6lWMz$MR&aY^UEpBLOibcfbSheB9hQY+Hp%cPl zB~0G!12o03%oJCNYr^7cL4*7nsgp`Jk*8Hu@-~+%RttCu7%i-uOVH?Kcw2v2!nWOh zgMjn(*mkfS9M*Jhg~wqlk{B@a*oe3hhUuKyS>k4~CM<3dG}a$(vZc+NhP+#tb~nKl zw~E`WxxiM=w1&n7aDBo@kWkn?^hoi_`Y0o=6nD7dPF~b7)CXfIA??4Ma9-WE)HOV_OuLP;{yq?(cyozdSYv;n`=RW`H zil@ZWc8AJOX9lyQ8Tnvq#oKi8o1j)^EGw9Y%ECDC90UJuKcsp9!0E3LIgX;$0fV6+U#u zM*@~TQ-N`ra&DV_1y1tT=Mz_KVF|;I);Y0SWK{7Aj^w63bH(S}cNa93ls6neq?KIY zD_4BoL4gqr<$t;2+YTBY&h@@`#lJhKhfe<^wuS{P?qJ^_m2)kREd*z&Y-xmNzhEAC z&GZI#$GYMt@iPbybKpd#jr6=Pr420QuVPzR{I&xQoKndZzw_+4OMj_aT}eEvt^ikA z%fh;v=E;j=l}n14gr#();$>lbCn=LxA|f3KpGlMF7MD*&Q92volMz>DNEp#<8P7K& zYB+|MG_7Q&o6O5hS;kK3y0VjG;~HHCO$^>40o$S$J!Dr`c1s<`2yQytl|53M<~5hS zT-iIdG~5*J|S6A+qT6z?h-our-sijSFKUenW{aHpvUgWurFwhVfz*Y8g z<=%1tggNpI&a)3L4WsJ70SXQ&2f+)JpepFpi_2oonR1{ZEScxZd^r@BAv&4VRBw$L zu(9sR+8!z}^xY(n_<_QYXfIWCE&+M`a2LSmcEl!chLER+*n zxu4wMqEX(#e5@vM-b1rMFoH;v{M%#}lp~IIoLza%?kxX;t0TQMs zFSAKy4_TUJZrcVH2Cd9+<$)50B8OOD9d{tpQXpd{(_fala+bslnD}{`thyxlP5ZeR z8N>z6EatefOwP4xf~`F;-6Rr~8Lzs@a#zlm2V2H4vjO{eY=!QG-15qrAsph$LnTZ{ z<_tj_J6=-12@A&~TzRB~Ey=x*5fTx^LeYyD>CnBb$NW`vgYu54hI&JL?$ ze{aGwx={TXS2i+tcX+z9A`;rd?uJZ#WiW|OE1}e4{|}8WbLDb*tY^Rh?;9%FyS_tY z@!JF+Ukmd{9uK1=f7$>{L&TZ6oaD-r<)0wrE2^rXv|EbZ!8S<>Cfgbwt2)({r}-}N z1ZQLS_pD5LhCDMY|Kf8-<4ob8G6eg<Ww`*dnfU3Qc zwS2!YoB3jSdaK@GPN3I=pM~mU%Q1O~#WeVqGHX=Qh)`oMLX}a_)73Qn1q*@k!6PAx z(QTEtOM-o%YBZ(rg(;$4e;Lwk_@#`;TLsuv>?W7&y!7nrz`>BtRguz`**p7hYNyU` zBJV-T>s@(+gq_EM5&;cNTDr6rUeSHiqHTiLrq%-<+$`6GCG5o!+c(3uSKF1h%G>O4 z%qW88-zir|P#S}{L*5mZcS2xvGzeBJ7uD1v8m1tq<7t-iZXN({Yy~-);t~;w$hCG{ zzP)3kw<7X>aQ4}=jx3u$X*OJI@94}aCW-?WHcJ86=&Ee#v z4ty$J5)W_&>~#5%D>urA?Ks&=h6B*E@C23YkW2ezJ)}zbQQOBK@G6Ukc&Q(A<>L%7 z=Ax4-IXWg8Zt_W2{*}!^R%<=045O7#yK)noWSs0-Mm&janN$u-gUaP|u6&-EGZ%p7 zS5q5ngy%>;$IS3WSN@$jGfT7b*y5VXTI`z&`LZitk*`7lOXiUvv$^Re&T5khafJ)0 z)D}P|kg+bvr z$W!|_i~o(l?Arn(Te(B zz7Fu%3+2X~RVP8uC-XJq=uSfwMk4uk!;~cMXDcS0gKghEhG}agpp(=>N(sZs{FIKS zmqaQ7M4b>@&9xD=r=Z1YXt1tfSwiLhUsEAae{WX}VA|v0g_7jP zGu0q5Bdp*q2z=`8&9VgY8egt6V-lT##W6e z_U#iPveJpO6pBiNE2dl^sM86)RIM>hlWm}ztVH;vm+-Y1X4alu(+R*t`vEY6V8s*>cyFpFDQ`r>ETW?Zc;JsL5(-Siu*O6dqKz0_T|O zTs2J{0Mcq`fpOQ<4yUG}U^dR502>f*Sce{pu?V)wEe~C=<$`tJKD;VZ9mv=QpF-fa zOowg3cr#V0njKcyjm|cpNbSp22eDQYUdr9q);l<-g@1!S#15012ir?Q>Bz$&PaniJWeA!u6odzr0pl?E?>|`Ilbh4vMCu*kbXcWm#kParB7}|EE zo!J@(6{HU^?TAdkWU69K!MZaR7}tc^)56j~`?TAdVTBm>K4v7%h;}U~tEpRBYqSw; z+0|7vN7M<>-B#dVeo0AwRaK^1K_^7i$v8>aE;hP;S#GW$A6>s}s4qGu4nwjDS4Luu z4FR(r&2I2$s#BpAlDkL(EG{)YX&BMNOzRhcHII?naMdLsK zWN1@Dt;!pa82*4kaN4L9>TFk?qt1m`USwt|$Pa{0tamcid8iXn=fj2{fYDwE7Lgc` zi3N|Si@|V$iO!robmr^{10w2Ds1iYHlL>#HFaSjFK_Y!HQwn#7IQFNGVX%XBNE!@G zpoNir&<#SicSeQ;bTH<&m=6Bf)KJ5pRoLa<)n<2y9cVO+e)w=sMBRY6bTEq~g^3O3 z`l=eUkE(7$zrnH=SA`Y)1#NusI5v~1Zl*z5>Na&pSltfG&S0il6lA*UPL4Xvs^rbQ zn))Wh2WG0f)xBYLPYSP}($Iple9S;$!S_UTToUowJZQhSsry~^fO?P>EtUpjlJ!{6 z%ucGeeOsKHT8ASo3e0v#ArZd$j!{44s*T2~s4}B1=ctOXdc>C$X3mou8!J{YbTie% z7A%ju>IpWdLQ7&R$`Gik{<*5K*a~NjlxtUZ4fom#Lmq&${Y4 z-w1)581|@omeV)8>P4PM@6@#q&fnmel6uKiFZ0SN80uW-Rad>n_EK-irX+kxs&jyP z-BoX>H^HlHm=lz6;Fq^X1~`)&YB@X&i~vqf?&WP)y~F!Q4%`D3jbMRG6O+aO!&Szs zho>${7!R}p7AqX20Ae*a6v1C(lvunaRfoNrhSU<;bfQBvT9nicFJd}JUx!U_WYR%N zjbN-h)doBpoxzOxbV^c#taQZwYSBJO`TNs=(7eS9p7dOcPijC0dycV+~G;}Iov78whIpA_5;`w)=LrwnPZf!R`>yI+bz{W zKpU_6X5HJ>IqFjk22%@q=Q;Or^)Aes*yjNZY{Kq>g7c|d@9ye7m_u+}G{~5(qNTB_ z@`l+SWiS)rB(70d)Uc=y7nkslJ6{-8ZMuE`g9U7+M1)LhGA>^09Q|E+GS^R z;D|2QGhBTjI}RA{i@8tZ`q3ref5oM<=gsA%pXKV=T$Rf}>uQXdP%C82adjE{Uzs16 z%GS#RVp(S0*;rCD5pERH9rmf2)yVD4$_T(Tb6DW&LwK;v?q->`>}atg9GW$6t~cBx zTzw>uiv7Q~R4^=#hsA;9ofQoUiNi45%FKSNu5xuuLxW_uWfAXurQgF2Rv3+q3+u(O zdOD){Hi}KqGwjSvU9FFH^%7lSmjInwg5uHCxw@Wd*X%zdswCmG*{YYi`WVhLCwD3W zHH6!1a&cd>pY7^% zjQ_F;B>LdDM@ComzK$TIka#>X7 zru3cb28MZux-rm%+L6nK-0X9YP}(xof`u`>t2GWD9%0Cv42 z`gZiiDB(kLXdU>|(B{Pz^(i|gjFoq~`Yu*%IQSUqa7E)1PQAy~_cC+iJ)}hHeXhQr zNr%;^R73}Xz$^=!K3TgCEd+^}2M8~;iCJNsc6eYkT^nPI5H-3ufNex?6tvDmtomiO z1Djgv1|~@x6XNC1W>DU+L3te%;_?ZP^!7>_){|N+_kS$;CKN*YMQ9`ThV`R->iWR2 zejH2I!Om``eo{Xb*0A9^+|Og2XezLZ`#h`HJgql@D6C#HVj2SE*#6nh`8%W1{LR(R z`i#f~&iN2ydG)-jU+|e5%hjYjY;2*x-(CHZ&otWicveUEavFrr__ zLUYnQxF>YO!lQv23SWFNNy3&lB-jBw*f{CYgrh_O5?J&A!z|bDy81o+J}?TH#-S!V z6_dpUIqpG!=<1Icr;WdqF9AZ7ZA5|}0gWt-OFY8j;%8TH;7tvOr-sEE-FBJMuv_bD<&pBjb*gA-ZU`1G zqJPKMjDam9jyZ}Ww7gw24E=0^{ zEe=5gDJK*Lk6spYC!aFMPZ(xWeP8Fop;lGo?mb6mT^;jJI8iRs>E>jIo$fd;(vj-r@gsD_+{kr$unV=jXJjFDLCKW4eB}hgrp(!78)J6Y5d^LBnxGpjh7n^{F_3i& z;S7fW-~YcLLWY5fX9=*)P-8D^AqI&7BV9tDBwL|;twk2M0q$V$C-OCtwyuH1J5I7W z!@)8p&zw~@l>s)=bw;rqF`@4~o`fs~qjC0iozcGOG&2VFKDUOic*{yK2Ea`$#r7;6 zgAZrC>r7zyn}fv(mm2g{_-Wmx0Xty}`rsr`?W}(+(XWL{^3G-8CgXWca-AafaCI|4 zj#a_lPQcNb;yP1VIPx&dQfD1;u*;ZXLIP$_nll$7yD^3ndG)ZeYy%Nz2JmkB^t!sH zricS)kSv=CpR7~rInjvW_qU^Xc6MXoQ2qwa$suiHXhM5m4$8EnOYmG z!$l+$QO;S6)4>ilH*n0UZDSp%-nMWSdKJNzN;o=oL>*j5u)4?rV!rw&&Ea-D0L$+AwkWu(89&c=g)nMjY6) zJ-x0PD&gj<$Ne6B=_00kDwfgjv2EVzkf*kq>Bs}a84PF((d1;UFR|uo;^~8=dj^Md`6rr7?bUcSu(V5BjT*Ywr!%9Ik<=e`@OL$ zuaAfW_PI+^6YUFJ6CjtTGzKelZ32bbW?dijnv%oZZ*Bu1b7P{{jtkt(ptE#Tg(aw2 zgu6XQ)K~GQ`$X_RM8Z3_qK{l}=*8^{MI0Ei-po1fzbOegur4u%I}>B*xWL^3Vo$}c z1Hgu_`sUfV%b>hInX^*pV29Y5BO2ni_GQfEi^gEQsL(w$g^F_05=wS3D&x;`}w>AnYiFy35ul zxSm%!H8J8m9TW#cu7+y@MQ6-5%zdO+C6N(vuo=0#2U|GyQ5O8uE5^sc40nB&soTJx z31glK(POUrJag9s#UwId9`&*nSm~GvGa-@pcP4UMseR_l5W-$&!17<^5f-EqF%btQ zSHz!W#CZeVv;2ej<7&0Bp|RmZjUbFTZ$au86hxeNpdPf5SS-Xo zd)pCU#C+V;!UY6?mx%KpEToBgz~m#&R%rI~=1v=v>3r|}jN2=mUvNBrr#kIu7~INl zuCtA83HBa)z%|2OF1>f5%Q2jIkF zxFIJL0(0^%0}(Wv3Cp&nRG z9BKm4BB5TmY9Z9S<6e^>oEeISb_s|22+D2SE8E2db|I{rF0^ZCH`q4_Cs=_C3^|Ac zwc3L?sr5mJVyC<)vorMVxTT^MN85;I6Q!8!1<7&v0_3Pjj$iQA#+I8Y#0VQv6Xvb_pz z83(GlP3B5*pLX_YS2fn2;<+~;vcQIRRd}@m1jiI@6C5Db79Wz<6;K8Q09*jYi#IhZ z8mtZvwxX&kFbtuU4V+=YY|tv$vERF0a)(>=;n3u?=dg?=i+!wuHlBgZP*G^A8=4k^ z;c9k1?a^cezNCvjP6U~GXENAl87k7fxw#o`=s@-g@OG8&zXBv+_^P^vK(=(pXSO#? zfUAq$Gf#q8w}rSe&^s4o&FgSzPTG?y4d$j>b9f)u9>gkm8?HVxbdUxgkd+{YbYb^x zD`QOFC5tIzV7b-M(pVXrhOWcv={5iOYya!)PjzHiZd?~s4#+Bse z8yAwBZ(K)izHu2jz9rutZ@zJ{y!pmm_xK)+_IgteKBIV>h;q2SfI@?ZJV<@knsU41 zGt;ClM9-D98{T`_QnWkmfj5-roAc2II9SJR^=;eMBD7V#owj&{+*bdN+uE~jTSud< zCEIC>XU%QxO#|@BbG#K}59539!Ru%s&vVG&yay?NaQ=f-FgU6oq~U|3&Vw{^a5VHF z?UU%MpMiHBX*vclZv>Q^0Mll)*#ammqrGr#Gs9-OZ9Ra^-ZUCDaiB5et;%)pQIn5q6Mn^lrsA;q-+CC z(^QhTfo4K#T~D3!)CQU(>2WH*SKNzwig+D&H)A^vZ6A-`PQc0^hcTZB*qlTo=uc++ zxwfBR{G({9f#Gf_eK0Km^bSEwn9(*G5yti6f)1s_ka{>$B^|*q7C&G{jGeCz*+B3E zm9C*D^EXhXz<6p(%nX)bsC5eOOA2*V$7v~lG+%i&b=pYF7j$2-j*fo}t0C6WiJWsv zp%ZmB(c-An{m*gwOVo+exrGq6n`lNf#7P%&s~hQ(1>G-OM^{8cak?^2S9iY-A91>2 z1KljCFdPjV_^hT(RJzTp6b)^lJ0x-asAC?vr|#UvJu4{_gNW1p^D+E&f>yPTV}#HK zm~#LYqSNtt1{VJ>G!mBL#TtZjUrF1Q= zq}%B#ocmc#PvY%awDStxn1n#D1`F^iJp{0W=cDvSdKf_73wJj^LXTn`2V&tK0~8(f zGM}D6TOstZEBzHU!t@lzXGxXYcp7ckyiLgCMVv{YR$!zKli-yMzUutasqF><;=(rRuk*wEhZ2QPl@H42#hD}w7TE`y#V}O z=uU8}yJ%0k8(i=nDxiC@glj>W_W_^pr$zJt)lwXky&jbDh*_FZc2dF8oMM)Nxn6}? z28mVc01X4bC+S{)(7YtDX8a1qBIt#-;`I7@dTSMB0EgGn2aL!cZ}JH2Gecm^OTO@U$ydxvzFDB6 zj%6l=q0VE&T<6;j^aG;AGS`SuG}EKvt%VuUj5z(wAHT(^^)E}tW-%dw*b6(ap;x1w zZ9$<6J4HLiQPUI@;gxh3zh~iHbcu_uE9n}3&yI`Ug>rd64#I5cNxxhpVMWgAq)ie}L=0PP6DOnup7ukDzxT zE#IPgT}C%=F5P%(N?} zp$qiqh-2HZUrD&i+hf0_C=>!_t!9asEe?Q41h;)9E{fx#1oF_x zV6Y5G#ZsUpQ>_C+Vfn{GTI3imB4)?M+?CV^OhC+5ak0Q6GhRF~>CwdVoSrQXw~QoP z9O-eAA#qVrwm~e^G~bq3w2^8SWULd54YQh`po0+xw_M5;o$wn+E<7HcsXs8eP;|v_ z&2*zu(VY&%`y$bc&J?}r8j)jg((>cgK2G9JSH?fsp!iLSC7>z^9rAcl3;a`5Nd2&F zS`X}GvB><`3PfT)39(ch=P<)!Cw{)G}rU z;%Pn*sisi#w7YL+Ipr~Ds4QT@&(Qwaq6Lp)d0ZT~l1A|3@tbHcbk4kW;$&X6{Pp5g ztI3Enpu}X0zgSfUx>Rn5`Dc0g+`nN}E6~I_2^bFrm66zmG`PbqVmHbcyW`h*_MkZ; z7uVVMrAE;oKee$dtrU9$z5@(=Ct55@g0H1{%vxM%XkODQ(0UKRVi#&Qd_Yq^er@Jr ztV1Y(G?yQ36cDR+s8*17GI16Glt%ejNZ};3#~N4_WHT!!yLMCs>xf^1z$erWXA=5^ z)g!O7_;v~7Tei4tow&kko8pp^Y;om!vFdSgWvQi&>kMu9gkhJA7mO7~FnFV3tddjm z(PDnKxFNDZ+@$c!6SwE*#l>B=o3*x^`xD))Eez%Jnm(8h8rTpQ4|8>p$m8t>^mtr6 z$%Qt>#dG}qVqCn!->=8TTlpKsy9?Hd_v7LNPWm`5KIQK(;^IsG{w6NI!xH}x7r(^C zA3IND?)<#)~p2o9k5Y2)z5SJ6olbjTnQ=^?QuwuNU(UQ14C@3>8E*IFBP+T5vD^$c~ zRq#~Ja$Fv5-|OOXX=0R3JWBM_5|=A5#B6z7@<2PYc!%M%ntGvfXU}vJYvb~SHPp@2 zW90nwViLGs5z9ro3zG3cF_j*H?0Z_^ z*C@nvdQ%kBhmh@`ivuC+XVUMY1oFF7xRAX)#B5wQe~{P{w^k1nWnv_*jGidUAz=>| z)5IaT1^Q5N2JVkuEe?m&KLS@!94R&;^$AfSo)-(no1zj?8CBwIIH$IXMPi$%mLaiN z7Kj?$Gk3Hs7E5r8TCFS-%j6+qg*-|eCyx<_;i{@b(Ip z6Y@Hrqu_}R8F*=N!_@im0`S;9_JD7JV_4{|j*whcfx)0UUlV#Lg~wos&1%=M)5lCZcWEUvUtA`Gbc{A+?I-rE&` z4q%L_z|7jJ6(UMu>oKLR#Hw!E)wgM2_km3X`~{~44E z*skHQ`QV=Nrnp?cL2kf0J5kN5^zBh?lEq!-;Suo7sLlt2G_Q}wYNG zV3tut0{h%Dsxe?Tb@(eT|F(v}${J|CglAt`-%2Ap1%N#faTZ0z*`Vn2sINF5ZuJXj6rLwQPEHaRoigR$Px?mbro66E`AU|0ZbaH;V}9 zv286}qt@zC`UlEcwBf;W2+yvsvRq}yC;?9VCd&rz*@y-_!xn{Pz=M2?1%r7oscfOf zWp&gs0>XjH2JsMe1Q>cAP!9|p{Tcp!7Hdp)McFe);(n~=1JE5Gq=6!im0U;ri}h42 z;9nCDQI*(8M~jD{Jw1XSh7c6ye-GWbC>tDR!9W)&oKmKZqKe(0|s z9cH+cU5_a1qMbcI%w|B;lI?HQfZylEP3;zTx+m0Fs5|0CQ3}fJF*sYk4G6vaxO}^G z2w?DD0;J9wiUx}5R@Uy>vi~_QKMd5xk0I?pw$k2NBg*{J@>63A$j@z7c#Rm!ZZuvS z`Bh;kA!5HVid2%3VU>VL=dl^lNT3INmaGRD;SW7Yerr4d&+|KL$nv{5dkQx4|h$fG=DPWrp1c5%@@dRk>mU?B{j#rYG9F(}}7t z(mIL$RIB!+|<^qn7UyQUYLVf`j zf&C%T&#;It$t)ruUDZFu2C{T(ysNCd!~JzJyY`G@KpVfJ+KYK+MK%0`P7X|rA6a@E zGJ{tz2Z>BXDP(484Cz^Zw)~yjnDh+vw>6Yyp5tmDf7kKHANXLhW18~_E}CI7;%W#F z$1v-oK`=1g)KKqxI0}z?hLWgjw56^wpj>Ycp;y$&R%5Y=V5B$tPONG#4^}3$Cr3Ck=P|TiZTpAByucrD=4}UTngT+nlSEvz*j49 zIZfeEN?}ueukCg_#1o2%ZV5Wep75dr?eQyro@BfPaH|I{m zUmcf1+j5;6&+c>JDerYbJnZ5EZoJ~ z!c5MeUzmlAOM0k7{ESNqUC>BoTpfllH?EE}7!GsP?udXAj*_sd)j~)&ZXxCqA3w*{ zVop1nKbG)EEq~Mr{;bES8^i{+v@36uaXZ>;$Bg8E(vGih{c-kxMZ&y6)FVGZzt+4? zCEruA9Yb;m?Jo0Zl+367Sh{0n)IAzdp4zYIwCOOJGS7cUqxl~5+D44Eq0Pb@HG>cG`G!;op1=Hds) z*kKvLUSX?hRxMx!uhWxi84TAIa5n!hff!?kQG{*CA_qy#F?Oa}IJFvTx8m2%cc$k5VTa7_cmtJZ=u7P( z1jgs5fkEXO2E~{6d1lXh044mf^z}xy0xaP8b?QWBEYDB`wn<^wvVxP0TvmT#*P4Qx z?&@rH8a|=puTM()Gm^kswk0L8uQ(ckVyf6HoUP6?pBHdyI7q-g0N9Y;L<70EXoht- zXRC|2m6MzJv=qsU>~3!!A_#06o8#Ixyk&Dl%T$dE~;y&`r*#UUC8D z%0nq%9!C4i!>LRjK{fJ7Iu7Y4%cJOYSphPwq_wgNew{`1p+FI=&jh9S9woa)4=H4HEHcgd5U5H;PukXoTS zu3jp`9ba!D#yJ%pZzRJbwbRa5Ucg8A>2H2;L5`XqK#NgfBU>hYlE6F|qu(MWj`jgu$SJozVx+*3fu zr^0)C8nooop(X#B9zfos@=SV0o(mb+2vUbzF z5;MA7y{Fy>Kbc2IdWP%8)K7gNCV-1PBQw>9D5vRTdJ_iee$c>wrFH5f^-tJ2KhWQ7 zn#`q(Y+B%dHa)11gC0IX52iJw8LeELOxdka>;vPqB&==&XQ|?yu|BEEc9WWDw^o?f z9aiY)DcG=ext%1*)yq@W6FFXMURT4nlOI-3niAcAqse)#;G$OJ-(E8r+Zn)+Rv2Gl zBRktw#Y8iA(CotPC5;@yTw8rP1lziC^%WAo z9s)vvqWVqPZWyX>nQ*X83|$XzSL*Ad{>#*tHFd(tJ;O7J&IY*Dg-ZyI*=a?86 z32o+h113cS5VONUdYVQ-on^OI@-8@+f7%1#uI%I8#Usxerb8I(hJ=2DP9gNDc7WwL zR|f3$o+vJD17PE*)zLsQ9}-BS&5+D2SSvQ@eI(3@{n_=cdvSdR7ZAy)4S=r$_*Mt- zwW(ZH7X+!p0%33i)=fwAH|Q}~AJbT3Q^am>n!pY?*&^~CVB@<0_j>^K`!rpC04483 zD0v?N^WKF+{1dtiKPGUU{45FN*9RcKJ^=ak9>`%88CI)+b7vahGsq7#Aa@K~wULip zo+zskR@nAn;1Bc|jRk%({L2yXv2WWjJi%Hd6gj%e55uFgfnH{p!i#Dx2a20W zkMcroRCqmst$8TZ@Mv@3O`+q%oRwo>yLCWB5Y*vo0*Hu(!h+@5&lC;YKy(ZFFR2H9p4^9UW2KmI|$mE;c;**2iBzuL;;05kWag|VqnH5^=&Os$`m~njf3?dvQwjR zqA`ZQ8s^Fl%e=Ur7Il1&yT%q$ww@W+rBR3dp_ci`x8wRC2A|}8JeH_<{1q0;Z}9(Z zgEQfG+FSksHrkqmpko3sjR_ERjGhZ%aTNU+JrA}8i-|GDSEnHr^9<-5jJjOU_eOmQ zM$N&p!;?l0Ej}3U!Pu$Phw^wej~BKcZ}G(S;fdk);s%t2nSvWEm8M+f&@dG;L$%vb z!-Js?4~9D243LL9+ze1*fO~msEA&yi!VVBFOS?z+BcojRt&l z-Bqw}$56%A(rjJL(Kfo8mjTSW#^00Ewbgh<6sK-984YpW!nnd|aAua=$_Y9!G@S84$=F8z(E4 zb0KjYOaK)B3q&`^dV(XG4*oGXZ=Fus4_w4JrZOp8WdX=84Og9Myy`+lF!tuDZghm| zj?lm!bd2grD^xE!N%f}FQSN*drOQ+wx*8iEYt-&^r`m(=SGoA5h`#iW>PP=n{b>u{ zzf}Wp5#qokGW;=Ev>%PG$&qdE85Sp@*_G*YpKE9!|Peh)-ae-2!Sq&VI^moIe)-P&LYDb6pf?3#ZgAdDM7eqTP26f`$`V9N#mU_ zXHIV|krY*DIAC~#z7eQ&6ME8kyBP?`hiLey6Al)^8&;CXjw8#K%|RqJle9Y7j2i88 zsbJJ0y#~e^j=-S&!G;YBeXGyM)Sf8GL6FxBwoJ?@om)%5!fNr?Pzg>_%O4Gu@Zi4% zM}u|H>)Y5t&!uK?v9S(5?Y9I&$!k*sS6RmS!4{M3-+;PC`J z-LZ*wVdCINFSe6?ajX=C^WcimcOwU7!OObw6FT9yxIR6>L?h7%vTCA{LCiNJ*qi{@ z;II^U%qDns~CIC72 z6GtF=dIEU!RBuSr!VbuEObV??edG2;A6>P5(Xb_jZS+*|Lpa)h>K1ir0hM8yU zhrDQS{jeYHUA93#q78#Lp_F6uJ;$$ptPn<;RwLkbT(6&q>u2z$gSY4K<^*q>fdwz( z?`62<20_5T!dw!soq?Hi@bH?+yNagenWzcK>+wjjHCCG%|46Eln^dDmP$M(Xn(3ZY z^2}&!u$1Fm4ylJI3m5Nq$A$WP;(M@qghr}Ifp?FAeLjvQc>+Ja@>j6Vr|1OrG<-Rm z=t}iB$o6M}chAvZ)${b6+6?*rBE6;oTfaMFP-MVx)5*9>FDAvAhW zzhT7Eel%FWsUJ@gOD0dh1)O5BgfoM`vw~a>)p+>u5Ekw2wxUP^DPZ;xebQDGCB)9d zDPpJl5~~Zt1Yz_0oo8qT8`mFfqEhqCVNwo$v@QHtPhznaZNIGoSJwF=u zQQ_0L{@g@HzaH0Ln}Z8}K3LkFvOsUF`g5dJ4aP@JzmqATE=yAEEq zTh%ADR((bfsn4;3U(mDaORU}-SiNuPWA&|BL2Dd+60G1Sfhzq;ASCTtvM1m!v%YMW zUT03jgm6+cs(-=yCL2dwlf|XU)4w8**SCa?qYk|TtvGucHV!gRlKO@cj_LJdb*=+3 z3-tKS9QB24)z<(iaFj598%64#M1cw`nk>EHsWIWr6gv{#*Ti|3noy(BQn;=L- zY2eTTCmLDrboFovKJ&A;hjOO4;XEvLY#2ArR-n(GexEt1efDYJXGQ`)on6~@9!=!( z1QGA$1&fdN&37C!>l@ATU{PL}na`W>-+8{4a5NKjkZWv;ccK}aC=dJdfD+SyeKJIV z6cE8lHifBR4IR_HoXsaH=ee<5KNw#S@}Fb3&Nv*S8J3mtE`Z`P;7@Mrjf^zym4@9h2xP6e=YL;vK{z?9#-Ai1KWBb?XsJK!05qIfb!~=R)u~F|P{;GEu&+9$JOFCElQ}-1=;CBXo z*Zn1aP(XIm1LQ7xpzNmy$$ULnj?qKp6rCqa)K7B09%fjA*@Bb@dn_R=4|1{$Qy(e^ z8;^*jePutVzhUYnl8kRe(`@m(vnSF*R3?6P_Hyc(A~*zCY1l-D7%h4^ z17Xl*hy~Q$8H6Xh1vwak!Sn!cir>T25DlhXXE53|ZGfFvh2l0odWO?6Nqi&Nt6t*i z2$r3|?}Cl&D)vX}Ps8F}qTlF@R@j|(SH0sxft?6F#ScB-eo4yzjVd!*VMcT?9um%w zwvtRt!qixjEoLlCb}0*}7S@FZ9%1OwXtp)*vq6|4cIRC_Va^+Xa003CU}v`Ttbv*h zWj@VY;e1p!MVc6YvEGNe>U}9&kA_qpL!b4uf^1{OSV1Hj@y zN-Pef#Nt3o9PF7=*)-3|2f}Eu=Yd9EI3Su`jJ&W?f=yD)+>;V48%7dn19ouIVnPk5 z0SZ+ivlTj~4M<4H2UHTyP^ZAt>dy7Rd3{@OCVZBN`0-tq<`f%yUD#!b(CL=IjICs% z=K!kk8t}AmAPnHw%yx#w)tIR9=P!*rBMkchs9AEOpn>>H!I>pzAFwS1!G6WXtR>q< zs+(ABJq_z{0PU@((@0%R`|BBWus)EE(lhC3T|zB*KN&x+aJD{(F4A-8DqTj`>GGsC z>DZxcV+Sd)aaU|=g2I6(KLT&xWLqNH6J=Qk`O>~qV3HlFVof&sB*3gsw(K5sez{KTP0R&-}#5qvl z7Jf&d0FIZ(opGBe+q|0>qh6eWQG}9X1W=q~1V(UrM|nw60#GviD1rT8J#)=AHL5vG zfYWW5Kv02;CB+GNN4{DM1Kf@pga>FjP5@ts6KD&Jx08X82l|5q?L zB!EG`Bp4)=f=%#TlCA_LS5a>r12r$g)?yW?xfFULlI`V;WWZcu}uU5Xa~f#X0&UahX0@ zT&qukz;6-j@EaXZ=rhC%`Y+;DeUA7}pDVRK4}$&zxx2nl4%HXQY5HQhSYIL=^`){! zUnVcmm&=v<3VEYmDc7RhMtzQaTCbKb>1z#FF(H03DPF*tXoP=P`GnyX646W-DUKXa z*nBzDL=I@Gq}e9K&!JTmHIV~h+9b0SM-DiM9C!^;0#m?geubBqBL^blJ9^%x$=&G^ zn-)Y4m>yuics)2AN^e?2n&D027LFX4pO6z`nD zUQVz}!zb13>2)x=M5foQ5mT)+Wcx+@-TE%S;WiMC*xzAeew2Jle^wyEJA$iwd|BCU zG;oq+?zsJh+b`k|_J2K42!fGq_Z;bdsCUqQDG#E+xK;MT1K4Ki8tM+_V6~kR_|DXD zyc+iVRf5*cwh-K_8E~)e2G?pod=JsL8r;nV#-QCmOUVQ7@3VFPN z$J$3)=cTbHv&>yg`VR1rJE_0E4_X-vA6(ruO0UPR+XgDq4<*fU zaxllqK7Gw+J}?z-6lc0W^3b;c1aA1zN0|^!rx+ocCBY_>I?L|9Cq%T_ zeHR~Z(vUnjtnK+q^q%(3Igq85?u9r1Om%3D`aM}5o4`-jSxe$h$x7H99xvxSe`y`6m}x$_034$jWva+ZSlIEjY_e0X}ApA^UwD??0TF z+~&z%o8Oo!9N`*Nv75r?sbXW8`|gI#JP6;Z$WOhv!;C+Y(-oFYld_0NY2f6 z?n<8QJ+>)lZQQxf6n-$du!ZfqM0XoZnTM0hWIK=gV0_$vc+!7(%755oA8dnvLxbKn zl@G<|lAE-pUO*|F$;1R+OwP=9Uh*4#g&(q=*9x<2jn{dgS*FUH=JRb^5yu^};AwH* zUGKbC*vUUY;e5=+J9%xZl8w%m1?!y83OjFfK1Y=EI_FEA zw(~=_^W!?_r^2q$u6T(%zec-6yT+a0qn)E&HiQH$pKjdS-44h93(R*2gM;-UV&w)|V`TJXz9^?|xHv?o|H z2Os>3i}*-COj&TS_STQlKsbVD>L*}eK8e_iztVF36rH1=rt_h}-=P0S59w#=G5s7p zub+o2`2~7UZ>B%=i((J`cd@^INfhgs#T@;LXu^;2T&iCa59)u2NA>ICUHt~6%bRjf z{gy1!Z_A_fJMwh>uDn6NC-2bj%fIUnrYg!-lC@IPgSM< zOx5boRg3;Y9jCuktMpgu7X3A5^Dp&`{#L!Bzf_~`1rQ! ze)=apQvZy3|DtE>U-dlwgg#RLVc7O_mhbv(Tk~OM<0#kjLIbgZBLS7-&>)mjfXx`s zr&6u{6&ei1$-!B`FR-=FTP+W%t3pHY6v0N&<)J)0Wk8iWJCq+9N}1|7dM8wXv@C2C zZ43>=ldEo_dqTtU)JZ)Nv6RU8b{q>=I4aQqi!~gP$x7YG!brk7BDyC>Hs=4(4^D~V;L^7`UzjS=Bp=uj@6V< ziYU9&0r+mkmR4s^hiO;Hv{n>$7J3h;Cc>dTTcJYw%9~%u?=mBB5d=99+oAnJ`vbTp zm@hPmH)6$5h;NR0YBb`zd=H#8N`yFh)(H&D1ARe;?P~ z2z21`JS(f$A!eyvI96ZGXLehh0DH2xJC>)%iGoy|2pt5R2$ek^I*9#oi~)1ax`$KO zeRE>nO{j;{8}rS