From dd7be2e5ce7b17327b6e36a3181777ae36443911 Mon Sep 17 00:00:00 2001 From: Rob Spieldenner Date: Fri, 2 Jan 2015 13:15:23 -0800 Subject: [PATCH 1/3] Upgrade gradle to 2.2.1 --- gradle/wrapper/gradle-wrapper.jar | Bin 46742 -> 51018 bytes gradle/wrapper/gradle-wrapper.properties | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index faa569a9a0eedc9ff37450fed24a7efd77a86729..c97a8bdb9088d370da7e88784a7a093b971aa23a 100644 GIT binary patch delta 44103 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 delta 40005 zcmZ6yV{j#0v@M#BZQD-AR>!t&+s=+{+crD4ZQHhX(!u-AeYfh>dA~;0TJzUjm}6p0 z#(|~XfFdf&fPuq;fIvfoB)IzsCn8cH{0|yn>)-H$fPknb{!zdpwPHUxIXnRc`TuO= z|Hrn982ta>EY<&u?~MNklj(o$qx{dtlvjxu1}F%KBRB|%XmTMvW^#WwbTU&rO|mH{ zIiM^bQ}bZ@CGMI*`8(CWF_!Wh1d!r{S%FGEGW@TBm3NMhb#C_d3;6!R8^A)CEm>?h zC_K=w4a+H4V?q`>gPzvvGc}B9pB*v8++eqlDDs$z&Ts4d6Ck5-H#QJ*>4`G*kqixX2_Rg>eq`0gUww9~&vB8hSuijc0yqsn z*DjK27v;*N>7!%*RY3kHD-W-wojha+hGo?%4%6TiY75GJJa$Yg#-8>Q2IS>+ih|&^ z!Yh~b8wf?q$S<4h$)`>yN+n|owmEWEm>3<^UbkiFP#V;XepPq$lhh$N-Rn1N;_$LU z$8v(9tVEk%HVfZ!$P(&HwVb>ISGQ|??)C9uc(s*(MV zlR%_en91#IV*}XPRxE3AePBdYV2D#pvp6&5oJX2H$F>Q~pB*mYa;?P2u)e@PB-}o( zcZ3YPrd_dLH~jqlU%fEDzt5fwKvoxINkhY(_@ob+Ig&kt@=-Ga3CGeBwwzKz=*Jq# zj#V1@(5C7%{o?=!Uho)UE&AN^06W6gDmTA>?@Aq=a|xB*hYp^NL$&UW7u;nl{^Lxo zb~<%q3=a7o-jGAK*qT)Ys&wo<=pokKE~9&$4AoN#{uYMe@JoSJrukX~+4)Ixl^4pZ zM|l>Tm>a>?X$KfOv3gZ0xPKj-))G|RZhK54dRV&xm97DxJHup4EIo2zQyqK*qJM8x zn&wnxrz&3ciST9_Kif?r;5Mnco975razxCAeXKg+-=l6?qV2---D3_jhr0BJXb8cR zwC}SwZn0xHR6A6Bs^D?QA3qm6GYg4hsi53Jyd118H%**WEe?*4(>X_)OO+Fa4 zhtv*IVSBXYoW0by=xo}<;J=7J;zhdUG=@l7aGLmq9sUTC~w=ya(< z`zHV<(M1$4GxA$NeSCN>k=iurEaUktt1tg!zg(}-4To9#44EVX-N>{O=%($W>Ka?K zHc8t9 z&-)W2Nccl@n0rixr-%rFI9twWMHDAHkm4x@62s(?>9+?OEv1@lrKijgWem8JdL4jS zYF5fwKRE7!__w7e9_!+@G1=}wskrWFS5h|>BQIm=oedKcos{kneu!$GgD9vJMp+ac zEGSr+S!XcpiOoHAx!`;sz*v6M5?r8CNznxI?e zEh$mdIOcTJM2N9*(-5>s1~a|HJZFF{p{|Ol0v_gwyz0Pfh$CGo>}%Lq9rjvmgq4K& zbV`IfdK~wftk`HQ{7q09h6{mF2}a1It3<8rEJH*^8B@cl+xz+Py|J#T?$TfC>OR^u z)8Bb)W}1=EGqQ9-iCG-mp2}QTvpv}aiOA92duS8b@KlL1a8nF#EZja~!+LvYu=T7O@WTR1y zWX#m5T+FTIIX1qH#u{_~hL$vJD*t7c(ApAr+d9RWf+0X`N^0kEZvPFYt=Pccg*a5Y z>*!z+9wkN~1N<|F;9GG>MnH5_7Ny|o3v2#>Be3QKZcqVK9%Gnzhcy6H1I5SMfbwH+ zK%o&k0>MKnh}^mF1RP1TAG&#&#$!k3=-k-@=fsi9Yglea(??i$y9jB6=H>e_6?b)> z`b8IkJ^Xfy*_oqCD5MJ%*5*I80r4>3_P7GMf(mzcF@CjXa8;VnNeYJU zfU+kHk3w$z6X{#wYwd~p*DPNDi>)Zcm`#RYvdHyOJ;7r=ViX`pp#;h^%2BQTgIA;Q z^EMJG36k%W5TA4f4i>sN*anPeL5u;H?(IM%p<8fOk+V7Kqj8qcx37P%wFy!XC-8y2 zg7q0c=lph}IPhna<=H=fJH$6WZGoc^($5?ryP~JVN`_G9!dQn;j=y^SyTWP=j7`Dy ztnrCN8~yp8a4#Tyy>$P#{DfWvJwRbRU&4lP?gdIXkk5T@Bv7$GeeCJWT5`r@j-SmV zblJYLH9ZPxK|LOB>PO&QTZkWpJ4ByyJ{qfsJ;dZ(f{X$+#ELEX)+Fj?U3mI0^93@) zCd@EN(0r)9w%Y=wa5bT*S7$#`%@n>9r(+7(EycDt(Jf%#Y`b_Bw)Iv;CWr^=-Dp`B ziNBj6YNsXE(F3YB=7dSG#~$UJ>>0J7Ucmd(1SW|~#9$1XS7^+sdyqY1@0@dzH1wVh z(lKbHWBRUEs9PFPj{&DS@15I~te+U(&UM3Y)mCWK@&pYG6zYw(YdV+UmvOa`e3fiRvq|fU z)Ow(1L2UD~rkT3QZYkvNa=h*M>~@^(WCDK9c6mW&_YF|v zirS$p8fk@w+#<#2990g>=!MVBf~jms^8l&Dh2wOT@io-8w*)Yx_VGk;~_;}_jIuiX>b1*76two-L|jPaJrZ;MO3}?`N&!k zkOvPCobAvwr{VRijlOsIy`|(!6?G>KBx@Jr(NOpGaIlgv}|MrP?lrLVh{yFDeRm((BI!%k-rsdV(7 zj64b`?}zSy9+NQpjVOCYY6=OA1_y8R%ZKZAUAwj3qDpk>%kI*wBk@cIKF+Mf-ilOJ zXB02lCH8+o0jr{WK>_m_O2o}yXn?Fbd7cxql^m5c8QL+6d$_2|hiwD+jcVM&+f1fu z<4w5KUMpG~o2tw__3ITB9<@w*IapWXMpib7Ed$k?Twi*MAYZ*#Z=M_W+Vc$9t-L#* zxeBU1F)o+Ci|1m03bOkHK#QiLO66%~OHNCDU!BiBuG#0aboK=hEw94wV+HI{E%AuaY#MhJVr zB&&nw!Y%;+rT4OeBhl8{w0Ym)GwmoH+HSx8poVI%yR?SSdn;v;;HMFZg1bGkXSzL< z7SqQ{_Qs{_;}VEZi+z*Q~KmXpb<46^r6!jEA-8s5v^|sOsV#rN|%zwaF8o z)DbD10}Ydf7{fm%x2vqSkJoBt4DtMEkbyy+0&cN-kcL$HZ<@1@?gRok;}ByQ7s$Px z%N7KsrtI%q07~HGET5g`U+q`P91et}fSyLU1c;mhg}UNrueB(7U-0;#Ch2C(5=(() zCZYmCHFaDGt5{fuR-)n!vSqmC@MJY;hxRg}a`hs@2r|)M;+Et-;@BhDFW1CJyzP={ zwseibrk4yY%RSd*ng#LA$nwTW@*R1IKC8V{gv|7ifJ6#|ytyA`^286F2~~(%wUEb& zZ`#4+i9l71#KL*ZVKIO7TH`s)k`dZXOG=Ff&cE?lv&ifi*Y!ny)ZKPIhT(R$;kCS% z^$t{Y@~EHr!=|zt}1Ek3cGBN{^KYSQy)rilHsh>djD@a-Y5L^ zVRk@sO^+{uYO#~*9~3Ru-_WCIlEKG9+QXX%Sb)6kY1@1kHm?*nkK5jhFDU=Bjj3J4 z=96XdQfsoOw*oc`$&;f{g1)yRDECCC%xO9HXE(KO8wa{1 zH6G?E%SYCHui+_73nlk3X7>di;hOD>?JtppYRp8-!{O8 zY98-K<==BcK%)O0NKY4sF4q1FqU!|7js(;II8XF7Hvx&R#TxNoWYi>0c+Uao=d=Oh znErr2gEb5xG00KKknt^K%$^?RJ-l$J?hRqe~T7D@&U6S;k;(7Mt7hLGKGDU1JeQ;mWt^w4!&g0kL z>CafUJ(}|B=N*u*TG^jmX@J6yqR@}zUUDk{HSVWIc=wI&9O{{I@zVz4E8$x%iwNR; zO!(za_&yorOCsP~rSqqB9sqR?K>q+3r2d`%sceb!r{%3TN`&D*1xcsAR;e6Pi~U+m znUv0)r~ZXVty|ZCyB`H&)6^+hDqojk-Z-h&P2Rr(yGGruD&9(abI6nG?%XptrFx0- zmzNuR{{;J9j^)WNRHMQbt6tSJRobtcrJoau3w?iuR_}!U#22nUw09eM-|Z2g$Eb{l zVXthJkzHz4xvy@YT&8z`m>TCygZofD*#QF zgNlcF(^y+ltTSuGpTz>&ol65iZdA}w(urrPy=+EHCP;?iM`h=cr+W6>mUIpAS-fiE zuj8faOqL?!z+^|2wTZIB9xop#Yq}{jT%dZ649cGn2%VDt8)4-qca?}BRkTpD%;YWr!6JcnfvE34H$6e z&gPb%!_)#LNEHQ*;z~{VQXOr zp1jv0*{mCAV82~>Qoa^?wQRv1HHsXr@Uq(vizSu}23QhbP6U@Invi%c2~T{(Xqfcn zNfMVtOPq~u5wX+LJ7!e+&gZnaQl#^x+E+GI>m z9R!#WMn+oh{vOuGgOb>Z!I0gTWu}Xf>okTv9173+yeLZqV-)uiiF*5JL?+sK8j_Hx zukDGlxAK`v@n~b2)|jZ{QHf?q7=utvdAn(`F^@Wxg!uDetW8mQlNfZ>Fy zV(1+G%}dE?y0{5O;6J5BKiOU$lh3 zjtV~($q)eP48_(f0gk_X{=^6UH?t~Yhh)Q9@_-~3>8WARAux`w=mEuB=t#*@SWtpU z4OlVy7F9F`Y#)5Hs+ls384JuK49s;D-e4J3+AbepB~8jN$J$RK8Bo%N4hTpv31{<; zJWa6W7C|hdAB(}+C^783ljlSbeh(FB=_Tn9KnFC&nvOT+BF`d8aMmW+%UOtlsofOr zR&qg#i<-(2YYC602;7R6i{Lra{w?l3Jto5DjkH4W;v@OSUG+>-uzZewmceyCAz$iQ zQ=_UCLmj+UytY^=r3`<#6&21;+pKu_!e8N{%=^2(dY<%0n1HqRc_28ZOTUA*VKx{> zks07mYF=Cd{A;^gQ<&AU?)m2k94rnw9aTmoI1G$}^@S6C4r6~lB==kx`6>!aXL}*) zII*qlfkuGgu&gBWHxrjm47ZmkNv+!fZ_p?)h8POn;YQ$ z)kPjxH63FLQT0B`380!3T}Lp{zjkaXx zBvglC7Ymn;bvv%-4;q(CL)M1ggA71t626}7-jXyT$&%+0r~m0E0P(vOWl)@~o~W-@ zl|$ih6xJ12;$Dx&f!R^--rb`2IGP}~IEbYJNgtXCx8)l-C7J8-SHs+OE=CZ^6ai3EZo^&) zykP=Oo@3i}e~TE>5h7q=TqXwh?l%nxwOYw|BUY9MGWDkbdNq(FF4&E+SKB1Ff$nBo*hZ~AeZXz!(AgA3rX+5lnhO!GQmHLbviQKj4qwR5=t#q&2p+6qn(GK|SDVh=|Vdo?- zmss1NVvJNYy0ByXx@c_M;LBqq-KzQr6OogkY{gZO9W^mN2)z`WSqnQgL2l(S;!mIU zE(#E`;Zza!h9*Y*&(V;F(-Xau%M_gI;`RsV`|plyg|4knOO0YZkrP)qwMFf$LD}&w z@g>)=@ta6&cOTLU@Gk(=1&J?7*)b_i3CaT+1MBf#e3>g$R+Bv7>FHQR;er++ZC0_M zdU~z0hED-wpb3XoP+{y;k|5E41mB9Rxkd6Lm9?e46LtokA+z+d?hg}_2>VdFl~qy<%9}2;bGg7fRDD9V{Mp{zJ9W7(iZ7Bx5?+0J-dcen5w|9zlzj-Rt|v{xJvt%P z%XG!Y44Hacg%S+`C$}k!KD*eBY~|{UQROJ2-tAt@I;-?_jvZ>sPott#v?a4tz0e*k zNFb5YAzva-;tPO-MT@$p(t>*9O$*_xYF$KYU3jt_7STqwNZ?BM9cBp@yC~j&%HbWt zv4GZ+nOC%R5!{kGyTtL~wkdB=!h7!166`O@dok7$t)awOU%ay|?*nwdJosu!k6#qX zD`658_2|O(j=>D{pz2AT1x+&u=?-70F3`I74%vnD3jk!m56=7W^24g8J{GUPBNEG; zG(XFG^tU8D6hO0r~{)Ft_N%JZQ79bhw$`gUQ zAo%uVmNP#YO#_*qP{#XRR)?7UFbp8}Zn-c2Fgajgr{@=M-EYkAy-Jtwt!ZiNXkP)s zgzZ{O@c>u!qz^K6T#0e@t*qV99bX7q{ZL2^qya8x##_F&1toIH%ovx_Pz+vfg2}!w zYlF#3$6M+Kv^G~ykUlIdyV55;a?07g`u7gZOc5`!Ebs7d@H30`$b@(KWx6b^6f`#Q zUkpVY(n)u>co#7|V=sfHUvdf4f&&L|Hp5Fk>=iQ$9e*IIo=SFO?L*gg_V!+JYv+=8 z1OWydt5rz*J}_Zxi&Ph&J172(Dh8dG1jXJh#g1P}?N`_<^G=HA{Xf`l3tTs4(Bf#0 z>*P!}i^;C2voS#upxgA`n4xc+^L;T@K)%aEnTm*dVnA=?;6DP%g#OXMXO;0Li}Un@ z$MDKuU4jsi@nmEG2ns$BE2My}deULNeZUVre>k!r+@`{k*fjs$tN%>xoJO-zUzBZ1 z!`i$?!GPA|WTG2bL=;@SzCMo2`G6c7lpKO(<0qfqAqo*lx5w3&A! zO0Y^fgml3w%(tD1$5!Z_hr;=<&c!+ptGX$!>KN=Nj6QorT`oj_P+%2sdSCGo;#;N{ zb@+5+pWE~b$&_QE7I0Eo_bb9*d;oJwJ(`QO!6pr6VR2x^1~!NvW~aT}i@%;56G5}I zaPv#Y;c>9)_^Ga`oGt8m6NDrcF)%7%U#OrnZ4#erC4sz#)4xluz#UCMxiJ;V%M*=FMALzbA`@+S?VAuB>hed z0U41f8RlxX1#9PTdKh@;PtQ>M%Ho_$Sm#KE#uUmA@!LGId@?`Aa87RNI;oi>&q<--IvP!9#S$57Be9rO|*wI3G}(V+rRQ6Wv)jMN6R zV%%&cf&KC19#0WS*}k6FW8o|UgJY-y4mfXJ*+pWxuab)DK=wFwW-(E8?x-7EX zXUk@is&HU*T5Zi^;qC#aK;=IUo~*sqx7Eyg>@1BTc2?r%+o_i3w&F`0?ZFbQEa-); zag87w2;3ItFjFIwL!h{NH$m1YA1PMr*Zp~mE4sh!tE|Ka3w#C*-EHkC^ve#zn?p8H zU@U2(Zz4P`>kN!v4JNthiXzDZBmRJ#LsnVBZ|6^KgK^J+82 z6MrU&YgU#@%tZ5P?7c%$18d z9K&nkkk;GP)hZTd4<$Zc2?*+IRlXOQb&s;hr`@P^{9fr~7`h%dnl;~;3|D(p^c(a_ zo%S!#o-Xi~kmfHyzsOPPMoC$5a~m_J>eRVeYL|d(xZXOH+fafJ=??a7i$;K zT^)Jb!>R+=39y4lFH18V$mg>O;J7;XR4M=7I@T8;vL zR&7n>AwKvg&s=G(kDf^FiYj!pM1{exHz@O$(^X;;0J$P*Jo^vkJ$ffm8gU< zz~faTa?j?hcXrh-zqbVfoC6DNW5acr|1IA9r`ZFr4?PH{%~lXDo=zj-%E^;g(*!WjH#7Ka0 ze<-uVJYKuxs+^PpT^1TdOU!$aKp=TwiABO|EgmC&3%-0C+9_@5RgoVjWaJEVV+IA` z6?iCMD95D`-RMyb91QUpp^1oeT!3$wskVI%MKrQY(gn$Wu@9B;-FlRvTS}cwY_aZ^ zVKFvIlzd|AIJ6ghWSc-qlxQZJ%2Eaqax;EjslT+eFg-a>sZsCx17|I4b3`Y{`d2#G z04NV2i1GaErGxtO@y>v%Jqccy0YyN34W(1}hpYAvR47Cu3`(xii^R*)9u0lq-t0h;+x_4Q*O9&ZdpllN--*HO3N(DaU7Jjl+NSNFYB5nkD|BA zx|dI+%*?XzZh?uRx6)EaU|`&X#(V3eQ2qf&Z>8RS^NW7-+mGeDn>O`u@2Wi+^M4|^ zd+#25yE#(e2Qme?r2Ii{19!54u7@dxZG(8&WU_W-f`_OFB9Y=`|i>3-X(1mBJVQny^Y`R zBJWb|y-nQ*A`4LOAx$`PMfivS8_qu??su`oq2eOcSXr`DH@-;th%p7RhjZrnsHr?A zu8W2E&_}%hT-bv{kACDK@uBw*$b<+7Xe7QYAqo?(3&ezQCd~jOy2hpN{=Hh_hG;#bA z+ocbnhbXtZXgf5WQ0bp;wNS9*y?Dz(A6M3DFz`1`nU1!aFEKCA&znWTNEPLrMa9+D zDL-)m>TwCJlb!S$m5sHsw9O`s#Ku9z@To?rA!pSKG*IjgpOlnt^jEkMrZZ>WI0`)TUMFezZTm*NHSamLi&I=ycm^Zn=CcQ~^fRm^UqkG2FJgq@JoZi&rE| zQZqk@-sIGjMGvd@XJ3`tjU#`&%ztG7vp2jB{EH~eFf{q1F0m~|b+#K)gMrH*1O4Tz zIT;8Bv*%luTZXM@J2f%Xy~0cBNP3ICRFcv|AD}>V_4&P{fC=7`cOfoDix-Dj^k8w9 zrEH6rT^)B8OUHDEyXxMUuY*MqmKlP)qzv346s>;*QRE;|^Rhh4iQ09)8m%~hsmhpl zRFx0!h}QO44ST)zkP1kXTIwsdT6yA%AvlCas~@IO0qm%tE5u&Brore#jxv}m^v+F` zLpI+r`%1^$y20mkBgsv};~xylMJo1HGvKtW#6FZ5s_H&0tZHM$QRc+ko^9lntQ zk$}Zff)m$s>odEFv{ofn52t{BUs6v56)|K?Y6{%XYg{zBBOUL&5BmdmuX+@e;Y94y6oqc?q>;*S}=bB`BF&e;od9i$kUp0eu zM%Krbx|a2N!FQHb&Kr+0^R*RcVvQ;o*j4a`guw~-J@pxSZUaP}1yljCz6pi_s-GIP zHiGU@4=GVU%*ativ})3=K@4E#%NMw8V|h{f#djVnr%m3<({c*|QJJj&6ucUEyc^|T^tT*)Mc0>k5hhQbV%NE3zV_^-MWKwr~n*JwKx9Bb7ZBGf`lv? z<%mQkE8%A3hj>Wtr07W#8X(!qiGM7!K;Jgm)ka9o%Y~hNmAT1UtO@bA)1M=ML2Z`S zf0LO^TJtKDj6b34C_Vf)HIV=d1x}sGL19Z5|Kn_golO2WcdRD)i0a=TUP{^2+YV_) zg3Z+CT#&j-U>$(Yg~;N*{z&+Hpl$^A*(9J^sICh6%zL~|fA%G{_vJzt>EEiHE|u@q zO2oL?l$YqO&e;^*+WRBrsRxRi0Ms1C*i$=hKdAFBy0e0qxk76`%*s45LqztYX3cq? z=zSxJTlqM+aj;=W_Oa66SZosE)1q+IAZQR9kU@xQd>nw_`CLtb@XZHFu6tz6IE^vX zH<8?tA_-B4nxak~RTtax1jJ6SI0d_H7di7f?Qzy|wdxuw2?USZ$eE(JA}p0>8i@w- zRd?`2%`24Uu|tXZdFkTYeuP@Pw_;{@qIio&SIDUxE7J~N^9Ex~It$0DuC?RaTIW}J zmp6Hjw<5soF3#<)wa1;Tg~JR9n;kS)UjB*qE^S^t^mNgCqL0;sw%3WHtKaP~4gQ=2 z$c$zT+h_j^Z=9i#8V$wVw-DyqB{- zy))n!`}F?cxEQ{1;>+%(u|;d4Y3qWH-62!347D+~azwdBG5(0IMXECe3P{G5N)R5?8M-Og9F#ujzYi4>y%`+Im@wg@0Khj?T_EIH$ zQ|J7spe+tIvm-PH9?Dfsi-6VcXH8V!0>8-pX&84D3eORuSjJv^1GsKNa; zfoMeoHsr#37o*WguoL9HJ(;kpKF%3M zOU<{ULfx$4OlgHm@)Kb4H3Q)g)~!=GVHM@auCIcR#IHdsbZd| z5b(0}zfx*p9}h!+ivNfw;(x@G_P-&22WJaL3uhx!TQf$F+2zlDcFlkM~LO=t-A&$wIyqx7yv}+?ol6;Olj^4b`mTQ~qV%qKE z4oGdyq40T7+V9S{UDrFgf8QQW^ix>(OJ|AS?_Yaw{!c%50}{8rSpDt`WyVnQ)#t-c zW>26S-HId8_r~1bkx^3*0A+4(Erd1wx|qDz&;_ymQ#IHbNgI; z{3I*U)6o&E07-a$O7`2-3>10szb{~l>9ds};eTmo<)hVx?`nLu=?}M{K>Z<{r{n$mVQ5G+xL8~Y0X zN{B;rMZn+m)2~<$_+xm_^VLo$b$L-ao?%C^sL}P1M8Mgi?IGs*rH#}QwHF;gN(m`i1Gn46+t78^Mt zYZ(=lD;>$%h*&;h_H%&N-3?*smcGrxmw8B{FQRi7);@IT+=SPI7 zm_8nzmz&0-7`4-IwWvS;+$x&YrU_AgY$MGN!gD17>KF2VKsE1ykH| z$0@yE4qv!2rY5u5Se#7;S407(hSumx#=`k;*L3mbf-Wfz5xcQCsY&`c{_6?#m0o%5 zlGwi)^p(fE!k=w$^)Y-c`{#Q76o0*>;xH-QVv;x&T=~P0Fq$02dp(4`p*QxDgw=bn zPel<#z!>`{w4nMu8iL@+9QdlIsZc&W%S1`PcKi(ClPHhXrIUG4mxz_ZSS;$m97GTy zmAI=9Pu2`B%_^qM&5r|MSXF`MTkQ;%A%-c-AA58Rjh`Pe!6ZJ zlY@Wp69p7^wB$7FYYkEC6WIAY{~K7vK5}zWox>e?o!NN(T{hjl4kl60YW$b-as-y9Q3#E$w0$)q znRbhwQ)4og7PKf)0G}fmQK~@_HAhB7c)au|W${?;i+zDy-O9Mt60<#pFKPl`mUjbx z+B`<{P;)Q>3hlz>{!Upmno`>dAv#9_@V)4=V;*;gsckt+Ddwf8yuscg%53Qz(^+Rl zwSh-l?<7})F@uX}tXt60M65@{JXugj(>OoO)0ihlws^v_HVkRC$Wq*8H5ie{a{XAf ziF(PkmZ~+wgPE#Ej9k?|V2V)B;^OYLfk)Ev-qiNcc&9#TevDs5|6fPvMPnNoU}nZD z{o$(HtK#WEe*x=&#Bc(eEbSKF&GkBy+P$OS1y_|lB*u)tp?cJ?_H{`!SlgcGqdzjA zNS2Q>hN?0v*USC9?$O7$BuR4``SAQ=b?It&tJh4k+?Y~6_bw-RxQ&p^57UuwAHhI?)hLLRTO4m6DtixjbH?`RQ!+hH8r)+5bj3RMfa=8Sx20*a*B6nGU>Ic6ry5n$#mpXyRBxtjzx8-to3}G zaLF&rA!q7|USvsny___a&GhfV0*!9yNqERVQWVX$h^x=v@2xpD@tnlm0E9Gs^U}6l z9~*?*ye{i#m#{p$M-ClP8UrVWlT}_WyG*L>L#DMO(2dUH4Fi|1K+q&xgquA`GYHA0JA)C18d{+mu4*9DiRp{s4~ybOUi_Epr!?esRc|CQYAH{ttO!q4+afaYR~81d)1P}e-lil|{pyh{P^iH_k`k|O#Y&wE^(oCnO= zL$(i80By@8UQ)5TYy%e8@B_=U(>Ji`9Yi(mUBKKYgAV02=05YB9RDa zaZP2c#6>zmJe3F*Aja=fQfIs;5N$qagOejh_m5p9SLaD{>ZkKR9P+A}Ga2%;(ADVHSQYK%(J9+5cg+4-iAt3Xhkg{#2&7-k9I?!F;Kc_-2Lu62Rnc9gn3=3A*C^jO z>(lWF`OWC92}EQtsbuJj#5&EPR0y-*_fRd7LLSdEgxZsKzFFL7DBM4z=$g6^U@rpw zc?6NP{d5TRyhI`GCH{-7eoZcrSb3!}(V$poP7}43iP3>Fes6|jrfQxw0aNA;Pqrx2 zbvV}oN8JvH9^m(dlDeXG>=QaNP`~mt~#`Tmof`LK6%Oj>RP7LH?JL@uI!Q14Zb8MK8e?WE) z6v3%9(Svj-2dJWr&d9eu9dVaxyC7YK;@eNG6t}0@$=#uXuVzY;D#aW{V+=@bN#RWSOsb5R?Tio3`+B_)wY+4v8FzF zFl^dY0*)Aq+PAMQ=JgnJ`Zf*_yWC~qpSev~b^g2xoB0bwD*Kgft zc^y9=bGh*#F^Bm)kW56Q$e70s6)xjeT-8VTkF>Bn098#MTXeT>a0$dZd_Ee@MJGZm zRb5plDG9pXf?^1Rl<|5mek^herUyTjJl zhfhwoly9R-bQkUk5cXE?`4RTk?!&@}EP;hloNnErM3unCsQd~~onPqKFjJ_rqPwno z2ejt^IX!27C9Z>Yu>();1828~#l)mGYI??WX8tXud0*oXAlg!L<#J{ul|@;edI34Q zZDs?*8Y_dt>U6qjF}#}45^%cFBzeg~IZ`E={H2xFk~w;$yCtQ$mZq5)T{OvJ=E
b8&p!D-7=$&24Vvv*?a_2p5+*6Agq2FNCJ@U+y(Lv16UuC!Ahi^|dcN zj+nW47_yC#n$!MURA4AUp)2G0ka;0Wv7AF7m^K9`D7!LkPH?d3@g%Nv%0#EjXrTtM z<#bq9D^Sp%jwmwiq}^4T?>yx&@)~TM<~yR{ewPbNUbg++G05FSOq;;m<5K$WB@}=s zAJ0l&t(t+!@|jj-!Z?0Td7Z>2-Jf5i)^$vCt{Z>mIYF1kSEios(nuO*FWHa^^N#I)=j9PCes4^E%x7l zU{@{-^z4+f1hYFD2F@4xvv2)Bwk4!@Xu(Wk}?SUeY0{sSR z+iZ?-W?-zE##%8I?RNVP?Zw6${jdUT_b9j6K+V%pD3fDf2;AbP>XL3VH=PP))h&WX zUrX0Ijs!WPoLfD6-}EiCtrGy@^UsG(S~t{+Ft>n5nppYa9prbQLWL(0eMUFWwrFb4 zm;awQTFd$my}nGmA}xsQ3r%Ewh({S%_q7X4x9A>D_rB8>mt_a4+^ckZm8(^~0|JaE zbDFuUWxb^|j`4Snm`&P)Tx2Yly0ed+8+69tm|fS3rb&CfuB??=bXq{p)G5BljB;r) z4YW6hj!>+0D@E(btzGPb<`f)|jpK3Ssenpxkec=lt0Z{8vIsEA4Jo9ae84+>bG)0>b zRA(pzsq$zrKO#qXlTUz@0omREhpTstuB3~)h0~pmPs|f19ox2T+qQi=wr!(h8y(wr zI<}oo^5wbr$M?SX#~!=Js8K(vYOTHYUTdy7-3Eu|?%`3|Jl84HT-@_wI_5_w*(>z& zcZs@sgplBl6w1LjmMsb7!=K@+ z{b6cwje!jrVwWG^@dtkUk6}!99DNa<%TgdiHhW>}A^wnY(PL%#o+IuJf#O9shhG*?Z0^Fs1XcHMeo?Aj5d;w8jFOg? z$_iRz?(oU^J(I1R?8$~%xLCMaeJPW}Si9?vX(f9;*f9ysrH5F$XT!%vW%AE-9oHl% zjn`<)-;{C=x!MkOUV_+K;u;EMK$OP4y-XRyLgN;a^o6XlSGLk&GNQt!jj<4E^D&I9 z*kLx&<)$uT;HECo5bLj6>Wz%Fo$|4eg<8P%Iq!b>DRZq|PhZSq$O+(@)R+no`Q zh%@$L)@UmcpnUi)*?@i`uBrkgEbvYt)uC=opXrv|e>I z2Ag1eM>C*x!k+ROw3w^TY?hz7r+4|NYy^<4%(7dOqo2kv9H4M+$>sEpLXwV?M@l(L z&jd8M$GkYFw~bFMRd_(EGX%3!++gGshmvglyzrf?PIOCbH03$^saTXs=CLnFBtlQ_ zm}Od&@WeryOX?)K^u+QB>c4-XP+FKL{eHGmRcYL!)LZ?{{TVr%bg0WC6eE{BL6C+h zS~<%){s6O0sr-{nJdxdGhYUM0K2)=2TExvME8={Y10(D_MVVoayi|dNjGT3DyWBU- z-{of$w$jNT11h{INaYg+mL#bPMb_k{5T%o)83w2&p;I=nN^i&3Bi__|NPhO-${-mWit;7^bd=#Sfceh7JfxESw>g>??ukA3KTwUVzE*lMZFVRdu3)OsXE$y5=)zF z)cUY;)Hga97^mWWReDYh%+<*&=!pLcl!O)KFrG&STjFSz?`S{p=RW3pg;RZY#lQo0EM=x4#+((Lq~)G#UEUfTeG!kuK_v=maDY^8 z{&{re9K}CMRjViQ|F!R>C!HN2*okGDy3B66m!lwPXXa*So@Q=nSl93A`TS8EQx5=E zD59A}8K@3XEVVXIHNkiD{2iaC$Pujr4myWOj5f-YP9RB{$6yt0s)2OP)5_9Py0pQ|KK!=p%0Zdj8{G?y zWn9<c5SG$%v^Fk%EuJ`XF~=n_x;Qqly31r_Yv+0^ChJFm9Y7oh#wHYF@`l}S|MUIvqlaom+8h$?zz zokoI(TD8}>4k8+DRc!-%6O)2QZ4?V~giUN5(uLY6;dMAlAQeoQ9hFtam3J3o5^*|& z664b$yjL4_C8BJz!Td`{e8l_9@o$PiRKPGr7I^W70%DjovxL$smgq)5%{zp{wPixJ zdcl!vZYO>mUA#{i=bRV=eONJ%5fq7MR;5WYU4ibv6bLFJ8y$D!+$lCtW)<`Jt*71; z(G$sDafjB^Ltj#gBvJ3@V=|AuNDe!(JIvP(*%HwG$V3EIuuUEoVHV8Ub$rTl+>7gbDQi#6dp5x=?BK2bi-qt9!LwMkzI4n z`68}ZZUlXNyu#;2$)dxcsgNkjB(TsgW>P6>#F>*)(hk+34bwsnZr#af57bRCJocsP zI}I;pXAJX#vIV`Vf-Y5PF5BD3Yjv9N3QagV4Nr=7$7xj0%@QNU7SX(R*w?{V^C&V) z7`nUx6>WxKFSa2XgLVphg>w!Si0Lz2Ln+!t#3(ZL^Id7L}_>H{$C7AIHQj7*N|Kod*TJoHunlW{(XVYYV`7-^*tT zVkFMRIH;On@J7LeY%*)f(tWR^#5AoRHWPdl?x$e7Z7vWT1j1LO&DDl*W7GYu4{?<@w{dGmmIz;OGV~VxP>#9Tn^9Ab8AV`O9c7HP zCbC*w7DhXGeg(a$oJ@5S_IAH=&@uoVfHP=j!Xv`rM&eIuhda8>9|_=ZGCNQ z9u?!Dyi=y*ws-(E%d4gC#S8Lq3H!Me@_ z<4u^QyLjGq?Q>$%>qsJ_&EeV*Oye$Q#&#Tqqee~ji1*9Q%U=X^ z{iH)ri0l1e-Qe(h_He4Z65?Pg%&Mp>r)TBo*lz%3*T}D0o#|=%ltogLPlyqQTGK^5 zWR@g~3Q*x1G|l?Is(q_cBx{wi6(<}$S-!f3suJ$C$=|{-Bylo3L@6#b%siK)b;Lex zf1l@Ws{U{#WbZL6>_ZMdvr6CwwTu{}T$CgK>Rn~#h1V4;BR=-A zi_A03o&gR|kg-`%)Q?AO~{+jbN=2$YpKB zo(26^NQE4=IsBqgJ^oYM0mDnMpvx4GL#!bRenA~;Gr1)1C=PqSAE41Gq-j)8d(Eny zPw0p6pKilAU-6J^K5COD3ArWR zDHpgII;_$F&9Pwz{sDPIu0~EuouAxdH{bRdWwvzdB_8JC4{yMX`TrlYP0bt`7fZ}H zl;Ic*Fmhij4?L3+6cNPIS()?Yf}bCeAx;NAH0hx0JcIEir4M2+aaws;9iTrcX94-Af4RAN@p!6I9(@ zO;Iae7t&NMeJ7Q0lj^F0A*$&OcK1=8Tbpi29uXVzD>-&+EwzD~tKSc&3=dTXLz-GG zJFIj6cSy0(Vr>rkiYRX=U||0d#Mvh{7ZWC~_27awHMD)u)PbM5CW)G4;If$C;VrnE z{Yf&%L%^z_#e}6uZ6#&|j3RoP6E{!H4450HCQ!;+7NoVCo{ZKTSG@8?X{i>>ge52~ zSgpGFpU*4!34BgEUVWJxGG*QR$$ak*Cfui9?2bCFx}S2#ufSGfdPW+aQrHsAf7=g;^`oy}TDpDmcnj9u0-lgYOGqP8JGJnx(j2%1L+!b=!BPsNT7oJjX zNUilQTqvmo4|4c-A>!XoI+Kf}|KiGg(IH<1^13>!A)YHwVQ7>8sxLj_&C6NTMS-k~ zjC@1(<~B0~e_C4E4UrAOOIJU=z9pHF8TWQ{q-ArPalqp(gW77o8DFu=^k1N)*;B=K zOVKB__;?D}Or=c%GmESiq6{!KK==0SiPvZD1J=Zdik zW`5Z!p4~lFJ&%QQRjql#jyoN=EDKUM&{wYO$WX_jGNhfRSDKJBz+2aA*z|iZk}iPY z%21;<)>U#xw3rGwOqQK|@`@!IbCEKyQ1K+9Rxo6NwxI|c*Hdp{UEUp0n#*B^3gDrE zts&NjVkG)o3HIaT;S(wDpsvMRP}{LSF!iF-<@RgJ?mXX}(Eo zBF=JiOAP3^ri5@e;uo%gsnmDSYq7O1ZLPmvJcH#6w}aqz2n~oeY6*xnj1A~|4hrb! zAfBo3lxtgA1u<1aU2Y@mv=krfJw!IFwJut!pr%}wl^m2;yXmO2Do+l2aH|dkV-aBS zmJCZaI6os-JQ+jq_u_o_26f1)63BOy-kO{S9hO_v_usK zkf~@ByYMin=o5c!A=Fn0bfK6jm-Bv1I=e5xY%Zx!eB$XOJIMCZgH|DX`Z^*fuFT^C z^cxO9fu0aOgI7P;Xa`qP8I@o*OZvP#WYp3B;a}a{LiuMp?E=JQk1e%h6J=4XaERWK z?@<0L^-lbwpZHgUh19wSo}%YJg}xLlD#D(^VXdv|k8GhU>zaq5%U1(|J&xIz7okvG z(v_iox;Jr_B|Gx?Nve24)ekK zTiTwWx>UaMva=aN3Af4g<8G90%I&oXNdE(DhJ$Kj9ucM%P*v2gq@TI)5W+S^zuP>b zHnZHVswL1l*lm6YgR@qN4nXva6g?*u7|A$$%n=34UNz+ZZsWLIF%2K+<4_iF-vBNU z%=u|F$kMxFq8|AsK0VPrK3$>%NWbCqN8l0TU)D}u?I~(Ym%1j_7gp_4w91ffHv9ms z7U}*$>`<%52UXGM!vg6hJJ3AsXo1EI%-AjvUR9=#+Jd6NQv6ulCs3BG#5|BlXn!UD zyv;G}_*&v$ce7B>Of<*tz}_z`-TwNksCL~c$PQ)k#6xxR!y>v_rjVG*OaYiJY+(Ya zI$svkEGHb%Ec+9;3Q^WrwlPQUAQFFAPs=_;#Q3jr9B2@=3{~E^!2_}-%)CyOCltdG z+Z}aEPK6P)5g7Ojs%{G%e;`BM3+W91mT;*%qVa54Ku>(M|0>o@@eZYVLJ$~U39sAR z9zS-h9S2GOHw3t#XFIw(wBcIxoUwD7qFGthPtf>0?PHOX5Yatf-@3J`rHOSW4qR7D}g2f!!)K0TeM9Vh~8D=cN zV*TCM1|KONt( zE~>4iZ3W_@`eZF+WcE`U`QKl$sj;jOPs&TMh+c#vI1pNK?66{ior*|Lw;}mIT1iZ?+!C%XwEeiU4-%X6ZB#B{E8pA zUez~R*f!v4u{|_M+zoxq@t$(dalZ1j?0NsVMHl$Cj-r&7JTtD(n}*6rFZd@QNR%er zgT_cxDB&v6gV-p!e_5oAcuADU^jM3XrhnZa>dJFT&JmG-qchIX8kU ztCyGLBQ;lRLh(%COgg%n-%^E+5vsl8L3ky1gb-e<6e7Q%IIeZ;7^H={S@dBZSGxv! z!-J9#n~Y@{Su09Zc!q1OtPFliuq_*HZ1OKuybfUYb_=W82gq>$7BtW ztZsWtCJ=HNq1eDu)61;&v8;%bV@L%Wuf@+UhA&8=a_j$nx(;a{DWm<&DM$M=+7CEg zOKB8oco0I1Y|_@$#*_`8#ZSH47DcS5pbpZbMe8>+87VkCB^_U+UA~So?&5va_#rd| zt;ZB4ZW_HO288|O#Z0BcP>C@tQ$8shEL;zeQlIZ4god{Q(QVH`qGz}4v%14*V1;P! zWs+r6=0(mMD6Baj$URQMmmYFQ4;IhD9#!im(i`S<+jp_>_};ssA??wMcYIr;Yy{2e z5HY%jtdOG^VHLS!s@Gp(5o;oVVGY?{!xW(ePZ5OE2%g>EQ|=xiZPhW8@D-kY-<^`l zw36izPq^wZ7Y|aFAfL483PZg?1k~q_)a&~#6#wFk8Y|{*J>G(Seqn21z0tP*Z)y- z{x7ZZ_g9YRcA~eP3`klYRT1suvT;7;1guzK5Rt*lS4G18%Wf48`ZPJ8M!WIH|Z?9 zo>%Dc7ipZqCu#MFa_I(@q~2hyq-7+pG?tl-+@j`rf=k$Al~T!Zli0LLX>DP1*k^uj zFf!|V%Tk+l1jrW&;4LqUV!0FkzTu{~hSZQO?*%&ZFYr#7F@Z`cO$uPqC<%K;^e-S3bzi}wU7*(QeJEYJ+WN^GcxVvdPeQ>r> zKGWSZ+sc;5;xP!Vi7ujQ(AgN_H_R7uM2@@`46T<`d2ex zrwht+D59Jysug{L<17dnbq{ZbMk%J1IR7F+3)BI9@l#5U&qU=1+*>%uo2t4}!I%`@ z$>6~+>p(OTU*!3r`aLKEZt-%jt3C5_&ZcssR+MAhev3S3fTg~9-Pm(>Ji}pw>8zw* z8nNSq5PT$PLNlv`iauUkC~A_XIyCuz)CT^ue93>2gRfs?+lg>r9E@L6NH9(!QZE1$ zt){Jxs*be@&WM`u%}C{sG`b1{iIGiJD(oUvM1f9azCy8D=srsn9@B}*ZgDEXZlrw` zy>FQ=1g2|MHQ&oj(<}L_@Y*Fau#be<(pO@NbNgkA&l|MONBy#Qr4ItXrt6M0<~LKF z7@YNAr91EU!L<8p%-NAGfDZ@b6CetDX)4;C|8cof9bww`o*v=tc)uX;OK1LcaPFUV za%)W*A_NcxqA~gq36r8%PyryyRUH8pI;u0=cM71QBdZw0!`nWf`b;vrlh+6HD}}m`vTRZHRx$lSP0Ev})l~ zqXJZr^aMM#v?(>Lt-abtq6*4Z3i8JPk#5p42Lr|06toRx=#n~M3sA*Y9q1^I<=>D> z@eI$XORxxZRglsfBZSJ?$Be3*n~BdM+Q>OIAU1UtY=x`43>I#&+_1!Pv^EM_^I}XB zEe14MHD>ymQ*_6YZMrNXbb3K7PKmC!wl7Nn>Pz{IuLkHmw(1CF<+ND23CaNHP<_Agl9R~87kZ57*|A@=>*<>AvEcsU zrs`fWFp}se3{k1Hr07>toV`Y`wyYJT8dYnf@@NeaPwI%~GFAcNK@y07GG8q?0t&J5 z_rgPvIlUul4sLP2)7pd1@NjYVJGx5$V$IzT+&(&+ooip?A%5tSXG%=h@Ss5qSH13H zn7SL!GHGm#^kr+Sua@mlDK26-R0k@x~lzS84 z#k(lpvJnoYhD9EvL?xVKf?qqjXbVdyQnOTBAm?EbipW2yxeq}a4@e=;#&x+pGKxh- z+Ic&K>UbOji170o1c#wru1Eb_9J|ry#KU%nF~t3@DHW;5B0+nD6Vw#x%g3#Eu-Ru} zCVoRPt|ASY3g{E~+afZ(%;!f%(!Ez<)24ocCN`+y2sB;KM>VNI#{-Uj1VN{M;xn;& zfV@~V`Gj2#Nj(r@7vrT_t2YWv7Ga%S1W+jE3_&uGzw7GTlX+;-Lt>`GMpX&`p(Axk(9HvLL6FbjoaZ+s-H4``iJZC_<}O<9Dr7{* zx!7;oJ@B*JKWH*R0TzaY^i0}%MP~J9#|Rss zl+dX*B;SWdu~AhWBjNqYR2-R)`#%HL_cPdC%qB@b;I!1k@aHr@=53cKw@c*2JGo^4W;=G_x`PxxHl*^c5TP`=fdo7HF2E$nC=ryv&nz|gJJ)_mGX6IhOZI61G*j(tfCTy1Ft43w_@G87NCY$Htq)W5aABUz~6l zMWnoG&DP+*CH=AbQ*Iea-8xv z#P6Uw8KoWhh6GuJ({6|hAT;S658V!m2Vgt)Osh^m0vA=c!WV#t#-jOb>_!$-uE+Tk z3{NHURqgDWuT^CP)N|PP!At3>H9IRgGLNM?SQ}2=bb8lSARPFsfW) z!=O++NQQGYa%+O63$iT3==@uL8>@u~sCH_)VqK{lyrVyIY5jnDd@6wWd<`fd|N3;! z_DIpia-?RybwDA92Uge;Wt4Un)y=Sn2A3PP?R1uwkR+0^;S+939u{|^gyifE(I=0C zo%qkN_@Ck?L!v=ZA1OzeaY_u^Zi94c;~P{VbDF6ST0LB3v0cl?h^9sx-UE9DZv{GG zb2#VfSRO31)35$;5U*s8yi6{{IXS&aRkWD^EQ&=1eG~pc?R(KTPVb)>| zCsO&9Ij+aD*!)qZ%2|pNB8o8|c(%cv4!`jmcItOta?JnIBK!izS3eZ>pEZZSFB&ALA8VLU!LO|FP2iTv}zdTwTE(Mg%cx zhK(`KO7#f2^2Gzf<4D^t*iu*0wL7$1tvh~oIRO%wAw7;&w_V1iK8RgOA>?|#4Rjl# z>Na0Qr3!c}*RF1dRiedtRIf7HLQ}8MN)}F0&QErd+OR?D`~$$#Y_K)xw7nB6PLao9 zuEGG15-Xk5u&gsn8DlXy`qrVrazxVB*VtfzNj7n3R;M>GYG4ep`X^Xb;S!dQ8SCgb zdL?Kfud++09k#^VK@?STL8-Vd`rJaX`ny4P{Iql|d9=}@PO$Z%*?nirme?Ei-&n|% zEw1GrNFCd?YA)wPBIzX4`a!!E4&7n=P9d|D*%+K;Pd8sY&2t+~1NWsmoIqGM8u}>C zm^uoHxfg-0!d+Foo*`>0z2zH7zrwwi=WI~GeN|liLle>bjkk`<4H?0&oUSx)P+>dvJx88(&t^on?6N#2r+Ib8j%VgH@$6qIpu6ZrHXAMW4>Fh7IxF zu6gmUb`v6cjye3VPM@hihWOSM{!E+)C{~I(T=!+27;l{$NXHI3BhqHis zv~{BLjU7(CXBl7ZGlzJH@w%?|C5xUFWDEf-n(LYj$9vtsV7cEH z)ivNnD#%3pn=F;r^9{R*D7(E@cQ}(dPHv9A^ zBwn>J>o1$3>l!gF{e2ib{(3y&RUWXG=fw{k$Qu7feF;L4`dMBXqmVz$2*@wr7^U>z z%2q?6Jj4*T<12{#fyOI{5+@)qd=hae$}?Qv$$T#B?UDhrKlGf&Kf@(6U5t$H`6Z@8 z8U~8=`b$n$!;n~sKHxIHPP`CQ)7|o7XD{+^=Ak0mx0m1b9ikk0{J<#_R+)jo2WWx_ z=ysB1@1T8U;N~q^qt0$~MXN7a>I!kFN~0kLzHa-ASRRP-c|DY|HC^Z~45E0Qbzvifd2z0#6>SH9HJw76; z$Fnm~)xfK1;F1l8Uo?MUVBJ+~ujj5YI*ZCnI-V!esh%&B415Dll>ul@Y|Ef#2c_`~ zxFN_H_Yz;Z#F0T@C*IGKmBR8V^sN^s>7fR6n#trP_SNKpBNf+U>Ebi4i~xe zXa6D2ai*+I?1;`fCDR$Un@^IqTuqP&M?Z>3+AU2W4{e}~HwXde`|b0I0b_U{w4&dS z*jE{Nsl#7o5`UB1-ZX?S#e75YBZi;f`2YlifgiM|eP4&iP=>pY2)Ha`ghL!Ug&L@` zy(oaf%D!(b>F0OvOpkPwm-xgkvi_fLw8QH}f|wjr<9>=Av|eSo^VHtK#H6#BLXCR# zlrYNHQu^jSKmLa<(|@tC;o;ZJH<U$dv7#M@v+%L1dFE^ac zd;YyX!wA5~D$m>y2BSBT)E1@`#3aC`x~jPHEYyw1*+_^(%7$pvxeOrLw}JQ8F2%=q zaN<7%xr0W$*+lE{TBa|4UP?B_2HfmK-vcijTj|$g=yCNSZ&h5t<+;?x@vmK$Wo_rSH&e6=%z@Epza%DWG9=sWvR#<&8v5Zzs(vyG0@a-HT6 zV@&1ZA6_JW%W_^y66%(gyrzRs#610O@W({}YJlFpzg2A29Ya05gc&VwU1pQVOf5*t zhK~MgGEh>4eB`Mh--ck?;i4bk}Z&O-K<;2q%Xp@v#Z{y zmST$QBL(*^1Fk?(rngC$8sOn@;WP5QZ!_i^=dumd)|LGXxj3+5tQ3zuoUzr8IfGHn zH3T{Lf-8aRX6FNM$B!jZviaD@3J@6(WKTr61Kr3pvH4IA5NEa$3yEZ{mA;DEI%L~v z-)lo?7MO`(3ipZf_e>g+Pk~00RqhftvPlHF6KVCZyw!Q zIT;qyR40_q;sJE}T?d$^%MPQ<4!;@QgPY79jG2>^-}4JQ)nD(vP&%j)M`yO8r$`t_ z^3Z}S5fdQu6IF;x)ecJSm;3@620&lUc>>mnKJa1lyJD#g39v`?1Vb+UGHIBod;Xuw zbb(qLaVioR*algme=sdb%iBO@G5ynbbYdet6D~*~PSBqspM;3$7Yb33ICL2WjFkvr zXOGMo6_SkE@$yI5!)m!|<044po}=SQaN#0f&^`cdE+8qbFQy zqreQBnIbLmNScK@Ej~4}$Re>sExfbQRDzizxx_&(HmV4=-^)dU!);cM;Vh7*l)QxF z3uCv0MpB8)s?I5N)J2lfQ%feMK)MuFLCYnRChTU4S!+;0z1m4D9mUzAdj%Pe%ehk2 zdXV21Db9(TX&)V@YND(lr}(Nvb&MUSd^8)>fzMcR>A`p1W{D0myzkIalQ*r&Hj(Mg zwyOb}+E7ZfBAv|1QA2NQDDU8Ab26j}88+w>_RO}{&Ku3UZY=1V=IAIeW1E|8Z**uA zTNv9o^5>w~j!4W5$#p5Wl8L0^QPCuiUdbgo44J32OEi^caofy-&BY~?+y)VCEpKJD zx$Gv^HW7yTbWZY&M&<0l&4r5XDDe@4z{N}nEr`1en{lo@*Piso+kL&UKNFcNa{g^w zC^FKm1?&J*^X7BLr}XH+-xig1o46XZ(5_-{yJjFO21#G`gPP{nTt?=tvQRh__W0p)JV1x)=iXX?ds!2>rv-+U?k~di#Vc2eB;gcRid=N6Gxu8)ac08gq9C! zG3J!P2nFIgtFt17%uT$&0~XEcGBy8rmu9=DH8b~#g3s@?vmPu>Y6@D)(ml^>D9F-4 z=_U{t_2d; z$er_y>_NRsTC{`f*nMb{(E6MkdDusTevx&Tyy3B+Wz&FUR!)`7-{JKR{}p2Y-h0AK zWz66#ina;ReWS)V{CC&N&fJKSZlRL%qyW+{5TQu506vk;)l16`=96em`izE44C5bO zpPsvPr$=@83-$BFERK6@uBJ_`k)mei*xy(FE5pVf5lLCL^dL!=N~cXM$zHIWBA6D~ zmE=k|UwZc7Q(H!3yoL4f6)4_jTR$)4{i{Q&4F&13V)u&?DoOZS1BBrYNOeysk113%{ENJ)f9XQuh0^bB)q+Uwymn728E zjRWZO9yff=@~IL7?$A;7;d17Dyiq`kCC<{aQyzhR8+d|Oj%#)Wo4e0(fV%+e*X2y7@Acqo@ntGgVnEtUf|PpuO-aYz=D zxzlb1nW2%oIFn@TOEPY6IV4= zL`*a)m1xH12*z<$)ns!FXH5xgh`PM%&a%UMO%SO`f-4##G-wn7fG^T4c-(;tNV_3g zNW1=v08ZeRHk2}WAm!^C)0-}Gh6~U`(GBZ4>f9vITg4gkD{l-w&3v)RlE7XY8k2F( zwC~i`_XqO^U2sukL}wsfvJ5nu9HK*7qEw*G${SDuV^268pm<@nXaSs~_RTnF^XR=~ zG^rT~D-Zr_Ceg#dEsc#0kc5V}NmH<}3Pd_&GL zg>rNBbQ_AM;)vSBkbO4dtPi;Gs~d{ct}R{VuzPUm^p%FsCwg~f>Od`&=`tknZF-bm zQjWJ`#>mObLfUq5IPh(fe1;?B$v5od--PYrwc%fqbj(L=Pd&^%c3Qb!_B@ZACFklr z_ySB5X@ZAxfn%I46^D6b?pRKxK3s*a*xP&FRT6CVu>BaneLph9=l3u1$6dz#+6dZh zA#Xz-`T?C^Z2MsYfHw7R86vps2E!B!H`U}dgAw&b!-?AvBiT#k`=`71Y04<*CSS8C z^g{#wt0$X>@qpo`9;;a)Z$;IGY9?cuyAcJ|ph3}%2pUB#9#Ed#zMwF^lH>M<+0b6N zN-{89h1BUWV*_V;;=Yx|ZA_-5{83!FqXL7KM(Z}8{188s3=!ux>^%PwH3wIE`vDb2 z_IW{;guA8mG!TH4 zvy_u-u(py{3lEl8f}+ZnyYXvvGQA=>4Gq^9LFGS5;hdw2XxfoQm+j$!QS&@J=#-$2 zFb{X>knQN_igWTyHE27C7>pCiI!Dz^6saq5f1 zkey0y2pULyk}StpB`-x;b$5?0Jym|IL_3Rid~j{i3D<;e{_Z1lU+l(hC7x{DX? zaR@e!Hx>oVO!A8)n;LaFN89%~YH&-BN-od_A5GNGcn4{&jefH>LVHd#aRiA2IS#&*%X4?RT@LzoH-Whhc0k$Jo5t6 zmk*=#ulTYC^BcnEo*PID3q*K?zxsnA>+P=JQZJnYANONxB~P}>%L&YQAnP}nDAK6*VI0i>PQxc-0=hX*9%tNxy4+B$@X_DZ%Es$7>ed^*M%ayPlT<> z`XJJ0w9n^T=OL)RUumCsnDt5<3)U5q9aar0V+9*ZeV5-zm9fiA%fjk>EM zWUY;{MQy7Z{%zseLpt9an0mRkmy?cOxGtBgv-!Lm;X9`IzI<$@tUV4u8cEp z0s%^_t|;g-qu2vt4h8Sx+APDp0d%NfWjU6KJv1XBCQY3JZ`?+##}~z{+LOnLg@CYE z*Pb3RZ*vf{b;Tx+57s9|BA=7DA$9gjV9e3AMk4BxMzS+o0lA-t4aVfvA2LJSkb04mUh95iKKrXMhF zxC?ten2gn@+Ul?WMT~*tz+|O^s?lwQH(g5if-fL&6mV`68F_CDSQ)zx0! zKMeOVf|vF;F!$6l8ihLk3D6H5BQ_uOr@AhvJ4b%}onvIO%#8W6^uN_gn5lAwjm+1C z_yKfm%6EpB(25my=ByHJ`S)cQH3{>=8#i)Z_Hilikm8(}0u?;b#<(wa8e4ysuU(T* zNxNn6om{ZC4K62B+;7M|k~G@|{33?0OYdKDO$mqcU(NKI+o7L0hC%W>+Lkk#y};xf zt?VlfAJ;vBo!uo~m0bk{J4?+CuH(sqqOd{a`qt&d!9NafC3vjr$eV&$U=BRWt!phv=`+tLtQ9Vmp&0=`0;#eIXF%p z6B3Ai#2*Yt5lm&HXrnKd-v0*O7~v-O+?QX=7ZIZ*+SAxLT4Uf?QLkxVHfP15Kfji`e z-B`|NJZ;KSoItsyTG!7ymMgw>AnokJp3~akhs8}W9q@-WZTQhJG;DnKr z_~4rV) zLi~nh{`#nF23|}~G>)xbR)XIYN3PtO2@x*44a~JQpuOi$Tja=W zy0T!lq)v?9Knw7e$P)$>lbVKa==sI12wAK__q1z@0V3uz1?myGJZGEmMRrvjRcP{l z1|aQ@z0w`&;Dgc+Zm{Qd)%iz@?cZ{1OYu2CfDVte)Rwm;IzI^ih(}u2!dBuZ?4iDU z){XOA?;rVITMp`WHR>~d$=J!&yl%U+IhC9USJEnLN^WsVu2NYM%Zzv+=@}5X^bMJH z;#C71$P*6d8r-IDo4d3wWo@CM)gv3})SPF*oG=Enf7^jRYZm98R$Bkk2Nfg^w*ZoU z;e)Hi4Rb!;HoE%0j;OJRTMU3wDhkd~R3p&b(EHq2nc#i}0}8(W+yi7r69wJdZ0>1#Z*7}>WJ zW|Q@ekj3HSBP3O0ZV$=)gQJhjH6-;D>;R2g-`VEea(6y%nJT{G&pxYH{`I@? zaK!xSLT3D0=B$`>{T3Ruh7!|pjTn`q^m?h}_4v)}kxjVr!-J4%(&-c4(qvM2Nz&qF*#-nX0X_oRaaHB2u-7hx={5+I{KlYvVoPX*=t6IIj zC+7X(-2OTlskfjt{65#55~2J8uQUIjW+#C( zG!RIBUf@eidpX+GB@iBMU>hz#04^!NAdFG*AMylP;zWaep_y9&(uj#uD=iDRD%N%Ra$Lk}w0J1c;ij0+nad|3uqL zx150_brZYSd9Jp3aiy_S+-II>++eiIskDz*`!t{Nq^B_xu&Pb(Gp-HVTd$5gjX+9i zIlnfWCtlnj;6!1T=);MuF0H(S|L~iqdfT|u77NKAoumFp$wa_(Z8-OCE~A&V1u>Ac zs;7>+$}rux5eFzZh8yOQwiL`2$+OzH5V?n=>x)2XU-sY}<~j~$P=BZ-zEB6QZ(2ph zVn!G3GJ#{MAvjLl>>JI%jy-1ipaX{x8iE9=JGAu{+s((9ur9CDlSR$q1=YH%O=jU_ z2fz0l(Y)7r&~CUFjGsi~vXC0Rq7nPdn|-++g)TX-&kd+y1G1$!ch zTs1;j1pT3QT^|J4WNQ(h8Fu12?Y*699UT|moqgG~XTM?vARu0iN{H4$3Xf=#yb30{ z@x`%?Z$*?WW-iTeqU_y-b;9KVeqK*M1*z3%`RoP7#wfM6Q(??cdXp;4+@g0t~&G5gBGpHV>*wMX-OJBeT#7H!S` zZAcWw%p{Z~xq~lAzTB0Xi7I>4O0W2;iOlD~xpPkv)hgK~t^H0KAC~=1A_5?PF;0g8 z_ZyQB(kR2?VUYvT3L9m#up!ULu~Ds4fE?`1NtOy07GX^yOODhSL7u-e3xMzz4C$xx^AZ?U?h7gUzH~>aN(`ye6!Y^aWHi%O(d@z+oMG)KTPKl@ zKz`Xo4UL1_4)cHQHg({A*Q=(P?>#1G9(9~BY?cu)fn;~tM_kOotRW(U6`Ft(()Fg4 z795i{Fss_1Fc+f-dq-uHDBw1$`m!g6)Kq^OtYYHw?l08KJnX{PQXf&L9k8nEUA8?|ymf;!q1;q5aA6^L zGpr^IgcG{(md68~DoPIW{X7_0Vr$a;YhT#Y1MAjUQTSBGp+8dCbcQm$;30GApfcv; z&$AjE8_mTy!`=P#S?#Gv$Fqxb33ntXet_QEU$TCM)N$I*0`;j(+3_mmO*<$qrFgRp zt49*Mk-6Bj(rxU*@Hvjr@i5ByjHI@2Ue1ANRmy0kthVPr?a?uYQvD z>5VaKJ?8oSIqr$>HpU@9>LEp}Qf1%m9Z(MQ%4m$}DyoC3f}dDHcBqF~`v1zh z3b3e_HVl#?EwQAebazTixYC^qNP~c+!~z1+2nz@c(jg#?ba%I;APu4jQevS0+2!i} z@y_$?bN1|c=ly2BGiUZpy%RR?glMS1}{NFtp3#4;VHg*s_FeNTM|LbpTH(TQ5>~$>KFgFPdcLfUNkB) zRsr+W=y73(FXW-i`c#S}zrfXy?&>W@VLGmYq-&VUD#jQNId(WYmfcSaLuyHznbZs@ zy*56DW47=0Hy>nfG*^5}jG~naI6F8z&^T~P5ghCj-b&37@ZKJKA<_Q5S-|^jyd8Rh z)4wdvPJuUS$7Vrq4PMF-xbkFW_kIIZKaMGTxv0nVZ zXR6_>I9yB--iG-|Z*j&XzRX_!-DEWejE>;$UZhDr^xZK$t5QXDhu!4}gofbiRJk#Fjj9^!q)V&$ zkq@R`VZQR6(vPGRcVMgBQb$b!ghEnzWcuEqu2{?ahhK7Jyyh5Iv?i?^?O)^kI7z${ zCzfD$PD2bDB0N_?N-;pEHFra>~hs25~79)zk$!26C<& z3+43KGiQ^w3t|r62akQRI%O7&DT1e?Et1amWU=0)yBTpEPRS-71ST`xrT&3emaa~B zp+o-0LRUw2ZYR{LdobHUzS->#RFi~@slHF_C-I`{vv}7i$kr6mB1Kz2gQqwsv&-8Q zx=Skeg4qL%(G`4ag0uj#i(PSE^_g*OYTy=rl53MbHdZJWbLet0G%(WLBM{5&&B2yATh3dtsTBhZE4m+=DLXdyvI7`_isyvhp=B%NUnQ zKdz#vab$+0%QKs}Z`bTs+{JvF9|bqWDEY^AS_Dz!j0juFg=1fq#ISmYGbl! zmu>A$AMMclWcEttk>*NfPKzqc{P8f~8waB9@BdPtsL9H`hK3xX6&Z}GNQ0FWs6tJF z3Fw4U^`=exUR9(yK@pa0a>I9XFcSz!nJkql1&i%N9@g(0k=HkGf0~WYTIV_J#R4nD zG65UlCAqm6I;c33Me@9OktVQn?_gy4;wv!m3Po)`hCWUOPn`eAUNtX^in5R|k3Kph z$`FrzTbI)=0;1WQ7;>{ixT0Lyt?$YP*eVf&N4LVCGS&mErY z@GvS@dy4I0nCxgEGZF@#Rlpn4|D!$qNh?b*gUZEfVd}Ow% z?e5O&#U~<}s}Ed+V%s^j8`DeFUf7J4>UMhy3`cvo6^*%)ZY8#z^XQ+wvaMMv@Cq#V z;Ju%gEs}r#V2luRD++Be-{f&rXwC#J-h?$zfsGe+}VhQL|xC?K?&f}q5nbw$=zcdZlgcKFJ^rCeF{dgC;5#wlCkG3K>z#v>YKg_wSPA1(VN_hCI0{#&>+FV;aahE z#-(s(Hx&QjY<7d4Xahp0m%bj-fcPOqm`h}_IT_ZZ;9!ayvF}P+} zMD5J0@fEGqFai6-tT(@2AGTJte9yQm<=?j{U!5`TBq}$7N3mr<7D5MY;P1tCe64}g zSA6GanN`aWjnOO3p=AJUm1>#XBEd3%ar&}DMYTor!3qbNKw``>XSd{akon|^@69|V zNg>gN%Fbv^OOQ_xsSj8OC#VcYk@Lg^UH;nf77tI;eXRkB)VD{E%GZ|f$* z`r|b@*Cx0LjpD?wco|pC#zh|H}I#0|v9Hzg^c*3=NPaAq>L+`wu@aqFq; z^(6#maHl*!zVj=G^4_cxT0q_!;I`SzX^+f;<9wDL)&AN47lB ze^XNCJm>LROJGK*)NF2KzXh^aFW8*3BqnDrc(1#$$JKN3)=%*+p@-h9?vY?j`_aW& ziu>5zN;PJ)`%6ZRN-4@KC3dgDqryEc50cPL!*@#p$E!~{pyA7|QKRm|EKl5*1wH-B z3WX@eJIMl6`uxOmVd3n46SV6dSz(ZQ{^&RxiLj?}kThy@-WVS%9x^WRO-Dy@sQGtI zZAZAFZgiY;>Kl`K<~8-!VG%cM2QOXaxvluN7hCHpOb=JNCTc4mmYh*F?EB=)m&kGS zK^8V4?$nByP+mzNj^fR6@ehT@tDj%lRp+KzMSQ7=m*qABH_O>GxVzTg5MbQYbH%a3 zQToi??;JjoU`>*Kz&hXaoZ6g?6%tLq&5{$+d=7^UicHZQ2ir^W`!Q`4KS?3U=nS8{Pg+s6pwrq3!%_~Hy-*HT6 zkP&g<-e|jPbZ1p2ua!L1yo7*!*_!3l`_5qRz-qxSG0rV>W!9)yg$uoAZ*b2uW;&1SoH7ry0HA(+DN=DWKm;O(*U zMlELhbHaBi?gnYHL;BOw{AHEL_*u8rGQO#(NIrj_kgH#%D%B-VIKCwm(SOMALd>mt zv7?3ZPUBY@Q#<S@p`DR36Cr^lVnQXlN;PUD^M=A9eBhE(1P;ia~|}V(61E?=x;cTI5cF3OpI5K1z^`*(6=4 zKR)3MxSx=r>dW#}7>-WpaN4VZ3}^oCpi*>YeT<;q*@0`^x1ANb+bt$PXRaGZhb`Ns+z+vcSCAB)eqLXV-TCS; zD>*FC31lQqU=han9LlARHv5SH^lqMS^-!dgd{8d)LJr>Hg~ywAUG=&~nlsMSHoLsM z$Z*;LZ~ID!p^Am@R1(SU&!5(5BT(l))1d}NfOn%m@4`(5BEPndz7p(>(Hh7N_vdHx z@10E@fV0&Vo*T^hb4n^Qv-zcLK3v0J0$ckOh3ihQMNxjL2>^|d^}hY<-7;P{Lqrnh zSgi~_0J?Yxe>oeAHqdIY)BU{r3VpHbHQhC`2`x^#FiQ>MA70Mmk2O9GoD!OMVjW8H zPG%>9+SATir9<7$%4MpO$mG_azgS3HcsDjOIm>ZX*&5Y!}Zi2DN@+;qHDu+jgXmOTU3+YYwci4-P zK#N5DoP1Rs*cl;qd?&hUd}Swf1r$v|=%E;Uuh~#^RQj^rYV-2ZY!)>+VDOJT zdXP%5F)oJb_GX^1#zAX?bXpf8&@;{03619<_O~NH)R7~8bZwiNbCp6~z08UC-i*g) zL0d6Z^EWo;2~#lh8m5bTf67ZQN3%);jJ8s^W#t&$-66cG*nfE0Xj=^qIgxYLRlheD z``NTtN4-x6%;*18I>)`jRMD0!*h;~((7MK<3IvMRNRFGC1fkux{bXPyYo=BA6*?nI zpN&6ON+xgq^_jA*@XRYupE?sJi!h}(krOLf!e-n#G{ZahT1T4==3bVP?|;F-9A6*} zO!2kfyQr868-Ef-`)#;>(l6+%zkfE-PI&aV2z-vFHod4d{Ur%*KsW~o=b-x{;f&j3 zYH`TZi5Slb$4oeuJJB;C?xP#&94a(DZ%~0h+}I=i$v0H+Az>`moz7E?%tL*_hC{U2 z;U{<2?gUlRGJv(8?dSO(psb76O9XjKk=#xY^m*yDAmQFSj=F%mXn5^~6B%ks?ecYT za+=1Q{iY|0R2j{8GonM{=z_kxeiv1R4)zL$^{L}{jeHc{Rtik*9qI^UbVWteLhpCt zw!1spNZ942hvghYZ^9@pPhnR;t}mkEaF*4_D!d}1xXknX?oi6(XQ=+A&|D_C%y03PCtImm1uA%3F+ z>#P$Jjt71LPEde~92tPh{GULGvM-wod`E1sqM?R*jRfs-wF@E!jI$mjxi8!D&*gvi zU-=t_Ao|UF6LEqJ2;Lop{xZkkc)Jj5n>+yX2KXS>YZowq4vBHcyaOn`(osR~ON`Pxiz=z=q))O68#YYM&MJIrbwOoQ{ zx^<@`fc68`brck?D`0aBSVE%&k`YQ@_-Y%lOaZup_X>#rI+F2%kOoHEbjiqZ-}yQv zFks_`k6h6D2c92ngAWU?Cxclu(IQ#5r@G(I0ibyr6coBYFhrhuNRh0OGiI^fxv?_>nR!NRJtI zs}+|H(FyxU3>0YffqtWqNkCVD5$RKM{(sp*L_lDEmqmg<5fEkZhYBpAl?KWBuk zujbpO4%Kgbez3A80Oo=1n-Rh|+i{T{GM7qQvh6nkqry7CWolR-gd9fQdCB#+rq#b( z!@5Yri|wpPqeuk}zy(XdDm9VcDBzeMTw)3U*LU7cBC1BC>GL9%-z;q?}BC?Jv$Y@quxx&IC&prA-x z0d~d$<&6S{*TZ{R=45*iWo|eTa0vqp+5!91GPfDMEJz^G5J*GZkRO0` zu`9snOqgo9#Ge~-rIBz2XqJ8Hze*xlVBe)XkS~gW`5~ZcyXuar+)HpO1}vkR^gj+q o{1YN>H{uWB))gyCg)p2tdNK_)48TW-ik%Ck9(eo*3lV4k1A&P&ssI20 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 061b536b..5344be27 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Tue Apr 02 11:45:56 PDT 2013 +#Fri Jan 02 13:14:58 PST 2015 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=http\://services.gradle.org/distributions/gradle-1.5-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-bin.zip From 4872d34eec5f84bbf40775334e750a201378b75f Mon Sep 17 00:00:00 2001 From: Rob Spieldenner Date: Mon, 5 Jan 2015 11:02:56 -0800 Subject: [PATCH 2/3] Build upgrades --- CHANGES.md => CHANGELOG.md | 0 build.gradle | 131 +++------------------------------ codequality/HEADER | 13 ---- core/build.gradle | 15 ++++ example-github/build.gradle | 6 ++ example-wikipedia/build.gradle | 6 ++ gradle.properties | 1 - gradle/buildscript.gradle | 11 --- gradle/check.gradle | 26 ------- gradle/convention.gradle | 101 ------------------------- gradle/license.gradle | 10 --- gradle/maven.gradle | 70 ------------------ gradle/netflix-oss.gradle | 1 - gradle/release.gradle | 61 --------------- gson/build.gradle | 13 ++++ jackson/build.gradle | 14 ++++ jaxrs/build.gradle | 15 ++++ ribbon/build.gradle | 14 ++++ sax/build.gradle | 13 ++++ 19 files changed, 108 insertions(+), 413 deletions(-) rename CHANGES.md => CHANGELOG.md (100%) delete mode 100644 codequality/HEADER create mode 100644 core/build.gradle delete mode 100644 gradle/buildscript.gradle delete mode 100644 gradle/check.gradle delete mode 100644 gradle/convention.gradle delete mode 100644 gradle/license.gradle delete mode 100644 gradle/maven.gradle delete mode 100644 gradle/netflix-oss.gradle delete mode 100644 gradle/release.gradle create mode 100644 gson/build.gradle create mode 100644 jackson/build.gradle create mode 100644 jaxrs/build.gradle create mode 100644 ribbon/build.gradle create mode 100644 sax/build.gradle diff --git a/CHANGES.md b/CHANGELOG.md similarity index 100% rename from CHANGES.md rename to CHANGELOG.md diff --git a/build.gradle b/build.gradle index 3583c47a..95a5c84f 100644 --- a/build.gradle +++ b/build.gradle @@ -1,127 +1,20 @@ -// Establish version and status -ext.githubProjectName = rootProject.name // Change if github project name is not the same as the root project's name - -buildscript { - repositories { - mavenLocal() - mavenCentral() - } - apply from: file('gradle/buildscript.gradle'), to: buildscript -} - -allprojects { - if (JavaVersion.current().isJava8Compatible()) { - tasks.withType(Javadoc) { - options.addStringOption('Xdoclint:none', '-quiet') // Doclint is onerous in Java 8. - } - } - repositories { - mavenLocal() - mavenCentral() - maven { url 'https://oss.sonatype.org/content/repositories/releases/' } - } +plugins { + id 'nebula.netflixoss' version '2.2.2' } -apply from: file('gradle/convention.gradle') -apply from: file('gradle/maven.gradle') -if (!JavaVersion.current().isJava8Compatible()) { - apply from: file('gradle/check.gradle') // FindBugs is incompatible with Java 8. +ext { + githubProjectName = rootProject.name // Change if github project name is not the same as the root project's name } -apply from: file('gradle/license.gradle') -apply from: file('gradle/release.gradle') -apply plugin: 'idea' subprojects { - apply from: rootProject.file('dagger.gradle') - group = "com.netflix.${githubProjectName}" // TEMPLATE: Set to organization of project -} - -project(':feign-core') { - apply plugin: 'java' - - test { - useTestNG() - } - - dependencies { - testCompile 'com.google.guava:guava:14.0.1' - testCompile 'com.google.code.gson:gson:2.2.4' - testCompile 'com.fasterxml.jackson.core:jackson-databind:2.2.2' - testCompile 'org.testng:testng:6.8.5' - testCompile 'com.google.mockwebserver:mockwebserver:20130706' - } -} - -project(':feign-sax') { - apply plugin: 'java' - - test { - useTestNG() - } - - dependencies { - compile project(':feign-core') - testCompile 'com.google.guava:guava:14.0.1' - testCompile 'org.testng:testng:6.8.5' - } -} - -project(':feign-gson') { - apply plugin: 'java' + apply plugin: 'nebula.netflixoss' - test { - useTestNG() - } - - dependencies { - compile project(':feign-core') - compile 'com.google.code.gson:gson:2.2.4' - testCompile 'org.testng:testng:6.8.5' - } -} - -project(':feign-jackson') { - apply plugin: 'java' - - test { - useTestNG() - } - - dependencies { - compile project(':feign-core') - compile 'com.fasterxml.jackson.core:jackson-databind:2.2.2' - testCompile 'org.testng:testng:6.8.5' - testCompile 'com.google.guava:guava:14.0.1' - } -} - -project(':feign-jaxrs') { - apply plugin: 'java' - - test { - useTestNG() - } - - dependencies { - compile project(':feign-core') - compile 'javax.ws.rs:jsr311-api:1.1.1' - testCompile project(':feign-gson') - testCompile 'com.google.guava:guava:14.0.1' - testCompile 'org.testng:testng:6.8.5' - } -} - -project(':feign-ribbon') { - apply plugin: 'java' - - test { - useTestNG() - } - - dependencies { - compile project(':feign-core') - compile 'com.netflix.ribbon:ribbon-loadbalancer:2.0-RC5' - testCompile 'org.testng:testng:6.8.5' - testCompile 'com.google.mockwebserver:mockwebserver:20130706' + repositories { + jcenter() + //mavenLocal() + //mavenCentral() + //maven { url 'https://oss.sonatype.org/content/repositories/releases/' } } + apply from: rootProject.file('dagger.gradle') + group = "com.netflix.${githubProjectName}" // TEMPLATE: Set to organization of project } diff --git a/codequality/HEADER b/codequality/HEADER deleted file mode 100644 index 3102e4b4..00000000 --- a/codequality/HEADER +++ /dev/null @@ -1,13 +0,0 @@ -Copyright ${year} Netflix, Inc. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/core/build.gradle b/core/build.gradle new file mode 100644 index 00000000..2600e5fd --- /dev/null +++ b/core/build.gradle @@ -0,0 +1,15 @@ +apply plugin: 'java' + +sourceCompatibility = 1.6 + +test { + useTestNG() +} + +dependencies { + testCompile 'com.google.guava:guava:14.0.1' + testCompile 'com.google.code.gson:gson:2.2.4' + testCompile 'com.fasterxml.jackson.core:jackson-databind:2.2.2' + testCompile 'org.testng:testng:6.8.5' + testCompile 'com.google.mockwebserver:mockwebserver:20130706' +} diff --git a/example-github/build.gradle b/example-github/build.gradle index 5203be2b..21d34549 100644 --- a/example-github/build.gradle +++ b/example-github/build.gradle @@ -1,5 +1,11 @@ +plugins { + id 'nebula.provided-base' version '2.0.1' +} + apply plugin: 'java' +sourceCompatibility = 1.6 + dependencies { compile project(':feign-core') compile project(':feign-gson') diff --git a/example-wikipedia/build.gradle b/example-wikipedia/build.gradle index 2aa0efd9..4b2accf1 100644 --- a/example-wikipedia/build.gradle +++ b/example-wikipedia/build.gradle @@ -1,5 +1,11 @@ +plugins { + id 'nebula.provided-base' version '2.0.1' +} + apply plugin: 'java' +sourceCompatibility = 1.6 + dependencies { compile project(':feign-core') compile project(':feign-gson') diff --git a/gradle.properties b/gradle.properties index 324d26cf..e69de29b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1 +0,0 @@ -version=6.2.0-SNAPSHOT diff --git a/gradle/buildscript.gradle b/gradle/buildscript.gradle deleted file mode 100644 index 0b6da7ce..00000000 --- a/gradle/buildscript.gradle +++ /dev/null @@ -1,11 +0,0 @@ -// Executed in context of buildscript -repositories { - // Repo in addition to maven central - repositories { maven { url 'http://dl.bintray.com/content/netflixoss/external-gradle-plugins/' } } // For gradle-release -} -dependencies { - classpath 'nl.javadude.gradle.plugins:license-gradle-plugin:0.6.1' - classpath 'com.mapvine:gradle-cobertura-plugin:0.1' - classpath 'gradle-release:gradle-release:1.1.5' - classpath 'org.ajoberstar:gradle-git:0.5.0' -} diff --git a/gradle/check.gradle b/gradle/check.gradle deleted file mode 100644 index a3e4b4e7..00000000 --- a/gradle/check.gradle +++ /dev/null @@ -1,26 +0,0 @@ -subprojects { -// Checkstyle -apply plugin: 'checkstyle' -checkstyle { - ignoreFailures = true - configFile = rootProject.file('codequality/checkstyle.xml') -} - -// FindBugs -apply plugin: 'findbugs' -findbugs { - ignoreFailures = true -} - -// PMD -apply plugin: 'pmd' -//tasks.withType(Pmd) { reports.html.enabled true } - -apply plugin: 'cobertura' -cobertura { - sourceDirs = sourceSets.main.java.srcDirs - format = 'html' - includes = ['**/*.java', '**/*.groovy'] - excludes = [] -} -} diff --git a/gradle/convention.gradle b/gradle/convention.gradle deleted file mode 100644 index c4658fc3..00000000 --- a/gradle/convention.gradle +++ /dev/null @@ -1,101 +0,0 @@ -// GRADLE-2087 workaround, perform after java plugin -status = project.hasProperty('preferredStatus')?project.preferredStatus:(version.contains('SNAPSHOT')?'snapshot':'release') - -subprojects { project -> - apply plugin: 'java' // Plugin as major conventions - - sourceCompatibility = 1.6 - - // Restore status after Java plugin - status = rootProject.status - - task sourcesJar(type: Jar, dependsOn:classes) { - from sourceSets.main.allSource - classifier 'sources' - extension 'jar' - } - - task javadocJar(type: Jar, dependsOn:javadoc) { - from javadoc.destinationDir - classifier 'javadoc' - extension 'jar' - } - - configurations.add('sources') - configurations.add('javadoc') - configurations.archives { - extendsFrom configurations.sources - extendsFrom configurations.javadoc - } - - // When outputing to an Ivy repo, we want to use the proper type field - gradle.taskGraph.whenReady { - def isNotMaven = !it.hasTask(project.uploadMavenCentral) - if (isNotMaven) { - def artifacts = project.configurations.sources.artifacts - def sourceArtifact = artifacts.iterator().next() - sourceArtifact.type = 'sources' - } - } - - artifacts { - sources(sourcesJar) { - // Weird Gradle quirk where type will be used for the extension, but only for sources - type 'jar' - } - javadoc(javadocJar) { - type 'javadoc' - } - } - - configurations { - provided { - description = 'much like compile, but indicates you expect the JDK or a container to provide it. It is only available on the compilation classpath, and is not transitive.' - transitive = true - visible = true - } - } - - project.sourceSets { - main.compileClasspath += project.configurations.provided - main.runtimeClasspath -= project.configurations.provided - test.compileClasspath += project.configurations.provided - test.runtimeClasspath += project.configurations.provided - } -} - -apply plugin: 'github-pages' // Used to create publishGhPages task - -def docTasks = [:] -[Javadoc,ScalaDoc,Groovydoc].each{ Class docClass -> - def allSources = allprojects.tasks*.withType(docClass).flatten()*.source - if (allSources) { - def shortName = docClass.simpleName.toLowerCase() - def docTask = task "aggregate${shortName.capitalize()}"(type: docClass, description: "Aggregate subproject ${shortName}s") { - source = allSources - destinationDir = file("${project.buildDir}/docs/${shortName}") - doFirst { - def classpaths = allprojects.findAll { it.plugins.hasPlugin(JavaPlugin) }.collect { it.sourceSets.main.compileClasspath } - classpath = files(classpaths) - } - } - docTasks[shortName] = docTask - processGhPages.dependsOn(docTask) - } -} - -githubPages { - repoUri = "git@github.com:Netflix/${rootProject.githubProjectName}.git" - pages { - docTasks.each { shortName, docTask -> - from(docTask.outputs.files) { - into "docs/${shortName}" - } - } - } -} - -// Generate wrapper, which is distributed as part of source to alleviate the need of installing gradle -task createWrapper(type: Wrapper) { - gradleVersion = '1.5' -} diff --git a/gradle/license.gradle b/gradle/license.gradle deleted file mode 100644 index abd2e2c0..00000000 --- a/gradle/license.gradle +++ /dev/null @@ -1,10 +0,0 @@ -// Dependency for plugin was set in buildscript.gradle - -subprojects { -apply plugin: 'license' //nl.javadude.gradle.plugins.license.LicensePlugin -license { - header rootProject.file('codequality/HEADER') - ext.year = Calendar.getInstance().get(Calendar.YEAR) - skipExistingHeaders true -} -} diff --git a/gradle/maven.gradle b/gradle/maven.gradle deleted file mode 100644 index 817846d7..00000000 --- a/gradle/maven.gradle +++ /dev/null @@ -1,70 +0,0 @@ -// Maven side of things -subprojects { - apply plugin: 'maven' // Java plugin has to have been already applied for the conf2scope mappings to work - apply plugin: 'signing' - - signing { - required { gradle.taskGraph.hasTask(uploadMavenCentral) } - sign configurations.archives - } - -/** - * Publishing to Maven Central example provided from http://jedicoder.blogspot.com/2011/11/automated-gradle-project-deployment-to.html - * artifactory will execute uploadArchives to force generation of ivy.xml, and we don't want that to trigger an upload to maven - * central, so using custom upload task. - */ -task uploadMavenCentral(type:Upload, dependsOn: signArchives) { - configuration = configurations.archives - onlyIf { ['release', 'snapshot'].contains(project.status) } - repositories.mavenDeployer { - beforeDeployment { signing.signPom(it) } - - // To test deployment locally, use the following instead of oss.sonatype.org - //repository(url: "file://localhost/${rootProject.rootDir}/repo") - - def sonatypeUsername = rootProject.hasProperty('sonatypeUsername')?rootProject.sonatypeUsername:'' - def sonatypePassword = rootProject.hasProperty('sonatypePassword')?rootProject.sonatypePassword:'' - - repository(url: 'https://oss.sonatype.org/service/local/staging/deploy/maven2') { - authentication(userName: sonatypeUsername, password: sonatypePassword) - } - - snapshotRepository(url: 'https://oss.sonatype.org/content/repositories/snapshots/') { - authentication(userName: sonatypeUsername, password: sonatypePassword) - } - - // Prevent datastamp from being appending to artifacts during deployment - uniqueVersion = false - - // Closure to configure all the POM with extra info, common to all projects - pom.project { - name "${project.name}" - description "${project.name} developed by Netflix" - developers { - developer { - id 'netflixgithub' - name 'Netflix Open Source Development' - email 'talent@netflix.com' - } - } - licenses { - license { - name 'The Apache Software License, Version 2.0' - url 'http://www.apache.org/licenses/LICENSE-2.0.txt' - distribution 'repo' - } - } - url "https://github.com/Netflix/${rootProject.githubProjectName}" - scm { - connection "scm:git:git@github.com:Netflix/${rootProject.githubProjectName}.git" - url "scm:git:git@github.com:Netflix/${rootProject.githubProjectName}.git" - developerConnection "scm:git:git@github.com:Netflix/${rootProject.githubProjectName}.git" - } - issueManagement { - system 'github' - url "https://github.com/Netflix/${rootProject.githubProjectName}/issues" - } - } - } - } -} diff --git a/gradle/netflix-oss.gradle b/gradle/netflix-oss.gradle deleted file mode 100644 index a87bc54e..00000000 --- a/gradle/netflix-oss.gradle +++ /dev/null @@ -1 +0,0 @@ -apply from: 'http://artifacts.netflix.com/gradle-netflix-local/artifactory.gradle' diff --git a/gradle/release.gradle b/gradle/release.gradle deleted file mode 100644 index 7979dc3a..00000000 --- a/gradle/release.gradle +++ /dev/null @@ -1,61 +0,0 @@ -apply plugin: 'release' - -[ uploadIvyLocal: 'uploadLocal', uploadArtifactory: 'artifactoryPublish', buildWithArtifactory: 'build' ].each { key, value -> - // Call out to compile against internal repository - task "${key}"(type: GradleBuild) { - startParameter = project.gradle.startParameter.newInstance() - doFirst { - startParameter.projectProperties = [status: project.status, preferredStatus: project.status] - } - startParameter.addInitScript( file('gradle/netflix-oss.gradle') ) - startParameter.getExcludedTaskNames().add('check') - tasks = [ 'build', value ] - } -} - -// Marker task for following code to key in on -task releaseCandidate(dependsOn: release) -task forceCandidate { - onlyIf { gradle.taskGraph.hasTask(releaseCandidate) } - doFirst { project.status = 'candidate' } -} -task forceRelease { - onlyIf { !gradle.taskGraph.hasTask(releaseCandidate) } - doFirst { project.status = 'release' } -} -release.dependsOn([forceCandidate, forceRelease]) - -task uploadMavenCentral(dependsOn: subprojects.tasks.uploadMavenCentral) -task releaseSnapshot(dependsOn: [uploadArtifactory, uploadMavenCentral]) - -// Ensure our versions look like the project status before publishing -task verifyStatus << { - def hasSnapshot = version.contains('-SNAPSHOT') - if (project.status == 'snapshot' && !hasSnapshot) { - throw new GradleException("Version (${version}) needs -SNAPSHOT if publishing snapshot") - } -} -uploadArtifactory.dependsOn(verifyStatus) -uploadMavenCentral.dependsOn(verifyStatus) - -// Ensure upload happens before taggging, hence upload failures will leave repo in a revertable state -preTagCommit.dependsOn([uploadArtifactory, uploadMavenCentral]) - - -gradle.taskGraph.whenReady { taskGraph -> - def hasRelease = taskGraph.hasTask('commitNewVersion') - def indexOf = { return taskGraph.allTasks.indexOf(it) } - - if (hasRelease) { - assert indexOf(build) < indexOf(unSnapshotVersion), 'build target has to be after unSnapshotVersion' - assert indexOf(uploadMavenCentral) < indexOf(preTagCommit), 'preTagCommit has to be after uploadMavenCentral' - assert indexOf(uploadArtifactory) < indexOf(preTagCommit), 'preTagCommit has to be after uploadArtifactory' - } -} - -// Prevent plugin from asking for a version number interactively -ext.'gradle.release.useAutomaticVersion' = "true" - -release { - git.requireBranch = null -} diff --git a/gson/build.gradle b/gson/build.gradle new file mode 100644 index 00000000..6e6252cb --- /dev/null +++ b/gson/build.gradle @@ -0,0 +1,13 @@ +apply plugin: 'java' + +sourceCompatibility = 1.6 + +test { + useTestNG() +} + +dependencies { + compile project(':feign-core') + compile 'com.google.code.gson:gson:2.2.4' + testCompile 'org.testng:testng:6.8.5' +} diff --git a/jackson/build.gradle b/jackson/build.gradle new file mode 100644 index 00000000..edd2e0d4 --- /dev/null +++ b/jackson/build.gradle @@ -0,0 +1,14 @@ +apply plugin: 'java' + +sourceCompatibility = 1.6 + +test { + useTestNG() +} + +dependencies { + compile project(':feign-core') + compile 'com.fasterxml.jackson.core:jackson-databind:2.2.2' + testCompile 'org.testng:testng:6.8.5' + testCompile 'com.google.guava:guava:14.0.1' +} diff --git a/jaxrs/build.gradle b/jaxrs/build.gradle new file mode 100644 index 00000000..a3f6b1ac --- /dev/null +++ b/jaxrs/build.gradle @@ -0,0 +1,15 @@ +apply plugin: 'java' + +sourceCompatibility = 1.6 + +test { + useTestNG() +} + +dependencies { + compile project(':feign-core') + compile 'javax.ws.rs:jsr311-api:1.1.1' + testCompile project(':feign-gson') + testCompile 'com.google.guava:guava:14.0.1' + testCompile 'org.testng:testng:6.8.5' +} diff --git a/ribbon/build.gradle b/ribbon/build.gradle new file mode 100644 index 00000000..a01cfe09 --- /dev/null +++ b/ribbon/build.gradle @@ -0,0 +1,14 @@ +apply plugin: 'java' + +sourceCompatibility = 1.6 + +test { + useTestNG() +} + +dependencies { + compile project(':feign-core') + compile 'com.netflix.ribbon:ribbon-loadbalancer:2.0-RC5' + testCompile 'org.testng:testng:6.8.5' + testCompile 'com.google.mockwebserver:mockwebserver:20130706' +} diff --git a/sax/build.gradle b/sax/build.gradle new file mode 100644 index 00000000..dbb9b9a6 --- /dev/null +++ b/sax/build.gradle @@ -0,0 +1,13 @@ +apply plugin: 'java' + +sourceCompatibility = 1.6 + +test { + useTestNG() +} + +dependencies { + compile project(':feign-core') + testCompile 'com.google.guava:guava:14.0.1' + testCompile 'org.testng:testng:6.8.5' +} From 3c5f63ad4ccca6e092d32797ab6265abe0fad2bb Mon Sep 17 00:00:00 2001 From: Rob Spieldenner Date: Mon, 5 Jan 2015 12:16:13 -0800 Subject: [PATCH 3/3] Fix references for IDEs to take lists --- dagger.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dagger.gradle b/dagger.gradle index 59996026..98c2c074 100644 --- a/dagger.gradle +++ b/dagger.gradle @@ -92,7 +92,7 @@ rootProject.idea.project.ipr.withXml { projectXml -> tasks.ideaModule.dependsOn(prepareAnnotationGeneratedSourceDirs) idea.module { - scopes.PROVIDED.plus += project.configurations.daggerCompiler + scopes.PROVIDED.plus += [project.configurations.daggerCompiler] iml.withXml { xml-> def moduleSource = xml.asNode().component.find { it.@name = 'NewModuleRootManager' }.content[0] moduleSource.appendNode('sourceFolder', [url: "file://\$MODULE_DIR\$/${relativePath(annotationGeneratedSources)}", isTestSource: false]) @@ -103,7 +103,7 @@ idea.module { tasks.eclipseClasspath.dependsOn(prepareAnnotationGeneratedSourceDirs) eclipse.classpath { - plusConfigurations += project.configurations.daggerCompiler + plusConfigurations += [project.configurations.daggerCompiler] } tasks.eclipseClasspath {