From 4acb59ad246873af615b70d962d7c41f107e7e7b Mon Sep 17 00:00:00 2001 From: SPP Date: Mon, 28 May 2018 10:35:22 +0700 Subject: [PATCH] improve & fix bug --- netforce_clinic/migrations/__init__.py | 3 +- netforce_clinic/migrations/del_dbl_visit.py | 39 ++++++++++++++++++ .../migrations/update_patient_name.py | 8 +++- netforce_clinic/models/hd_case.py | 5 ++- netforce_clinic/models/patient.py | 5 ++- netforce_clinic/models/report_labor_cost.py | 11 +++-- netforce_clinic/models/visit_board.py | 1 + .../report_wizard_labor_cost_details.odt | Bin 16455 -> 13949 bytes .../report_wizard_labor_cost_sub_details.odt | Bin 13453 -> 12880 bytes 9 files changed, 61 insertions(+), 11 deletions(-) create mode 100644 netforce_clinic/migrations/del_dbl_visit.py diff --git a/netforce_clinic/migrations/__init__.py b/netforce_clinic/migrations/__init__.py index dd73eb7..87b7a4d 100644 --- a/netforce_clinic/migrations/__init__.py +++ b/netforce_clinic/migrations/__init__.py @@ -19,4 +19,5 @@ from . import clinic_setting #from . import revise #from . import add_patient_moves #XXX do not run it again!!! #from . import check_patient -from . import update_patient_name +#from . import update_patient_name +from . import del_dbl_visit diff --git a/netforce_clinic/migrations/del_dbl_visit.py b/netforce_clinic/migrations/del_dbl_visit.py new file mode 100644 index 0000000..618a1fa --- /dev/null +++ b/netforce_clinic/migrations/del_dbl_visit.py @@ -0,0 +1,39 @@ +import time +from netforce.migration import Migration +from netforce.model import Model, fields, get_model + + +class UpdatePatientName(Migration): + _name='del.dbl.visit' + _version="2.12.9" + + def migrate(self): + cond=[ + ['visit_date','>=','2018-03-06'], + ['visit_date','<=', '2018-03-06'], + ['department_id','=', 4], + ['state','!=', 'confirmed'], + ] + patients={} + add_count=0 + del_count=0 + for index, visit in enumerate(get_model("clinic.visit").search_browse(cond)): + patient_id=visit.patient_id.id + cycle_id=visit.cycle_id.id + key=(patient_id, cycle_id) + if key in patients.keys(): + print("del ", visit.id) + try: + visit.delete() + except Exception as e: + print("ERROR ", e) + print("visit ", visit.id, visit.number) + del_count+=1 + else: + print("add ", visit.id) + add_count+=1 + patients.setdefault(key) + print('total ', add_count, del_count) + + +UpdatePatientName.register() diff --git a/netforce_clinic/migrations/update_patient_name.py b/netforce_clinic/migrations/update_patient_name.py index f9a926c..8614ddf 100644 --- a/netforce_clinic/migrations/update_patient_name.py +++ b/netforce_clinic/migrations/update_patient_name.py @@ -13,18 +13,22 @@ class UpdatePatientName(Migration): for f, model in [('date', 'clinic.hd.case'),('visit_date','clinic.visit')]: cond=[ - [f,'>=','%s-01-01'%(y)], + #[f,'>=','%s-01-01'%(y)], + [f,'>=','2014-01-01'], [f,'<=',datenow], ['patient_name','=',None], ] print("update %s ... "%model) + context={ + 'migration': True, + } objs=get_model(model).search_browse(cond) for index, obj in enumerate(objs): patient=obj.patient_id vals={ 'patient_name': patient.name_get()[-1][1] } - obj.write(vals) + obj.write(vals,context=context) #print("%s/%s"%(index+1, len(hdcases))) UpdatePatientName.register() diff --git a/netforce_clinic/models/hd_case.py b/netforce_clinic/models/hd_case.py index a086b87..3696a2d 100644 --- a/netforce_clinic/models/hd_case.py +++ b/netforce_clinic/models/hd_case.py @@ -1109,7 +1109,7 @@ class HDCase(Model): # update sickbed if obj.sickbed_id: obj.sickbed_id.write({ - 'available': False, + 'available': True, #reset to available, => please recheck art }) obj.recompute_labor_cost() return { @@ -1618,7 +1618,8 @@ class HDCase(Model): }) sb=get_model("clinic.sickbed").browse(vals['sickbed_id']) sb.write({ - 'state': 'not_available', + 'available': False, + 'state': 'not_available', #XXX Check state. }) set_active_user(user_id) if 'lines' in vals.keys(): diff --git a/netforce_clinic/models/patient.py b/netforce_clinic/models/patient.py index 5d9da9c..2d7eb8f 100644 --- a/netforce_clinic/models/patient.py +++ b/netforce_clinic/models/patient.py @@ -112,8 +112,8 @@ class Patient(Model): "hn_no": fields.Char("HN",function="_get_hn_no",store=True), "hn": fields.Char("REF/HN",search=False), 'title_id': fields.Many2One("clinic.name.title","Title"), - "first_name": fields.Char("First Name"), - "last_name": fields.Char("Last Name"), + "first_name": fields.Char("First Name", search=True), + "last_name": fields.Char("Last Name", search=True), "name": fields.Char("Name",function="_get_name",function_multi=True,store=True,search=True), "name_check": fields.Char("Name",function="_get_name",function_multi=True,store=True), # prevent duplicate 'type_id': fields.Many2One("clinic.patient.type","Type",search=True,required=True), @@ -389,6 +389,7 @@ class Patient(Model): obj=self.browse(ids)[0] if obj.walkin=='no': patient_move={ + 'date': obj.resign_date, #XXX "patient_id": obj.id, "patient_name": "%s %s"% (obj.first_name or "",obj.last_name or ""), "patient_type": obj.type_id.name, diff --git a/netforce_clinic/models/report_labor_cost.py b/netforce_clinic/models/report_labor_cost.py index 57bff51..71a53e7 100644 --- a/netforce_clinic/models/report_labor_cost.py +++ b/netforce_clinic/models/report_labor_cost.py @@ -51,10 +51,13 @@ class ReportLaborCost(Model): date_to=line.date_stop break if defaults.get('report_type_wizard'): - per = get_model('clinic.period.line').browse(int(defaults.get('period_id'))) - period_id=per.id - date_from=per.date_start - date_to=per.date_stop + date_from=defaults.get('date_from') + date_to=defaults.get('date_to') + if defaults.get('period_id') != 'None': + per = get_model('clinic.period.line').browse(int(defaults.get('period_id'))) + period_id=per.id + date_from=per.date_start + date_to=per.date_stop res={ 'period_id': period_id, 'date': time.strftime("%Y-%m-%d"), diff --git a/netforce_clinic/models/visit_board.py b/netforce_clinic/models/visit_board.py index ee5d2de..dce6383 100644 --- a/netforce_clinic/models/visit_board.py +++ b/netforce_clinic/models/visit_board.py @@ -400,6 +400,7 @@ class VisitBoard(Model): 'date_from': utils.date2thai(date_from,format='%(d)s %(Tm)s %(By)s',lang="th_TH2"), 'date_to': utils.date2thai(date_to,format='%(d)s %(Tm)s %(By)s',lang="th_TH2"), } + # TODO Delete the data if duplicate (date, patient, deparment) return data def onchange_date(self,context={}): diff --git a/netforce_clinic/reports/report_wizard_labor_cost_details.odt b/netforce_clinic/reports/report_wizard_labor_cost_details.odt index 1b8ceb13ed36f23bc41b87ef210ca582b2b0342b..3665f3c44170424ca18817c94b6ab5a2224eb6d7 100644 GIT binary patch delta 12114 zcmch7bx>W+vhT*-LU4BrPLSXbf(8jraEAcF9TpzkHtz23?ykYz-QDfwJLjJJopbBm z_vh=XU9)C&&rHvBt(xEdb@zKgyjY;hOG81w2Z7*0Aaxl*nJ83A)W2FCHpD70ItT>VA<&75p4Y~8Fptqoip%m8OAdwY9Z2RA!cS2qWHS64eX zcQ0aTTPHso$6$MRA6xejH+NrWk6<^z%gxj$%+@==F(laC*WcYY)ZH%{h)nwB zZ0zf1@8{tf=xH6~>E`e06XK=k>*M6>;}-7i5aRC^80roVbV-hO_xAJg^$!jR@$(G| z3HJ2~^bZOP@eK(H4G4)1iwf}rCx=DFgn*OdLjA$vap0&haAHJqOh9r>C^$MgCI(23 zONav}CMU;&6JwK7l46pRQ$pf$B9bekV=`irb7E79Q{ppHQnHfLiX&61<1n3ey9!Vq>zCqqCBeiqpVFsYz9-F&QaY z#o1wbnXx%pNjU{+MVa8@oYeAyIH0&7rM4ikt}-PjJ0~ZnIJYn-x3Hu*JF_UKxTGkj zq_{XUzah7zD!aI;EU&VtxT?6cF{h%ew6Y|xvNo@xv9z+fq`IlNp{AsvwK6ZWx;Ur0 zq_80;tEn`*rL3T;yt=WxqP8-tx~jOTCcC+&w51`pwV}BBkJL8RHrCbvO|6Z!RgHCx zEsZs8ZEZPaU4^y1Wo~EuGyhJ;U|Ab1lQ`Efc$) zWm!FSh270Hovkgy?e!gPojsj(J)JEB9W_HeEhB?Xv%U4Zv#s5Kq<64yu)lY3bf~v` zuzz59uzO@=q<>^`^fxd%JUKTx(lCRdV98ib7gLQZGCTZ`EqY*XJ=<~ z=Wus_XJ`L-e|PI>f9L4vX!rPX@BD82;^E}{`snK6^#0}YWDht$JHNR&zPPx!ynVQR ze7?WEdV08deSP&d!&wJ`P-G=P3oAJjTk!omylJcLwedIZFZ&I-WM>U_%=p1|(xI_SixMJ3 zR+dcCI~BDkMhpPh`YRmU;O)vOHDjqgmr(4~Zfnly>%(Phef!I*+uGg9k8&Rb?J^M% zy4RJzk=lWQbGjZTGN{qRQG2w+cEp@1rP@rxMTJO$1$3*mLJaGLIwpfbwde>Zo5{MK z%jsj_Q7+x(xy_n~1N_)_}V3sxjaw_VTXwMyo>sXStviOPClKWlphxk=q*!;!S^dSYp^aUGl< zktm?Ji$h%3I-d){9pNA?z_%-Nb^Y(4`pZ!<9yC z{(u-FNDASr$^)B0;}RcAc|vO@9BznmuWwtD�k3C?l~#(0XzF7u2he7ZMBdoNF0a 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 delta 14672 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 diff --git a/netforce_clinic/reports/report_wizard_labor_cost_sub_details.odt b/netforce_clinic/reports/report_wizard_labor_cost_sub_details.odt index eed32db43235deaec9079cf41a59fe294e78cb9c..3f7c9648a1f85df9a270eb9f34b99fe84944b061 100644 GIT binary patch delta 10937 zcmc(FWmFy8vMv@RcyM=u2M89N1a}MW?(WvOySux)OR$BzJHegcP98b??eq3I@7Mix zYmFYOYSx_Jlpek6>s1wDI%$9;D**|G4h9Ab2Ij=aCmDkzhWh8*A`}iu6dnxh&xIYw zz=#*)_W=NF00RRDgM|bG1M7JiI0OTO1e29i6w;I8k(82>mXVWERFafam6wo^SCr9G z5ml5^R8-c~R8>?{Q4^QaQ&clh)icpmlG0ID($my1)%b3xtL9{-VW9u^G1oV-G}X~H zF*dU@H?%Od&^NNxH?`NdbTzlKH#2uJc5pJZ0o=^&>@DowY|TyVEF2td4Q*^K-E58B zY|QNK9qk?6oLrpToE$vd?A$y&tz3LeT!NjQeI48b99@ImJpJ4}!n}Mu9lb-{ynQ|V z!d(1g+yj$6LgL&*ll`1b{avkmJskYJ+=4yrLOk7k0RIqgvj87QUvJkiZ~IVx&(Kg8 zAU41?F3i)<&(GH{+%Lr2H#96Hz&|uFBs|nFEG*PFFvc$=#xEizBs?ZKA|*6BBrGN& zEG|7FB`zt%KRzNfHPk;QGCD5WH#RyvJ=!llHX=SDJ}x0OAvHZEF)lSRB|RlBEj2AX zDmy$WFC?obJ}oagvm!M!FEh0`H9IpN$S%yt%}>cLPA_c8ix1CFjwnrv%ubBW%Sgye zODj%~El*F)$;{2qNy^VoFUg55%}cA#k8CJT$$OLhlKkSb()|3Ag3_|mg3{8`yt2Cd zsiY89y7JoA%I2=R^1|w>n)=#`mg<7Gy7IcZy84EehGw9)v8}DO zzUEEsXsPS$>`blf&8+Fks~xOs>Zxt(scs)`>+J66Zg1)7ZyuQInA+%^+39I2>+NWo z?I`=v)eZVl)!W@M)>k*&(>^rVGTUD{18V8*?djCu77iJ6(Hv6Y#TnVH$CxuyBVg_)(*rMa2K`Nh@6 z+2!Ts!P%{u)$Q4h)1|eo_05fy?ZdUBtL+8Q&g$IO=IZg*+{w=B*}>}N=Fr9d+U4Q$ z)|>1d?HryS?rk3)>>V8+@0?s7onGu;-k)AvpIkp&9&KNq9$o<#XOEYAkJl$J59e2J za(jRC@bqwd{q%7C`ucj2@*Mm27(t2&3MjfPpDrWID%=r(*|fDZIF|9Wi8~w4-Smx_ ztBzD;X5Q|-x~!;Ke!`Tp;AtpOmYDo?MCCjNvdpiG`QYa|@1z^^A^uVg`P-sLKMMhJ z+^#Kz$WOUiL12*-&SIbTrvP|KC;53(60r~+x9@&N)cPIP;Q7mld)CvXd)N8-T@M5c z(FlaBAMR{+r|A)RBS5Ex?AbywI;<_F_&VL(Z}wwO)3+1ibIF}vB-y31a)RNM(W*bY zgO(Cr{gSJq*eo;}q2#DdbIV5%8MNrkS&-`D^l=;T3^kwZR}lE9R**TKotd6yB5d{_bSbHJ2=Ot z0&txxbi|bkl_3A{_2>vyQD-h4OXhp?Q(hBFtqF^{)@$P9I6T&zx=hYimp<-n9;wpC z%Nh})+tfT(*qMgy?>!8Ff7mf#Lp@ghHX^(fx$GK*>S-;gND

Hd8i|i-+S8sWr&S0qD7b zx%j}C2u~-!$LJh}J{el$ynuf?q)(NWFwOk!qjT#(A0|jd_E%l73QWm+*VPDlGiLYW z?*3zCYC>0}j@Pt-&xEQ5s|Df1UC7jfx#4@;yJh08A8XEro>vn-{@7*}0G9hProGnSo4)Mb)~ZpH4(VUu#O1}eQikB0rkN*W zpFxwQT9hC6rK}ZFGOcLTRSX`mO)sp*MjlGL2^+Gb(o1jGAN`uWVgCjFaeHOoj?ozB z3gJ$}ns?~{sXp#Df4O1NlL1jOqKMbIfX2}#QAOGDS#Mx?O=yAw?YQRz2FMfz4imcC zAA0N2=5a{XDo49(FNx-|#0!yg^0!j@It|oe-4)bf$0L(M+*(N+tXrA+C&h@ku39MO zyjn1+Suu=$Ctz!kgVKW&Ci29F+G41h;T6itRlI5DOJ@fLC-(cxf2b~DO~kjL)7F-Qz$OVP}Ga<;u2n2;izaSwJQ0nkRsjwqu@Hddo( z=~7r9$gU3?Za=HPvWzUiNs2l<*k^i8JT{^kH=dYO=R`GC*k-JIrKdI)9q{Nl>YQUs zVL(gFV68}sL=^T+PxCoTL}j*baZhk@n}#!8e9;Vlv9L?Te0wlHHAL{?8$#90auaE*js%`mXuYK=s|f3duemU=^$JyD)w>5@EAq7weUF6^#}{9 zb@ZMj&OHS{DjM^Kw_gr_!IR;0!#DBMM*oz+Mt&~Bgp_5rmAa3rm?bLuPSe7Xzt>}v zbPL0+$ab*INz|{NwwkU86sk6?EPry;JfUoGXkC8UpnrTi24<_2^_+Q#GN#?aSVDaf zQ@W&vR?}Nrlp;?#(arE*{3+B5HM(9WSG?MO^XWzAR#Q>;s%Qf*Oo^w+wn<;lM5Ey{ z5RW#F6YYtZZC|$9h&+t8k)3#3E%JG#Vjf>K#)ckHj#0Yr*R+zN&JbL&MWh~nUdh)m zvRXMWC?z{Zdc1EUSh*ZkI%LQEf z+`d*GF}j}?Q}0P5sN?muh(Beg6AE_!rhEJ4&W2_!1_Thz{uR~U^#2W2?O&_-pUr$k zKJpu!3zO%{M8gyFjW>gd2}ui9e%0~)i+01p!v2eP$6+9eLjB?0ak@xEz)mx2=RP$q z4?hyP!AlG9`7B@|^Bvm-c~}kPj!`v5sXC6BqG;nvB-8#5+$F@9ooI>ZZ=3BAL=-~u z@@49L6|W7(?e4$68ekl6EBEWgn2kN1pY>)t22o#$In1-kgge2DAlbf{*v-H8jv=dc zy{sKzorml{AQ86qr37$n0jb|ek$zkIIQ0dV-j(y@O+^#$)#>_w9SvN?iNzKvnP>dO z6W^!^zl|)Q??|1#uy>!y{vEScqSa(|wHAHcybXOUjRszon6>IGrf~RdH==o6n2UDQT96AiFt2;q+cR_K!3`{E z4e#85GpWGAreH3Vh~{{#mw#tO)EqPz!TxFxvvWwk62#3MrUQJacBX*Zdcs!FcF5r` zMNASN6!GM5#AaSLUa3F#)1q~J|aw3qZ4HA3ngEVM9@*|Qv`ib76N*}VJYE9t72^Xj2xAN&qg{a_lr_efyO8Jr;4+^Xzc=U3$? zAnsJ3U_vigLxJQaD}iO{fUkTmD%TC_5@f;BmcC@kpA0^*-Qk!Y-zZfEtBkyZ6ubJ$ zblU=H`iLZ_4cbrDoe-d-!eO_p5|-+=s}DP*C1O*=Nvtr(o~9MJkU&SfJ^n5*=f-U_ z3>??^Xh50_uW<2?^v^o|y#2v}UfL2%M#GkuIK$ZM8{trTR;;)>A?E6 zOqqT)pJ0qb5bBOVDl)FZFDKTslrpOxd-_A+>Hr;T=2InAjN3=y zChJEOptN1shtDS-jg-^p<$KSVsy6)YPCGinY*05{xDsOth_pVRN5CX~5%PF;LJ79t zr;$$A`4o7qVhehFS+s6sz;fUU06!3|d7S1E@F zZnSaY*!1J^Cz#6E`j66nGXx8B`0{9| zW&J_Yqw3*Mohxp}gTEX3O$grSVCqCE{}>gM1DJt#HNk=$8>3i;!=oyEd%EyzN8uQ;}kWVwsh zqIafWj>nf0EjAf5N&8E8a$Hw26VJN0=DTBn_S7X-hlPLy)7@<|O=9d~uEvT-eh$aS zKtp9{U*^TtnUTu!>2auhFZ-ZnciRKCqwn4fpZQQeQ_HV@j-C-PpI1X(vSRJ`n`>wk z%sH@>o;-|%DoMjC0V|5f7ulLOIe4hdjsZtm6?>UOZ7L@=2 zx*E($GA$h#ld;M4DpYvK1?g$S_}wi5+nehdZG+V}(h5O?_1S6Nl4EfW88w$n^+AvuW?0990n_1Bv*?ja86@t-O2M|9TLL#m^mi6DWPQzgjCBi@iRS^N7RT=Va{Z2E<|HZ`@f3EdReD2 z#_Xr5k2H74TBk2bEN~e<-?5iCJs!-~kFjcr8Q>;%z|ffA$-TdcI(Gn}?hahIPPGv< znQuA<%p0w*Eqac1e7)}|HMVRCwN zbz>bO($ot66iVw?Rcg~l-3fxGnO|)sa&lh3N?fskU$snYrS7zT1*y=rIQ44{R7dt% z=e&1;d`={P@Vii7bnNo-yYzjC3U3U3H8aDF%qxO-=vc*}6+@atZ*9!m?VU3Hm$+@~X?e@yy)!irh9-XqSp3;Te4eaY3J6M;q3p$PymM)37^(Ri8X z?`$>R62betI_^0m_{|nnsB7gC#ql}u=`iRZe0x*Cp2_c9Gv)`Z{qdz~>|P-Ar^!W# zP>r0AohK&D0g0xJn)kU4G2l$xhLOYv4W527hsCms$%cJG`GRlIB@$O<*{dDkj>f?i^ z@$vfzI7>|wkh&{v!?O2pH#RE9`ANw*q9%+@uSO=DZ$NJZ@f(16MO$Sy`_)&({`@XEE7Q^O^1Zw~9Cj5@aeN^T1oc3oSdBA54YG=4 zF5t2)e8C98dY`2ZTs#{>>aX1%K$BuwPm+ip)_BU8JcQ%O`NIJD4BeSw!yHNo|Sq9s1D&)K1y|`}yf* z>|ss<#d$NiNnDR`91{N>o`_dx0Vto|n$Jki8^`?NgpEIZBh)-nm>o|OXF$9yrpMHE zbDv=mQ|5^3jNVi2#TioMH;k+V3~Y6|CFUa>7?_JJ7}$TY#$;@KKs{=O4by8wTetY2 zbEuX(6K7>btOmAm(J78@GJoP7{S+H}EmicjOS*Q~{x4EFW<%PG6CExS2m@hmEJCmS z9&@kz3sdEA!jkClBxE_xOhGa=BW~l}J(9=M8JP?2$BQv-ugzoDkpt%aB`*;P3<*cN zVtgMP>ZHJXlvAM=U`LR-g>EQvxL`Q3J+}Z&?QvCNEx~kZI55=QNLy{{Bda2|t9q>g zYrFB-iNwAye&BnuPdZ0oRS&X1KdSbb6B>IcqxN$uabuJ}KciSClqQPVao~f3(wMN) z$TjIOLkj1ijajuDumbjm>-;g%x#Gk)rO^i3@{mM2A8hW{cREiZi!GyM_J-VvkAU?qb3K8Rz}tX!`eNqp((YcC z)lTmHb~cQ6lD=m4MR7xPOdEuEKk1$X7=;1`GBXS(L}TWHuQXvA}o1=W8odwXpGSoG2%Jm$!!r~J%ywf){P`a*kl?y@9UCWUy=}XHH)R`O%c`Z zE`fp!T5iM&h+&hT%=LuwvWWW^(x7txA3Jl?aaP~q0cvZ-LC-9&x0lWB6Y!g<+ij`T znS+Qlk_CLD0oEat^qKN#YcIxx3M;}CYnDrrM={yQn0V$0Vc9`U4o4mewfA<)bixvY!jXj-453pvQN%Bv=DBZ?p<>bZVXk2j|6^) zLNH?o09mmHO!+-+N%OOM(o}tCx-AGuvV`meFT}Cd)=kAy*ubDzp)Xq z1|Aj;wpXUA9O^y=9|)Dm=)h|Dl}kN-SZGX3sKom&yfs;MeB(` zS=PQ-7GZvbL$n0yx1?^ryp0N}r}O8wHi|kE!2cb#nY`R={L`UchJZ!Y!zEa$o))#H zwK(B+6Gn`B?A14fdGXS%q97Ay=^5AIVd57Tapmfh5Zwe(ebpF*`QnR2_}c*eU6$3u z6Z|`}NP75RJ$;-i=Wy1dWdUv8Kk<{7K}Ne>lmXXUm88BVJL=8mA1((BsyLh=x(Drs z0YqBrQcF#Q1_D|Exbo6&RXT-8UkN-Gs{wnIPlDx26~FWhrEPh9xX1yPaZzKk(Qy=k z_E>D-#c1KgYVqs#iFK#}a2wnVF=VMYHx3zf4iWwB?d`Rn!qnT zE67EZn~mAoGCaFd&T4hoP@Ea_v-HPK>TzDLD6C!<7{Mgp^PD^!*nGQDHTa_wFG*5U zQ-A!pxmmbXu{13qz{et==;m3L)ns_zsDHBvZ6wg}>2m}7`=D?3S`YZ(4yh80#+qjtL6*lQ=moMIWJ zYy^J<6Z@rG)z;_GCkJK*-d|3DCd9|na-e22NP2&AdT47RUa4jaue8xc&^N@TM8E4B z+8Pl_g&pZ-aZ@tKK8E1eh#%p0QUDhzQ!=eX)09)^CC7)_6?+29dWz(mcZn&NOOzbm zrb4w7cs^;plv5;`0`QWRkP2dD7#b;}ekcQVonpx}x)nYNuwl!IwPTGH{joDcJMI(e zSnby`;&xR!x12)=!}r`sT+Oq>E(lrKKkp8A?l2~zNQ|{pC7lHMnS%JsuYvc+XVO^v zfz?~$KTSssxN8DdEV@2><9nTnO=+&qc2_JI6=oK&PU z#t3507HkMbO@im`Sxkyx*aDrk!fl)$-y`O+bc}EpxD=NP4|MG6p7Xn`?#c_K@Wg*K zLNq?m9e?_!S%f!B$4dPCRe;H&<3v?sree%5?`WU7NM-_CLGqXjPXUn#0Ei9e9JiTc8bKEJV7&+!<hnrO#-#(I-lNG4NoblA7Y3$71-`qVjSbMufBMai7&N0Ccu@|s zt%|+9B%$MRHO$y~+I`O!esLX-Cfd#rhqhRdxe6#L!JcvN|uW#0yZ^E51 zGl(g(3kq~sg|IDz3<_feg(dxPc`ap>_Jb`V@t8^CcfM$yB)Hq;LL%e#LJgl8qJ?x_ zhP-4!xCE}nqgTj@9%5-}Y~kCC(mFaGi{Wb4nybDj-xJtVy z(5L%GESt*E7M**mg+LN4ag@T`8MKRW9DaNJb$gD`GmY{wIa#&!G z8<7B8p@YyVLoTV0a)+NoUyc?T16{*Q9v?eoAmjPkbFDMnA0%;aZ|g9#ETV{>aIRe} zVEJRmtj>E2hhsNag3cgu72LN7T+JdHT*b_A$Scy*G_>P}JeRL`*YUc&N$TspjapSl zAtenW&WU}wr5-$k$v>%h#!6iNJ}F>k{hMs^=9pZLrH2OD0QRXAJ@fsKb=( zoAea-{6YXZ?|ZH7l3egZ?w2m<{ilbQ@=tj(rZ-4e{_^_`WSWwveBXYxd}Tb$FsJM8 zue#}^ZVgq3;_Sb3gu@i`nTR#;Ro(7 z{~s-EBBcP#pEsFwm;~PvygQ1pZn2WGm8u)Ch5}?3hb>BTQ!Vv(?s>%w zTuXA_*>dv|<<{OeG)|hQN(gf z{W$0i*aV!xkO<07lK1PfWbOoF<{dZ@_xNtLWUxXuuUd!0Hd-5MKWa!E;3U+2jj02< zHq__4IBmADjt?W5LOtI1hEr9Ld7ERt6L5iHgr?%!^apW?%X;gf7m$zIAXz)?q)#=l zzJmq)P>5^tOfkf3dCG#KAUJf!R;4f?bW-+p6_`TLFZ z!@w#UXW`F*gMlr*6<_?28@#{tK~FP@eNg;Y4U)CuPf zMqdjOiG_TAiZl>a@NJqEeiHOO#c?${%i#LJey&`@;R;>wWq3vWbWL>^${-juscvO> z!S?*R^|JG30a3b$+uz7v7uS!a2sb=O{Thyk!SQpOhq_pT1?h|iJ4KiPJ0P{#2eors zvv=HoNr?5S%dS>+r)+YTw!#v>v1+4riDQsgy2WP^v}bVDpt)=rpuv{)g-$zH zY3XjYYQiJ$Y32PQcHHo7D4_b$K`1-@yP7fkToWY{`$|yBh3;L5h*9UluLsxDR;BU# zkDGN5uZ9bi;}h>0c#^m6pit+q9rh*1`OjUFiQntgPBYU4=<%Kziu{!Cg%pl9_8j)- zU3@kjja6VEQxUjkQ+a|P<@q)#d))igi|CZ@J6^wKwI%&RSP^s6tr?)4v=Fi7bd@b% zrLBeDQ2HSFPFhe9*$uTlB)-->F=0W-xl@(&MI7Xq#gbF%(CY z&#GWz)kHU?a~9~R(ejO9J|^hvpOSrHW8lHWRs3T9Y1rkC6AV1Zr?}`K3_@b#YS-Lp zsI8r({DocCp1VE6NE^rx#W5QPrj>&Pb&ZN;Kca&ni`n1O>msBiNyk=XSvadSCsRxA zGDr}Oh+$EuPy&F)hX9T)W2BFz7UBnw# zqk--CmiI|SEE({F4lRu|+^T>3kfPnd_P0=|^|(aSi14!A$;8JK8-2y+gW*#hH`)k1 zmaZw-e%$U-Q2s^kV>0+HuGB*(>DMIMV7M-M0U?u<>)p@Yvh>ONdK;_8U%!41V5n5j zJ9I0jSTZtWG+zTyziJTUK7Bx@x`g1}?t_P--)W_r`X)<4{mD#NS(#VI=W8_9J<3O; zwRa?R=ut$~Fh+X>h22P7mfgnFR@?X+Qe4A|=Q^AeO9y11?ph}(iO<-$9CJ0XoFnj zo|uGi(ME0>Uf{oSHt+*PP}Z1^#GyLnDH14Bl*(6_bBhN9C{v8C)(lA{0~DTknJaXO za}lWsz30m|Q-CqClS7!qnhey4Y4M0nY^QsEQv)@p$TyzUMrE%TN~d+F}L=!1oqII2+0vb2&SffqQ%O6un? zk`z*@gl)NNbMO08#@x@qv;>FeVix%{Iygsc=?PE2wwAc z3`c5pg1Tg6jIBbZEfpRTBvRQilqgH15&GWw-Tn6S55<6fR&Di3lQSDZ1*@bX6z&rU zxjc47prBHCVxun9(Ee3v1M8wOM8jd<18zB^Oz=2|50Y;jGRKD zaOc_(Qe|U=cR{Pq?Dm_tR5z-om(NWl9>n;ZP>@97e2`_I{$**cZ%eJ)t0DR=m|Z-1 z3xL_fFAqcfc$a@F65N(z^Z0uCc+#%)Ym;|Lxw`OUNZJEr95ot2+ru%*()ccHag{o8V}zVj`^RpJ zJ6?~$F6}gop{3*@lc;#dT_xGU+ZZ9TEynmQ#K|a(ItGaoAKzWCuepSxT(Ym$;Iz)Z zVz6fCQ$LC9vUyZZkCTQB%2qPb*Gfg(zKp5(XWIdyvYuBG9cJs+*y?=$iY6-<<%}fI zU|{d4|Bfbq*Z;-I&=SWL(0=$U8TrRp`P;alRrss*7ac3?zx#XB5yvgkq5tLarepbg zAoE`e1})p)F5);7I+VAB=U*AmI(m98@PE1LEEp{R(&E-WF(dtF^;eSzvxPKpKClfBjFjX8eGv!~$_QwXJjvJ!INBYlQ#YHpYLaL;vO(rjCpGO!XK39~*)uE|QM$zkB|fnUf|C z{4-|UFD4Y?Kl}K{?!fT>X@J?#yg{PHUP#=;Cx(K0-&+|7ra{GRy3( delta 11551 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