From d4f3e8a816f8e254ed73ad31e017bbf33e189b55 Mon Sep 17 00:00:00 2001 From: Filip Hrisafov Date: Sun, 4 Oct 2020 11:11:21 +0200 Subject: [PATCH 1/5] Lowest supported IntelliJ is 2019.3 --- .github/workflows/main.yml | 2 +- build.gradle | 6 ++---- gradle.properties | 2 +- src/main/resources/META-INF/plugin.xml | 2 +- 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d10817a9..573f19ae 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -7,7 +7,7 @@ jobs: strategy: fail-fast: false matrix: - ideaVersion: [2019.1, 2019.2, 2019.3, 2020.1, LATEST-EAP-SNAPSHOT] + ideaVersion: [2019.3, 2020.1, 2020.2, LATEST-EAP-SNAPSHOT] name: 'IDEA ${{ matrix.ideaVersion }}' env: IDEA_VERSION: ${{ matrix.ideaVersion }} diff --git a/build.gradle b/build.gradle index a71cf1e1..3717345e 100644 --- a/build.gradle +++ b/build.gradle @@ -1,5 +1,5 @@ plugins { - id "org.jetbrains.intellij" version "0.4.18" + id "org.jetbrains.intellij" version "0.4.26" id "com.github.hierynomus.license" version "0.14.0" id "de.undercouch.download" version "4.0.4" } @@ -34,9 +34,7 @@ intellij { alternativeIdePath idePath updateSinceUntilBuild false pluginName 'MapStruct-Intellij-Plugin' - if ( !(version.startsWith('2018') || version.startsWith('2019.1'))) { - plugins 'java' - } + plugins 'java' } // Simple function to load change-notes.html and description.html into valid text for plugin.xml diff --git a/gradle.properties b/gradle.properties index 961559e3..70a3f33a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ # https://www.jetbrains.com/intellij-repository/releases # https://www.jetbrains.com/intellij-repository/snapshots -ideaVersion = 2019.1 +ideaVersion = 2019.3 ideaType = IC sources = true isEAP = false diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 9b1a8fd2..aa3efd40 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -24,7 +24,7 @@ MapStruct - + From 5bcb0051a8f671d8df285e77b9aeae0e64dba502 Mon Sep 17 00:00:00 2001 From: Filip Hrisafov Date: Sun, 4 Oct 2020 11:12:20 +0200 Subject: [PATCH 2/5] Update gradle to 6.6.1 --- gradle/wrapper/gradle-wrapper.jar | Bin 55741 -> 58694 bytes gradle/wrapper/gradle-wrapper.properties | 2 +- gradlew | 51 ++++++++++++++--------- gradlew.bat | 21 +++++++++- 4 files changed, 52 insertions(+), 22 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 457aad0d98108420a977756b7145c93c8910b076..490fda8577df6c95960ba7077c43220e5bb2c0d9 100644 GIT binary patch delta 32155 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 delta 29422 zcmZ6xV{k4^v^1JzC)shbW83zV9ox2T+sPB#c6Myrwr$(C?)%+S^_^R{YJN=3Os!v2 z-D`FC@c6H;hF=i!Qoq1a6PXs!;;~UsP(eVTpg=%C1VFeO?&f&@+bPHM%ODw!_BUk& zG~PRcg8bj-h~WR-+Bupr{QBRs_%$@p|5FPq5egIw^?!?%ubHm?f&c+Ihfb_B#Y&U~ zMFr9uSsOSxMXPG5p{SvL$D|wU<3bqm2Sx+}kmu3<2UO55r?Y%qZoFLiJRjbe_3%O1 z!|+jt?FR&aN{_os4U0f@wHEF&S5v0-s{reyX`qM-^dTDz+m`(=1n*sc9~&E+L{Xmh zcSb=#nAK4p49gDQ#zblVwuNz%GHfGD*}!vG>+^Eg3)%KJshgtV2nv9kM*3@}9>Ud! zBuR>aRVdNHKVKbXaJOb@kHFX{sZ*MDN^Y>Wgs7PUIdA9<&JCz`1tz2y7%-qFo#VFfjb-u7j`C8A8;4=#;$>?d z@aXnO?X82wb4@9+POy)jcl4p&YE@N4G`_sSP(3(Gx9PrO^X~SELbKG0Oh}U{s6oXs zrKv(T2llVRY_%knLB&2)OgTsB3f8mD07~Gxdwzc}9+sO*8s%86@+xJ;D?gA{Y(sC5Ut5orhh}ZCR8&yxMTd1+(6*E_U z2<$PjSZ6Ol3@vxxJkBl~{oG?g9lgz`c;Cr8Z(qt=#QdvJG_X)qNvI_ZdHg3nqUH{M z$&2Mud&w~xd502dU`V3F5*^4o;mVdsed9Q#bCiK74eM>GHZx-pf))k~xzwv(4THG8 zdpE8xIn?qhTlmZ~u=~@g1NYH#A=ECADF#30O4r0Lx!QzrTpYG8Tz}^&9Sy+nDz8po z%TFho%1LpAxI(6J1bo!)-zz?dz;QQfy0@ftthj_~v9cueO+pdd7y-#3#e}RTYdEzj zU|f$XV(d{nM>6`~72~~wI}&Y%MfCO|_BdtMS5AiR2A2(*AoTGx<#PZVtF$(C65Zyr z!f+QkKB?{R)&&edx~y;IkqKHN%8Q+?OmJdakdipU_?DL14)n#w#BD|C#)2Fbk!PEe zPs89hw#o4_5^iS^alnxrSMF`ne>BZPl63qVam$dWqKD1X7-xyx{5z(17+@$Qamz-J zDa8~8X71+jmul;my$+frIre;{W^ki2LoeT5JM#bxgkxcp@`KPX>8`yG%59_RR?eYN`yX!!?h`ZfQd#DAjk z^?BYK0;2vPB8^Zgf|CmN;LJC|#t%Vc4N9RNu~wDbGW(yk+D ztvbPwPhiH)(E$rqJ`l%F6V6^>8IMh-7-i#6GnLG~%*Lq&XU-^2r{Kk2stkbecj@sZ zD0wW3vCgMrxcF!Bvd{^Zr;+%jd%H%$`+Iu$5|KiqwJ+Kqg>mUy8n|Gv(WRc9BZ z%AgZi!FVKV<>tTP`p})t3k&jaP{7sAW$chxuIBo<C8q;|*oXvR^aPzLLP!q)4wU19jsKu5k$i8>lwQsh5Qoyxuuf7{{(XPA0;$#8~xnjrr!@SR^hH#ZO`iq0@$y z_1>wfRCh3Nu4%l$IZi*AJ1)|$=WHKuSz705Y!og$v_k@|AX6m1K>y#L^M9!uG_hz#2dPgV-5UndIb%olp|i6ir}9JPi4emM zKNCh51~0{MbHP%|>~qjnWd=1`9FUU7WDm+_ZF8{G;3llPXl@o)c>!z^@hviQY(0x) zGC34_UY=*G8x^v_JRf3yx_-X5e+E;#U)C5vR*98}D*I@N9)Ww2O_yI0mcA-%D=H7= znqO=vJ^1~pw>Xf#EI~-VG(ju38${eOI|@@b)EPTUQ#YZtSU~+sN@_S>juc|tL}ewdQ8BF} zCUFRbUzEqL}r!syiPkQT<8jKyeVAVvq?tSxyq3u)A1?N&Mmk|o!Z{ZRg!+0WBl+`oc2PPfhHOY}R(O=hQn)_UzkCjvj|+tmxuuXbob{% zp!bN>ngmShU4oPB)lqYZ^!lA^^xrqeq60Y-Q8AT4``Q6_^~0z$MiSX0+lnqHkGR}(BPa?x=t)qF)iOTYna3dYjktUC%8-stO9 z6zytB`;Yp4OF2u|xj0iHO*jj-!l^h{pb#ge-8#MtWLJ>>7Os|EhLs#PsljN~p-iUR z+S%Z(Hqf^GwE9hwawIq;(x_bk&BAPBnWxMk8x#Og39FQR+vGTYZIjt1 z8X<7Am{1{e&SA+QZHd{$KBE&u!7z{BoTU+q94L`>O1y8+==iE_8F@~C7HO&k29;xq zL-b#f1qobfxT+>y&YrGTV4NmT1q?}_?@7-;XZPik*;Zc0IW{#NDPkW_O5l4=Kb6X~ zUUJ}71r*7k$w8I15mB(^`?b*nMhEuy*NXPFXJt<0o0er#Wv}l;unzOmGVen0k`1G- z1oc}goM^L#HdG#JAutlr@dM0&L{-=XSg<#}1FSo(H*(E#)V1;nIQ2sb8@Cn$A7HnQ z2H$8xy!A_Q8+2>r8+2_#*NufruIlcnH}$uuyryG1jsVc|I0_xk@a*_`YeVc5L(#JY zPGE`Ub={%vn#rC8x6vN8ZXtBiuFd*!inBxuS%(QCLj?qCt#Qp|gK-b=5!10ZA#mPm zjEL;YXkILr6jj?jU1A4|>9CgU%Tc(tFl{e1@{S@5H6|*jVPP&I`btvWR>^`-UqU(t zo7sFU4!7Zu4jH32;lOb)0c9Ls)nZq}kwCZcu+Z{a&5`$?Ct~@q>41}*hC8SlINP|F zg;Yo|ll$IkwSRX`x6d4~kM$Q_`_Jjzcd2N!`Cn_{t%ewkCZ#0yE4YX9uxVnUMYjS7 z;}}OJ=UjGu=OB#uRE}f?)~mViLZM0djd^HOWmY9)Oe-@~YS-#icPsot)yXOUYH8v! z7S=QrIgOFJTUuV5vC?@*>0vsFQHy}6^$pqPv1fXCrIf5c+sJu9ja#DGnK36Ra?<43 zqWLbI2rg{LU8lt<=%f=R7=e)16zOrH#=G6QE*m%XeTnv{>RJ~G2yJBHrOUVH2b8gA zrSL`Z58I8FuQG|yf6^Bh8|HVUh__DpE_dsX#bN&%Lg8=cC8asY%yMW4GwNL-MhXi~ zkiTESV&n=7s8(Wu#Vm=5^d^|$jTc`;n}RGZRh>iP@ic! z%1)z5Q5(C@TpQ9gxDtVHXpgpWFC$gaY~3h#-6v~C{4PTV-p>nP)4|3R9OQV>tJzo4 zPd%?HkGIUEwt8p`Syga97pr3=XyGmRsY_3NQuzSsO6%!=nLedI2tyU&0b5us%@U#l zmdMl$u(EjzbnBXUWRIm+)LTzYBfEA7)8m6um&r~X$m4G;y-=ylE;@!}9wH~jm5wZ> zs@UYWl*>qfs#AX(D&1j~DnL*2;Aj>!gtip(hRd|&0P+jWKh=~9O^u5aOF~;mXp}A| zEHt}k_l?D8!l~HoDZ#?sj#KXA8Nm)7dvTd$q3^=&X3qgsbetb(38-WmiUt{dO!)MD$%skFhcJ92k=&GX!0#R^JAAePb8kXKK6*Kb|ht#EMsF=E;^&v zP;UAJjKs*ES1O2LJ}YiRyN}TxOzo33=GEwqEA~k)xgW9l-wQ4jXc3I{TTG`R)i=m)SYn~Sp#;UX$SL@Nx(3KE+g0#`)5RDkk^~wjh zFdWjL`83ES?3P~0tbXI7QLC2+z<5wsj$l6m1$GI;RK#~#Kg>XsiN@}P$2fv(J*jF5 zRAV8&WKMd#nQw83uQalZymATz772UpY@8w+n`MM@7Dl8k`l*{0(u{vppEI0-UWqzo zewwRQS&+AsD$AYam@1ZOw{y(yDAg8kUY6P93d-A#V9GN$stIRtp|u5MoG#G7+w>=a z_d34=uVfCJ{ZDL!f7uQzZU#VQ)S_oL(rP(Tpqpr@C7EQaHb}nU&)1jcBvAKi@TT1> z;w>wJNevvUEb594um$ZiN4HnhCebcwra*S}B(s|jAUm6HtJ>=2yl}Bq(e53RxMOG> zR%%uO=q;!6c_TxNrs%2`)LAQxt~cp`+%N3UE$2=JZFC~p=zF1eBpEBj+P$%kC$V(| zyV6l#Vz86tE6kLOH(%#(w`Y|WZ4tw?=x&fTM7TX6WDd-_oY5ve@%rc!T)(F1;(J+D zXAfz(qQwbu!!b1~Bf#s`w=^1Bp>tWdWY{!2=#)FUs$IQ&3ds#k>*%|yn$M|#(%M7t z8o~r4^)vcDufw#q?IG}Yx5E~jpY!+cCQTTZS5Ffck1e(ycwOuYAN~|`^Pgbl1DW;a zyu}pRS1wu5x?<`+nkm8bv^Bs#bOMbcljkN)8jZYM5BOarbdk^EQ!Z)o8MK`1)dlG+ zExeJLoER#)fJIN^IjNbme_rswng!#U1Dy9vr!zUGN!C)>Tydq(`0_C4ygO&>dA642TqJs63p<9N5oTgT#-DXngd=9s~FpQUmlOf4*zP{yyc_4 ze&LQ(41^kHUBWd2p;tcYIW{#=poJ}4S21dApt}xyxMiWo=DBz0t>@a(YWh%kvv#Mpsq>aw8z$4l6Wtpo-mAd)H&O9iD6~VW zB(aH;!uu4EGex6Xe!sGNiVkednMv`Sa7Uyf#mz5L?aoklx+X3hW-@UvF{u{d-IMYR zN@nva(46gGTgA(^r*w`2hX}}6?~D53r^VkbAxAe$8{F@M@)9M*jLf8~b2q9@j-EsB zh=^aKoiyo7OnRV_d}T^uBQP_$g*NS5sQi;N*M22B1D&)&7iRQY`Jdt=roGS}3=NXI z&@NJole@AckfiYl@oecn&E7ev8<)gjHQf`%q$8+epo~>97xaEJ=q|LP+JfuWn#kRTx5a3CNo|7X@kOPnTT1Hy>QS{Lml5N9HdG%39$wALLglacC3 zQ9KV<=+tQrF}Mp6* zgysu2lV5BEr{+R?pb2+gacGP>Mvx^_w#{*on>JujGdD=G{r-;S1FIU>EiJ5Q^BKNBO|Q^Cf0QmcOc{6;YNlAW z$=+}jbI}~wa9P+O#za6ol(D5B145rx$lnNB?bp)+EBH|hrnO+51o_lV5?azee(ZJ0&LKO#yK5v z`4#Fg$WIUhg^44?a?9LJe7m}Q&85IK|p_}i5qX}L%Dw%I*sPbpM&>5}>v4A@T57vZhQVenYIGwU#^%r6v?V=koXFjNs{ zbW3ko`~nCG?XcUUD}lxG0ijaB{@AVcy4~vh+8KC(=MHtk)&<-``Vz*aL7PdhcV(&i z|HM5I${QNbIUNF(1LKHC4y<5F+~SmBtGIrgG4P<-Kw>tHJ40+{GzOv+VS zN@*C>7!M~sb*1+Y0P9hXyc=7{eZIQ#JmynORcx7AyA+>H(!*V(M^t8y8Q0krPsJFW zW`8|lfi@Bb!__059#I8=w=aS0b!$x_@fLJmh{aqelP%4-v!i@Q~zc zh&kO_V^*p6om%o7HZ;Yw+ybQVhHV;i&kk&OGa{DjF3@unXJP>H@-x#~ry3$F+Ct48 znSzJDg;X6MIin-OywmddS6}eNfXRc5(Uzk1?;s)(Da)Fk;DZYB=_eOHSDe@rqcU~8 zGH-6QnuBmZpu<&7*(=_q#89ie$V4>P>c{i?O>#tcbn(kvF|)$R_w}z$g6+fM_zrQ{ z!zWZ|9)Cekw9~@C7x=u<>%Rm7|6Z5bK_fdGvHfPGfO^}*}k`&S6aTPe7F z*)kQlxpS!P0gKN-f|#GfmAxLu7&hrJsA-t!h4o&juD^5%lwmxWC?8Dp2zR^_9|dVJ zwT}LyWxMoM-0;yU7mdjj(eCE^p&g)_Xnofx90H%Xh0}5g%K=fRg@C}Q*}$v6PeBCaBc~@XyhePRS#S?kN@5cuL=BT)mKdsf< z2Jml@-l74zpCs#EH~YW9>_|B85XKakn-{F5X#UZMtIxK7GWb76cDD6)ds_s)BMkEm zl#B<3j24P&=w=~uXM7R-52b@fPt^fcfuyrHStJA#zyi;N*^A4S1`+R5vwNpo=Nw{*D z>u|4&dOO^W%DpAR1L2hyjq4VF?Af=iQ;q&c=?-MOX7?8i@97X0w5PlX9lqi%5!%G9 z0h-k99|$Tm8nV>ijCuO=k+J2aBLmdMw_%@8rP}z36B-QoFZ)K+ov*E%K*1pj;2jlO z?l1~9Z{SS1J94hltp|jjeBB>CWe1w>!=Y5NKDEx*@_?GLT)os#xv>E|ae6tAJDIUl zEnRP|KDR=mlB0Va2HVt~8;?65G`HQ~Futclv7~pgDxctd$rCfmpSV5pcT%5{eKjhN z2LLcw*XL%JAWlStN0(>(&83DC;Di3m_IGuTEvVjUn6I{7_<3D?3NHe*ILu`rtaTyy6Zc<*o%F zl&XpvH5_YetWHR@Q;!dotuVnJAK!{K0ZAQ=`GACu#KDIHXxW$*c5!eZ z+G$eKwRLm(d>W4#eIIp4!`So9UpLn5%)=|_%SJx}W|{Gj?5X{4zAr3|j*D0!uq64w zAu&{SP+UCB4;dg+K_a+W@4%D8_-dq4owH|NShR(UvtTqZzuLu)fR!9Nwd%l}0Db`r z{Vq#JYh-Pws*Di$42R_bq&#j#Gx*dNUUv*}It|m!rqq|h`1?#&CEjR)O@HO=4llo^ zbBuXK8<{~uqPP~hnU7SDD4~`d;+(_UFEK&-4FmZ6dQ+dj%BC0)9nQk`ac`ad4TiCD zB1QtF_*KDah#PGMJBtHj^p~ParaJ2UotV`wiHZtsqF89MRuj?_*x^o2X(oYRd!sx# zFJ~GZPqu7!wpZZw=)jeU_L<^6pYS`{z2B4@K+^n=GnNZVHe9}=HJ&l?u68bkFeWb+ zdUB$C0}V$`6Ctf|J8?K{bM5= ztF=gyDB6>IZ3yTwf2H{r%`yTj8cFyQh@krcOsWm(IUvCP4hK@bwuJob_DGMP1#A{k zh^Dh+=M1x8=L|VvBeyCIP;tuz26v!}YCthb>BmRP=+xH$#R_QEQwIWlHk}QLuk8m@2U;gm0{dR2!%cszE6qCWKKd(48Gq_LqcXGpYS~ zU}e&yl^+xY%DfH{i)a^y4;eytIpi1?k(4|X0k9f~jYOa2?`xI@hZJFF45(|u{nV*z zi*#a#q-hwfXGfVr07xn;N_E3K`z7BnOtj}S6h*02}Lnn}k z!D6})EH`-@hd!`3CdDd=rit`)sbjhaqiZrtOV>Q$G(L=5ql;@<4Kp~}u7hPs)wx^E zD=Z=QzhY_Cacr%Xv$dpLortHkXd1&mtzZ}g7S&DAbEnB`EZ=_j|Lr@|xrl&_!jj>9 zOF`3)7}9kkFgQUSC%J)(8P zdxX(JayHO#zqmFm7d|>v9>DFq71qcSaJ@cvSk6XyxWClZ%???rnov-R#5qvVk!8LE zf+Mmo&rn9$qUdc+id*PV8PVb}jBg`6b*8DR`x0GUZy$f?GFG316w3>Ao)i%2{IYb?oU0n0nu-M9zd8^_cOfgP(m15{kT6pQ#HZ$RB zzrw>R>Ao#B;M0jRlHig2JvA}pcD*hGgjYlHXX7nqu}|%A|M7#3);c_Hn_U+%GK*q6 zA1rAx_p`Gv;2M#?aWHKTeyToE)EsiI;TghsX!AIs(Zi0(sK5C=lk5A&OW)ZVfz3M5 z8%g67-o_cWy>nT980>CV)26~QaL5%?E%Bp=(30+AwjBsC&JasHcy#|-f)7*&MmSo7 z?)no1t|IzZv}Qsif8=HPK)k4(T++1h#WmCr6A%%wYS)ky2J7|NS=fW^3*a0Pt}x@M zM_#m9B7iyL?zi9?z@bDA?&C+)5MJI%Ov13q<{Kko$i1LShLX!KpWk^Y%0GYb6vg&) zDeo(Ngm8C9bfY$+n#u*zkhMwz1776vGLoD$rM`+1mQP;5l}at>G6y$RhiZ^C*@HcV z({uX+P|@E#_U)eDyJQm8NdXv5DK$BR`>IPdkR`Roqk6o-n$_Kr6o1ls=c#CM?!72# zy}@XTYZJ0mi{t?|ZVbncIud}I{2~`;y{&!bei} zU3BZiiy|~PeHPgRn9ay4_n@5y^9CP|>(}tt&?`dT{*yz>FU=Te;a4fhb0S_^F$F=7 zmjlZD!S&xLMqzU=D-V2$+T){pATdM;!OR;R88Q7*Wf!m5QVAOt=We(Zn5l`)xc)q! zQzx37n+Eq8Lw0yPoWbwFyni(YV0{v-^XV4yMhNEXOv%b{r~L4oXBl|S3J-Xyt^Sg| z-!6mflF1B*jlEB2pXK_5YFt0lsKy#?@S%N4(89sE~Qi`q4 zU{)||S7Qb(gcC6}FRUG*XPjkjsWsfeO;nXq20k!2t~;S?c~sUwT+6K9BQvV}r538- zsTch`@b~Il?g%;|vc7H!>+Ig<1`C~a^4hN`x^fs^ZBYum#tYHCb+J{#yf5c<5cCG9 zi*$fmEq74>=)UUR4LWyj2lntaggen+I#DI;XX5WEQHh#>i5$_k0IgqeY`LQ`c!pR5 zT9QeidTlj4!7*FFJ_^Q-<)#G%``-;-W~K3(*OreiMfOKIOIT4`$VM)JSV0*xO_TWG z&zy#is|H)wfSd+n-3jk)QP7Rrt?vN%(#Y$rVHICIEvloyjwr^qF}?0ZEvIbJuq>^tMLe9+`XD)qrSclm~s7hQLlI z_f@>8d(N;ogd2BY5sWM4Eic6{Nf0+A7~MPEHvaE~vfSS6vsT2lBmQB5+>HM14i<>s zscuwH6GDnPiiR>$iUT@G@^BH_va`zaCaF1v5^%#mL+Y(Gbf!j{(nqN8V_gaP?qiJj%qaGt-Q*Nlvbf zUx?hds;CT5B@`keRIAoX<$n34VKC!0-*~>fVCN6hm$vMgHr8JTI}cvmHy=LTJ8sWS zz@A%TKN)u`EF2+rF_Xl^sX}Y%HQY!8AWJc-I#X$ys{RPlKvEWmW0Kn4pS2FhB0?NF zc9AvQSfW4_rmR6Kw3qSZ*#B19Ype2`Fx<;tqT`X$)GI453B+~k!VLQXBkxL-gSRfb zp8TCi+h-AGcT~-weTj2QpPI>oU%-C@Uwg!F6>p&-fYIq-%i(ZKQPa(!yI&{}mAg`3 zw2uU=YQ)8=>d4sHYIE`iKqs^t@yPVmn!}u(ly!q-p2Doru=|u=-J6`8ZY7J#vrs3d zT~Tg~qibngnkz|Ds6Jd5o6(kEA@$dPy7Ayx@vqv9rs#Q4#mPfRCN}K*wx+`Q$i)_% z+<9iRH6FbzY$L=p?bdWr2$eqYq!j6ie5!vP9;^b#yT!Z0FK2pIg1}4ZWo7T?9W4$rDZ~rl94}YG*7;Ka=~K8X(giVWahM*5W)C36l{#D>d`ymC09C->Hes8u-L_I z-2T@c`UYctFz-o_&0o)yh=W2g0Y1yer3ImfEbny=TlGSuyJpDcHoKzvq+}?akvs5p z4E%THZpYgg&g5)Z#QIEf%@7_Q7PfyUK4=iJ)b7%K2jDt90s?&~U}`GWeX&FS;YOmO zg6izn$JSdk?anQ3b^P!^kb6!gXPtp(#jZ~Evue)b(A=#@%28i8qT20lgpCDggYAcBs z%lQ^2@M;5ycO>v~d#nQ+SJD>ln$s`4BiOzHxt8vt?0kty-bfA4D)5Y9uEL>&04MBYd))!p)_=RH*uKFSY@I==Y@gUYbGI_f8VrDtFn!?ywaPm5${kPSLziVo z;Mmz6foqQL9|9K8v#-v}{0ZJ8A8-eN2c~}8CAu|wmeJ;2y~n{;YA_!sizm^5R_qGK zFo&LCyz>OQ^g7T`JbW!?U1mfEk|Z-%=Xv?+LR;IZw_>MciJaj}j%F+*uyh8tb4&5d z20sY+te46~zwJ}oY)Ic#3kOm+o0m=UP?zVR&_ZkHnkxfEE+z~bG)^nx20|w?klA2C zr;i5P-12wTMP@iky%IYyc@mjmDnD@4-~N-+=5TP0zN=N)7}@nMQ8i9QwG)>Bb+-bi zl|a}6jWI7H{43G$W(Q0fbDZvE3yRc-8W#b~@h6Ki#z6+lC^zfBQPbn1{&?A;of3lE z9&d3UGyq`p0r49ESYX-A*;#!pi4h{YuQ;a5{2VtR7tLuXF|Mp{_q|hlk%Yk~Q?4Pi z^(=hlOIAcxAblPza6sC?V*R1>A8I1=uN;98zPqHR?Ffi2b~m%xeRBU$t2c|&x@m)@ zXd-J%&a2{DCnLCi?(C>^Q{kKYH9u<0bX#{^N&%BZ=u6WBhoReo5PaWkLwcvenw!Ue zqwDunZ9b$wd387X&WtSIykS2u2!!?UtV&&J{lykTL45|0ugnON+GU6+)mx$G8FO<- z+B4&)i;!Z)P7`Nv|33OF$)1;Lll0yT`B-Ojf=#DSzzgz9au!~b=3Uk*#wTM(Li`oh zLJ#EU$>NSIMo!V;zr6j+`kSRHD5aTZHL3O!m#@4Po7!LqZn=^n&j#{J8_AJrwbc

Vt0quSSF(7_&ZHGbmq$!$)(xmFgK4w<%49_JYBc=j2o3?x+1UGq~Pt8&hE zW3NH9W~#7o=$4AVdtm^{;1rI>g@28^F#=V_79)CWmOoOLp?K8ojmD~3Xtc_A?hFuI zqdl8eCNWcNbb|KpUkO!Saamqr)f_Sv;|vQw*saDX(`JGt}*$G9g*L^NBQb& zCg+0OApl%o_!s6!M^Mp!=iuznBkw`Z6g@Y9rD@^O6-(r%@<~}YXn6wDn60kPiljM^pNx- z2r!dH6&7p0!wDef%WGE*G>~BcXM08=N-^_Odl2~liz6bS>1fiC{%6@((|~{w{*Om9 z^B*k!mr3+iURvU#Xy_cfT?He8y9fiX|J_dx8jlnpoah%cB>qR2oMCL#db*Pcy2+AG z)vBpVi%xT;+`LFd9+@!0YAZskNyVy4)uyV+cl}xGu_EJp#)~CUf*EQwcJpOhXPRf? zhxTQSQzayKC}73-a=HIMKMERK57~$nn*H*`G$K@EI6&=o)!I?EVg-g%#DS^ z5Ir)5;-1f%xXGPf(t5_3LmjQQhqB3fSoBxPR*E((Udq{Wi7r@A|)^M1SZn_rthn z&~ox&Mm878VQh?yFnuN+ESjk{_liMQBp0YqI#9Q(Zvk7*)sxY;9`(Cg#5ZrY??DW4 zGq8tOf=p8oFu+WSD)`_>a~J-|p-0R_Gmoi=au*jX07H$9c1N-6T6g(g%kZb z@U8`nu#wM=N3?H0-J^%II(1+d`n>e^IEzB*-+iz+C;I2m&tc@^2H0-F>Y9|pQ)`TB zvwF2qE$8BRm+!c3Bt-U$xh8DLAuxknboCmMulwxNMw}~Obz8;Z>>+l4kXE;k{C3mR zi7%!=3j z(BePnZ*jIsHCjrMRBdNU*c(j|9uGJN0>yKnfBx%){`Kz&xNYs)7PpBl-9Hjl)HV=v zF}#Q=Nk2_gW@P3b#f}1;p|ei^XrL>(|DFsG(BlSqDrVxY(kD#rm)r*jaUS*|$nz znkrWczL%?=$*Q44L8~473paPGeDGy0=2|h_7!|eV}93Q60^|a zEktL?_KqR3RV@Px1c0>UNFgZj#gGp5;JOD&U+C12DQxY_h9U!LbI36`R8SdOHBe%K z83t)6m!QH7v*D~H$R%agF08Z;E*hHzwUiD)7L&8k%=w7?ujNS_bdnlt+6p-RDRb`N zp;L{wQszYsRE0laL@6>c=Rk*%E+{i%Q+3iPCw-;i#;q-!^Z zHSuD;J%R^rZ5_(*O`v{v_otE!e)PvzH|h^6tHv>jo0!f7;Io>s^qIhhp>JiBZJjlk zP8pU@q;({OU$+X$ss0bT&GjrHNL(=7pd_{XgbBnUQqfM z<}PdJsd#cXPM_;>%c18wz(vLa!c1MJ&vs0J-Iw*Jty9_8>=KHwFc{7c|)-CRx2u@fAJUH z%#%@H5gKn1lz)M+wEtnbO+n1ys>{{l25(2g6Ry{FHO#IN~jDaz`GTEuey`X9li!+r9#Tf>?zu zz2GS5OUbtgZf=@|ve@2vwa&h^QF%dBlLtYP(A`{sUOAxd-JfwXYdRjMxJb>)q)IF37#oj=dqM}Yorj z)i*R~R}Uc)AwdX{r9Jn5L(Yba`Svl!Oy|*$Y6aWN_Kov23I{DPKe9(^Z@i@YOQ1TD z&{>_1t7t2MHhb#dswkFtnxjZ1kw!7Sw0oErmU}mn9IEJoXeIYnpY8oUYH#r0f#Y`f z1Wd~YXx`L4Lv|IP6u!XU5N5;3Vnv9rI>|dI;GgL~39M6boYF@xWb7+@n$dWZQ|{aywRvg=b#=$rbfbbNC$DB}I^aC>lBn z*K@#>8Ikqe0vPIF`On)Q?Cx7VA_1}f{WNAISy&f)I)L<8Z4?0a5H8@t-gP351J*S? zrn!f4U~0n(uK0bTs3~#1MVNeN3mb)gRs*6&yl>`c`x@WetBt#tzeJ}Ao2M3}B|Ci! zTA3JJmg)|yQuTf{xlZ<*RKsR#?t7~w-xV6?LyTeF4%SUj)<8Oe1%am0t2T%F4G{jL z5*YmrZDz)CgMkk`x*tNgY=Y`$r>CieaJv(aG!>T!Mu2skP6@JGg@rkKH+k&EwA2+q zVCkp%urqXowPZ0I2`7=yoU=95d`8Y519deNc$$4Ho5)NckxI5`pMauxlmD#C&>!s8 zSXi?>hJCU9)Z* z`9qt5K@}`yxXB2#_NagT1*-{b?Y2KxGg>=DIjUS0+)tDg3@TOX0D(o1Iw}8~Lrg}d zn5O=RTI38k`w4l^*Iyt0-3XPDiVg<3O&l}h?U?#C{D??a9aOkN=Br?~{Xxr1KMB{y zlR&7P+bJ)_LT1=`<~e{;o%4y0>0Y%h;#iVMt3G+K!_+2xuRHEEc+j;e6|_;wU(cyP z$uh-3{vMgIuO64GriQz0qFs1pi&h zc5`BguFt%!-~lr)!*c6tZrp)hfhhKr;fEgt5Atb1)U_b)jleECo{3gE(Jto%*`oQ< zp5u!N-v&u7m+I21vl4%Mehbl`PbT&|zgd=I)|Hx+__xO?_d7aMc5Dr8yPxA>P|OSN z-|9@D9B$(jh3uAlOy8!|nU^`kz)J8x{ShZm1w<2!r-TkFvsH7?_RvKi*3MFQ0xA)* zk5LWf_E^zNCbw7Kb?8H3E_j+Q))ZNA#03kOqXQdAotSvyNOBzkK0@Z5APV-KpbFXt znb-Qfm(WL&M<~F@m<&vgR78h`F;9j9ya*z27OFFy3tkYt}Up#u%b6U5Pg2h z8NRgDf?fyqYrVEP%vYL=Xia$3gJ;W6W5FEx3)N1x{ZGY}x(CYg?yJ? z_Lg#<&1V1s(yGQdiI z3D21#i6x_%5%!&I(wX5jDWL#}xR3>7 zqedy0_kp@T0CPo_aZeUK94V;u=9G~qzhuVh?I&|x@*5fRgDni26DL9+Moj1oG^3C4 z;#D_eElEiq7zUGRO&0wDjiB(!C@O^{Yby(vih$pY_phE-Qhz!pqz$1l8>s=7~*U0!UBPi%}Yo&*ice&bJbXEBx{&l%)%&f!3blF z8qdq3n$R)Fhi_^pF+e6h{3x<^4*?spAVx&^j<9&r?`OL2f%J7+@pTI5_&Rn}4EQ@& zGA|T2?vDn0hO{mGo{{v(_V^$B9m;T1O?Z0^KDK&Iy$=6C_BsD0C>lX_><%d5uvcNA z^9#%({bRHzn-M5xB6ODb=DOi6Mz4LzexGv8Nll%NZw8=Sm#_>U@$f@8n+w51XdTfa z`&!O4MBao3(L=o0;)ek4TB0}Wg}o?&+!sQ??h3YK=EPnp%`1~xpY?m!>8p+hsLp^s zhAE?rEr*gr90tPhOw0El$`Re7n7+QFediRGR5E6>;o_JS{4nafF&ob2=#E=aPixEz zl`J|5G0@pK@(QcSG-sJGn#;0HLRZk+UFKoa*jDpz1_{V*Nzed2EliXcme|K$EO?wf z5tk%_%0j_#sL|$T%Znvf{-3(O0xFKAYnu=tXmEFT65I*yo)Dbi65O2$?m9@&;1Jy1 z-QC^YAwbZ7V0W|Z_nyDb^yxmguT{0wRMqY00;9JTY(A?yUDe>!?}i`*h@ps2u^gmJ zV9ZuJiRdrM?bn-l+a=9{^`Mim(Kb#%1Q~6b9b{WVx1H={%PiVe!Ec#$^%IDHhr`m8 z4Ba~asul+}HyiDL`S$yoEY%T1W3s8M_h*0iBTW448;T8gGEKE3y(n%Z--& zo?n#S8D-Yq{MMJI?%~x@6wsKO`hkO5`G{z%hBLG7+2q~u`>yS5r zxL>-E)R`55{<-e!P4}CcsC3^0K-K2C?WH@O(RX58SWO?V;k95V7#TPe)rLPiUY^!h z;J|`K>)bolRlHtUj|MXXehO_)c`M4zKr8YyWG|;hG`}wm3sT4&leIFhyIiQ|gcze~ z2z66D>n?u-R>3E{_rOi%9$o6EPdL6SeZzbYnK0+$wc>t5OUDcQ`{4Bru7gjJqGS_nbisf<`VQ<&aYr2M zFoMxtzyq9O01S&_Q>p^2dx8A?_NOBG)Nn&!l%FNGKsC5u#OUKGHo(B>SL8g38?* zeN2EHYRtAIb|gJIz6T`P)c)92U^uui@!G{HK#`#p>Fil7da#)?v0xn4Z#9)k8%Cj{ zx_E@qqXNAR0zM5voDR3vY}RZ#_0jovtPW%|_nIgsJir5fT9m?^k2DVFuIDhEZuMHhH= zLh`CZ1_vh_`pAuQ&>r*|4;2i|yH#>piZfG|w9Ot2Wx@|h-$M7L(h*RctBUy2)DpwB zPTx4<%VqySdVKR7NmuTpln?$QHr&zz8@cKg7?}2JFffk4<{dw%AprMhumCZN>QcA@ zXb(e%<@vjx*Yg@@rPBF2ewB&bOesPK$wOC-tO+es^hQW)IJWC&To>o4eUSMgS(clM3^al%Cdar}YfMlliX^0A=?!!3@eF zk%F>oaq_eKOuJl`*8cjhCBFf&B}+Yalt;#+vifdmBF*pY??g5hZ?uVq69Okf&iQgb zZ4$!#nmf2O8QV49_gNv(HQx zNBk0=fgdIu93mI$d$$G{p)KDO%UTg2#Ap z!3@vF5oqu}1JcpYPC%yt2hR)!yc)M+;dxSdJ2=WY>@=jquoW%arPlOh9TzmYJ;pt> zesTFNX_hYCK*Rzgjvf~!zsb^+Q5_ZKQ~frabMv~OQ3P0JfC*3HgoE9Ci|-*6Jnl#b zOK-mLfjOKE%xxFo7DUvXB`gaA{(_qM^QAk!%U^?5XZap@Iua4@B;+z>K8i-&(9TDqJEl(9) zCN!&QoGJhMe#lan+tHA2wn%y&(dD=)=k|!x(fMld!{d3^2e72hWl}sF&<72?;HcB2 z(H1=saXLc230W7V;W#+^(0RSnBUHT4q;I4`|Fzi8$Jwm@B+lLa_>*oztR) z#Yr%M&LwKdiwnWl1jim4E1;~J^95flX^f!(SZzuv52Sm|UIWz2uNdykBAhGDw%_e$ z*-M6`Q7%q{Wv#AOA!K|Sv+c@^XO;}};*>fr*5p8%fq5@zQXLxFCZqRtoUtGZ_ww7OsFaRfG>hJjvKMB% z$1-Zam13~%t`Ijmq^azwdwS}$cOX3>= z;$o?t9U;ws?;ic)gx7`Ruz#Q2jNG=w&OeWf14;P^kfS}D6P|NFo9fvdSWO|E>u(!F zYH+{^K$H}MiwRa;Osmzt+pBpGYv5iX&vSTa*Ex>B3^bmY-sgtfcUX;O;h!G;%y&li zgO$ywIItILVHY6vv!QNYB)oe()H-YXR!N&jbLu?n^<_gDK7K=4vrV;RSm`R{X_=;W zUQ(eDAb@TatvPDwEVuxB(Ftrjb;VnQRVQK}@lciWw;pOH-WGu?NwVgBC1|Lx*Hr==*3sP%?_$e4c3*J@~j7bF~c6=qT?NuLOl}F3Gdu-4P zHB8VeM8d6h-dg3RHU@>Aw`wkC+}eSDnkKm(R2ANO{eef?j=4cYhY8%g(AFX2F#;8& zo~R*v5Pl_rI@6U>1iJ~Q)r_4dC7(~=8JI9-cq8VzxIn#4kED7l6dtR|80+E)G^UocyAVN*DImXF+nzsn$oTygv)F zuNhe>4G!O<{@P9}6&q$jpNUIFV2#`dwK&6s8(XF>|7|VqXj(m1k*>aa*>;=~OQ(&E z>Arh?+}c3mn*b0n6Q%f?MD|x-PLa&x+C?Di8n9;yMT9}D?z(vuW0y5sqc8fHq8M#{ zqn8}Jfz2Q|Hz#1K4mSXV$M&chRYFWhLZnLt8$+|oJU8_<3qJDWd!SNW84kffQa}MbnjBne5@Qg&+~J8llZm?e^VJ?e@b^ zBm3=DGvE$#MZ^u0A2A)40z6lU<(qXwnl=;I50)-)`IGFV2J%X3$Z-Jd8mu9>vEW3w zDrXaYXA)W<*rx%hYwl2$7F|+?l^`@Jn@At8e2)g)77!R)5MpKx#V8@0E_{NQf#+0* zqAnkoySamfVJrz3a=qaCM4rP(I3pHjbXkrnooo_tnK(M;ZR70nRD-iR{(I+kmL%&} za=8G37S~?2v`Xi`_rCy69_Fgm+m)Lk3_w*0`tsCSzofVjElTqZ2)}GPZgkn%IZ08( z;(0Z;{Q1=m(V@|4L-SzN?h#vHf<*No%A8`|$3yg;x9I(>1t&g{qontpCQFP=t0wgQ z9L+j5xOG(&NChoj17=Iqbs*@?2`V$A*d zE@Q-d{8bup(sDuuCg7pu9ZRox5Y*@s42_KJ@>KJ zvkN{M=F~ z;Y`qRuT`{HW4xLUKn?DX(2x_YCc%1BHF0Hb?1gvRAxIVCd!8qh383HU)0F1K;qUL5(6v_ zStyq{urhv>*jqNDu_saVeWy8+vw9z<#BwU`d-*yLD_5cQ6N1{p&HisKGCMH~z%hOr zwPI^!@F}hV;Own(i=((fNYs>#^*zR@);K;*KHUd_H~FR;2J7YK+_fU@tL`Snouu=h zevA%ALzI{@YTamfa4H8`B6fa7S(E5plY2lM-R$EzC~2w1IWdy_wvD{ejMHK(bkEVP zHMBR<`y-+lVpBq`4G&Umxy3zTSyPycMqdHf;a_c~vckadaTf{e7gQr8p2;EIN^LzBja(fp2iG3l zP42zVWh)?c*d9N_5pI!y&Vp|Vr{N9a@11sNIKozHNBA{5(b1m6p26->QD-y{JR#<~ z(Y3PK{#?|HtH^Ii88=wWJ-Hsj;sYdpI^!;hAxk<_gjP7sD+YH#%nX6RJ3-Dchjh^z z4+zbUF)#&8*U3X z06rLydg1YN`PxZ&;6K_7e7&X#+5idydefvVR5d4v6a-A;`xf=@nA*ve>+k;hvZ_4A z@aE-sFsfWB3}iNd1qNK5#RCqQ5CWu0LS7NiVnHK)j?&c&Qb(LDBlfGs z#`g1bX%E3JNJ#DzB?^Fy01hVhMU)pnb%44iq}cx?-N)~KvA5OpC@ih@=%Fbx%`+vk zgCCG?s%@nrShHQ@plCX5JbQYXX^uU6%8P>GkTBa&XmBW`mYphPO!sj;@ z77EcNfVMxN*ZWqq%3_%@3U4o_WKG;rmyC1f!-!JgPTHpyYR>+F-B|M-XPABf{v=#g zq=_8bu*AIxdC_Z8zl$#$Ryc;-$AK9X28P`s)-brP(xwgW3u9y0jrY-6n>$*!Iz~rm zJdjf52+UG(dtK7O8+g+nFFo4RM=P?)&4OdSmtjjyCFRg}a6BQo23bt1YPx&&+P2)78@2vvL3jSo8^v- zE!*QFN<{3aHBwU7Wh;Vkk@#Cu-uIl+R~xOJC1q{1NG)4#P?w6r!87S&qr?icbAgxD zE%LF948H13grrr1RSHZ;L+|PTPKipdDFr8P+tWAV8}c&?HKhU?TUAmYpqWTFCm`x* zWD7aZxkS2-%cK=`%2W%`sBYYgw6IgeaDqAAc?6P|G4SwbSK_>cg;=>_eF_{|LwehZIqc7 z|B{?qv!-=_080xZyR_FW*vlr-9} zB*f=F=HaVpDWAS>NGAyg(s=Yl^>Lsi@TRSa4V>yxOt}X3!h~w2>+2|X%Hf4jqkk}9 z`$bF|mr1n~=JSK`7jWI27(8(X2xUR=+S8pENNK?emzT0cShnG|`@Nwu?Y3=Zei0&udXBboWCX9ppc##9`%|aGO;!NSZCF58dTqOihT4v`CoNmL> zrwPBTYW!935BMz0ni~?=vED&6&D8f$<{u|o$NCVNJy>c{di!#Z{a@Kae8dKte{J|( zF2R-^u#7>-Mq+MpwZ8&|d&iZr%q-=yX|AIgd<+m1@l8_^dPKq)`H-f@vZA#hRzE#b z1e<8mJY4=o;P&mX2l^p5?=81+^K!XmwtJjW^IIK@>58|u-5AWjtP(Jz4hSw#j0g|8 z6ohC~bqK~zc=G)8R`)m|wvh2sga+|8uwPBfWwh52z~Crtqbw1nnlj2m;Q7-T7nZ8} zq;vxMoG0G;$FxYPyw|{&((>c-_f=L=DbNtDj3^B-Bof84W=R_)&7Wi?rFP1qNZ4t$ z^O3w7_XSHH=-4U=_=bsk5+$XAW7_CrMdtxyZ#}k!ml9H~)m1hll0J~;fzjW|)Zmq) zT972vPKT3Rt~8_yiV( zcg!M~+XiUX^52M^u%rk~*z>=M9jS>gP?dVbtk%Z9H?m0m5RGh>^ZkgZZxQV(xrVU* zec+-Kn(NL(qfZIuwiTjQ>NTYg-0O-jVL}{q8eBr`ey>V(#Uyn*u@%WR>hP2vi6g!O zU{gY9;vXu<@UlL7Y?^G0sQIXh*urtXTM{BLZ|rgw;vqRq4qVrx`C#c)eez%{*R}vf<}a4lcZLXb4IuNC_{=*fv!OCYOmd-i zXvkj7K^0O4pCRtt{&9G9b*4w$*6AW4Jx}ij1F%mn z-C}iIU4P~6)_itWvu#u2^qWJr#-lGnKp@ODpVWQ$h+nK30){ zd5vxRGoxI)a3Y#wTTdI>EQ;t`#4%0ZiK-qQ&-B;n!a0cVroS~>Wc%q_Q}cJKnFtL5 zJ=4-VkYLljnZ_hAcfp92xWx-S!~s>50qi8FduWAu5L?l~zwr*e(!;1+e;QXEyk&tX zO3x;KKkkCwIu$>;Esq=gk!e^w3&Mhe4$05UWDg!O@|`RY(x?Ol@gozj;6*o&hZ*(W znBqiM=cKRlxKE3RSx4e79Z{6Dz^{Dheh&Ns@*-vtON!k3vqFl|jw6^l8MF5sE%t!M zEamG>>u~?XpgNY?I&r7q6~J}#e}O*NeMi0!fKa&cfKaxgZy^80;Rcr3V!uKwAFvGq z2jOv-&SRHbImAJLDA2AkuRyyLw=bX_aAX0y9Mgji3Uny!v-bl0JAS0AP!=?6z6liY zl>(@97^tUy5@;a(>{B%YM?w^U5gm*MDjliH zS1@?qc!(T+>>Ak^38O|)^Z8ZATu;*+i3+JYOo>7Far|5;CW*mun6{+% zO|jXQ$QsSbPCs@PAEy$AT2Tl0?mRaa34d97!C(*WWzLFITZsdM(h7lTUlH2ye5Q(` zt^~7iUTrrKJyv3NdYEatn;MOsi*OOZ3wm7;iI~Nj2SFDP6%QyNy^1ZAsQwiTN)z8X zt$4R9)B+d#N;Ai!LR zAlOAA-%f$7{n40M3$9n3FwP1RP(qy`-Jw?_JB2rKbm>)qDUuOpna86;xX@_QiFo=%?wJ$3}cYaA3CvmF_6pe zaW3CrLV3DFvNPrT#6~AqlsEF`@odmCv*mG9ZhC@uzv;7dh#2bD>9+rwt%P{CT zaczgh%J8EC_ZzPuVvFsX`L3N-gE_HYv)8;`YJs-imx+8Zj*!AVa_ovb{!YGG?}g96 z4iSl$EU80oc)n-z?gJmd|5~RS4>$wI{1?M0v%7oc6=?b;5e^KD2S}Jj78ODOP@ES< zdziu~APw%Q`R-Gd`IhySTkArUb|M*Mg1WVp8f67VW3Qk!x)~>Fzl>H|_((Mf-GP{T zJoAxjyn1K3Nr;=5mQ!2TTbhFTK4X#hb~nlLLozQH;Nf;34$RhxNDn%gawjqpxs^mr z*3X9=TUF!j8f=k`8yQAF9xeDKpcEc^nxp8AmG^pfi2Ai~7uXcX8B?3eHkH+a&Q5hR zGfpYCU#Z(-UM6j9ozmpE+N5~#lqu`vLLY9nhgc;}T@2|(ln%}%x*slZ>0}x?%sC$+ zE^$sf;`6>bS39+iise*aoxL)>axcozG;3vDnwp>Fo#lVgY| zTxNPl*VV}k@s4!_@f-{RI)ynw6Z=_FN;2cPp)+gnnnk|}j?SZT^G$FkSw zvP{43qybQ&=$genwyBAHe9TVOPVfkGOxX5FZgIw;g`9OnBPfFn=PT@-6HmyeaM*gn zP-rnWCzpXDcL)B3Cvw5_ky7pUgn(Brh?gy#uj(67{kN-LHfeyXPdC+XKjw_DQfz*R z)=itg-a(9rWi-M4j217$zbNbm_#I>40Eb)Mukk$#SV-Aw86j~Oc9jCOID_YXf=8}@ZnP`Iv3St;{_~}4(Gqq!YeXFQ ziyj(khY1D(wDQ>sT#gb3EUMf(qD|sIF6aYi&7hz?AyCmoWyH&zQBFK{=e~PEu)(om z;heUXa9cpJFZ9Bxd2@i1vv!Q`#RfO+>obWLZues|SMN4-oj=X_nRq53%p0(Zhjw9Wo zxVTgDdu}5g<9SmoK*A*Olev01sjIo@`SDv4h-BB*C;ha1LIHv&?#`T~2rwZz3 z?;PQxU2q^QYTxE}3r%d6(lH?h=acXSN2*AgiP^KjSRz#$34S1jn1h|?3Qm#1R{~Nu z8Hj9rbv>nlg33I3^6^(y>xI0%!@R>0vs=Pt|bvK7VXzO4D!N# zcPY2nk&SDK3-#^A#P)4Vd3UhW$ysi~Pc)*})vMnBoh$)osaUms@?N6tljy+r1Uz~A zQ#hAP$JC*gva`bjP zG%?;>>b$f})W*;`UA9rjqYtT_J!Q*l_-vMfUC4OoGYjTab0-0|RPEUzKdYE@<1<_| zf@#C!V^IM0etT>%-TDo|>r4(LBY zb{lSG5jNe}7HOS=|G@Y_vWogDOCG!Tdq;E&{&Fb*0BgrkQndY^e%RYo^OHA{v8uE^ zT!FfZdPZz=VVRa#`KRs*V@b@SubzHw<|D_%6GM&j=$`taos1Ur>hVx@b|(7vreLsxW>LeilP=fDrpD#1EmyU~H;c?f9ca^p>Ifws@rh^Eh<{UFfEe&G zqQj)@!My<0XoQ@PzxaBjQJ^x1*VY?ARh1TJHZN-hCSp2`)bJX4dCuJj^`el{y_Nct zOsXI2aH^U%xD|3(gTB3P~l&4H`Fh0(Jv1na17)3ILj!CN&B4uuPRffCXvGdhoUZ; zGOHArGngF74y_4x@>5%geejxC?)1zx@sppCt%6%}YFOtMxP0rFm+z)gKYkF3>>XQ- z$Tkfq6A+$r+Dd#x!s_Fy1X{echN0~+=daLU=$fqC)i@eM^s90$dNuhiP| zwV<0XAc(f8xorbjO%3O$kQ8hU2;^~W{_#`UjnH9L=??4O1EU~&pe_g>#o>!cyblP# zaV|eXb0r&=VrkvKKfOd8FT%=J%2XybTOVibt|6jvGofTKqn|7}k z6r-%Qr@?X<=#U_H@`?2#@8i=>ypZ$t+kgM9>#HSBl!upKpr9w!&s;g#ojI&A4TT#4 zIB#iZ0N(q+x;A2v&_WwLG)SApI(9jDKkSn!grV`Lq4(lH z4A`(i418}3W4cL0Gf3MzAXEAGpdOT!>#ww2AhtgR3v{GwZ(^oTZ)2cmU}9y*U}a-z zWng1xVqi-vMNcy{FnmrsC?iQ<#yZIi2AUms1HFIBii-*oLk4Z~Qm??#z@AfoiGWr` z{!ft+`6NIuAuIasZ?-=%SAP55@-ZKjGFAf#Mkdx+dyVPl|$wo=<>)0fC8A z*e{j+3k(PbM)Oh^m@MhvGI&o8y`6s26U^{T6Q4$VspDU?6fiK7|LCxP_sl=c{|1Dg z@}EZg@2A`^g|OKFmO%i@&pFvuK`*oWO?bqe^(Lz z;d|OgfBAb&@$LV3@MoqD#76p32JFBX2xm+F$2uqvACP7q_GwlROv>c1XXo$dL(k0Q z&oeS$`_f4l6QG3yHZWqI@TuKP=bzdg(hNl71x9QHG96g_eqC#;0C@Wfea&64_S=r?h&C6@{XS4)* z?>!|o{I_@qJoA5DCVr}3=<<_}weV-!qO?vm^W%F&t zJfAOFL4T5g&%g$*tU!ZwU4DP2OJ^YeBS*jbWaB&mL}&fueAqMbI2lBI2b9W10=BF? z8~OcAUrGhhNr4Rcf0U@MJt<+zc&2+55dNn3Io)qm{C6k#=b0O*&rDbAj10d z3v!|DWhJ_5qWVb?{>sew&zs0%{mIgJOH@C@A8!$cUP@iH0}s~)o~pe%{F2_^3A`TW ze!81pdiLKA@1+?*D(+Cocv0+ Date: Sun, 4 Oct 2020 11:12:58 +0200 Subject: [PATCH 3/5] New action for building and testing the plugin This allows us to build an artifact of the plugin to test it more easily locally from PRs --- .github/workflows/main.yml | 128 +++++++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 573f19ae..6a763f12 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -27,3 +27,131 @@ jobs: uses: codecov/codecov-action@v1 with: fail_ci_if_error: true + test: + name: Test + runs-on: ubuntu-latest + steps: + + # Setup Java 1.8 environment for the next steps + - name: Setup Java + uses: actions/setup-java@v1 + with: + java-version: 1.8 + + # Check out current repository + - name: Fetch Sources + uses: actions/checkout@v2 + + # Cache Gradle dependencies + - name: Setup Gradle Dependencies Cache + uses: actions/cache@v2 + with: + path: ~/.gradle/caches + key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }} + + # Cache Gradle Wrapper + - name: Setup Gradle Wrapper Cache + uses: actions/cache@v2 + with: + path: ~/.gradle/wrapper + key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} + + # Run detekt, ktlint and tests + - name: Run Linters and Test + run: ./gradlew check + + # Build plugin with buildPlugin Gradle task and provide the artifact for the next workflow jobs + # Requires test job to be passed + build: + name: Build + needs: test + runs-on: ubuntu-latest + outputs: + name: ${{ steps.properties.outputs.name }} + version: ${{ steps.properties.outputs.version }} + changelog: ${{ steps.properties.outputs.changelog }} + artifact: ${{ steps.properties.outputs.artifact }} + steps: + + # Setup Java 1.8 environment for the next steps + - name: Setup Java + uses: actions/setup-java@v1 + with: + java-version: 1.8 + + # Check out current repository + - name: Fetch Sources + uses: actions/checkout@v2 + + # Cache Gradle Dependencies + - name: Setup Gradle Dependencies Cache + uses: actions/cache@v2 + with: + path: ~/.gradle/caches + key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }} + + # Cache Gradle Wrapper + - name: Setup Gradle Wrapper Cache + uses: actions/cache@v2 + with: + path: ~/.gradle/wrapper + key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} + + # Set environment variables + - name: Export Properties + id: properties + shell: bash + run: | + PROPERTIES="$(./gradlew properties --console=plain -q)" + VERSION="$(echo "$PROPERTIES" | grep "^version:" | cut -f2- -d ' ')" + NAME="$(echo "$PROPERTIES" | grep "^pluginName:" | cut -f2- -d ' ')" + ARTIFACT="${NAME}-${VERSION}.zip" + echo "::set-output name=version::$VERSION" + echo "::set-output name=name::$NAME" + echo "::set-output name=artifact::$ARTIFACT" + # Build artifact using buildPlugin Gradle task + - name: Build Plugin + run: ./gradlew buildPlugin + + # Upload plugin artifact to make it available in the next jobs + - name: Upload artifact + uses: actions/upload-artifact@v1 + with: + name: plugin-artifact + path: ./build/distributions/${{ needs.build.outputs.artifact }} + + # Verify built plugin using IntelliJ Plugin Verifier tool + # Requires build job to be passed + verify: + name: Verify + needs: build + runs-on: ubuntu-latest + steps: + + # Download plugin artifact provided by the previous job + - name: Download Artifact + uses: actions/download-artifact@v1 + with: + name: plugin-artifact + + # Run IntelliJ Plugin Verifier action using GitHub Action + - name: Verify Plugin + id: verify + uses: ChrisCarini/intellij-platform-plugin-verifier-action@v1.0.3 + with: + plugin-location: plugin-artifact/*.zip + ide-versions: | + ideaIC:2019.3 + ideaIC:2020.1 + ideaIC:2020.2 + ideaIC:2020.2 + ideaIC:2020.3 + ideaIC:LATEST-EAP-SNAPSHOT + # Print the output of the verify step + - name: Print Logs + if: ${{ always() }} + env: + OUTPUT_LOG: ${{ steps.verify.outputs.verification-output-log-filename }} + run: | + echo "The verifier log file [$OUTPUT_LOG] contents : " ; + cat $OUTPUT_LOG From 82f42afb2c98e11903692255e8da21ff3945fa64 Mon Sep 17 00:00:00 2001 From: Filip Hrisafov Date: Tue, 3 Nov 2020 13:08:16 +0100 Subject: [PATCH 4/5] Remove duplicated 2020.2 verification check --- .github/workflows/main.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 6a763f12..85efa3d6 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -144,7 +144,6 @@ jobs: ideaIC:2019.3 ideaIC:2020.1 ideaIC:2020.2 - ideaIC:2020.2 ideaIC:2020.3 ideaIC:LATEST-EAP-SNAPSHOT # Print the output of the verify step From b60972a2c64f2165e8b69fb2401d3dfba8296716 Mon Sep 17 00:00:00 2001 From: Filip Hrisafov Date: Tue, 3 Nov 2020 13:20:34 +0100 Subject: [PATCH 5/5] Remove explicit 2020.3 from the verification since it hasn't been released yet --- .github/workflows/main.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 85efa3d6..823cbd78 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -144,7 +144,6 @@ jobs: ideaIC:2019.3 ideaIC:2020.1 ideaIC:2020.2 - ideaIC:2020.3 ideaIC:LATEST-EAP-SNAPSHOT # Print the output of the verify step - name: Print Logs