From a9c834e2d03c0431804fda5b9584e939ae9f9b14 Mon Sep 17 00:00:00 2001 From: sullis Date: Thu, 22 Feb 2024 14:43:21 -0800 Subject: [PATCH] update maven wrapper --- .mvn/wrapper/maven-wrapper.jar | Bin 59925 -> 58727 bytes .mvn/wrapper/maven-wrapper.properties | 10 +- mvnw | 91 ++++--- mvnw.cmd | 375 +++++++++++++------------- 4 files changed, 253 insertions(+), 223 deletions(-) mode change 100644 => 100755 mvnw diff --git a/.mvn/wrapper/maven-wrapper.jar b/.mvn/wrapper/maven-wrapper.jar index bf82ff01c6cdae4a1bb754a6e062954d77ac5c11..c1dd12f17644411d6e840bd5a10c6ecda0175f18 100644 GIT binary patch delta 25941 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 w3X+E*U-p8ah&^pYiiN7iT4~3Z~R{#J2 delta 26989 zcmZ6yV~}RS5-r-cZQHhc+Mc$iZQK1#+qP}nwr$(C-`sQVk9ThET@mX?#*WC!tcc8& zYoCmRCM|;UD9V6>!2kh40Rf#zm8t;!{}%K=EGMQSOfMxb&iH@K(Egc0{m1O>Ya-WAQkQGI!4pNF4rE|{FAW|AO}iT&jL**%l6|ym*0+*e6#DCz)LE@sRC!5R z+%jb)52+0PqA0Zus_kx^jkVn&>$B9CK=u=-v`qE{EMb_EkJ#8cDOe(3hk|VO^_u(( zr3plp#-LMG%VSE+w^Q*U@c+7*01r$6_J90MU<4-rFVFy{{VxasX8kYd2Il-Pcmt;X zFQ5Ps`7f{rQT#9H1tOnY z;QsFME5s>5Zg|?-l5j!EV`PdlJ|m2i7g`|h{6W^q`aU`c!L8D{H7FbpR%hXg=%$Mq zV|M-+U~neZ&%siV9-wsd@FX|t9Q{q=kqk0h!dH+!XksroX_A^e$~rBG<8dUFNE$!z zgJ~PzL9o%hygr-4ZfMkD1GEeOzk$?{E#4u81OmE200Lr7aInQoSVqMISa_kXp!?P| zMUo*xBL`~~A{8wX;c82p6NO#QBZUn8YA%~X327YDz|jW1k4(j0Ytx=Y1X|IDdGjb;Y5Jv48xeFsO4kP`=7@)g%r23UBGp+;n5Z^%sNgC|LMJP<| z5B_E&u1`%x>rNMJ)0*2G-RFlZEY@cTC)0}6SDz`k9i_0Fu=R>2Kp&EV)=5X5g62&T zEa0uycas0g*NxPNY4nQHjWvGa zYA;Pds;yvMdQH47gdycfv!+uJu68t@+8r}e1>PPGwAKb9#wN(rZ`q4m{cC7nA@b6j zX#Oi zxj$j)E3q%2aDT*Ibr(5VlxIeS#uA-Um*EVP`>5!ie1ZWz)42?%+nGL^#@9c`Q}dVX zf|zMtc+TDljj!Jd+UM_~8hbf?rve1i+f1RCN&{1jXAeCZ->98hSz{U&1+99iA-g*s zmrZho>1@(l7~hipmse15vo8H-j)NI_d*As9L2v*-0;p_>d-;Hm`aTqN2s1(tme%d>NA zW>y*roTyYsu}Vx=(OW3VykvW9W&Ls0@yTnWTxM&O9z_s}Lrt&BkWK&ABCW}4j842f z$jIogvbs#oxJTEfDff9{!@p22x{JP!c0C1bZYbm8VbVM3+HCohJ$DpL2@^QSSmCF; zRQ?`XGRdyDDp|fLsXn@}U~l(jWpBLzoh&aRq_mD`J7j?6+wLoknyS1|v(8dusNX7D zeyLnC#%@_xeKLluYq0tIXy=^wRNXQ%5@f)jbz-rF8a49jQ*xF{Q`VEELL1zUT8|81 zir)%Wt|9mH!LR9Updak0vTpt1PR=f4Y+5>)i%$RMY`(%Y<~Pw|)F>+DMwKX*~XW74Hg!FG_KZ0;&MhPm4?74`EN@r;3g`<;=V$w#f{P^C=| zttEGKn`y#m&UT)r(lI!Uy+EA!>lNtk?|Uj(RbYULz&})$>|kSZ2h~O8L{5d?7O|&bY7CC;h3Q|Y zP*g)|^E2mY4c8!P^}qhbR9&sF%z@TpW)J@Y^G7iQT+Lx8&E1=++XS9p*Sr`&DRNh( z(rH71)C2GY?^?4bp_7!H1be>s`bfLT)|iAPB`RI z2^!z=3im1~1e5Ye*Lp>{7rp?56Ya0PZg0PWX4f19_-VWE(75UhT?E`^Rk+)W7zYG0 zQOClQi&(i!?$RKPE`5O8&FHS(&UUOOL3Ky`srM1u#c4K8`o$z%>82;TNJ-Ie7kjlv z(R`qSB^$`s9KgQs>mi+dxUnV)Iiw{0D+5i!c4sgjns@&Glqa z?4*9Ac;bI5BD7_8PgBC#!VzVwN%uD>Ka^2ABe;hB3crC&luA+wfMl=sK}AeZB8~0y zU?`e>`|HNz-@k+`xo}bFR!!cIZ+T69$T1TUC>T)r6eTFtGnAZ?(>UC!%uFrW4G;p3>qeOxclA;f=?9pZK^ z!mj^`8DQE_yzjMhX?lHti;KjLG|nO4tv^y#;K}1EWG*m6y-ziuRtE62;99ot%Dot# zyT$rO8<42HajbAxy+OmP3~x;&q{;xj+}py#G6^E|#!EdQ97fHh^rAs!cG8E-4No%w z1~s11;t;>mD~yd)K&?r|Tul{&tWqJ~vxP~0*VFI~ZIq39ihD@jDO`?N4XGn0DF+pp zzrW!){Giq_$tnUb8aZ&>&1Sg*V|K-RJP|l8qV_Rtm5Ydr`mPoZDF3$z%TWB?OAi7B zv;hVLr2L;E>;jh$u%mz~jP%`1uhT`)l)WA<2n1YLwOWubu52VCEh||bpGy{8Qlz`V zdZpXYQuNp}k4c<<8_4*rG`wat1d%R;dc9}rdYoa`y|woBbuxndSCx-5t~U}ImKDPE zAeGgD@WFv@uqk|Ozb_7|Eas0U~a7KL70cEumoUkzNqw$4Yr0UmFdWwD%}}t#AOW=+Hi#tQ_E*`WjJTG!002k ztnfq=QxMs}CHFjbJbcl5P_saCj9)ASfi_idUfq|%XNAdM`D!dGEq8y_t-~@uGdMd& z7qZ3*)U6VfiGxgZQJO;w$C~TM4HmM;+K(wOIGMF^0Mak1m5LNcGf_B3aUe#GbRK+C zH1WD@PO^}4D#2_w87{WDVF7#5$6r5+tF7Uz+DqHeo)BDPn|qYeJs#Oj7>8Hb z|4pfhXC03`I3S>FY#<<}|D;p|0S>?&cL@D^B)Q4T!vXK89z`;7qs8Gb*rokyv=oSd z{}ETJkO8TkHTk`Cr5g9&=Ei?Zh^i3M!f)H}_j;_qQ7&GWh>Xn5NB2#@HYVGbnOZ!# zb}-UN2d~{W`_0$Q)Z~fT_sc0N&@>W0&NWOfyj#iv$|fn{4Z`gm!JB(cG~fmN*4JBT z01}jHWDn?i$cIOOEbQgtwKf$!sQ+lArD%g331y| zrzIQG*a`~N9#Y#z0QDI!JkFzz>6{w8Q_h=Pv8z@isK>QOvn$F4&|YTNWLFx>D>a=A zRdLaoC=OGn*95F-%uPg;Y)N{A(^QxmX__TAZByDGoMy}BBPdh6Mh+Do5ogims+PyM zwMIp!o+f#Jg@$UA9F1JXUp5VKz(90A^3{IVD~hQuf17SJ0q`~=7m8A+Qnij#d-)VV z(XE>kELKRB#Vppt6qtA9>SHDfx6VO4DJ|4g(n%#ucucsjNF#f5u@$sov}df`g$I7v zGGi5w-ft@@0(-ry8wO;D@|BI$wD}YlCdc%_^V^u!DXQ$6-6)_I@lD6Iyi8N@Rbw?( z!Hk-Qa<$kE0d3i_3r1}P(8o3g1UW`mkqcT4oD#kRzb7^SOyTkb1FEE%+f=*T73!b44(68~CoSZHcK_OG*+7K*6O z5Tty@g0CTT4(*;3tl| zUzhYCNm8(O%P&yDkSfe7buo}l-u$!}+8{$m;b%?uiovsafZ#Ws zw6n3j05A!4w3s8cwTSuE{Pbj}FX)9$&?pHCtY&Rcp#QVERgzmA1|y2KkCt3YOfy91 zS|*~lVDiVUP`5%exQm~c=NhmKIv&1BNtD#l6BvghgmuX2QRfeH^ zz2tx`Nv4gIfjCKJJPJW{5#N-t1&m#ocI6-HBtWq1z0gNk~TryaPnZNh@xN( zisS}4Y{Q^m{h3msh><*DUG;mohD91CyBM3}kE4MUnXBw+$4&Z{QqF}&4ytXwOPBq@ z8UT7rxK5lE+bYWX$?8}uD>+_=}pY0M`xXU5oTe2 zXXa8tFTO35Wl&FW_W2yTd-IdZj+4slr^Zz>-T`_U zFBYM&zdD4r#xR?E@6*yAS|dN3XE+4DIu%D3rnUP*ek@k6NCQ3qLiKl`j*UyS$2{Hvwv1*e!zCXbVakm!Fp$yib{&yyIxC%fYDwXmy}c z4PTTdHo?W)909~ZoyY0TbRVR6XNAUl5+>Po0ac@IrH`|>~W~BQEr$-L^srkUo=7<({6x=+Fv%xgTSAGNSf@`8LAoT6^>jQ2_?GQ7j zZx5q|2|qfTom<>ob=O?Zjz@csx1;#1TzV2y-D2hE)1uhL~%n`C*X)o0j7+=njt!?q&txW!_7 zx+Iy=I)Lb=Oqh8rdB9G|1Ui{h{xrMn_S4QxZ}HxzvC7)~Iplrrs6WPBnVi(1ZFy_Q z?9s>U-(O6h#+2!{UP-`&t;v}{m1t=9o6vRx=E(u1?w+Dyp9h64) zd_!`p`d@i71m?`J-|oScbD<`2MbNAm3M}tAP6zU{w}R9FEvB&1{@XhJgnuYlOg~2H zPmUp)pif7X-mu0)0E5h66pF+)$ut>B(q_2MnGxJvdTY#lZISrOcj4SB-J~Ua=}O%s z=CZqq2O4;lDmQQAs|)k1mBiK6<-HoQGN3$f+kY)}LXTGC&FsbU`i{uNnPnU1cdy8# z6js<01)|qbp|+uS0^nox5o%&%jIP0sZD6Ns2uJ)KR0#bE0B~~p2D&~2%yj8&Jy-@@Pbz$U zbZYj;L|xoXEe?1kP4DODqTNOslYi+f=waXd_Y~K-l7qbuG?vdXtF%UUcD?W>LZo91 z#f(8{8R6ez07h1lywTvqKU`|~!^LX+g+Y%Fi+IEDa96VP&M+4W&B-!;MQRs7Z&)XemH-B_SF8VCzhZk2PG!wKYppL}f(2dSrnO!=d zf0(5ys4^xc$s8c7)tEO2xmIH9aUFtA1KP|9CdD4~0Tk&bTtXHZ%QW_=PvqEhmY$C6 z4=TlmHll*UAujOI5ZmwWP107Y1qL<2J~+>!w@P(!F>;^$!f24D##414^0UnVo*Wu= z#)_5L0QC;IUBp>j=5G{CO@~a0=qH7}Pf|3SlzjZ4eBvA`!1(sL7hINTA3VynuEM-jmQ8&QI!azc z&E5vA6lD2pXIKL#>qd({vMu>M!YaaxO-qGO8YSlrj6f^4KeAuFu6%+p?txEc?f`|zLPNKJN!>Sg0r9FLGH zfPXcZ!!boCwer~$6}PauG`b2@0jJF8rni5yH#Z7&xHR&gY1Y5ogK?8K5$Cb|<$})~ zcq8${2O5cfa-eg+mw2LKarsyA3?^3HjbZE&SestvUp`jjZX`enMnUCerav&=8T}4Q zMq0|cdV8hCSzt3^LNRA^Ka*D5vihDr0p8IhJUas}hO?SrLKe zCVB}+?JX9Q2P({0Bwa78hQ4n2W(nC^azTG_zVhU?o3~_5Q|y+O02(RuP2HXH-^tt= zXWkiFrtIzLI^K)(VzZ+V^)M%U^1g3n4){(iqtevGv4w;;{eRaJq=|l_QT;wQBHv#C z|J&L)PxAh4`8QZO`?sn8)7lu)p#b_U`xTMIZdMmp8*_Il(ek#OF&G-Ez=ajjItUL` zQ1`v|(#m&^`w?#o3K>z-{S1!b{?RSl)0jY_oq_H!$jCfaUTkei>;|_SV~0f6jfY3x zcq@ro-%?ITX^9)JUl~YI@?jVzmQwWQqAMM z+@*U33Hgd6QHir1AxDNBe7Yv-iGjXO?+VtaQ1mKdzG}X7^?&+t=#90f)@UxOE7C5_Oz&b>v~RCuMx3 z@202wN*aI#-#dLszHnGTlMnwaDJ1V=6IHOI2llyu+r#Fi#lpcXB2SLc#@?&EiR@OE+j`I%Dii3--K$SiJxd~6 zT=Dq(Vqy^1WWQ8FrdFm{|}}QH)ka$vLqs-?&458$EcCt!P=*6sx3Fu}pS{ zx+W&{^N34>f?ne$<%~#;*A_3NC=)uunB}%7?0R=2V7qrY#FwUyP?!|OI7IOO-V3z< zJ8lMw{0)_Z3NpX6+F9k7tb_sm<0iyH{I3fNx z?GtXjQhqK+arv6AJ?0v)_ zF?cXq`yf(Db?f7vYk^ESAbfD}<~7zq>^I%P6LVi|m^}5|OhP8h8nv=B*HWwnLmC4? zNv6Rl+&Ya}yMw^C+HphTzBPW<0a^_)>sIMtMY)Mu++?x?PkKSl$+>ej@xzt|W6^k1 zFSUuKWt%cayGb0K+B%Hrw97b330+aeAzukyfrLrhxn5rSjN3Rk;Qfz9=uDJNy>yyd zMJg=3X2DIwW~+`sUd%X&CavmwDM#UOl&fY57$$E0Hg%KjMUW5wu4_uyQ!{;)7Ej;Qj=T; z=Tf!JwoXT#ftk?};P}aZ%*E^L;|qOHs4$-tsgVZfD~!JatLj-&oeS%(1@?GZ%&>#@ zQwgv^P(gCIV;4l*Zuo7!7_O>P5?YC+IV?7&B^8yYD@;p4g`ZKwoDp9cQ~|mtWEhou zhbF5zF0X#?PY)uYTDXN0Spyqb6+Au5K-;`F6XPG>E}0<+XdNPiJ>_dUmAr(WHF6qW zR>X~_{Ol{-x^7NAQqWlPa~Dx`g4xiHzbTh&C9UmXJyrlC*;9oTck4o4CtS|cGDijb z+S@{x3)3L#)OMi|nX~abZU38|u|tqsGSXx+fv(~$D|(vcYDWXXtf8ow$ucdi z!e&=aE`>Y=IA1pwBOROh)=%l7{F60?vNqf(!@vassEDtVMZOkWrBjXDO?R7R z`s*Zex5%Wpit+%}jmL#P-Q;w*d`SwSJv=Teb`#Sh0R11y^wk6HQ+CG*U>JQh5k{^f%H0g46BIM#p#k98}xWi=)uW2_+NkZieS< zsb8_*>p44}o%1RtM(X9i+J<8%)?nb*#_(%wVT;#+zoao+Gf1-PIA|>t93TLg6?~{G z2k5Bk2RNuJ`#fry)as#nwfeF`WheFQyG%RkzLq`;!j>GcZ! z#esqDSi~goEsKezIu_EhSR|~tL2a7E&(cBE&}VEWf)KK2{eOwK+Aj!{tK%!uAlu3Y zhgQXQ*wD7ko##I8rIJ_a%XTR`U5PmWF0Ig1h@n?kJfLN##3-qK5GbkXld z(8>bzoay)2ZDX++*idhmP@v@`bJ>l+Ijlz*Z=KXFFPjHrSE89W1F zLjM8~NUX(ypGzH%h5j4&#UD&a7h*l~#Kk8hL~H&0NK9?F?$18Viw zSe44A5|~t%+9T1op4f3jVAutqeqkYU%-OUX=e(0nU*+(4$kr&7QC>@gJQPNqv9Q7F z0NH~ffMvtCBO4uTZ#Rl~%ppchyRXG#InutrYRuI6i;<`*#uISWY_^7GZr4uhULb1I zw}Bk?hBf_w;e{KJENIJ&_lLir43;OYkAGVzq=j<+?CQQ@xAjeaepLXVV?9o)#UM`B z%_XbDaimmrKHwNa9W!?DIh!mhC{U1E(e7JD+iw}=bX0?r%OE-MlJ@(}<$ ztTXhgk^53!ZMM|iX4C}WU~gdIXFcL39(lOeRqm$TX>nMUv=O9qNx&N2UjaKJK88&1 zWlTNoQ}x#*yb|sM|Jg~%)}I^US*}+Ms);QcIbb ze##@5N|>;vjq6B(E`kltscqQWL{-o@q$MN79iP2p`e3NlZ@d8bA&0I6=0iWfiMWJi zyJBQv*p=6uZ80KCg?Kogl}b-zvm&{~ZFR7ZM+>zEblHrXmp}bV39VI+z7^Rj-;7o- z`G9WG-ooV_j#ZUe4RgB=FS*S6t;O4}Zm7nGvN`iGP+6B1haM)>>A3n;%+;0Hy*0_( z#fNeE@%qx=v&#ZFG#xgs7EzWNX*H4`*HyJ7;LsV|Pq(GFCO8o1FR~?U=5lV$1DpTYDcLl#nP01$7A86Li zq2I8rllN&pXaKy|8XXRfCuayWa~2^8z(jn*I|`i-PvW3!znp)|GBQtAA=k#$%^@S| zn5?ZJ?aKnBR?l(fAd+*=dA!46J(P&DH48xiULQ<TVKrDAGpXmvtA^7svcjX3cX!ReWL;reKkA7SRjdskrV={VJ7P4L6Vd5`)nS%@!}oMm_!x?A=(H_JXKOcJG+^($_$%<5%u zeiNO2EI~Q4P5teza^zidvK(5=ld_03ypcg!d70KH>z5j*8@9}#HVDi-1H7N0X@acm z&mxgbh(Y^~Bix@+Y$xSn-$8`D9)EaF^3AS>O;Jw|eNqa8|8_CFvKus$c z+*uzq5(@~F@pw&~I^JCvIiYE-#TjZv$^jgQbB+b$-eLC=l;PA#lvBkVWZ1Lrs3iRG zEkzfMz8!VhFQ%Y9_nB)rqu^pZ^?M+xQtn#vBe+Q^G0HNebz!Z9><4vW?L>@L+wesht(W(gmjvu184vfB|?*$ab6EBnnD`G|m=j(bMRBG2{ZQHmAS0GSWKg zSYkZzPVjL)mD0`AP_QlX6 zCX^y*ta~vQjUaJqVWXh-e-F+D&g5b5^sDiWU;099+`<0-gihJh)nN!)rCx9dniS7S z%+pQI7hN`p(O9MB)X&+B%-!^l#S_)Y7W?%_Nac@+?DnsePi%ez@_aonM}K73^3UuN%sO&tKXyL&H5_p=?h zT_F?UW(#>ZD19v!ucXd4-OEj%iL97CcmjUXrVH!u_bNDqy?yrrD(s;%b)|$$lS?29 z!Zhk97gR|Vbn|2qQ@|KWCAEYX_p^@Xwt`%ZxP0Sl+r_y__c{XJCYYYrVhj^a7EVp+HIDtmX@EHB=ZEx23w zG%}sZMbNoPDZY%szf=0|>MW`3a7Lh@Zq#k5_E0dW zJsveTC>aOu>Elk57 z74N7hf^_H&?rbS%A@&Au(QF+avCJ;}DSnR|u8_kQ+RVdSfo5$puUhDsTM+Yi^pa+W4p~I2vV2 zQ>b(L=8`dWFijbH&F-4WYYqFR$vSUaakK%ka)uSPPy4IX*4fmV^D5D!yXO?TtjzeS z<^MH^@A-p{-(+FX+>ps9&Pd1G%OMysHb!zjYBXQ(b!{sr;SsYXB$*L;;{XQX-2MUt zg9tBh=>T{}RqG=`d?sG(_djf@ogud-Wr#_*DDnxlerlD^Upo*Oi=LK8op3HKQ4rv<@B<;ELwF5OGBD*BFy3)ziBynUW>>iDMFxnUI1Cr3m^)BfJq|5?q(lx`x#Qc} zf0O)KZsRh^l-=D7Ks1p*?+U%3HHlI&?3#>&$ttllfK>v0#b!Mw|NWi$_9c_3G!N4$ zvaMIw*Aa8vdHZ|R-2Xt&GX8HRX=(bV;8%ub5+Ti_{w8z8QtjL6QxAThOPbh8Vq1`Jpe;#0S4G#h!}+CN>!vlKpD+?FZSso zabM>6umwW=w>63jf!VZQU*j4jzsAtdN3|&?ft4x0lk;Q@rLg;Cei9Q0-M__wSn9)*R)mill@%^q?B#TlZkv%5)+Wf^;w10YIgwwC;oNt`L2f=$Ahh3Id< zWw(~^K3fX&0$;OCoqv>tQF%W#L7e8MqkJOwX9LwUfDlGo(9xrTT8IB8 zwb;Hv#d56!Vc-`{&kSPQpOfY?+-$2g)8!L*POV~vdxdy|(OdT`BR@_BshCzP*3mXC zesf*sOaN#L1qYoV|7wxWbDT<~zKR&$0LpcFYsg39&KjL<;`S6nBL4wS9!;l1Q6|2jOVdK6AFDd-*=Ld3oB8 zcfa7i*HPGP*$Zd|Z#5}gD<4#k5kaTnen4{(8649@9emqNTE@t*ZL^ww}DGds{< zRBTv$8|X7yyJ{ErwamF5QN=B4G40Mn9bslE)ma` zPmYT+?e@c8AP;2bG0NIija(>mg=O-iHHKsg`*phtb&g^aC}7kXRf`e!DfDQ=W#lbZ zX|sP2#Ov-*-wU@ydG@u*y$Mz)8<%yxST9A=>MDLqLNvP`%l1a%+@cypSNjXKXu8i5 zxH9s>tYO-XMJ11#5{u989X#(KnxiYO9kd80 zKm*cSc?AD^`eJNmM&B4Nm0GR#h!_N#I2ef!3~Qnw+d;&h@VNn5(la_3URTNurTuq$ zbfetHY;yA%krZu4EA*N4y7NufhV#vq>0`%>v6Y77SPiiA%k?$j=k9A{>+Uq+MG#8A z+S=Bx9|{9H`R#V?^_dey*_nSfH%CJ z`W?Kt@=(jI4fu}ItuA`Xffs_e-VoxgXxoXz&?~d=ey;-hr))HUfto=14)$~2Pftp` zN9`6D(zhZXI)?f+tMNI~+V`gSs{SVc^q-)f@>6q2?^Ycgpgb4dL;D&6`ja^Mebn1S zu2J|Ab4kcZL7+h8{u{<)oOl-rAfm6NZuX(5?q-(K($TWCLAv{hzd-4%AcPp@;hAp$ zFt<(-vS`2#|MjHUsE0TR=XXTE?GxqGy`A?w>}xlos29`Xbt+`mp{`%n#ec}jU-12R z?`*z6Vocu!Vy|+vFOTDf=*@(|i}(Esy{fCnNWXMvV{38kz-1T8rOuQLU?E||TOw{+ z(vIWh3Bl8$jfa)BwQ_ZJetGfCZLgAR-XeGybB#P&Q+|y}WzHdCK4zFBXzV=bFA-^9 z<4dM52{dWIKU)*><(QdD7fSFX0cPoK>ONTzb1@(Rub`O2B$7Q=D9hJ~4H%5pcZWKjFst_?E?>a7>v;=rNF= zzDL;)+WpqiJTxY=1nW3c@%}ldE?+X|^ZIQaeB8XSR-% zpytRAUlG#=f-D&{}?%O*hFxS9y{UE6zY|&Ri@NFtL9sUF&R-FG-bdzuQO> z&Yl;JB4(aWg&x7S8JfXXr;%vk&TXqUh$6=&*47)GxwlSZ=JqsBg6=|x5^h^q{){@ed;d= ztx9iIu~r^*mD8bMz|?3GT8FNb4c2p`LwkaZY7;vHl;A%$$vPhAQ&jg_$X%kT)8q@I zb`0A3@lSbD8H?+ZLd3zNu&me%#rzsRb6+XNb|r6gy`yrBs!#0*_HZVcBMr8iI37** z>`zA9@iu^bj5WplDeY#JFj^Hn=M>lZj=jL16GMh%o1;OfueHdBAMvmzQ#$3x;h;1bTMATo@8FY>It1Rd z9tI(;b~c-7=gjlyder`~cBqbF_BfBJ*LMU^93&TqA=K#&7{C<;{nZ63TH*CDF20

CQc&~!Gj&X;DJxp$6WY?-UY-eg|JhF$(_U(!z?|u5T0Vn^+hAEF z$YxoeZk8~YW81CTt)V>}X?{M}oL|nf!d@B5!2tonR!eihLgt~adl?nUl3ER#R?-FV zDZH9;FmcCO>7v(+oI#LKSGDaPLp4{o&2JPPF)YJMCTSeZxjIhDSlT>m1(IuS7>}o^ z$uIb3z8G%t0WPTD!6FZF9Ot0?5E&6|>{#fggSD>E0(#R~nGw10oRUueI&UNTS7J-T zsNXB2yjc4s{}`-)Zk2_Ztay(pZm$7AP*v(^+!#!^xmu1BGd+;Gg!Y!{OESyYf7&}e z@?;#&A4DjM2{=U9IstT{KtpvgQxB|y}IG&9L8 zlS3+Oz?NcAc!qyPSO{WpPO61L74ToiWIr0u$9}8_QD3f;?zB8-CC}V==p+Ct4qHf8 z(&1z6uB8+?UaV_jn(Wj)_nw)>3yM{HS*ea548&+MolcUnOy~cJoX-MD4uVq&LX8*K ze?_Y5@oHPqhiECdyz$*!UtVT?^h6|*YwBpC2JmdHsj&k*x^Jo{NZ2w$CQe3hT&7Ei z@3S&&y`o1`kZ1XCl9aP}U5)`=-Y~|*awHjb3~}^Q*&>u46FsG*zq_#$B-e<3Ri<_m zA0y)8o0gJNC{$!=;x#h;v`H&*;W3#|(JI(fQ9U+0Pr?01|KsKyc17l*I?#ALIlBKc5@L&_& z)6vKA=uWpdY-ylAO%*o~?Sl)4D9Po*cR*9es0|a%5+7r04DKHnd0~@2&`{xw8fsdg zvZ5-dbDYs1+l9*vn7#*$`%}|p2@mbECCeGSp{Y&g#&4<(*U^+6ASBjz;ednHU`1&J znkE*2+g=uEe$=5>1-8S>-R|KuqCyZ(T{l|u=wC!Zv(u|bpP88S>nEFhQng4~hC zQVh8NM5e?J$j}Qg7SMQ4Qu6T)>(2XSK=a=@+X}?U+%rYd59TOeH-?e5ThRw1C`~>M zz9A`bO)BE-e;NR+4MQnNjT(Ybshm+-$O5mW1D8-g1%dt4Tu*n*HbtZRcZ>6Khv7KxBE5rspEVDcLrp&d}+0c0ha1Si{EI2(a8Ur^F!vuvl<*&-7`*zVXiAL}NeS2ZpK zp#@C^(;fhO92-yo7nWfYt|Scsl27%7L|Xu2-yO+K+kP92a$EoXesp*Ixaosv zoK5+3ZxHsdl>_*~R%r6ghhebp6;U4$TC`57K756^?%8jZTT^hmJwd4G#m|yax|u)q zrdo9OEL36K-)Xw_VZ=Q<(yZ5+5p6&vCb`zmt_lSuQQb7I&+-K`@9mghW=i|h03gtX zR`EZ<4N)Np&wo8Jm5h>5#z&nw8Y60hFA>Q}j~o(}j`qJ`w#5T>vVU(s(DkP9YRY(_ zuw<@iVFL)?P1++856jFx5NPwR-~XTg!lE8?SqgxGfUpx7MmZh+E9k`_U^W1Ky+(+cT2l|*7z9TDA=E5j# z*WJVYudg+IIjQ-81oB#?A_++X!RuT$SQ^sCw1Tshpg1eSW1-`C_nr)p9PUek6SE&* z*xrM)r$ZP0E{FsezlY_ijrp5Sxn{u0^It;+{}vVBpD>?AInQhnNq>!Mof@D}|NYXC zm+)-d&tx|pZP658r9^WO+V_DcCbA@&P3BJo8KvO@DsXs}4F%y%m%poZx2H(e@DZvA z8n3c3Q+TT8t6m6*o&-;!?O3x@BxCEE3tL2pFuRj%8fpaGj!gn{n=V!63qJLHM{uGDNzi)ECL(;vjBdT_DNUTAS)`*2OmUR#X z%C)Iv9g62iZGL}L)9=1Q9u$`X(D_eM&(sa${uaERw%L!@b z9F@1!`hE&x%w+6wlAg)|vkJenvW`9P9Nu6X!^%)F6v%4oE%o8vtGa{zFG1me0lkXw zPnmW6uU(}3Ppc@n3J>_NEGtXRLLJo%?fqG3*UzD-W_+(H~&mM)xWN)>7D7G>7A+e4hoRLeHI;( zMO|yAD-6h;R%0j><3tdC)1g!oCl?DX9-GX~CUnrM-856~{MqA9YQ#Kra^l?MUg}<0 zUj8Q^TM(-7%X5+Cv(}ND#qH$_x!;2=<&(m6Uz?tWlcKQ%QzuC;XVuIF-c2fi+NApK$P?YwLS~X$<%WaebfY zqr{jPKc`VJF?t-w`4k+#h%$BKr_yJlY;jFLV{$zv-LD3muTl^)ITpT}L{}=7V3E-c zHI)@p<_SSljXyh#Gs3NEZ-4#4BAbhsjc_0IDs7jDa4#)1B0@a7famfVlVrFOH${=- z8g82UHZQk|lV!1iR51@pUKMNbUd-5<@ABd2+oIx{8tRgbpwbIVbJoIYMHMlm5n37^ ze$wQVfDNAV!Z5d3f4Wir_V%SRioSXi1;y`XoUankSZLB?@esDY2ISIN9nv=rxdkSH z;Gc1LG1437erqQ9QjV-Qo+l$dU8XG;12V6g*=@XjLjye6`ouG*Q!&y3T9um@2xTrA zGx;tR%%DdoFZ7I`wI8NweeAPnfa7g15-hXlGAx`!{I6_m=j@`!gGw6xBb{zUxsXv<-2^unl!hVQBL&u>x+`9o%mb86K5~ygRj@RXcbUbs^duWyvpydQ2j? ze*8H^{)nb;mU5j}5aXDq74?{c%+WvQ3Q?V!Rhvvih=G=$w6&XyyiHk=I;C1gY(6$@ zctaa)#lWX?m?Jhvb4q1A4g-P55cE3j`u)qsDk<8&@?VwIU${aq312JJr(ovLlrR>~ zQ%L&~&G5V?Xd|YgR@eHuM}sPw*}!dGhclJHNXM`Tpunh|b^Yd!`1>m*&(=b{)ckH$ zRvz|ltp2W_Ixze@Pdsc&I@@Px5efs&lDq}3a^+-aG~(b$^pWk`1id(oLV8H50{$t? z8?eyIORYj(n6Scp{vN+~<`#FqVj~6&B#4!i&ZVwVKA~~YFd>hymY~NyZ|msoMuzVr z3W*DP-!+^NfrWW~kXCGE;iBQX8LmlVjHzo>pd)e8a8_|tWzcVqZzVcIy)ift@YO+H zR>|9@2*4|!X^1gHxs%bscx?%SsUP*huJIGWAL<{KJh5x{b;&P-bJ0 z3kTb!ic^jHgK@v+a7zcKHH_I}3^uXII#Y#s!*%yo#YbDBQrxJ;W~Phok&|=XY1xI% zJ9MCpiIKh3953jw=a=IH*-$D~b~$)zvv2-Ju2n9do@Ka92=ADXt~=AT@;fi$$8U3D zGmXHlV67@8CBjW%J#Vo)5mEBIGOAe)LSq9Tp*>yv+2me}uuYN{S-ehXSl6=#n zq7(lX&v>A9>D(&iXREfE!=ZL-gn)A0XBXPw8?PI+$_%UX8x)0VKYt$B-@P}71v`Lk z8tjQvb`xqQ@&kXJuYAQ+BgMhLLUzA4Q!!5QnSmC6nfei8Ck~n!?wuY5{OcRIxiJN^QyBj2@_SylJ1qTayT5O z?SzQK!YSqQ;^;I2+_syV!qCsw1Ez)r)yq@dnSgq$VRXujLQ$~u3oaSY;X9E?q{OX3NUF*a-+DB zb1b1W%Q6ec&k4WJ_edQv6V|OEpl~y;zeSTr(AdL2cZ0ufk!Ws$hv$2C4a@D`y=hoQ zmrqBM*bT7i{~qs@W)3Qr@Trwm#PTYD0#_SI`ZNge_nSo$iWz%-4n@mH?k6LORXGi~ zb1;*f#uR*q`spka9jmf|suWJgLG&Cx*-}`rTV*DfQi4>*@hU%uH|5B}0Jwt~?%cO$ z7GhpwXY8}vpas33ilC=Tall&~fP2BdW8ORarh+1TpLwmEf2{^@hiFFDzA5znY|8g$!nM70^#j7vtA)lYkrjlv&c)@z#hbWtW-5E zoLD=x6H}YdC+h=Ex*;~qB%nqAj$zrF5x9y?WB>8RYX8gan=R>j-6HwKyA2})SCaLB z5b%dMQGVH;Zf=&5=hWvk(5lmhz=npOYL|8c0}J!FS#XUDUTaBPrlFXVjKULYg5d#_ z>`2t|Omh?x{^DwCMmOTYCe16ENg<{b{K4BaO@ZiO(>WrLfklT>2a>B|hqP<5AL$xa z>jz_ZHh&=o{ysyhHPz+>72^}_ul+UcZ)B$85fZX=((ykDuu!n~Bedm@^hdkvB(jxt`<))E#lY9Ogrxhm1iN%n`+~SPS-W$SWGinE!lP$@_JI$-);%1g zXH(e|(4=RvXp?cwuZ~n)<37q>}uS=>cIJJ66!T> zO|?zfvnxUJ;P>BNVvLD@JqO@5yU8irqu#BBhS-bS2&Vv;fTj6$VDLK|6*#wuEG7&u zWrTt+f#QsNaC;09I3zlmQKU6WmK*_=Z;{4}gqQOTZ`;U6FHo(X53F{@tQE+s{Ky|PXxaK@lD%mNrUs9&+L&df(| zA2+P;AzTwGip_;kQC}ADF5b8NLwEo-a!s!o%6>fF4GnAw zRnUN#ik^9-;T65w^Bv3NK#{LB8-{s4dI}qy_dZ&|ZrDzM^?HU#RnH&Xd-4V?o$n(J zYZvw^yX|i@Rk(Oc2^zZJ48Jc!fH&D{v*ndvYs4TtfUVdln{68<${l5u+|M}UhAc7qxyw9Y2x%!wse#oXjYbOgZ!)?;b+Szu^dQ>6Sbszs(UPjmbrpp#Fx z1$18JI_UUWj}LnPvOEXoK665H4r-`Aop4>duUk~Dw%(s!HlQpk`H&P;F;;BzYfjkl zN9LS!j6|H|Crhp~&Ra3IFUsrtNATz4gJSG#3bI}RP*jY297M*itEe#jNl z@3Je+;#Mo9OlsEED6Mf%X2FD8BVX+Xll%f0bfH)b#rM{7hp7|A^7y|#pWzcxH(7&$ zf|`M(cVmNmLSyRycDBI*gACxoc5@h@_&95Id@;qg$oA`_DBNTfPm zy!H)MSH(}$`tNzWp!{D_Kg|&@lpJ={TYhdG#p44PCy|$yW0_OlQFVX) z;wF0YIorl8Z*A9?v#{Dfz5Ay%Vbwb@@&_A_VIQwjZS=Too*mkc;J!eZ5o2q*nX-rQ(FE%xmdFyZENs}`iAbYM`IW5eg0f|CS zkI9`7rzJa=MZj{T>Ez(rs=~sUn|h*{tVh2*_?Yle+Vz*(kA%vq3eJ-}xsqZv+A9mw z^%BG^%A82?=dySVx73CRF65v^jQo$SRCq3Kqn$+rw`#@4<^`uR@RJU8S~=o*&I31Y zcyyA1M@r)O7e>tk!K%4NrN>jO%UQvWQ;omcL!Hg!>n(5+%F@PXM8Yh(@v=hP8Qf_@ z>GY=AJ%D6hn}YZn^Rt+(_}83-GA%Z~_cy1hC5+p@_$+cXer_Vxy4QlDttXMbD-~o< zyVz&^o<%>U;*sZ)A%$}vHX71TI9QlDK)owO7``s&0#gplH1e>$-5M-OZ`qnO{BRk>Bm2o)d093HJgz8h`0n0j*jW*Gdl3$bPy&q%AE=RlRq`4K0C<%b& zWqo73ap|LGu4P;q*`okDisSb=APjtY9BqO?r1&vBYjp5pixot2yHIa7YVYmN;AWHB zEZ4QP$q<&lHkOR#*CHIoy^P#{HC|M?Dei`K8AjLh(wiI>;aZ3@kT|M~SmXhSDCT_abxhRXL6_|r(R*AVA?#aXERtR}PfCF1 zkv}_i0S}x}m)illU=I!;TI{u?_VX&CG#nrLYa!malM_fqtYiN+bXxQ?e*y%dR%|+m zuoLIV3THH>yxE`-lSK3l)z2ynEA&c;zW;N9PpMm&=f#|*mX@#+1g-YQq!r6BXicA$%Fm1aa*+R65_HTw{&ii5e!Bi)DD;M4u7x#S| z_k8EnKB|{dVd}w0pYZD8DpZdfnE~}2FW@Rb>c>IM%OPAv^<{*%-9Jd0#k#aRL)NVg zCO0CP*%yn~e;5q5mz{0aD+{{xnYJ;viYP48WHbeCrlT%XY_wE4W(+RB>bPSSB(7S? zS#M`v4u`2aX+>RT+JN6YX-6fDJr?K2W{X$O%x37e1>Wd8}PaWddXx&uDMa+=ABhTBtI$UT2dNA3o4ZUz1t9|yN zUBONc?(4Nv-#Kf*)dH`(Gv!UA$3lrbEojbt`po*=w1gMI)KP7^cP>9hoq1%cLO*3! zRNg*=cbHbunsq|OpITN>ikHi;P;iR!mc^wn7jMgGdZetsl!u2iRi=7bS!vo0`$}D=nz1r&-E1jr zRqn&HW?RYDO^ASn3^uI6P!10*pff1DtxiNZu@12TGd@|>t)nqhJxuGns%PZ%_6x63 zq1tOl^Iy3PUX=y(U}2LW1e+Z)v5lR`NSQDCO$z~Dsb{(CCm#o+4H7LS&+3(9h!EAj zrSt4e(c}RmwavhI3xc($`91s5eli6SixZ=zb@VB``*RG9v&Gw1vC?l~+-*Q1gl0!E zlJPP)TJ5oHXd}W4-^sSk_XpHj;LcE{Oe_NqlZ5Ww$KFRUM95Cn%*neA?E?&T8#8s* zJ6-Z6{kv^iqSLM1+FMwwlG(JAKC2Bczu!6`XP}weDIjloCC6*N@03^UputFw_})}Y z@Ko%3L$$?;+JLldG)Mj#(j_TK>>BG!P?@W+;7nz(iZhIJmcWu6MbTw!5YxunFNd+l zErB1cBXPSNl#j8H^}1#-Yup>frL{!iSQ-!fZmV`OyNtW5a=Hc8#vKwA5UM>A+1Zix zdbmUj)GH+fN~Fd|Lm7aaIU=2^^;(@=$GJfUIyq}%qa2<{EBVdsRfz9E72C+jEA7fa zo3BH_Rytui>RcL&OTyNQHF(!zVO_3zTJOR&iObJH8LI^{N%(_Sv1qJ1I~fS4BXG5@ ztE9h$Q9(2W$bt;sl%YZDM#(+iC@n zbyW3MwsYn9CD#4q5!0=9=RgnZG!-*;*z!b<#H!?E8gR$G>$3BPRNMc12~7FNULe};g=IDYF!qN zu#*^+eTURDse>MuA^oF+-Rs`tWo4N1^+Yuc+qxWdh9A{bI`i42hLq%!P8FssLmOy* zgbk5zc`)+AE1OH}Fe?)g$Y57_UVlFk#|w{2-hO?85%5k%F#z~*Y01U=+xy-{% zm~(*lK0(#gjuVKO0Gs^Ps{1L{8Y{c#uv(X;{2KwkQEz(g$ZOwVw8+8dsXm+v`0|A9 zg9wAXyOO1ts{0|Iy3pzYY=ukj-LuFY;!UO7L`vwlzFvgWX`{_S9}vQ^Uqh6MF zhJ4e0nM1Pdfa|EOlLx%mC{LIsOTqyK6ksI1j;u~I&wUFDvQK66h1=ksS<>D)6xgQ5 zrdfq%$(FEN<{ow#!D-r-CP+tGY{@%ZuA<@p45Km2u^U~#AB}AMEF7hyb_zURc6?5$4U%7kb|2{&WxWI80Z)>}n~mFJ)<)KjevsmS%sXl)G3 zVidR2I~@8;KK)*K;pv#f$V9hagd}id3xQ%wUTk^pu&*N zFDZO@Crx(P=X@bJjXGWZAl{m2TlaQcIxvOE}7b%o%uIo&_n#&)$?rn$mRj> zBI>9Q;HD@Sl@pFE6f^rJrMPf1Qv@;<0dE`F#}l6QeI01hFv)TqfGsyGDKEMynt`eL zp&{fP4b#;~<)|o{LnUm&v{o8Kz;>iGY$5G5ow;tzzlO1_OxowA=rm@8qm6&sIQ!-e zqIXr3y5^Naa(s9gE&VSQg(Iop->UcUPv;-2Q7si<9urpEki-3zK01~{|CRWik{_ix z=Xf}@Kk2M{tm1a6AdiXAkbf@!%vchGk5OMCm1e-eNA4_v^ijh9MDr*~reQqR(96Jj)VXG(JW64CmXD=Z1(1B?f8wi_ zEGb6&E1frk;r~hz-*_KO2YPlMkEpJ17aHYH4c5@?{XNJ_#%;*p@&Pf>itPd?s`reZ zJ=^&xASN#Nm4Z<*Vx26rOOe1gxhBE!aZMAl7~tD3&Y-)Wd`huobHxh+rA!=AD@$G% z$}*=W+M7oqQjRq5q8R;7&@v^B`o+%OKeW{!>qRVoOUJp}yjfBQ`aC>8C0q3LG|+PE5W%p{|Y1_%^oM#H|%We#Ja6Y*>2gr`>yfkVuJ@!`p? z7D!{D{8?_$<#?)8Zb{+LvSuO+Rc=5w1ykCKBCTwbRz*-xEVM@LipZ94MX*`3NRwWM z+#8XpFw;yfkA&ZTo1d3uSu#x0RR>lTX~QrF`>u-@lHSBfx;Eljs*Ky`IBX$m% zU@%LtMbjcJ6n1D!ZG7Pm7wvu9OVD6cfptXQbOy7mL zqK%mI*6x@7B@2FIP@%C{mNRr58D;aBD+>7P`Euko_zKT6o!&cTiD~uZ^3aA~SEhWM zxyj$9diSR9J!{JN?z8R*rsbdD-5a(y{V#dit&8YgNPDdhnSXqc-e3CS&k)SWvPPG# zAW2%H5fuH_!oi>^OH|d)dY~XwTk4Fd-ku?+CC3#oa$$Xw2$J&d`UWK%K3X9mJB)N5 zlAUt)+JvYxvArRUG`M-*qE%u6(fS?t;`gg7vCHkA1s)pg!EIsu1*F`(t9a)Q?PPAH z*QbTv%)&C6+s)xte#!yB7UEQ{ZA}Q6lb9)fkVJBJy@J}G0ZO#1LU6B>uHrsToy5Y zSh%1X+)Ew9RT#2Vu=blUUd85`BEfDUDSWa-dI1>q9DZB(AXPu~OzomqIQgvX3MsQu zKDy{KFrT@cy>Cz~de|f5pJ!J}e=A9jm%O7!k8JE4eFv&3flI6MEQ95O=h!hV79z-R z0beGzcZIK3CAzs(nBVJLDS+MYn({FSfANToo)3M(3Ux4%JF*h;7S{U+_GG$OuL_hQ ztdF5;;7t0d?1gvhFgkG`XtjOtsXZ(KYh6D9BA1XVdcBJ+Ek z8Wd%HIz!MxbnBbG`NNxvgP3-@N;=z$tD(=fo`iX(X8dE`i5Pr0a^}>^xk1`8i@iHk z2I`CPv8e_2hBJDHFUE7=?kL+7dnaH%P->RnREf`PWl0_sRbZp+h@FOM9+xT|Bw;NT z)Ao?bb4Jb&Ed=csc+;I`!Yz195@~%K0nOmmMLh$#ix*}tbKH;iAFc(_AIm6M<~uHE z!{kOX%QBsdia2-v#EtAALgGS%pTH`^9Wl(IEe^YJQ;4@!^SLFgla{z-Co^!7oClW| zlqEA)@b4n=$&SOiLt-bu$TVX;c9g%CW_9X}e&({5 zU31w4zhH?ky&`MPQ&^rbMfE=g5pMIM{>lfbpzy z!tw^jV9E9d7|{ZHSP9|ZD>=Ys_E1oOp~oVO9iX8Uq@e+rF#rE*5Rh>IvY|r#5c;$K zkF_EGRQtEhht(kAo5#o=`e-n49Eb}80c;&iAuq~2^$V662l7%p z78=+Y7@8UX5A!dp5CM`JO>dctL{|6$rq$<4Av_ zL7D&pYM{aG3q*AP9n3$~{_OuO=rB0P{>R`$=4!hsYydX?L)kt)I=FTU1L05ELyltb z*c28Z>eXW*FIZsu?@>L;Hv7a21MveKPKX0ed4!+jZ+Zd~Fg(EP(*zG~^&}nA6A;Mw z2ZVpjjs#X*#Qxj3|CuJ{Nd-}s2g^J&_z&QdZ;hUSG$Ig?3Y;?Y_rSjW=jS0$z(%nL ziwMHl;LAt&UoUt;X4eIuz+6g@vyB=oGfV#9{>hs}Pe4u;2*?O-o&D?n$=}6Kz(}nJ z_s=w5fh8Z^|M$fHKYXq)r@;gKcZ#3rA%uTT_+ddoG5$kB_PM@h#*Z)-cxCSKT>Lo) z1X$VrxjMiCmZaeOjYqxCJP`2J;Zgq_oH5V*V4NbFFi;tC^_oIH=X(9b_>Kz%riDzw zJaz(a7Jz^xw+CI&!r$K}xUK281RUgs6Y>{1`;*EX9uQFY!NZfg(kIZc4|r^a1+21& z@%J*aTm%9peIIm8OK{*8NVcp$r!(q>LqZiKJZ8wcH$qPgdb)o#XH}^&yo-AYuMz9|LLWhzAfalmg7R{Mbm+%Rs>M=m-6NI00C9{qJw9k{xmT z1!ANdvigeDlL*+79$?5c1(<&2(Fp$v5TKX>(Q|>LR!ASB=<*j2=!Y24hZqohV!$OG z0xCa1Icszo)sUZp1aiYG{shX+daxFehW00 \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG="`dirname "$PRG"`/$link" + fi + done + + saveddir=`pwd` + + M2_HOME=`dirname "$PRG"`/.. + + # make it fully qualified + M2_HOME=`cd "$M2_HOME" && pwd` + + cd "$saveddir" + # echo Using m2 at $M2_HOME +fi + # For Cygwin, ensure paths are in UNIX format before anything is touched if $cygwin ; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --unix "$M2_HOME"` [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` [ -n "$CLASSPATH" ] && @@ -85,6 +114,8 @@ fi # For Mingw, ensure paths are in UNIX format before anything is touched if $mingw ; then + [ -n "$M2_HOME" ] && + M2_HOME="`(cd "$M2_HOME"; pwd)`" [ -n "$JAVA_HOME" ] && JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" fi @@ -132,9 +163,12 @@ if [ -z "$JAVA_HOME" ] ; then echo "Warning: JAVA_HOME environment variable is not set." fi +CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher + # traverses directory structure from process work directory to filesystem root # first directory with .mvn subdirectory is considered project base directory find_maven_basedir() { + if [ -z "$1" ] then echo "Path not specified to find_maven_basedir" @@ -154,7 +188,7 @@ find_maven_basedir() { fi # end of workaround done - printf '%s' "$(cd "$basedir"; pwd)" + echo "${basedir}" } # concatenates all lines of a file @@ -164,16 +198,11 @@ concat_lines() { fi } -BASE_DIR=$(find_maven_basedir "$(dirname $0)") +BASE_DIR=`find_maven_basedir "$(pwd)"` if [ -z "$BASE_DIR" ]; then exit 1; fi -MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}; export MAVEN_PROJECTBASEDIR -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR -fi - ########################################################################################## # Extension to allow automatically downloading the maven-wrapper.jar from Maven-central # This allows using the maven wrapper in projects that prohibit checking in binary data. @@ -187,16 +216,16 @@ else echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." fi if [ -n "$MVNW_REPOURL" ]; then - wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar" + jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" else - wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar" + jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" fi while IFS="=" read key value; do - case "$key" in (wrapperUrl) wrapperUrl="$value"; break ;; + case "$key" in (wrapperUrl) jarUrl="$value"; break ;; esac done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $wrapperUrl" + echo "Downloading from: $jarUrl" fi wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" if $cygwin; then @@ -204,49 +233,42 @@ else fi if command -v wget > /dev/null; then - QUIET="--quiet" if [ "$MVNW_VERBOSE" = true ]; then echo "Found wget ... using wget" - QUIET="" fi if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget $QUIET "$wrapperUrl" -O "$wrapperJarPath" + wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" else - wget $QUIET --http-user="$MVNW_USERNAME" --http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath" + wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" fi - [ $? -eq 0 ] || rm -f "$wrapperJarPath" elif command -v curl > /dev/null; then - QUIET="--silent" if [ "$MVNW_VERBOSE" = true ]; then echo "Found curl ... using curl" - QUIET="" fi if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl $QUIET -o "$wrapperJarPath" "$wrapperUrl" -f -L + curl -o "$wrapperJarPath" "$jarUrl" -f else - curl $QUIET --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" "$wrapperUrl" -f -L + curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f fi - [ $? -eq 0 ] || rm -f "$wrapperJarPath" + else if [ "$MVNW_VERBOSE" = true ]; then echo "Falling back to using Java to download" fi - javaSource="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" + javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" # For Cygwin, switch paths to Windows format before running javac if $cygwin; then - javaSource=`cygpath --path --windows "$javaSource"` javaClass=`cygpath --path --windows "$javaClass"` fi - if [ -e "$javaSource" ]; then - if [ ! -e "$javaClass" ]; then + if [ -e "$javaClass" ]; then + if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then if [ "$MVNW_VERBOSE" = true ]; then echo " - Compiling MavenWrapperDownloader.java ..." fi # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaSource") + ("$JAVA_HOME/bin/javac" "$javaClass") fi - if [ -e "$javaClass" ]; then + if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then # Running the downloader if [ "$MVNW_VERBOSE" = true ]; then echo " - Running MavenWrapperDownloader.java ..." @@ -260,10 +282,16 @@ fi # End of extension ########################################################################################## +export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} +if [ "$MVNW_VERBOSE" = true ]; then + echo $MAVEN_PROJECTBASEDIR +fi MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" # For Cygwin, switch paths to Windows format before running java if $cygwin; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --path --windows "$M2_HOME"` [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` [ -n "$CLASSPATH" ] && @@ -283,5 +311,6 @@ exec "$JAVACMD" \ $MAVEN_OPTS \ $MAVEN_DEBUG_OPTS \ -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ + "-Dmaven.home=${M2_HOME}" \ "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/mvnw.cmd b/mvnw.cmd index 474c9d6b7..23b7079a3 100644 --- a/mvnw.cmd +++ b/mvnw.cmd @@ -1,187 +1,188 @@ -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with the License. You may obtain a copy of the License at -@REM -@REM http://www.apache.org/licenses/LICENSE-2.0 -@REM -@REM Unless required by applicable law or agreed to in writing, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Apache Maven Wrapper startup batch script, version 3.1.1 -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir -@REM -@REM Optional ENV vars -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files -@REM ---------------------------------------------------------------------------- - -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %WRAPPER_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%WRAPPER_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) -) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Maven Start Up Batch script +@REM +@REM Required ENV vars: +@REM JAVA_HOME - location of a JDK home dir +@REM +@REM Optional ENV vars +@REM M2_HOME - location of maven2's installed home dir +@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands +@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending +@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven +@REM e.g. to debug Maven itself, use +@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM ---------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM set title of command window +title %0 +@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% + +@REM set %HOME% to equivalent of $HOME +if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") + +@REM Execute a user defined script before this one +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre +@REM check for pre script, once with legacy .bat ending and once with .cmd ending +if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* +if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* +:skipRcPre + +@setlocal + +set ERROR_CODE=0 + +@REM To isolate internal variables from possible post scripts, we use another setlocal +@setlocal + +@REM ==== START VALIDATION ==== +if not "%JAVA_HOME%" == "" goto OkJHome + +echo. +echo Error: JAVA_HOME not found in your environment. >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +:OkJHome +if exist "%JAVA_HOME%\bin\java.exe" goto init + +echo. +echo Error: JAVA_HOME is set to an invalid directory. >&2 +echo JAVA_HOME = "%JAVA_HOME%" >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +@REM ==== END VALIDATION ==== + +:init + +@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". +@REM Fallback to current working directory if not found. + +set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% +IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir + +set EXEC_DIR=%CD% +set WDIR=%EXEC_DIR% +:findBaseDir +IF EXIST "%WDIR%"\.mvn goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set WDIR=%CD% +goto findBaseDir + +:baseDirFound +set MAVEN_PROJECTBASEDIR=%WDIR% +cd "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +set MAVEN_PROJECTBASEDIR=%EXEC_DIR% +cd "%EXEC_DIR%" + +:endDetectBaseDir + +IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig + +@setlocal EnableExtensions EnableDelayedExpansion +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a +@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% + +:endReadAdditionalConfig + +SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" +set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" +set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + +FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( + IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B +) + +@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +@REM This allows using the maven wrapper in projects that prohibit checking in binary data. +if exist %WRAPPER_JAR% ( + if "%MVNW_VERBOSE%" == "true" ( + echo Found %WRAPPER_JAR% + ) +) else ( + if not "%MVNW_REPOURL%" == "" ( + SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + ) + if "%MVNW_VERBOSE%" == "true" ( + echo Couldn't find %WRAPPER_JAR%, downloading it ... + echo Downloading from: %DOWNLOAD_URL% + ) + + powershell -Command "&{"^ + "$webclient = new-object System.Net.WebClient;"^ + "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ + "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ + "}"^ + "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ + "}" + if "%MVNW_VERBOSE%" == "true" ( + echo Finished downloading %WRAPPER_JAR% + ) +) +@REM End of extension + +@REM Provide a "standardized" way to retrieve the CLI args that will +@REM work with both Windows and non-Windows executions. +set MAVEN_CMD_LINE_ARGS=%* + +%MAVEN_JAVA_EXE% ^ + %JVM_CONFIG_MAVEN_PROPS% ^ + %MAVEN_OPTS% ^ + %MAVEN_DEBUG_OPTS% ^ + -classpath %WRAPPER_JAR% ^ + "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ + %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* +if ERRORLEVEL 1 goto error +goto end + +:error +set ERROR_CODE=1 + +:end +@endlocal & set ERROR_CODE=%ERROR_CODE% + +if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost +@REM check for post script, once with legacy .bat ending and once with .cmd ending +if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" +if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" +:skipRcPost + +@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' +if "%MAVEN_BATCH_PAUSE%"=="on" pause + +if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% + +cmd /C exit /B %ERROR_CODE%