From bc93b8666335a6878417d76117dad1ef66108c59 Mon Sep 17 00:00:00 2001 From: Kodi Date: Mon, 13 May 2024 09:22:17 -0700 Subject: [PATCH 1/6] Update ContactInformation.php added same changes to ContactInformation.php for USPS validation as were added to SelfReg.php to fix USPS error from trying to pass in null data from the borrower_B/borrwoer_alt fields --- .../services/MyAccount/ContactInformation.php | 27 +++++++++++-------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/code/web/services/MyAccount/ContactInformation.php b/code/web/services/MyAccount/ContactInformation.php index 3ab41c96a6..cdd1d06fac 100644 --- a/code/web/services/MyAccount/ContactInformation.php +++ b/code/web/services/MyAccount/ContactInformation.php @@ -81,18 +81,23 @@ function launch() { $zip = ''; //get the correct _REQUEST names as they differ across ILSes - foreach ($_REQUEST as $selfRegValue => $val) { - if (preg_match('/(.*?)address|street(.*)/', $selfRegValue)) { - $streetAddress = $val; - } elseif (preg_match('/(.*?)city(.*)/', $selfRegValue)) { - $city = $val; - } elseif (preg_match('/(.*?)state(.*)/', $selfRegValue)) { - //USPS does not accept anything other than 2 character state codes but will use the ZIP to fill in the blank - if (strlen($val) == 2) { - $state = $val; + foreach ($_REQUEST as $contactInfoValue => $val){ + if (!(preg_match('/(.*?)address2(.*)|(.*?)borrower_B(.*)|(.*?)borrower_alt(.*)/', $contactInfoValue))){ + if (preg_match('/(.*?)address|street(.*)/', $contactInfoValue)){ + $streetAddress = $val; + } + elseif (preg_match('/(.*?)city(.*)/', $contactInfoValue)){ + $city = $val; + } + elseif (preg_match('/(.*?)state(.*)/', $contactInfoValue)){ + //USPS does not accept anything other than 2 character state codes but will use the ZIP to fill in the blank + if (strlen($val) == 2){ + $state = $val; + } + } + elseif (preg_match('/(.*?)zip(.*)/', $contactInfoValue)){ + $zip = $val; } - } elseif (preg_match('/(.*?)zip(.*)/', $selfRegValue)) { - $zip = $val; } } require_once ROOT_DIR . '/sys/Utils/SystemUtils.php'; From 347e49f98f061c5bc4c9844cea181944aafa22c4 Mon Sep 17 00:00:00 2001 From: Mark Noble Date: Mon, 13 May 2024 15:59:13 -0600 Subject: [PATCH 2/6] Add new formats to format maps --- code/reindexer/reindexer.jar | Bin 897370 -> 897362 bytes .../MarcRecordFormatClassifier.java | 14 +- .../format_boost_map.properties | 18 ++- .../format_category_map.properties | 135 ++++++++++-------- .../translation_maps/format_map.properties | 17 ++- 5 files changed, 113 insertions(+), 71 deletions(-) diff --git a/code/reindexer/reindexer.jar b/code/reindexer/reindexer.jar index 6700961f55e9533e973d98e809bd4771f7e6af74..2581b64922d4c86429e5716924e2022d08d47946 100644 GIT binary patch delta 13587 zcmaKT1yoi|7q0J%G>0xhLQqn=yFt1^0TJo$u2)35^Ux)&bW1BCB_Jsw9a0h^p};+e z-~WIAy=z_9de@xinP>0Wvu9?Xae16s=KZ|Pi>0QBber%N8XDRybwm}GBobU5k)Vb| zecd=Cu|rKwK9UkS5`}VEf(*S-4J#EP8j>2KtVV{O85fZz*i?=$TRy%DLw-N1)2-qw z##6d>+xg-}GiVZ+G;Jka!1$U+GcS(G&IT{BFgkQnCG5Qvxm5V(`1dE;6lu{Ia^h&K zS78^GVcfTN!pc?5h2*pqg;9?UmNDAyF!ABEkWJXvZXaE8j3A}PIMv3lJjrsqHOU7 zhJWmdh^IH6)cR$apuh5B^rI&fD56!Q?okZGH1F!2IW#UQaGNRhEoEV|?k)@#FV`me zA*Q8G+*k61tcRlq|CzCS0>z>$>dz#1A%25UhYY#X2Ie_gh7grf#HSLVH!ua*qHxYvx^~~eH ze#Q~~r|#BA>pRiiGfMjSaY0&@ZxjZ~I;&iCsrtyff;Sp-Ts^qwh3TVZ`O>2r#@7xDyu zN!xm^;c2q;<0P_>mt~JXKQ6;&)e2@!+O~Y$F2svE)ZRNt6~Gk@=vHX8Cv+t_fg>&*W0`Q;eu7OpCm-e=Vb*{3D>A?i-6m^>R~o^mZ8gS^>mt&& z=^~clVr3cGB(d3Y<$&p9Rh7faAFN1YEunyD57iL5;HmJUPv`sQpgtrt;f0#vfqC?4 zWC7us=FPm3x!y9C=@EQnZ}-)1zZo#wT4}%3$$T}R9Je;B@a05(Ba+oUcU$%aGKDc+ zPFyuduKW1BIQqPgTDjEf9dYir4-uGaYZipI1@D!|g~V3aH8<0m?W^vaFgW!mZF8w`X{CA{PAv{zO;FD%^Wz2di*1cG>K(X(Q1p!iYt`C%fmaRHYI z)Ni-Br?8YhseJnBkT;VRGgi&xYCqg-`K2S#_R3t3gPlj{!Akzl_>k)%nF4B>rVudA zko~Q;mV?DYki}w3Q^DQ2$BO~x9S}G+z>>|&o^#&t5!<#fVp3yZr$gu6TSSESX~oX! zAaS~-oyc=hjG&$Toz)@Nd0UaS?bOLV1bITHD-N;0(7a;$Cf!3FE)Tr=GzO|_javd+ zVMDC>U&k>IHKe7~$z(!4-xiEC*QCNw7ZZfdI&tc$7QkG2f&2k0+_IuhS0n(o_B=-< zgZK5+2W~P0GAV#Nu0C*2pS#=kqjgQHPz&%y;@B0_yg;$xvz>Xf`-{&Mvij~Rh+U18 z`8Tfg^FexouNLhSP}vIEzX?XnFk{FK+L8#ebYnXGSl}L`}DIRc!tl*EZ6ZPleZsY zPSDUCpV!YQUESRr%bTqveqSUr9XC&~=On|&D8#s8#S$rhXV}_Hu^M@U61S>*#mGdV zFffYCNXPtrBn9w16)86b6PALCm+DaOmLXEvP)6HgN3mqLjpm>)$3L5f@!T8n)z(JT zOyUh6{M{E)QTLhpJY|PanU;`un`T_xVw+Zb?yZiLNP6DCpVY6bxD)9TS+^>e7Kwh5 z&-!}qEs5S4MN+rSSacXandq%Br1K7?K;AiV{fjNpimXQ{>F5C|Gunzi{4wLJ3M>P( z=gOGWcn=n}ryWg;ISy-tqX!T95u5`{p;Sxmv%;w4ep&5wh*b3AJdACJ>Ob=Y4?N4#M=Q|%SzzF z580}c?K@hfJAD_rYmJscOsOY={ZtR zywcqjROq$o5>)84>G38j^SW{nd5>!Kgiixel$MO_Y=t?g8Sy@nYIojxp}1ra>!8NI zpRJ?k%G&?xx&KuOf-8NY|M$=I1;%v`#aZVK@_}7c?+;`TJK9sn$Qj03qN*l7itxFl zOTJdm{Na3>QcoT+o6WOw-px&n! zb)pHZc{Q7|iS|X9IkqH{DXcFG+DM64@x7B-3rN0kdQgbw86JT!}FCKJ>W) zBqMdgugX{O)FP`~k*HMpoKx(Vtlvd}qnRz?d&^@IbTH5yw0?H$@tqRcynPX*iPh%WmxhJ&FCwJtZW+V{Yo%ja00p zGQFeyAz^2rZs$u{ukE@MZhJkMV5hhyEHgj%T|yQ4)!cMfu>Je*L!tWh9g}uJQu8Qs zXSdAT?hJZQvzM_Em)n)ua1{Cwn+S>wYeqJwb!eV3JZ$A!JK+AnjhIrIemo}f_6~Mn zkB!i1TKrv<15Ys=ws{%DJOrP5>Mj11mMXldSmhyQ$o=w^N!qL`s({!;NAvdb7HKD!@J`KL z+e@x{{f_(*BfO$=xXbH_C|hZn%b(hKo-L|3eJrTf-pY{f0)Si7#v$;0F zd!%i1W}NeMJFjfga$8uB+`uy^cww>A!Fh>G+@?}-!2XTLEJ{w9$6LD+I;S^J5_8>~ z8ByF0R5UXRB0SQUU$yIP$vTjo2uO`$zT2i7J4WwlXxvwJ(syAl%-99QNo@n(S&*P0E!DaReJd*=M^?+Nf*(qz~qmYxMScp}TLXlKY92F7_(EX|T@ z$veCkYD0E7<@FsC+UF6v?7fG zd{IY|sS#aY48Ng`&wRctegnrpC=dz@NA2HGpO41S1p4Er{;2tw`%GH&g0*MVo+I-T zH^M5W_;u?t&AH~=0zbhZHpAz{6*aiuUE&jWKo!DEtp4j8r(TbX zUw6}8k|-H-P8xKv-AaB*gjK7U^4-f_-aW^bd^qLPU5d}?Rpy>1cBq4tOEMeM$E0R_ zoOx0g23usKcfW_4bogU`qg8+Fhg)#p_Ta8FD9x%d zs(Jb=D&aBLFXd&4&D8PibMG$Lw)Y0E{LXp~uBR`>$UZ9H__1Re<3RkV+4t8|F!M?0=@(y{ z!MA+er?d{;*^T>h+`=#dhe<~;j1fK6GcB0jXxSLJLfCR4o_}Z$=iqw~-Bj{L-f2+T zx_?gGof<;HO(m%%QK{)Wl|PuL&@RtNQ+z7SSy#&g3aysLT0T7Stn?v9ap@eZ&Dmw{ z=t1cZJE-76n3xxboPD~}BSL7i45WF+(_OYOkND5BHFZghKES?XpTm<3h@{bKInVrA;d8`P`$Ae_(pV#23}Bww{ZoOu1BpVm*R>Gtk1*ESJp?^G{a zn?tdPQo?Z5xBh^-RrL~=8*zl_W91IR$Lyh z5r_9`Gn>bn_wRmpVHK99yy!d27_408->6;wnt|vHaUwohVx6NL32daoSQ3A zJ`h`_7L|`)N?6k}d=RsyX)2J-1nyfo6ICRW?0-9C5|y%FA0VxfjpO=;m$rAErv_ zBFI}z1wwVgTt(6j>L%9nM;6cYh9Y(;**H5e(~2v;k^D2Uwz#QbvYd->LnOv>xorL?ze8qP(w!Ijl<$qH>V$7K znI7_3(KjxwwkA@ft0nB`2*d>>z7tDqv_hDDv+7=V6E9U>ekEN)j{EE^p@$q!${ruo z=|6Vxh!Y;MS{M-YmOWK$xfQugX1k0=6O~vds1i)T)Q{L%?@gHu3WEo>irasuiHK%B z<$59Hv&hPND)XY*dr`_@U+0C7=b|u43v3aNW3c&h7}od^iE8Vm4F-YW)LF;g%5%iY zkqY@Os=a_1$Ie!a6`Z6!^w?^Qd6%gAtpr>4Q(iP*t}0~ZNv}R4I`p^~URwEMxI;}I zv9b=|@!h|mzL(;DzM}hU+x7tCsmddMOvez%4q7bu2kwCTnP|Hinfd5B8Aip^0_H-; z0qh27+b(#&N4pb0foeW&iP!-=f{|>9A_-sQs1;@_vS%{A2V|a$b+xZ53blQK%ou{c zBwvd8kK3E9hN?J+DBj@}MY^Xbr-kHBFPp;r$De(75h?0;V|q}wFW2D2)|QD1Er;ky z$E@wDye}Ko&`Iam!tg{(82I5=MxXwvvHy#y!@zxcoPhoh9lp2gW^;rmFTBBe0V{$^e9%a7me5W8&r4oCD zJ^fjop}QPwCu@dti$IRD?yFRjTHRp%R~%{)nAL2L|Le3Op6ufVGu}z@OSC;{i(d{* z`yz>)a)mW%oN@&R47N;o!%?o1PfKeqHbe#GGgA|)WRa#_QQ zPe8PPuW4SsAX8O7%Gvy&s6)k+M=Yr+N+vAEw(2Omz6UXiK*+t5N~8EjDNFHdPv}g7 zQp_SEMWBg#s9kwb5_j7r&=S#lK02@MvK=>`BkH_IL&hNDj#z5W8kcQgT37J9m&Z9_ z=iRW!cVcwT8)_M#*-og5z?d;Be_sP19&n%UaG!BFNW75kFlxu?(R^jWzV*J7ikMvY z+jgA#He(rk@}*|T`<_o8%=2Wl+vs061|7(j-|Y$vh!)vg70S+TNgy z^mxma)k2lDGOr-Q^uXSXg~`l*%~y-KF-f~Pv6<+Upz34U!(y-?2vKE_oe|W7(ZJcp z{y{|ZBnxJgeJ(>4#>*@bdfPf*?LR4; zgHi}q${ps+(2a+};7Ze1t1D3R3LGn6z*%Y%D!&jPu1Wcb&*l@+&)J|6*^klinJOvC z{sB%>!khxCR?E0OGeS$njX5vtB)4q_;P-#jp|BXLX7#nDg0>i8U^5}o&)n|xkbb_@)1vijn&f?y6UGS2NF*mRM9=rd~| z>n(WB`#D7|uRO@9X=Ea(s?zj{3-Mi(!FCoCFKnuFpP_#Fkn`8b{=yT%tW0=@&9XA8n4Maw3qa)uwp4rnfeY|eBI``eEgTheuD$(mlA z&;)&sVom!ER<_hlO`$~@6K-or^-Y{m{LX|Ha?3?{Uegy zgJ-Ct=vQmuta;+DL>JP09OAAdCrF2(9|>Y2vX;Hn8R{cw4w5%n+(Si|HAi)Q@0~|b zbuBGhIK7&tM^U(kGVp?wMn7zcQz|l%qRaBjlgOl%E>8jFyNnj$VTb%2^2wo$)sjjH zcpOr!BwT9>2oC+Md(p`jA36<~*87;dI1V|SGUiyLK_MA6e-?#Rwmhvk22Dnq{Fw;k zE!--#wQy&*l*jq!Vcpg##ags7(#nJr*5RS00(mM!B#IMERR)=~I>krb3T{FCPs;F$ zioq_cEs83=R{BqB*%4e5tWNdk@)@uFi8jt2XMEROMo2zW^k49ZZG7)h+1Nj&`1Sz6 z)%{f%ZsS|iRoAxCEx15a^|e8IZc#{njU5a&Lx~ z?e~ChANRGxeSSPiKb)X9e%;2FEMyhjNK&Trkk8I?aNly%Mr2HLZo}8$@Gf9Q=8sj- z`0;*&R{|p2edb=5D8)%vgR_CnMhBG^ekDShI#w?q6EPA-$uPybx|<7|dpB?YIjJ0` z_+u)l@SgH(fi)fs%N@F{xUg6{@MtbpcCJEM{xi}~iZZf=u}eXz@?9%LM!;iJX20B_ z7~x(Hv6)>8n<;?>FKmx2b?n~^!W~O8Dt;wLU+oZL?;igCNp9FIK}_gPOM&_H zD9JtcDCm(MVtN+NmidIuKjzr7LBf}4JFc~zQnlB+c7eLS+q-u5SchbdIN(vR#rj!HEzZw>S16Fks+>6Vq$h?!;R z-t2|)JP)VY-%@u@`kP3t@Rp9DWOuWzZ#6YB;^~OFR+cMsL*8MceiKSk(R_bUvGBHz z3QMSruvSR_k$u74B$By)VJ$;f<^*-GFJ+Mop+Q084b;T!8aP^p#~BZqDtuIkllXSS zM^&Ynr%sfPdVh@F76AG0eY#I`)Ln?}%nu@F8J^Cm)Gf0LO3f+jhWc#kRmE*} zx7HE`|GbluN77B_t#4cS)EIM@SUGx>VO>wPxa7ov_meu$SdA6 z+9G1ZtK2heplhH-t)-tnbgEIOrSl5c;Sj-ez?)6`b?K`=HelwP9BM_ic~gHKcU@cpjk(UFHYP({z`(s^KDe z62BP@Un=@*S9{{vpCOfWv3?_1c+`HXt!Lbz6sJ(A&~AHg%uMl%Y+;`YgIipg8O$2d zYN{_FZr&%ssUMxZyUPDXLM4G>P3g-MN_rR5FyY5KAImvuaN-8cJeoAt`?*ZBgvndk zl4K4syowFjehuhLn7tO3Y`c#-(6EMkR&|$7ETQ|5Pe9>`bL|#gZ>gbkhM*Q@2}&Qj zb#X?1Pv5tmT-F>yyZxsjr9I?){e}5ri2Bb(T?fXf28H>qUb$yG3Vl(o1yA2wm4D@b zLbagWJM(}e(qj67*{EYPp<-(ao_UTbf)Eq6ai>V~$M)=&=TBX+vd8XIm@J6%I3mWG zeHckI-Hz;a67chHd3|gh*G434_}!*)f2WMPU=#1*v=HLCP;~0X>+n);N`5K7TZ8}j zM;IkrXW3Lcx3GlHroZw=;Ch4plx3qwI%CW1-~`!aD(cnyAl)wfs3?v1T-?4O>eWmT z&g797eSM-s`hv6hMj)`faL!s407r;8sa4`&?J1jbCua!CWxri}s1R3E5+R(1v38e? zb>s6xftcuoqY^zzDdyEG*K*-#R&(Y`a1h+Px@9&iH76xL=AP0oW0=LbgzAb-!5UAvOHtjJ|z=KcSuGsFKfge z8)8&{Rg{<%dTxR7jM<+vtb)}y@AS+4w%{Y*g9sJjL*#Ld-`1iMC-~0_H?S&-(ofSA zzx`t1a$2@&JUKS@wI7&EsI@6_xId_BZX|Y_eW7(olu5BhTROuqmUV_l9q-)3m?*aa zzxdJb_4-5JhOE8mm>k3UXHmIph+h+=f;yV|6k}btpIl0i*%zJ7+Q|PNGAiokycB$n zb864_>|Ie6^&Tc+{*h`h$vYl6gVAnr`^~6fSaM>vU*30ZaAOGi#YS)aAA#8^ke4X0`fJlAC57_b+R=Xdr_T7!ubxJn)fRJ%!IZ4tza`XaJ!KuTlLqS$>+q24Gn0Xb&kfmaS zYpu*TtOW>ObT_2`zBs#@>D%5C(eSbP4A~2(ossWQ=+N*|>uc{q->);&k$GAwLjSW^ zw2vX(5{G!|)Ko+lPW_auwHH^Q!sx}Aqd09o+1Ut zn;3O{D-Xb9iuC>U@`Lm;!Bqc-sfR0n1Qu9SG zv-Fc0bBdOjnVs+Y6?8qHZ0;at6Rlew*gBARyuJ8o@2&hc=7Uc$>HVDreyl5M|Jp0H zU_{MTbd(E*-oT`+-o5(NlbmETSM1#KLHDIyo|f0B-*?_OTYBm?xT9G|e+X*x&z<#d zwDWqWvp9+2R`zjZ_QmI1)|QyylcOGixge_CrNFtFSRW&ES)xWAl-TEF2u@l`PD!br zZmDn{Q)6M%+F+%qkjROZNRQrBN1PS0%scGiJ}@_#0~Ut8*>R0FDbxXq@uzK=cs?<~ z{h4ZuCsujCZ(;ntHhZxg8^g)~}UEW%|#OuEx*o_l&3IC0pb*bxlzR(yrHhb$a2a zQ}jlw%j$i!CW?Ui0$!G?hH7O0>V1VNF&5G#Q&m=1zk-an1^3o4^vQm^VAgh5*Cg3t zDAiX}n}5Lg(O|4hHeb=}x`I+vl_0t=#Hbqck?>@T#JtWb-Nw=l;~hG}kB<>JUp_aF znre>v`T|LOk3rK=aTjw=ct_7#J7?^(vM#R(?-^Bk*-r2DN6oY-;RlnaZZ$m>CZ@VP zw9QPDr#>}33no!M={$Q;JZ+!f9wa?B@vG@Mf4p*^@2TA(58c!G+ulK#$M{oGj@@{u z`HrtpMFs-g!;0QGWqwXMMZ|XwDny2n_S?j4yCv(sV|eakn{Vf|n~7g5MwxE)_Gv^s z*CjILdSDnsQ^^%S#{j2%<@zpPH-CW>#b)rU))sZ1!8Wx@E1pT}lb-HXdgF1Enr%|e zq3raM1*Hm?-f8MALNCv+8&s5GvL^eVU(vRw;(Dk^&edEx??o|=(<5HBrQ@FKNWP1q zdqubWtS2T+jY7yI$Jsq^cf*DtbU3-uFsf@nGg}eAN?vuaGn0xhyNlqjqCW{~Hy{Z0YJ`ugA zwrf?hC9bbUf3D1}_unqDASUdp4&}w4YlV8&Yg& z@HX5terqUU;<>Qy@zRR+GsFDz17kOSHf^L+sx358O<=WV+^9_nSgNyTSSSuYP`1A9 zphfEy!L;5x!Qd~6h+5jUe%M~vbD+YLwV+FI%FGjo&`Cgk!$_k|@t}H~dsJo!H^{n> z-(ZNid&`nTeu&6rTv)wyJwm}P@^NW2K~c#{_ZbsIxmLk4iZy&Tj~{~|NdFR4wBqpP@zhNx3g(HK~>t&>EVPu zc@Hd2ShKQD5`LCRQ=wJV*F0g}B%jGjrESr-G4bWl&8_^mUM4+4ZDT-WOL9W?Y5q(} zgf^dB36lm`LOV`mUHeW$S>0w_xK1Z%oM-E{TbZDGnWjbQaYqYf9l2KPJNfw{dmWrN z`r|cQI>)8&o+4T+_SBx0HjfW)+1IJs{U|8)@k`zEe-=HnI-slXdoiK2;CTGPAYSpa=$KT9-FYZgLT)NWtB4u-nU&p8-SEyx*J?a%K z7G71QecL0#h>gN*KJQ$wc=>jJyTTL)KJRDFRVNQf(%b9nt|V|SNE$hL?Z)bn?Hjd(a^M|K1EV?c@Yl!r?eI{~I854jd5r=?~z$F5Lb3@83*huuo! zG@Wc%M8MP(QPJ+>SIuv8-@2vka_iQAzu2lNGjKw`{zQw~d@UbI9Z?33Mq?3$P(c4e zM}Y~4en`;ob^`?_@+>wa1JCauKe%r1ks)7y-~~#NAqzrn1A+|sF2?mk=6z&I{OgA$ zUgXEX^@ET!a`d0B0TpD=Zx91Uyh33IzlH&54SxJ6HfYxrBw}wMlR%NZ_TFG@jzUj) z{QxPu3I5anG6kjWI@kuuJe2se>xap7R8si$!+s{}5d2U42Q4T>U`j74al>{Fs?d`^ zT-m%aK;#L z2cXa09{*BCTtr#00m3|Eb8kRZvE>I#lN0!-NG^l@yq}!@RcdR z1ef~@hD`x+m=1_*2AILeL;na8NW$>IA~Q&ooqc0*Xa-2YS(|QvmN_5`zuj{Kn#}<@ zxGXZ*X$262FOXr3;D9B73u;;bWN=c{KXgK@13DOO0Wef0{G!?wQqV{tpG)s8`xn5JcciuU32sxi#ZGf zRJ4YieYUz$rC0-!@XwAn;KCXZg%kMP07Dx<1}=`c0X;T=7`!d@8c>7uw$L)@=G}lO zTS&&+bOXGbV0hq#AAkkEa0PCIM0Nlf>>kK&2Ux-VdqEC6D8^PhKngYw!t4QKxbfJH zS>YIr49vEN!eXAfVH~Dlq+oIUKaL0-pe(8Xxam`M0F>ckC;tKX;D`gj4s!uvj(`!; zObr|y)rL`lkPH)yb_95kB3A!W!>e#2(7_H$JBAZLhO~~1bR%U#K_b28u|PEwC~W)d zPT0M_ouy8IB+{$+zX;nI;71}W`-=?AkVrs;Gr)w@QT~@2a0Wz>S}KvirAj3Jo53_) zAb+p*tk~lnBB+02Yuc={7EC=MH7nJ^6;|P5wu? z1_@yd$sT|MtQmCl04(5dTCWGE2EVsLR_LCP)&9tT7!*+76WVm|$8H#u@!Le#)5Zli zJ)r>&C%}8&P;3vp0AcvM`5SOGf142WvVk_@827b8VmjE5B|SKp{Wq*h1q-q(g1keX!FP$|=qRWE3#d56bDle;LB- zgTe%-efS>@2B_%|kX&2a`a{-3yx@{Qzzo*;157YNaM2$+MehW!IUeu@;zpQ?fQ0nY zH!h|S02|!$FL*1BjDMXjCOFljo9^Hj0PVH&H!mQY29+C9TooA|JiM0u{x3rgGKD~S zHVXhK;R{fqxt_xxVR-;_^3P5F#ZbJ23ZAyb4fEn9pb4+C{#We>rekh+Xq3# zY~t6yn5iJB)^%L|ivg~XiNQhR>w}*F9enFxXisq?p@8>Pkr}{>U_b^*2wJ&6h$;lC zBtArc5h4US<-2$Pi_pRS5P%P9jP@@@eIJDqbPR>|E(*(Esyh@AMcU-~i&(>;Re)AQ z32Koz`2Vm}e_qsJd>CZr_Ag2aXhq$17ICO~U!MJefbVAOqw*%6o z_+Kqa1i*$wBJmgLOP~;dicoF77KTMYLKXABUA++iD^m17$R`qVOdknwBJo=N6+o0Y z60`qb}95H|xOc8X70VH7#U~LQ_3;P8Aih)9$ zYe4~FttjN+-9%^(RA@5fD9}M?2iTHVNM`n98}IxzN3K5-%+SQ&$#OqI)Kmt z3K`fAA=n|f6$hxoHbB96Kn{sR1QpZ~LA{?`1UYPshaB#LWAT6rOa!D!0F+>vphE(b z`=^qiV*)?~4kiGcum|8(0%Xdgi3;jzqLP6urO*a*NCYThvtV>0AOb4`2NMBlSQm(w z1kI!uR8N9l0=!^S5+H%3|8F^EB*@_$Z!V+J(H<@cMu{S4@u z_Wble03Wo-1UTVWmp6>q6$T+VkO{5D00t%q%R(gv)iMEO5aQ9nyID{LprHPLc<*bT ziuEtwpLG)~X$2H49tg{ZHiX!9Ljbz5Vd8@y3!sU+WUBOqi9`^N3G#fl;MmVgP0B|sE&0kkFp$(W#FGA7kc z4nqncfd_~QW`LOYuPG*^l@v@6EfwM36Qx6P=hgmzD3Y^&jK+9s_F?0p!ECwDSh26&j%kN{+ zfUG6ZkgKeJ5HU!_h6P+th6%O~mXrW`(0?Jp0t581pj&w3-H0u-&_L)xJu=9O9n<(Vqx7R30?-R4q@$$R;d=EMa!VoF>1PD{L7$` z<42)5zG4xBL)U0){tu$L8JWKv3e;y63(Q%CLW2$!6ASR5TUr2&qlLByM#W7L z|Fhv0K%NTd)#*tOfSL3F6PR5AS+s)v6@WU@eGUK==Y|fbU?o)N$w8+|KnH1`?=QJt U2?)Zv!FyEz7m9%q0F|u&1FGFYl>h($ delta 13508 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 MgqUVV08}sj59>2EB>(^b diff --git a/code/reindexer/src/org/aspen_discovery/format_classification/MarcRecordFormatClassifier.java b/code/reindexer/src/org/aspen_discovery/format_classification/MarcRecordFormatClassifier.java index c4f95a2321..06d648b614 100644 --- a/code/reindexer/src/org/aspen_discovery/format_classification/MarcRecordFormatClassifier.java +++ b/code/reindexer/src/org/aspen_discovery/format_classification/MarcRecordFormatClassifier.java @@ -734,13 +734,13 @@ public void getFormatFromLeader(Set result, String leader, ControlField formatCode = fixedField008.getData().toUpperCase().charAt(26); switch (formatCode) { case 'A': - result.add("Numeric Data"); + result.add("NumericData"); break; case 'B': - result.add("Computer Program"); + result.add("ComputerProgram"); break; case 'G': - result.add("Video Game"); + result.add("VideoGame"); break; default: result.add("Electronic"); @@ -757,7 +757,7 @@ public void getFormatFromLeader(Set result, String leader, ControlField formatCode = fixedField008.getData().toUpperCase().charAt(33); switch (formatCode) { case 'A': - result.add("Art Original"); + result.add("ArtOriginal"); break; case 'B': result.add("Kit"); @@ -781,16 +781,16 @@ public void getFormatFromLeader(Set result, String leader, ControlField result.add("Graphic"); break; case 'L': - result.add("Technical Drawing"); + result.add("TechnicalDrawing"); break; case 'N': result.add("Chart"); break; case 'O': - result.add("Flash card"); + result.add("Flashcard"); break; case 'P': - result.add("Microscope Slide"); + result.add("MicroscopeSlide"); break; case 'Q': result.add("Model"); diff --git a/sites/default/translation_maps/format_boost_map.properties b/sites/default/translation_maps/format_boost_map.properties index 5b1c3323be..669867a9b8 100644 --- a/sites/default/translation_maps/format_boost_map.properties +++ b/sites/default/translation_maps/format_boost_map.properties @@ -4,7 +4,9 @@ 4K/Blu-ray = 12 Adobe_EPUB_eBook = 9 Adobe_PDF_eBook = 3 +ArtOriginal = 1 Atlas = 1 +Bingepass = 1 Blu-ray = 12 Blu-ray/DVD = 12 BoardBook = 3 @@ -16,12 +18,14 @@ BookClubKit = 1 BookClubKitLarge = 1 Braille = 1 CDROM = 1 +CD+DVD = 3 +CD+Book = 3 Chart = 1 ChipCartridge = 1 Collage = 1 CompactDisc = 3 -CD+DVD = 3 -CD+Book = 3 +ComputerProgram = 1 +Diorama = 1 DVD = 12 DiscCartridge = 1 Disney_Online_Book = 3 @@ -30,9 +34,11 @@ Electronic = 1 Filmstrip = 1 FlashCard = 1 FloppyDisk = 1 +Game = 1 GameCube = 3 Globe = 1 GoReader = 1 +Graphic = 1 GraphicNovel = 9 Journal = 3 Kindle_Book = 9 @@ -43,8 +49,10 @@ LibraryOfThings = 3 Manuscript = 1 Map = 1 Microfilm = 1 +MicroscopeSlide = 1 Microsoft_eBook = 9 Mobipocket_eBook = 1 +Model = 1 MotionPicture = 1 MP3Disc = 3 MusicCassette = 1 @@ -55,6 +63,7 @@ NOOK_Periodical = 3 Newspaper = 3 NintendoDS = 3 NintendoSwitch = 3 +NumericData = 1 Open_EPUB_eBook = 9 Open_PDF_eBook = 3 OverDrive_Listen = 9 @@ -69,6 +78,7 @@ Phonograph = 1 Photo = 1 Photonegative = 1 PhysicalObject = 1 +Picture = 1 PlayStation = 3 PlayStation2 = 3 PlayStation3 = 3 @@ -81,6 +91,7 @@ PlayawayLaunchpad = 3 PlayawayView = 3 Pop-UpBook = 3 Print = 1 +Realia = 1 SeedPacket = 1 SensorImage = 1 Serial = 3 @@ -94,7 +105,9 @@ TapeCartridge = 1 TapeCassette = 1 TapeRecording = 1 TapeReel = 1 +TechnicalDrawing = 1 Thesis = 1 +Toy = 1 Transparency = 1 Unknown = 1 VerticalFile = 1 @@ -102,6 +115,7 @@ Video = 1 VideoCartridge = 1 VideoCassette = 3 VideoDisc = 12 +VideoGame = 1 VideoReel = 1 VoxBooks = 3 Web_Content = 9 diff --git a/sites/default/translation_maps/format_category_map.properties b/sites/default/translation_maps/format_category_map.properties index 3e21e462cc..1a732993bf 100644 --- a/sites/default/translation_maps/format_category_map.properties +++ b/sites/default/translation_maps/format_category_map.properties @@ -1,51 +1,58 @@ # DATA FROM INDEXER = Label -3DS = -4KBlu-ray = Movies +3DS = Other +4KBlu-ray = Movies 4K/Blu-ray = Movies Adobe_EPUB_eBook = eBook Adobe_PDF_eBook = eBook -Atlas = +ArtOriginal = Other +Atlas = Books Bingepass = Other Blu-ray = Movies Blu-ray/DVD = Movies BoardBook = Books Book = Books -Book+DVD = Books Book+CD = Books Book+CD-ROM = Books +Book+DVD = Books BookClubKit = Books BookClubKitLarge = Books Braille = Books -CDROM = -Chart = -ChipCartridge = -Collage = -CompactDisc = Audio Books +CDROM = Other CD+DVD = Music -CD+Book = Audio Books +CD+Book = Music +Chart = Other +ChipCartridge = Other +Collage = Other +CompactDisc = Audio Books +ComputerProgram = Other +Diorama = Other DVD = Movies -DiscCartridge = +DiscCartridge = Other Disney_Online_Book = eBook -Drawing = -Electronic = +Drawing = Other +Electronic = Other Filmstrip = Movies -FlashCard = -FloppyDisk = -GameCube = -Globe = +FlashCard = Other +FloppyDisk = Other +Game = Other +GameCube = Other +Globe = Other GoReader = Audio Books +Graphic = Other GraphicNovel = Books Journal = Books Kindle_Book = eBook -Kinect = -Kit = +Kinect = Other +Kit = Other LargePrint = Books -LibraryOfThings = +LibraryOfThings = Other Manuscript = Books -Map = -Microfilm = +Map = Other +Microfilm = Other +MicroscopeSlide = Other Microsoft_eBook = eBook Mobipocket_eBook = eBook +Model = Other MotionPicture = Movies MP3Disc = Audio Books MusicCassette = Music @@ -54,8 +61,9 @@ MusicRecording = Music MusicalScore = Books NOOK_Periodical = eBook Newspaper = Books -NintendoDS = -NintendoSwitch = +NintendoDS = Other +NintendoSwitch = Other +NumericData = Other Open_EPUB_eBook = eBook Open_PDF_eBook = eBook OverDrive_Listen = Audio Books @@ -64,55 +72,60 @@ OverDrive_Music = Music OverDrive_Read = eBook OverDrive_Video = Movies OverDrive_WMA_Audiobook = Audio Books -Painting = +Painting = Other Palm = eBook Phonograph = Audio Books -Photo = -Photonegative = -PhysicalObject = -PlayStation = -PlayStation2 = -PlayStation3 = -PlayStation4 = -PlayStation5 = -PlayStationVita = +Photo = Other +Photonegative = Other +PhysicalObject = Other +Picture = Other +PlayStation = Other +PlayStation2 = Other +PlayStation3 = Other +PlayStation4 = Other +PlayStation5 = Other +PlayStationVita = Other Playaway = Audio Books PlayawayBookpack = Books -PlayawayLaunchpad = -PlayawayView = +PlayawayLaunchpad = Other +PlayawayView = Other Pop-UpBook = Books -Print = -SeedPacket = -SensorImage = +Print = Other +Realia = Other +SeedPacket = Other +SensorImage = Other Serial = Books -Slide = -Software = +Slide = Other +Software = Other SoundCassette = Audio Books SoundDisc = Audio Books SoundRecording = Audio Books Streaming_Video = Movies -TapeCartridge = -TapeCassette = +TapeCartridge = Other +TapeCassette = Other TapeRecording = Audio Books -TapeReel = -Thesis = -Transparency = -Unknown = -VerticalFile = +TapeReel = Other +TechnicalDrawing = Other +Thesis = Books +Toy = Other +Transparency = Other +Unknown = Other +VerticalFile = Other Video = Movies VideoCartridge = Movies VideoCassette = Movies VideoDisc = Movies +VideoGame = Other VideoReel = Movies VoxBooks = Audio Books -Web_Content = -Wii = -WiiU = -WindowsGame = -Wonderbook = -Xbox360 = -XboxOne = -XboxSeriesX = +Web_Content = Other +Wii = Other +WiiU = Other +WindowsGame = Other +Wonderbook = Other +Xbox360 = Other +XboxOne = Other +XboxSeriesX = Other eAudiobook = Audio Books eBook = eBook eComic = eBook @@ -120,18 +133,18 @@ eMagazine = eBook eMusic = Music eVideo = Movies epub = eBook -externalLink = +externalLink = Other externalMP3 = Audio Books external_eaudio = Audio Books external_ebook = eBook external_emusic = Music external_evideo = Movies -external_web = -gif = -gifs = +external_web = Other +gif = Other +gifs = Other interactiveBook = eBook itunes = Audio Books -jpg = +jpg = Other kindle = eBook mobi = eBook mp3 = Audio Books diff --git a/sites/default/translation_maps/format_map.properties b/sites/default/translation_maps/format_map.properties index 1dbeb6c641..d9d4c0cd65 100644 --- a/sites/default/translation_maps/format_map.properties +++ b/sites/default/translation_maps/format_map.properties @@ -4,7 +4,9 @@ 4K/Blu-ray = 4K / Blu-ray Combo Adobe_EPUB_eBook = EPUB eBook Adobe_PDF_eBook = PDF eBook +ArtOriginal = Original Art Atlas = Atlas +Bingepass = Bingepass Blu-ray = Blu-ray Blu-ray/DVD = Blu-ray / DVD Combo BoardBook = Board Book @@ -18,10 +20,12 @@ Braille = Braille CDROM = Software CD+Book = CD + Book CD+DVD = CD + DVD Combo -Chart = Photo +Chart = Chart ChipCartridge = Software Collage = Photo CompactDisc = CD +ComputerProgram = ComputerProgram +Diorama = Diorama DVD = DVD DiscCartridge = Software Disney_Online_Book = Online Book @@ -30,8 +34,11 @@ Electronic = Electronic Filmstrip = Video FlashCard = Photo FloppyDisk = Software +Game = Game +GameCube = GameCube Globe = Globe GoReader = GoReader +Graphic = Graphic GraphicNovel = Graphic Novel Journal = Journal Kindle_Book = Kindle eBook @@ -42,8 +49,10 @@ LibraryOfThings = Library Of Things Manuscript = Manuscript Map = Map Microfilm = Microfilm +MicroscopeSlide = Microscope Slide Microsoft_eBook = eBook Mobipocket_eBook = Mobipocket eBook +Model = Model MotionPicture = Video MP3Disc = Audiobook MP3-CD MusicCassette = Music Cassette @@ -54,6 +63,7 @@ NOOK_Periodical = Nook Periodicals Newspaper = Newspaper NintendoDS = Nintendo DS NintendoSwitch = Nintendo Switch +NumericData = Numeric Data Open_EPUB_eBook = EPUB eBook Open_PDF_eBook = PDF eBook OverDrive_Listen = OverDrive Listen @@ -68,6 +78,7 @@ Phonograph = Phonograph Photo = Photo Photonegative = Photo PhysicalObject = Physical Object +Picture = Picture PlayStation = PlayStation PlayStation2 = PlayStation 2 PlayStation3 = PlayStation 3 @@ -80,6 +91,7 @@ PlayawayLaunchpad = Playaway Launchpad PlayawayView = Playaway View Pop-UpBook = Pop-Up Book Print = Print +Realia = Realia SeedPacket = Seed Packet SensorImage = Sensor Image Serial = Serial @@ -93,7 +105,9 @@ TapeCartridge = Software TapeCassette = Software TapeRecording = Tape Recording TapeReel = Software +TechnicalDrawing = Technical Drawing Thesis = Thesis +Toy = Toy Transparency = Slide Unknown = Unknown VerticalFile = Vertical File @@ -101,6 +115,7 @@ Video = Video VideoCartridge = Video VideoCassette = VHS VideoDisc = DVD +VideoGame = Video Game VideoReel = Video VoxBooks = VOX Books Web_Content = Web Content From 934d16086f0258ffc7a30ae5532d9acfa232c288 Mon Sep 17 00:00:00 2001 From: Mark Noble Date: Mon, 13 May 2024 16:45:44 -0600 Subject: [PATCH 3/6] Fix loading format from MatType for Sierra --- code/reindexer/reindexer.jar | Bin 897362 -> 897335 bytes .../IIIRecordFormatClassifier.java | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/code/reindexer/reindexer.jar b/code/reindexer/reindexer.jar index 2581b64922d4c86429e5716924e2022d08d47946..39b7fcadce0680f3ccea5079cb492b436a320765 100644 GIT binary patch delta 5130 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 MBIdgX5Ud#g3loM}$N&HU delta 5326 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 getUntranslatedFormatsFromBib(org.marc4j.marc.Recor if (matTypeSubfield != null) { String formatValue = matTypeSubfield.getData().trim(); if (indexingProfile.hasTranslation("format", formatValue)) { - formats.add(indexingProfile.translateValue("format", formatValue)); + formats.add(formatValue); } } From b79fae5b8e5082d2e6a465bb081ee30aeab0a588 Mon Sep 17 00:00:00 2001 From: Kodi Date: Mon, 13 May 2024 16:02:13 -0700 Subject: [PATCH 4/6] Small Fixes Hide palace project collections for now Fix issue with Assabet event types (online vs in person) being flipped --- .../events/AssabetIndexer.java | 2 +- code/web/services/PalaceProject/Collections.php | 12 ++++++++++++ .../sys/PalaceProject/PalaceProjectCollection.php | 4 ---- code/web/sys/PalaceProject/PalaceProjectSetting.php | 2 +- 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/code/events_indexer/src/com/turning_leaf_technologies/events/AssabetIndexer.java b/code/events_indexer/src/com/turning_leaf_technologies/events/AssabetIndexer.java index 54c9f41755..f8638536aa 100644 --- a/code/events_indexer/src/com/turning_leaf_technologies/events/AssabetIndexer.java +++ b/code/events_indexer/src/com/turning_leaf_technologies/events/AssabetIndexer.java @@ -197,7 +197,7 @@ void indexEvents() { //get event type with location_virtual value String eventType = getStringForKey(locationsForCurEvent, "location_virtual"); - if (eventType != null && eventType.equals("1")){ + if (eventType != null && eventType.equals("0")){ eventType = "In Person"; }else { eventType = "Online"; diff --git a/code/web/services/PalaceProject/Collections.php b/code/web/services/PalaceProject/Collections.php index 4f35e201b6..5dab954c1e 100644 --- a/code/web/services/PalaceProject/Collections.php +++ b/code/web/services/PalaceProject/Collections.php @@ -59,6 +59,18 @@ function canAddNew() { return true; } + function canBatchEdit() { + return false; + } + + function canEdit(DataObject $object) { + return false; + } + + function canEditList() { + return false; + } + function canDelete() { return true; } diff --git a/code/web/sys/PalaceProject/PalaceProjectCollection.php b/code/web/sys/PalaceProject/PalaceProjectCollection.php index c4944f6850..0cdde70fbe 100644 --- a/code/web/sys/PalaceProject/PalaceProjectCollection.php +++ b/code/web/sys/PalaceProject/PalaceProjectCollection.php @@ -83,8 +83,4 @@ public static function getObjectStructure($context = ''): array { ]; return $structure; } - - public function getEditLink($context): string { - return '/PalaceProject/Collections?objectAction=edit&id=' . $this->id; - } } \ No newline at end of file diff --git a/code/web/sys/PalaceProject/PalaceProjectSetting.php b/code/web/sys/PalaceProject/PalaceProjectSetting.php index 3e4d673c10..f95d4fa84f 100644 --- a/code/web/sys/PalaceProject/PalaceProjectSetting.php +++ b/code/web/sys/PalaceProject/PalaceProjectSetting.php @@ -108,7 +108,7 @@ public static function getObjectStructure($context = ''): array { 'sortable' => false, 'storeDb' => true, 'allowEdit' => true, - 'canEdit' => true, + 'canEdit' => false, 'canAddNew' => false, 'canDelete' => false, 'additionalOneToManyActions' => [], From 6a188629995dfb891d32f5ad9e83e19377333c9b Mon Sep 17 00:00:00 2001 From: Mark Noble Date: Mon, 13 May 2024 17:08:45 -0600 Subject: [PATCH 5/6] Don't give a link to Palace Project Collections for editing --- code/web/sys/Account/User.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/web/sys/Account/User.php b/code/web/sys/Account/User.php index 89d41f9721..4c34068c7d 100644 --- a/code/web/sys/Account/User.php +++ b/code/web/sys/Account/User.php @@ -3683,13 +3683,13 @@ public function getAdminActions() { $sections['palace_project'] = new AdminSection('Palace Project'); $palaceProjectSettingsAction = new AdminAction('Settings', 'Define connection information between Palace Project and Aspen Discovery.', '/PalaceProject/Settings'); $palaceProjectScopesAction = new AdminAction('Scopes', 'Define which records are loaded for each library and location.', '/PalaceProject/Scopes'); - $palaceProjectCollectionsAction = new AdminAction('Collections', 'Defines the collections within a Palace Project Account.', '/PalaceProject/Collections'); + //$palaceProjectCollectionsAction = new AdminAction('Collections', 'Defines the collections within a Palace Project Account.', '/PalaceProject/Collections'); if ($sections['palace_project']->addAction($palaceProjectSettingsAction, 'Administer Palace Project')) { $palaceProjectSettingsAction->addSubAction($palaceProjectScopesAction, 'Administer Palace Project'); - $palaceProjectSettingsAction->addSubAction($palaceProjectCollectionsAction, 'Administer Palace Project'); + //$palaceProjectSettingsAction->addSubAction($palaceProjectCollectionsAction, 'Administer Palace Project'); } else { $sections['palace_project']->addAction($palaceProjectScopesAction, 'Administer Palace Project'); - $sections['palace_project']->addAction($palaceProjectCollectionsAction, 'Administer Palace Project'); + //$sections['palace_project']->addAction($palaceProjectCollectionsAction, 'Administer Palace Project'); } $sections['palace_project']->addAction(new AdminAction('Indexing Log', 'View the indexing log for Palace Project.', '/PalaceProject/IndexingLog'), [ 'View System Reports', From fc4cdad010bfc04b2cf9690e79d83e417b61f12e Mon Sep 17 00:00:00 2001 From: Mark Noble Date: Mon, 13 May 2024 17:10:02 -0600 Subject: [PATCH 6/6] Build events indexer --- code/events_indexer/events_indexer.jar | Bin 612383 -> 612391 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/code/events_indexer/events_indexer.jar b/code/events_indexer/events_indexer.jar index b6eeb02a5f0b7bf9ce9725f065438d756559888e..5577843cc780689b33161c16c4db16828b6d020a 100644 GIT binary patch delta 11715 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 delta 11930 zcmZu%1z1(jw&$EfZMwU=LAtwJT1t>c=@1Y&hyv0eu>t7@0cn&HM5UAtMd|LA5ab=; zUf=z{`}n@Y%=)dEH8a0idw=IlNi}m$H8ZxZ1`L@92^}3BDK@;c2Acu~L$pa8Fxs0| z6DD@kzJSRlX~6Noy%Punm_P%N*AXIPK(C=BZd7Tw8DM2FJ}$jF@X9}F$&Q}>DI^S^ zSb+{1IS=QpEII)?L=6cdgw@MPp84f@IzVQ2f_+lnfWgD3W8%$2(61zN0o>MLd5DdhJS`{HzOHZSVG?l|Dzt|7s*7pmyi0W9;LJ z!e+u6xN1ckvvY(~ox0HTl!jg~OVj zKg^#udGfUu`_1%bYiK|5($1-WH^O9ozjta~VFs)cbXq!l@%P(GTnJwA0CgD`m|( z{o=UOiLm{T?%5ezM5^%=Ga1itrJNo{Oa~~} zw$us3sa&?>!u9!`&O+uLl$xELjmHK=DLxv#t<*XkP2Tu;Ml%9O?kDs$7PW2?D*C|Q zqAzOC;aXSV+egEf%S0Z}V&vQKw76IMQB943i-P2^CE*Unvv`X2DyLXwK3Py?Tv5E` z=&aF~mB7*GGmm;vbDXO@yprXU-q}d2WTt8#JekLg{r49Gtt3q=URmD4adMI=eAD(J z?hsQdI8wu1%?HCo<@V){bxHUyTrKTQ6RjWX>C_6xr#W+pXU6e4 ziNi?-J$TLpW9>}@lUVrAR-937$GD=EhaD@X@FKs*PUUBW-MjPN@1bZjMh25lQw`qh z#%xHC&t{V`&p_VWF4K)G+Bn`4dfZG>-{H7VOJZL7*j)9~+F#P^IdUWgy9yWG3%e?K za#lvL@Vg>OQijlzR&WbKwU$ODBgzNz6Aj?5BWjv9I8~Ctp|~8IojDst8n1s$g+`Nv ziAyN-+Dda5GJ7IpS7-Ij>t)odlQ`8oQpKK(dagaZVj8LYke_=b*oECJHPYIb-&J@< zRQgg-UK9Xk8~Ovk{Z~JQ~a^@JZG*$rMZgJg!WnQbB|oJEh}jy$H)u9rqXC(1>-IY_m%3b z4RZp@i6tIBmEw@~!cs~SFiIlJq|WmcZ>Vw9NR0GjJhPb5Sw#lx2g&|?2995&q-lRF zX1^IU<%^ljerx3-^Zhlm@PhA~!6eld9QRr0VkoO7Am6m5$VK&aOh3_J%r`1>Z^Cqv z9xdK$gLBK4G%!|U?$m%>l>2SPowruY2jS;a{$G7MnSCCHa)P`G5A53w4=Ic$gbX(} z3hBKZ#L)z`DVoh?)QUYu=uk1%sKf^gy##`ts_D4Jb9h1qcRl45g!%cj20e(5;YrdQ zX)ii>YuRLNF1&%!;T>hKp5~mk_0CFa-w!y-^~qtAE+0nhG)Hl&+|lm;!HE9ccVK*H zdemT2*Erg1duE7a7faX!vo^0@!rcaJ3v8O&R z-MzL_S0xMOtc-=}NF%Z00`ogm#PH0?w{)XsyF2F;%@c*Z_CHMrw(ogUTi^~pOT_l5 zVRo~-Tu^&$yM;{>lf4c5VSuq_-#lJu zhUXDZXy#2Bgfh16%VG0@P$rQ!f=cjPCPoHL8 z?(zmK4wlFRI++M7sxC z(KNYeHSwwyhNBFw#?)h@YpKlwX4^d5PE615NIe>6Bxunn*mpOZrt5Li6SpyY77^NQ zpo096`mn6JaI+T@8hCfRKMm(M+~hIZY?OktdvbM|(2N}`wV<(hy}uHnqZd2sUSgI~ zio$cNk*2hj%bdH<)pP`6uhQC1*IP{b8)i7Vog+>Y19|wOC!cmyC%4C9I^k;76VB#|Gfp$J zRFVUw6))#jXD!d_^$D$_63*u}CKFj_&a_QEDNdq9WwUD+_=fWP*(mE>oHsivFVD#N z>3S;YS8LbUU%YtW@Ms0pwE3MkqXx7{;gnJ;gu>q9YcGvHgi^x8kl*B}%UVje$q5vm zXhjEWy!VoP;HAhvQQH^ZSr0!iwJeZ%;oz_F$2{7-3H|4^!GZE=&Sq1x;l@D0PMlNK?3nXP_D zI^w!xh0=a5`2bX^)rOteV(#L0`iTj8tz}QG!}cq%&yMH^p5kEn{*qEVwTezBrlKFi z;;=JVK)QHDHzF2QsYL(Ck#iD*;OOO{gJ4|7CCRFXw7uJ4CO<*dC-Rr?Tssd_hf-x3 z{hn8ZcBBp3nY$jS`gP31Bb+@@;yoW3Pw^Ym7j({85xa+lY{kMz;uF#5!uAr9_vn)a z&vYFv;vg@AC1)1sXi-n2l~zs)w+i`$ou&iRH{GM-=NRYbT8_^movU8)mW##4*S^&g z=ISyEE0}J~NlYnMeO2Mdd4XwcCTR$@ljG#KR@_@6Xz5;Z(oE@sd$Y`Z2ig^BH*EHl zF&8SQ35XBhg~x}-FOugUZ+aHV2TP+$+WxG{abOg$?|Ey(jZ^b;j!u&|=G$GefxEQS z>H<;E#S&3gRHi!QY;BO^vUL*hfc}F+$;@!!Hzbd>WG3aM%&KEwzNjbdQb z`X&ApO*d22?H7*1gp=7mmlxQ^_8M3hp$rQJv>jiEYvB zd?a~A-Kl{zwm9+3+Rreo$I%Zje?rNRyhdNfu+kmy4G`~4+QIjPT!}Zk0MKZ~+^OKx zc8uis4~p3Ct-N)M3E!DHEs`91j?Fre#}NfDBLyTCVip~zO6z=!8N=(u0=uSW+6Z-+ z(}kQo)P*;GSlJLrEE0V_BTu)@F3@tBr;*7CD{wE*^7LO?<+aVX(uk)Hr^$XMwTAp< zaMjvTaE4;SSOs1!*50vzdB)&~hqJyo?`A(r<`?-1JP=+B+qA1+eVRfuHjRrd87Ov& z>KWbOTi=sak@Mzxm2H~WtE%wPufi^oOnP|LIf)v3-uv>eE@CR^-$;{~yR!1V&v6Us zNd1(bNQOGg_F)ur>Cm_R`x12s6)p8~Qicui+rsyYHJll)jpg7GU5HUIH1a(YU8P#~ z_rZ<{=PCZgMIhxPDg5}y=V!0)txGh#ozDl&Ua4;@c`RHGg zlP4F(V;$de`DD5M-L$Kd&c~LPiwmC@lzCNB_&Z}s(J9kz`yywM7wiuYdSmjwUUG$} zzUw$XRNw=R;HtQC6Oe!NHLH z?|AX7_?ebVpjI%u7jfw)hB=b5r>DP-ne4}L>&2S%Wl65EOyc1K^?9D6q2j877hkNR z@591<5aq*~Bo$46KQ{)8L1cB3JNOx#8F&oG!2abGW=?+<`^oLVjhRHe>_VNC7U^j0 z_t}YRHr(?KT6uMA27n>!*S{chaMe*y=<5&|E%nifT5=I7cTvXdqA@o!u&{4n!DZya zIC?hGUM6F;p&?TIlKOi}muAZ=zvyCUmlzH;+IC2@K?F7OXB>O_1#Q zb{Wq6=`6`r#H>OR&XStk0~mLeFimXpNifRAefW&q0UEmSyL0Y83ApI5USh5{F%dtr zFMs@Fm59xVM!)P!LwBxa^p4G5gN{Grk!KiEfLkksESme!lDm?G$Y=u7P6_J1EbtkxI?NwOR*C4Qk&Pus0pkMouO(WI_ zg02ZqHcdFr>}z;98Em9vWHXOJy|R?S6>1>7rb+d43O{mcghOFmu;2h1!g$iR;I#KLpG1w|?@iT`MfZaWFmFp9Bu`Mm)oY;LqGY zVyt=hrG`Ipb>fg+ccK-0H6+1XhZ-Z!;pIXIkDMIir5w5gI1BV#;q+u*dTukhy-LHO z&Nb;GF!8^ap~{jq=4o4XiW8>BWStc))A=J^hXvg~i#0)iNdH&Lqh4K;u(UgS)7%O2 ziVG%>^9Oo=_j`S&p_&Wfv?rglRJF-5O%c~*OLOt#Ws3nS<4H#qKJBrxj_ z;R5u!CCQ*a;>Dt(Xcm=4AVhuug;-$x`!d#E@q!Dqnd{gIfQAT6U$*Dc@e}p^nOT0vP)RhJwWfGxad+Ge8lrHt;~1)Mbsu8q_oA`i z9eZkrcLuz@@3=b$Mp&7?=R@Am<>VSKglEi)G4y`kaXg}X^I-zRw{`T5k%Lz%(MvbM za-kQU&fDGH$(r_s+F_xcGTA%DBme0Fu+A{ zTdT)fxEk(t0;halNw%nrs3;VW7bqNICPhmx-E|{c3ADr+=|zbaD21Iwn=h`ARJ?-4 zLfl_VyA8W+V0sQ5iw&T?M4~*;?__Vr*d9+LTZEX6qm=3pR~?KiZ4l^N#AL!lxF2`i z5p(VHF<&U7;!UX^D{_9-@#{IZH7~qcBz*oV-QEBv%CO76H1=~+W9g$S124_6K*xol zyE`G;665%88XHAAp)bbm>Y46a6jj|J<}b|9d6!z$URp)my_m~a{HxD;YsJLRj)9@r znKi zjg!4-XM`6f6Pjeco0I!aL-F!`IG6b}oAc4z+__VXpr2pYM|`wm&>pVl>Ax17 z@71Hi{yv;EUuo0}A4iw}ZMP!HC6RqpRg3prgxS0nd7icivFCJIj_Xx%0DXkou~+DL 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