From 5dbf84d5d6df8da60b1f535256ee924e47c5f9e7 Mon Sep 17 00:00:00 2001 From: Benedict Date: Fri, 8 Sep 2017 22:14:09 +0200 Subject: [PATCH] verify checksum from dependencies --- .idea/libraries/espresso_core_2_2_2.xml | 12 ------- .../espresso_idling_resource_2_2_2.xml | 12 ------- ...xposed_instrumentation_api_publish_0_5.xml | 12 ------- .idea/libraries/hamcrest_core_1_3.xml | 11 ------ .idea/libraries/hamcrest_integration_1_3.xml | 9 ----- .idea/libraries/hamcrest_library_1_3.xml | 9 ----- .idea/libraries/javawriter_2_1_1.xml | 9 ----- .idea/libraries/javax_annotation_api_1_2.xml | 9 ----- .idea/libraries/javax_inject_1.xml | 9 ----- .idea/libraries/jsr305_2_0_1.xml | 9 ----- .idea/libraries/junit_4_12.xml | 11 ------ .idea/libraries/rules_0_5.xml | 12 ------- .idea/libraries/runner_0_5.xml | 12 ------- app/build.gradle | 32 ++++++++++++++---- build.gradle | 1 + external-libs/gradle-witness.jar | Bin 0 -> 16694 bytes 16 files changed, 27 insertions(+), 142 deletions(-) delete mode 100644 .idea/libraries/espresso_core_2_2_2.xml delete mode 100644 .idea/libraries/espresso_idling_resource_2_2_2.xml delete mode 100644 .idea/libraries/exposed_instrumentation_api_publish_0_5.xml delete mode 100644 .idea/libraries/hamcrest_core_1_3.xml delete mode 100644 .idea/libraries/hamcrest_integration_1_3.xml delete mode 100644 .idea/libraries/hamcrest_library_1_3.xml delete mode 100644 .idea/libraries/javawriter_2_1_1.xml delete mode 100644 .idea/libraries/javax_annotation_api_1_2.xml delete mode 100644 .idea/libraries/javax_inject_1.xml delete mode 100644 .idea/libraries/jsr305_2_0_1.xml delete mode 100644 .idea/libraries/junit_4_12.xml delete mode 100644 .idea/libraries/rules_0_5.xml delete mode 100644 .idea/libraries/runner_0_5.xml create mode 100644 external-libs/gradle-witness.jar diff --git a/.idea/libraries/espresso_core_2_2_2.xml b/.idea/libraries/espresso_core_2_2_2.xml deleted file mode 100644 index 1fe68a26..00000000 --- a/.idea/libraries/espresso_core_2_2_2.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/espresso_idling_resource_2_2_2.xml b/.idea/libraries/espresso_idling_resource_2_2_2.xml deleted file mode 100644 index df91204f..00000000 --- a/.idea/libraries/espresso_idling_resource_2_2_2.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/exposed_instrumentation_api_publish_0_5.xml b/.idea/libraries/exposed_instrumentation_api_publish_0_5.xml deleted file mode 100644 index 16e1b54c..00000000 --- a/.idea/libraries/exposed_instrumentation_api_publish_0_5.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/hamcrest_core_1_3.xml b/.idea/libraries/hamcrest_core_1_3.xml deleted file mode 100644 index 157e3f34..00000000 --- a/.idea/libraries/hamcrest_core_1_3.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/hamcrest_integration_1_3.xml b/.idea/libraries/hamcrest_integration_1_3.xml deleted file mode 100644 index 58b2c4b3..00000000 --- a/.idea/libraries/hamcrest_integration_1_3.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/hamcrest_library_1_3.xml b/.idea/libraries/hamcrest_library_1_3.xml deleted file mode 100644 index 676cc632..00000000 --- a/.idea/libraries/hamcrest_library_1_3.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/javawriter_2_1_1.xml b/.idea/libraries/javawriter_2_1_1.xml deleted file mode 100644 index a66fefb7..00000000 --- a/.idea/libraries/javawriter_2_1_1.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/javax_annotation_api_1_2.xml b/.idea/libraries/javax_annotation_api_1_2.xml deleted file mode 100644 index 811e73fe..00000000 --- a/.idea/libraries/javax_annotation_api_1_2.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/javax_inject_1.xml b/.idea/libraries/javax_inject_1.xml deleted file mode 100644 index 0d1d5fc9..00000000 --- a/.idea/libraries/javax_inject_1.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/jsr305_2_0_1.xml b/.idea/libraries/jsr305_2_0_1.xml deleted file mode 100644 index cdf98782..00000000 --- a/.idea/libraries/jsr305_2_0_1.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/junit_4_12.xml b/.idea/libraries/junit_4_12.xml deleted file mode 100644 index 305df301..00000000 --- a/.idea/libraries/junit_4_12.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/rules_0_5.xml b/.idea/libraries/rules_0_5.xml deleted file mode 100644 index 0be4378d..00000000 --- a/.idea/libraries/rules_0_5.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/runner_0_5.xml b/.idea/libraries/runner_0_5.xml deleted file mode 100644 index 0d922490..00000000 --- a/.idea/libraries/runner_0_5.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index e4b338a3..aa7bfc2e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,4 +1,5 @@ apply plugin: 'com.android.application' +apply plugin: 'witness' android { compileSdkVersion 25 @@ -35,11 +36,6 @@ android { } dependencies { - compile fileTree(include: ['*.jar'], dir: 'libs') - androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { - exclude group: 'com.android.support', module: 'support-annotations' - }) - compile 'com.android.support:appcompat-v7:25.3.1' compile 'com.android.support:design:25.3.1' compile 'com.android.support.constraint:constraint-layout:1.0.2' @@ -47,5 +43,29 @@ dependencies { compile 'com.android.support:recyclerview-v7:25.3.1' compile 'com.android.support:cardview-v7:25.3.1' compile 'me.dm7.barcodescanner:zxing:1.9.8' - testCompile 'junit:junit:4.12' } + +dependencyVerification { + verify = [ + 'com.android.support:design:a3e83064fe99d0a4369f9b46d8bfbe77d0c3022fffdee4be3ac3857b87cc89e3', + 'com.android.support:appcompat-v7:ac1ebbc46589195dda3e0b1becfe410bafd75bdf3edd1cd9acf04850f3895830', + 'com.android.support.constraint:constraint-layout:b0c688cc2b7172608f8153a689d746da40f71e52d7e2fe2bfd9df2f92db77085', + 'com.android.support:transition:36c688825a8c0e6e879e18886de83dc90673322822d5b606ee302f70fb558e16', + 'me.dm7.barcodescanner:zxing:d43973c9527c23fa8e6d338c6a2c458e373ce1ac6bcaa3bc41d11ae49116000d', + 'me.dm7.barcodescanner:core:a5c8a704089b58029db166172ed8e55d756877d010a85a0b1c94fdc96ffb8f9a', + 'com.android.support:support-v4:07d389154bcf73b47e514964df1578136b26cba78257b8a577a3ccb54beff0ae', + 'com.android.support:recyclerview-v7:375974a8724e359d97d77fa8522c614f813a3ac4583c1807f154a3f9a054b0a1', + 'com.android.support:cardview-v7:defc17032ffa600a82e1c7d96bb574aa5ed64e2b57e28414a245da7d6db0c666', + 'com.android.support:animated-vector-drawable:4bc46edf1946b32d518b41416d1734e915e0cbb28021de3b340527419b070691', + 'com.android.support:support-vector-drawable:13728f337f36d1c02d52198a6c20724edb447a0875454d829f95cb9eb4aa293b', + 'com.android.support:support-fragment:541d6393c1e024453aca2a14f31bea0c7270ff4e2a02783f3528aa426367444d', + 'com.android.support:support-media-compat:cbed07d07e0e84fdb4b75712f5fd946229a8af155933c9a92e41db64d00791e0', + 'com.android.support:support-core-utils:32fac02eb2c20a77fa3e3bc3ede62392a19613f72b8f8e10f5dfa84bb4c89ea1', + 'com.android.support:support-core-ui:6182278a6653e6c111c888963626cbb16f2d0022571cb239760475119e0b92a8', + 'com.android.support:support-compat:e02d781268dc60aab6638d8dc20156ea11ca20b962d294b85e6f1e8418cabfa7', + 'com.android.support:support-annotations:aedf76962584adfaed2bd3fcaa22406461c4310237fc27e301128edaa2dba2fa', + 'com.android.support.constraint:constraint-layout-solver:8c62525a9bc5cff5633a96cb9b32fffeccaf41b8841aa87fc22607070dea9b8d', + 'com.google.zxing:core:bba7724e02a997cec38213af77133ee8e24b0d5cf5fa7ecbc16a4fa93f11ee0d', + ] +} + diff --git a/build.gradle b/build.gradle index 24e27038..212a0839 100644 --- a/build.gradle +++ b/build.gradle @@ -6,6 +6,7 @@ buildscript { } dependencies { classpath 'com.android.tools.build:gradle:2.3.3' + classpath files('external-libs/gradle-witness.jar') // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/external-libs/gradle-witness.jar b/external-libs/gradle-witness.jar new file mode 100644 index 0000000000000000000000000000000000000000..a82cb01f921c0691c3be809972b7f8daea75cd9e GIT binary patch literal 16694 zcmb_@18}6#w(dkTv2CMcOl;e>Z95ZnY}=mLwmq?Jdor0!UgjO$Gv~fj?_yQ`-Mg#y zT3_$3u5Yis*ZSn8z`&tDe1L@f!2FR)>chK%{(gBksP{)kL|K4VLROR>?1TJ2O|0_+ zy~KH+fc5^M{>O^4mT-+?2ZB3m1)wNn! zzWBq(4NzmHhyjI0fu zoGMk%v`|$r-?B^$k_}qmLgO?vA;$x%w#f#$O2ui+=~8+uaa<7?+PLbcCIX!4+e`dHP~xn0ZPwNnU84N~vTz6>r(Wd8yyn7*=%l&aADiy_A!?r9gga9&1c5xm-}* zUAI#*q9LV3nvN#t<{1G_V zQ$<%;6R5n+7n=M5e@x16Y`n2Xq(NAKK}R;XXbtkT?Fq`z+^?{c<_792*OsK##+3OP zdCrg+uw#_0w_q;5*g>DohC6^h9;Pejq{XoRBBN0m|XQ!>}~jAMGPUs{h?IT*{J0M7CeF+0NSU`b>$$)F)hhq&iH6%h#}vKG zj+W=;Mh43e6zbkwsz|JWRwuvjyI!g4vp%~H7?76}rG+00uGH~p!AF8Bz^|g$PB=o6 zlkTl|mmPxQo}O{#TN+46&UWE6!=;nO6}QlkRDz;sNQ?lqgc?Z+q@bEs>cdK4VJkwH z%hQI#49dC}k!kdiZj9i;bOv-$bPS9fCM~%`P&h~eqZ>YT@T>UyBh?B30NC-*A|4mS zN#Hn98GBQ^zm%3@8`vMdb!cXrqi8r9TGWJo)9aHvYG}X{qzk%51c)>h3KHrZU@<32 z-4T^H3-bh}P|m~jGFv0i8+~_dJs4|+(#!7wk_g_oSaKl16YorVc}BURKvbf29@1i& z-82Qv)d(YYjMp6U(k0pJ4nZ_fxkFS#CtuMk4Qrnx46ei+)AOUuqk0FB6ct`50lx(= z3Kg|Q(4f8!ktP6Hq%c04@WalN8n*SmIHfV#K2skgrjIK5XfD1b@0m_X-uAb7{fs5D zALWG3kzf|dn>U)-N<0IzHR54}51_*uQ~{aQ1@TmCv(wlI>6{i4iF%Qt%fq26x@%My z*~7R`%8SOxcbnrr-nOHv}xg|vMD{Bk0hU^rH-*$@E#VDfNExHB4tg!IP^S|-V` zU$R*DBRYUo@|IZJQHNs3>gGvM3%bhz?^tK;NZ$|apSROegOtR3$PXWWAbj zpS#CrKfVXpFJ#|S_(Mz($R7{kN=nzJLibLEWDTo#(%be(f4pu@27k*nU@dMmtYwIw zLZvA&K9jf`jiW3Ji^%dQ|R{j%mA&I!6)l)XK8C zXgNKcFGpMYbD-RBZrdTL|LWE(CnS|mXyj}Z6xjYzJWpq%eh0U~QX@6pLY+>Z6;2p= z0xCJ%wBO$Ix$FjiGw;Y*i;ejQwEwE;@PanUoW=}p$=ZYlXsxnH^@Fy59qhPt$!Z-A%cv(wi9T zmTO;5dwE2BLc|ACrA1VKHqqL06I%c;-vHb}2b`I~3EQn(mhkxY9=uJln&$|!Db1o{ z|J1d4^mxt$W!6;nF6z{Y_c9#*KZ-AJ9LJp+Up1cH%?4=I0wR;#nIoKT%L82fThS^+ zL9Fa;$?$XqtDy>DtW2ECNuk7%6ALxtu_aI?LRmpn@%_J+8D_E>)F(Q(_t2!tojJSJ z+ti}2$3c2B>KuyY^t|PX4~dSWA|ja1ly=n`hHle-izaM>vi6{rchUflXIw)P<=X_z z&~#!oG+GPDnTwF*tyIO$F;(^BMXO*g)?XZ8LD(e-WRgp$$DhOtrygjztc^rnL*fXI z)YX|>b4sx;FfLYPkT2Ix;ppku95PTE<)m1c!J&QD(yK2iL@SQ;Tq9Wy-lz+L{` z&OUl(n=oi(+|1s#QPjGc?t|4ySq%n}yw0c;uMt0woXx5Ur_ouOp#gL%Br;op1Ab*# zvlqiw@1MZ9-1i=xXksL`<;dcs1N z8Sr41}KO>AB*eGVCLlz20S*Gg%kgH^DLPIep ztYm$6ALKtmlP?S+!ZZ{XXBJVD6GmLc2E0JncC4PM^aipR&47V)&$UF?FpkFFVmB_T z=_*`9W!H9Gdv)p-in)D8IEBbZW$R)YN~WYGGqvs?9-#kN_=BYM;>7kmZTgDV_BazQTD80g;EfzzktR`kuLE`tP^tq$z zJwn8!VfU&z2-A5-u{j%=8s4$^WlDz2+-q{Ud6TGbrPjK*)}we<-5Yu+UAC}18%Ll! zR&KOeoG%HnqxX>?T23+46LF88EoCP<%0g0Th+`CM9B~-c7<-Xn^ige2AUCQr5M>tM zq}`mYzcegOAPYk8^9sof3Wm*Xkz0SYp3nx58d4$hPO&MatBrx(x^o~?0?gEJb|h=J z(F8eV7bz|vs8=VgqpL4Er-8LSFab{-q`Lqol&Dx*%myMFHqIy>D z=T_2GDN_s)cj$IQ;?1MefN7JBUQldI<29{7eVe57A&<@=6Rg`O-U;Ao=bY0@cWgDh zllWU-GcBY&1|r^IqfM{6)KAjG#wHc93ZoMWMn27rx0WTjwuBs! zb@u``Px6sCW&CX#zDjR2l_$ahzEC0MSrj!4a;d7nFqAXs|0Fxl1(2) zXAfy34Iea|Gewsk?q)^&_ ziK4;0^;bF#p6lyWm>~CJXpG@`{pK+hri!#f3q0#~cMkEE7SK$O5ccRV(*q0b@w4eI zp3N+K{7mJEm29LjM?c$R_@Q`*rXCp32Nt||bUr1VdTEhEg9_|YPK}5zaqT=v!-s~@ zWip6e-N~{8;J0}@a5bNNYEFOCOW+<;tftvl-TX@OsqBi zoGRu)P31swXOf!c7@echfhCMNX~@GD2AmC78`+9UzsrQADpkDx5)eaWt}=7*>P9IJ zHd!&~0bOVU{g`9cr{n+Bk&+f47Z|gb=h#(!K$lkfAU&ka0XHwSd4hi{q;L>Syla!A z1V2dqYr;eJJCju)dnAcT8lFj7L@H~JLIu76C2Kf6E)Ot7iS~#=YASk{dQEZo#(o^i z`?XX}L6OwK{IH@_>6)@4!CXDrty_)1r#H1to@WzB$xbncQ0HpaHfFOpn{XpHI=*GI2U2x};+w@?dTKj_D}y zC{3}*d}Xvlfi9)oqki8VE#*q32QxjqYEN2?nXI4A^kV=$^eHAM#Mcwl?}Z9COnHe~ zwLVtiX0nbM?Z9c6&rzPhLy<*S2mox^!H*KcUU_;SlIV z3mkMS^@11!-6mu41+(zClkv^d*r9 zn0jvO;`((4532HJ!&^%oOpqGZI7Pja`nq@c-weNntDc}Tng$9R_4b{-a z8$(b5Id@aXn9x89h@#-pE{=_tpQSUYmj`P^adY;07f5gR)jpq#I-)Tx_s_g_z>*VO zK2k4_*Q9q4lra_=blbB>gAw~p0v>k=O(ql9@w9bM3(SuNs;^%dgeHjV((%J0rQ4<= z8FlkR^$g@Am{tibaKgS(I8z8o-D5z^3wvdYx=cA&)@|uMw8kD&W10ZSA%;g=EZl#E zGAq(5DY)?QsIPR+)@Bb_0c7>%`&mgvmS7cn@{ybzMPZ$`Vpm}+QMdcr%6*VYOsMJt z=3t>_r~Mu0@&jPzSvvgd0aJuxVQ50e{ato9;gH{3XP`hyEevCt)UnD>?=eB9zh-KN3DU$vD@nG1 zd_&1Cwur9lwI_TCI?iE1EX>Z7a)}5hv6t;_$0nCYJrHfZ^mH|cNFwX!5mzKdGGw19 zO&#*WhThKS-7Fcur?RI0&Oi9s*|KH_lD>LQI;vbe?6o%bRakotM5{gLb?66dPBrPL zZhdtP9CsFl6j-6L;}8DfTmwXj3jK`(G}uTm5@xg+Ipxw(PHfy7GCbD0Sgd0^?deW{ zs!=(0#h)#-_F=?;X^9g4B2M!;K1>PHr<$a`=s?L&H$$l{sQ#iV_ZU2O`n1l^vfhgE zD5PRwsf*Po7q}ZD)W<8FF>pLL&SFP4)~hQ@TbemjZ@|gQha*2EHMFk0&obm+;M|e4 z2Jl4NQ$`pP+Ea>P3@IX)W~pRKX9ip-Z~M4}$$?xC7dlx#;D0o_6!{Gva-4SrR$=Zt zV!RA}JK=DSpl^0KhL4^%K=&KPQEHhXj&feoJ|0py>1%G#6PRXa-Qilb(tn#3yVdTk zaNZ30HIs%CM982yl4gDU#n&3YdaJ*-M^Reyo3Z|6UJ>R;?cq3g@RFs_f#vIIklHndrqr;oEpeM?LeQN2)^ADh#vhT(1x4*`NK^CZdWT05vkk!qp8#%Su#r*m^&Y(nc~+0k zvFRBE8`UzO)0;j_@fwV0?_Q!mreW^Hnt-R97)@XVuI5i(e=E6`5qsx#DwzM#iJ9f^ z_p)q%VfZ4|GdC0w)HfOAWt%oy6Rq-4eweso3qr(PLi#)qOB?9MUc)l%<_wFrnvJOT zjK%Qpssm4ZcGq4I2+AD1yrUexHw3$-Zm!LY!998DPLItAt;}whdu~_f1b(mgFkd>q zCmZy*j-@?g^;g;t>)7+~o|zuPP48A^a1eBeODj{ zUYHCw9icN7n0@)Hw{#iD;Yb`6_0S7Ae`ax70ao4B1IY;Gy==ulp(1?CwIwzdb* z!hU+IC_**{Hj;6bq>=YW8~@5@Er9@LXSI#ET-jf}Dnaj>o0?0tWFKOAPR(n(jifhW zDLw=7Z!8iXv6_;~DtRUd(IN^BNQZmqVv)pP$FHLq?^zh~{WbPr&rnP*p~hi=!*cA= zqH!bSUKBVuNI;d62fE5>8aqw&+D)8Na zG|*{9P9Gn9Q!vvbc4xNj64fC=r1^#UmHDN6utBV_(%bs@%Kee)*F7H=2=MqL8n%)~whzLJPI9|`*&V{mKoujus$`2uoE>llL!kDAy#=h+a zX)idm95CX_9iG9M%@9;y_5`|X;<|?teM?Ao2qMzlMJpfiTguLGIQOs_BYn#u^3PT7 zEqQ=^V#%q3#YyO-mM#mUG_!far}oFBg)#k@v6k>q46%lq*>}P&YZz-V-Cw6XgIBN% zN8_&jm0jT*V1O7(2$nWq`_%f}O1(X*Qk5an8+Y13SO7*dBlN`#D?UcE9XZ=fKA8s= z@MeC?OW{S(iA71dt&MBsP9(3*tkUZN3)vf?ECl6aQfXJk6+dqZ{n)@ZRKhVUc9fVt z6?AETnoF%I9Jjobmicu}^BT7w@Pa2&J~P8ii&c%dMQyr}bOY$euIto{V-(?Ll4O!Z z{iV^a{P~&vGlZka5KCoqg9e=uc`0$H<+s^jEZX*Ny&(}~IUMq^vH(u(mBE=DZ~g&% z<=S6e{rRq%s@Dwm;(b=ox_#sM^+7A3o^o99$ZHJl`EFCgj3G;C+C7Ea^Ej{> z`0+$gc8WZTO;p6Az=Id`&FDSoO$Gg4bl;BQnmnZG*Ev2!E51T&3juDo>R-ey;V~H_ z!B+DcRvQ^iDI{q5CTk65+D@>ubW>2d%13Y!Ib~C_4iuRdd5?K|*t3A0H}~EuPEJ0X z@8fbBg7m?Wl)OeLafw6`mmYjI>mqC%SYR8#(568V8&I328hD%g=!ll^E;+}x5=g!R zKe3be&@lYApeg3Eu6tVUU!5(VuQ?1-`~nARk>o3(UB9!oIeVR6fp7O32wYU5TBC=i=8Xl)n5_)7;QY zSekx>IrwBrZ0JD9ciR0kOyuXOo_}AQEE8H{wuxBPZtB$th5@(X{Ao983gq$@Dd`&- zu3f|q_(#E`kK%zdvk7fsW(y;3u}V_x_3n5D&s|*V6s9Q*ym8(Bvt1df>i0&J%E$>? zSNS@9m?mFNspi=vlEe73Wy-YX4T*|uRX+F85w!cPAMUvlpzuDHavCTe1a(@b*>_ta zK31eaB9zuc#Bs%05_`MLH_Jil2WmcJO)+R(Yz(ajVM}cE^%=HgcIo#Ww9ZuRyJ-Ky zJA<;@-Pkhkzs4(-a`*erS|vTR7-PHbc>2k^u5UKF-8`xEL;iP3Z)g6#rQL);Vd$Iy>qBoX(p{+qHJLZ*lp(y{r*@z`jQ5w_OVh84{aNj^`?q9y=%~n`t@G*W%BG~$FGZ^X;_Z=ma-xlGIDSjEioTWq z^iI$1+^qcyBl4_btB*7=Li%MtsID1NCGoHpKM@DeUmn+jBb-PuI}g;#IriI>T`KJi zJANcf+b~c^NwXPL;GMv;#p(#oD+C;zR#^n0cmftI;MQP!#dXKO+XvK0uR%|)llhWi zlLcKefN@RLSXW!5UHSrF{YNBxq^HNYxJe(z>J#)TPI-YUDh`*x2jTo-XOE1%V`E33 zTu+8>TaIcRXFic9p}9y}fNH@y0>UDLwNAWjpI1@ob$^5lKsC1|wB^d+x($^GcsR0Q zio#LBZdsyp>8!c$#FQwYMVVvZp&U9!H(JD~rQTmd7V~2PrWu;@qPK>1C}BN3j*r=A zoiRj42&1-w`=TEmXydjo0s-<((mG@gJ~*_&5^f?)C&XKCy#%IN8C;$@~Sf7p9 zL^z`XZ+}uidt#m1rpWUEjmS41BgY4$no_e1iRJlKF4^uA*Q}mQkS8mDWn@xkiN#-8Yiq5LvIRmj*}Gm&;D)KP6KM3J!1B(9)J+sQ#RJBR z4IzO9oQ9}&vp-FtDn_+xp9d>2MYS;*^9{))h37cZaNwj)2B0Yu<}Fm}eZ2JuW1f=N zS5?$&UNJ?OV7Lp)p+6}&@S~%vVL55t12u@DSm%up+Utj9Jd$?o(<7WXy&9t7K?Cd6 zy|jlLb{!FC5SeM&44(O~b*pelcr%Nix33ekF!yR%hd+n7^vgWk1F`$>U6-4HlkTf= zI@2LXkRvr>38n!r*Pv9k6TB3gDWzunb5RCr`bgEZi*#f;=lvq@>##};SW=1HqlzoG zn~`pJGKa96#4%mjK6J^&G_`wifWImgH}TSG|GOMbq>Zx1CHG zMSd}IctW|+h<{j&=E|AL*|{TDyoLehr~Q(E^VGE~+75wIo{-Lv|KU80%JWqXu?>%r z)|Zlpb0BMd3cB29Pq{gJqVko;b(QhEfRZksK9sg2Qqe=GOk;(s=KUZ!-l)>DxT%*# zI9*`#00}SX7v%0zDbMUdfVrd0FVv{y%cT6sW3~oPAm}bAptz=K1?Ov7XTZZ+It(>* z;H+M4UVhD+8Ao~cpGljoH z<9CFIkn&UHxyTfVm^+Bmkzbdjj(rPtEHgD73WbH2BI!yn3pO?cd#;F^aw7^yCpDk) zl`{h@`#Gn1=WQdk`JwV~+`%K~_s~$>5px7L8Yy9RL>p<0;!|lPRRP8&vU_RTgIl4z z98q$l4y~Nhw`sS*L_Sa{7Uj`UwJlA=9{E6OL&ADbiI}~n)z^k`6!q#1WP-au` z*+U(@^#Sq|zHf6fI&XYo4UTE6+UfgH>+6YiM1`q0#aMby9*zds0M$;MQoauSu2?{V z#`i5l)T{FTXSjOMT-V1Jf`8tf`o?sbE#8k3k?&VT|FzdftsdA~S1*~d4D$seeto$9=xdD0SZU~Kq1!yZ zUYBAMLce@Mw!zq9Q&K{GSo{;&@OV6Fk3 zr)h?vE*Px|3Q|Rxm)8d4ieW9i#?uG-TR&+KRmd{-=gz`~`_LQ4Aq}YeH{qV=nTrVh z;jxf9@^i6hGsIt1fT2QIMwpXb-dRXCv>tOVEuT#hUr?EZep<+3rr&}#+)C`DOCw?Q z$3;Qh-m9jjL%?c*TBOv35J`Vk+93x^L?fLgF``#Y%o;8+0`^C&$Iplj)|4h|`?^Nw z@o=bG^yu>EY#=OG5(kDtl1tx+`M!by;g`d4S6mEZjXPuSKlZ}|7bB2I-7Cu2tbsgKbPw6HG07T4E~DY)+yQ67-IV1*@&ZA>lGS;Vnl2?gl1ekMg!d{a z$j&b~h{*J6WF|O#ykcaDuuuV8#9`M6+(FxCpwjNn)o0cmOiX<=dl3~a3Bvklvav9> z&65qgZQWn5-fN;A=Kyu32CJr{5-X;P>n-k7qE(Sort>-0m^F*}D0B5CuT!g@J*uWn zA(H?R&-eL+OHBImW3x74u;|2RLyXCILNM5n_-V)s4X~cMJ970>x;r#uC^85Ld&X0^ zHY(lqhM-#%HDNL^e}!=BzIX>b;Y%8pIB&Pkg@Cfe8q&RwiqOv5Xu6w)9JtE1*%vXv z=M?jYmcf;;^uAXTZN1YiF!k%V zZs}z_jaDd@D{sk8#a0$S6EDMZSb}tjLjiW1g*%0jSodoCvm-X=g}EfoFD!)Lu#qvS zX8;k4c~7(hh)-Q%GLjA?qhvFp)72+upnZi9&R-4IX2r{!ujn{mVnn&}%YIfLpN7i5 zo$FX_%`l4~_ONyUFLtX67T`fmH&0!rA!?Dg4OTaTZ3zrP6y)k72&e9c-4Kd>1(pDw zUj0^>$L%5g3SYP7kRiPoxCo(Z>!IhuNO+|wHt+Sjid?`hgejx1%qzdVN`>r~1QD(B z$p>eXV}WFq@)O_`ez@AX2t~jw2Z>YxF;eMCMNo$bk<&}gHv!{N886qJz?r-UgR#K=YehC$`O_^~YXGu=3;M%(%B zW$}pIb;x(THT>{L^Ow==J-btdt8+SWLS=T}m9(tZr`9LlCzD@4&z818w1MLc2Q6qe z1(u#?>kq6vIn^Gkz?1iT|Av#$2$;CdQLH4HVCp1uO*K~fkj&bBHPbzteZIdI3~W{z^wV9N37SlfTw9ea z>i#z{si>^b?}fRvG5d`=BG43JbXbhe)W<;p68~mQWZs(*`_AjPdb!%Bq|Ef`4T}uQ zdbp`veE6`uBGO1;_rORviTBT|24OJ=fV#XU{GpT}L9mkn`;!neuYQX&u`8)Ip$Wjhxl{*4R|- z*(ItQWL^VvG_%D5=R?dMX0P%K}f^ z+E@fJPKx>i#bN!6>-MTne3=hRRk1CYBa34~&r0(V?gM-cp`laJl2i*<932s%^zc*7 ziDuyfk@k+dA|bqswpmSuqb(S+eZY*6y9`26UZA@MV2f*V&K{4T6k@u;kJ21hQDJ-OdLM%T-Yba}m9$Q5oEAmA ztoT!>XS3bf&X!fZcIp1#;k34q)s(GNLORrnZ9H+oL|a36p*aP>YM^f5HCUi#Zb(*V z1uAGDi@d)H(U@}k5PaJL-z@}bIL|esOThC6Hv7SwmWpiYhJwbvZ$Y8GlI`{GDVGD6 zxEF>EB~+*av`DeBSLCHD0*!1X*=kBFda)AvF!aa7_+K7lv5z}fAY_PfzEsV2g)M@& z8O-T|ykyXgVnC&U3JJyKIS3+RLSq4pmsx>AKh?if3&R7ydx<*+&BygXIwE~j4w}zd z85*`cr(iL2wRbsVtU{}+o}rUY zG2})sVQ`2xk4H1jJsc>acpz7k=mA|n)myb>o>0oYXAkN~`gJZnml|U06KXBtca<8y zKboZ5gY`Mk-dn_0-&@4!{tJc7zmQj@+Vk&5u(v8&bq$&!8hua}3qk2vGA`&t=pFMY zp&or9Yy~Buvi1=Yi`ouFS2b7Zxnh}^L|u!yVl~e~F;4<`L;{C|Z(!yYo?AAaKZ%|j zUZ*a{FyfJ(?>}{FOm;jSZd^?+ym7w~f0_K=9ALgVMGCAhRzhrI-fc0Qk$}ypBEzL{ zn9#eLMq@565>&9SJ8NJxCUpcRN#Jt0Xcn$#>BI{RvHox(Hb9*Sis?K{x8b_VyINUE zs=a&8L&_QTz2ed@$~EBiLL-8x7}L!&tPRKjFe)Lb);LCgbo|xjH;gfQWjYzK4=%3!W%l3X9IH?b=5O>j>5yN_zQO$4P-WailFG z-+bW~rG5a5sC?i8w5oWrgxugI*2*7&SOGA%Y+mz4u5VorCXr+BF({ zn`fgJ|Do90q0}%)j#jN!Qvz6WPFmoYv9SZc(09fE8m-dkyG8Npo5P|J1>T5U!@0n; zqHdXQQU;$Vh28e@BaGoJpX4_G<&A*cM(O5DK-7XryIFey66uX7#1jqbI-L=lmHI1( zlBqqbT{}}c0yq~Snrh}J<IpwBUPp* z0E*D>;kk*qcDc}KlCm6C_rg;qGbJm}6*{yQ2jBmIpfXK$PY^<~pC@$&U$EN96kccb z-5R6?sysDku0gyR0_wlVPP=O=!x6;EJkj9isP&dGDtkw=M5o$BG|obYvppd$H2`nH z0y0*--#W-K?pMk!V{swyyKSF4kfO1(2TD@5p}a+V<0quCC#fSq#+hKN*6OGeEZw1V zQr!If-MH$nHr2EI%~$ZM7g4{K$?c8bK31C_hr|~9hzj^9SzZpf-O*?cDG;a0wbw^z z8!3&UGkKULJlMo%Jqu$|-+wo~Y+yf*7r@*y{RmBxlmsS$xnUC<*{)kDtXxCCcKBvK8O-lQHA~$1H!hhKi3~ru^WwXcq&iBghtxZ$O0Vpn8AnqK@Rbe9L8T?$z$5opbEkYw8B=s03n) zot!RXiL7d6rvvjeSG*4HXtZRwMrK7iMw0)WZVovlBCsR~@0{iUhvf5&4Qjxfiv+U~ z7M%v8e*ANO7V?vajm}vEje!>{I=pRx2>MM)K71Z9^y?gdzXpv6&yv^yN|2Q>c1D-( zm>GzkRFL06H*H}8(hMff@E8q{15{Pyd^ukIksaQidjt z2+CdBU&;YI3+#z9?vRN8^_!dPQ%@S=i;`3RtQM{6#P_v6Gp?RUg}mFuYH+9zID?DA{`&F#--fZ*NP*`|`fk{)%np31;S9T=S-} zILDSt(BcV%|2U)?+uxr}e*0q3kyTTu#G{u^s~+)cZUs52W|rHlYbf_|*3eWW7e0KmEV2YKpF7M+{t=)w;0Gvm_fpyk&>8&SrHm?JUz zo*si7=fc2$LP}6}cbV$j{wvE^dMnQ_=K2e--Xv&qUZ+`cnviSLWzD&VVu=b|g)1qMaDv_oHog}fup73h)MjShs zz8-PlAyxc2J=F*@J4L$jzYe*pzM=W0?u{i?=jxgO7k3GC?H6`)HnDrVJ5Zq*vA*!d z6OKN}Y2#J-9eM)K^m2dxQKSj7u^EwjKQ}$RpPShJ3kimZyR(U{lZBn_->Ne@N^7F1 zJTM>qkp?j1`4v}-iv*g8Bn2gfvSI@66av;~*n>F>^8~*}^@vB3ihEpW`H63BkQNnY zx&BC;xMwrr?4%ym$881kSV?l5?tEHDzy5fr1&-6B5e~6s7m&k zp2UBX-B6tA9zLZtWsW*2;N*sCcsA_Lgsc%$#(eyC0$PKD`5w@P`hXYeIdZytq z3LT7Z_%oPopkz4|7Zw;MYLl7q{kAX#PvQioYV<^FH zCS{M<&Q}(x27UI!Vz$mb2me&fSvHXvYwN*X5ORGaNfhNzu~^}y#^rU~u|*p7Q#w9%47?Y_GNG6Gtl71n z+yjYaC}oOU(+HnkS5$uxZpT)A5{bQzRlfWVPd35ELYjIu7>fS_c(K8Sp&V<8;ZUd- z0oK1IbO&9D=a&6a{zT>|o_y_tE0;U|9UEZ)M}Ni(tBBjznXZNm$jVc?JGfWz127>g zX%KbKE@sMtoG#PivBCIo0PRPKjx40;WyDi$2khR1@ET|Qj#uC35UoB`3Uy&#K!J@< zh=frm_97QMEAtW~`1I-oKyCag#RAvapnAN7R)>T1{8m!^tM7a%Xh;&w*x1yaK|)A|_;?}VqYd^&cPsoFs>^KwT~!7EzY z6hp1NODaOuQga&TUIJ5!fhahSFR6oZRjx!&zw|qF?Wtg!cwuNPJ4cP(r;IoTfuWoo zOY=!fhME)EQHeT?0{=#Zr|-0$=G-XFlf@%yVD zl+NDK?p;{wY+>RwK0!MoF)1@iEkQFnF+C?UB|$^iG)XVHL_Ix1LnlrPsG^~hn512# zo~9Xn*Sapkgv@|&6rH4bbZEaH;6Ol8!T#Us+V?N=ZipW)1b)B&eJy{w{i(J6J^8m4 z`cu8X{@v|AC~yCa@O$>(WWB!ywtunTz^?DZ-@4d;=kZ%^`xpD|k^VmXPn5L(F2HZ` z?O*J7fXVmae-hwtQrtfS{VB!$Tc|>RNRWRU=)Wn<{S*IBY1TjR-9PH1Mz)+S={#@ao7t#Mf9iaSQK>h2r^q;7I-V^-;HG}s5AN4=~9sf)b{}KD==l}oMe