From acf7aa0f8b9de4f203cc139985c9d50487ffec41 Mon Sep 17 00:00:00 2001 From: esoe Date: Sun, 13 Nov 2022 15:39:35 +0300 Subject: [PATCH 1/3] =?UTF-8?q?=D0=B9=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../molokoin/sourceListener/GitListener.java | 2 -- .../molokoin/sourceListener/GitListener.class | Bin 7054 -> 7054 bytes 2 files changed, 2 deletions(-) diff --git a/src/main/java/ru/molokoin/sourceListener/GitListener.java b/src/main/java/ru/molokoin/sourceListener/GitListener.java index d27e9d9..0933cd3 100644 --- a/src/main/java/ru/molokoin/sourceListener/GitListener.java +++ b/src/main/java/ru/molokoin/sourceListener/GitListener.java @@ -4,12 +4,10 @@ import java.io.BufferedInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; -import java.nio.file.CopyOption; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.StandardCopyOption; import java.util.Enumeration; -import java.util.concurrent.DelayQueue; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; diff --git a/target/classes/ru/molokoin/sourceListener/GitListener.class b/target/classes/ru/molokoin/sourceListener/GitListener.class index a493e9dd3f272de180440f1f50765fa26d55a7b3..4a173997d0bf41e12e5a186a07e73f2636433559 100644 GIT binary patch delta 308 zcmWNNIZFd^5XFCgu<$@MvaXUCk9fx;Dnb&)TY^_GF%~JTG>Anc>m5%}gN4TyE`f+5 zvX$56{RTQspPH}25KE{p7uVxLV8B+GKeA$g7{ zaEvYSjZ@w^<6AU;oGTX>%FU&UkaK=&Gs<;M88>3~mIm$!U|MN+-g__03Y7DJ#-nte Q@bN5OUgQO~RqrwW0sHbhLjV8( delta 308 zcmW-dNlQX;6vcmkXwg8F@p^?rqcl&7U>adFL0O6wEn1q3P_#jtDac&aD|iV}6d^65 zO~Kprb=pR|`T$*8-NU)(oXfd}-|)Z3G>@Ay+Nh+1Iy%wmqJ?fjJ%W1i(no-Pf($Ul zAhUR^yjH8iBa|~r4IvsB!^t@9Oo(OjU+80+VG)OzBf>mOgjr>QH5N$_BPmRVW%gL% zh@kmd|4|W_#C2RG%#t2a8`h8hqN1BZZsA~?R(5ccWr&=F>=GAqihW@YC~!zof^Ipc zB=eOM-Z Date: Tue, 15 Nov 2022 17:59:03 +0300 Subject: [PATCH 2/3] qq --- out/{war => var}/www/html/css/style.css | 0 out/{war => var}/www/html/index.html | 0 out/{war => var}/www/html/js/main.js | 0 .../sourceListener/apache2/ApacheService.java | 57 ++++++++++++++++++ .../apache2/ApacheService.class | Bin 0 -> 3727 bytes 5 files changed, 57 insertions(+) rename out/{war => var}/www/html/css/style.css (100%) rename out/{war => var}/www/html/index.html (100%) rename out/{war => var}/www/html/js/main.js (100%) create mode 100644 src/main/java/ru/molokoin/sourceListener/apache2/ApacheService.java create mode 100644 target/classes/ru/molokoin/sourceListener/apache2/ApacheService.class diff --git a/out/war/www/html/css/style.css b/out/var/www/html/css/style.css similarity index 100% rename from out/war/www/html/css/style.css rename to out/var/www/html/css/style.css diff --git a/out/war/www/html/index.html b/out/var/www/html/index.html similarity index 100% rename from out/war/www/html/index.html rename to out/var/www/html/index.html diff --git a/out/war/www/html/js/main.js b/out/var/www/html/js/main.js similarity index 100% rename from out/war/www/html/js/main.js rename to out/var/www/html/js/main.js diff --git a/src/main/java/ru/molokoin/sourceListener/apache2/ApacheService.java b/src/main/java/ru/molokoin/sourceListener/apache2/ApacheService.java new file mode 100644 index 0000000..7a6b11c --- /dev/null +++ b/src/main/java/ru/molokoin/sourceListener/apache2/ApacheService.java @@ -0,0 +1,57 @@ +package ru.molokoin.sourceListener.apache2; + +import java.io.IOException; +import java.nio.file.DirectoryIteratorException; +import java.nio.file.DirectoryStream; +import java.nio.file.FileSystems; +import java.nio.file.Files; +import java.nio.file.LinkOption; +import java.nio.file.Path; +import java.nio.file.Paths; + +/** + * Класс предоставляет инструменты адаптации контента, для размещения на запущеный сервер apache2 + */ +public class ApacheService { + public static void main(String[] args) throws IOException { + //перечисление корневых каталогов файловой системы + Iterable dirs = FileSystems.getDefault().getRootDirectories(); + for (Path name: dirs) { + System.err.println(name); + } + + /** + * перечисление содержимого каталога + * .. не проходит по внутренним каталогам + */ + Path dir = Paths.get("C:\\Users\\Strannik\\Documents\\esoe\\code\\sourceListener\\out\\zip\\molokoin-client-master.zip"); + System.out.println("Перечисляем содержимое каталога: " + dir.toString()); + + try (DirectoryStream stream = Files.newDirectoryStream(dir)) { + for (Path file: stream) { + System.out.println(file.getFileName()); + } + } catch (IOException | DirectoryIteratorException x) { + // IOException не может броситься во время итерации. + // В этом куске кода оно может броситься только + // методом newDirectoryStream. + System.err.println(x); + } + System.out.println("--------------------------------"); + /** + * проверка доступа к файлу + */ + System.out.println("проверка доступа к файлу: " + dir); + System.out.println("Files.isReadable(dir) : " + Files.isReadable(dir)); + if (Files.isReadable(dir)){ + System.out.println("Files.getOwner : " + Files.getOwner(dir, LinkOption.NOFOLLOW_LINKS)); + System.out.println("Files.getFileStore(dir) : " + Files.getFileStore(dir)); + System.out.println("Files.size(dir) : " + Files.size(dir)); + System.out.println("Files.isSymbolicLink(dir) : " + Files.isSymbolicLink(dir)); + System.out.println("Files.probeContentType(dir) : " + Files.probeContentType(dir)); + + } + + } + +} diff --git a/target/classes/ru/molokoin/sourceListener/apache2/ApacheService.class b/target/classes/ru/molokoin/sourceListener/apache2/ApacheService.class new file mode 100644 index 0000000000000000000000000000000000000000..83886f6bb8f3d1e0a77d7f910b12f1186452eeeb GIT binary patch literal 3727 zcmb7H`F9i775<(rdt`ao3^;Zm;G~<4EsK!2i$!S(4h=@gE@BC`XgZb$d$6QYXGVbO z#@41GX`y>bmvl=>n=U|tuvzS$wx>NOKgsNIAl1`AEi0n^UHdjo4=1O6f7fcJ!=nMYNojn$&khcDr*zw@w); zT|q!#?MdyF7D;Q_iOA5{Nj>EVH10IAhOut}h8C7~)F!xqMbG7p-jGhkSZs%aTIgV9=+?FM|G zqgygy(Pnhu2?dYy)RMbps*3mF{Q^Nla#K*1l)Pi4BQ78JDdmIcRPdp)6dzSZ7q&65 zS^W%s+~BjrOMFy8Px)xY^Tqk;&UVj0`=&g z{^Vg>x9lX9YT2wYl^ifr`HY@*?4)j+dNM@}C;df{H1kgKtdUEWizb{(8$1!tXvBuq zOOk?5`ki(W7{W6cP_U=$kuO+;)U(*jkTCrM(Q0o>_+1XtHGq>*kIJw=r(&NQVA`r+ zzrZ6)`0&I%lQ+`ix)sC$fnCMdinkZe@%P2z%)A(S(P;VF@LSsFv_T$P%(i?fo7&%niJPD?2DCh_bZly zPpX)b&9otvHf^@o3`_;Yzt_p!U>usX%+sWf7GgrLjqJxm=AW-HO&M#b8xLBN*%ex&5mxz*CqUoZCk<&7( zXKIpJF4d~)^(QlkvozUFRj*+m)U|QxTIaZ7b#+L&$MFRfU&NQ#jhDy-{PL+Ak=QsV z4LL76_Q=X03gV)`I!`Z?Gjy8wAr&h4%0oSz_uABud#g0z5?)mCHM}ISIzF^_C>9$! z`a*19e1AgV(VA*qI!44E$IB{S!Pi+JWo-h_FY8395mc~IC8rjen#0aBmUr}sY;&@I zri`4Hjs|gs_Eemc9|>LszOa5%#kcTn0ks58mw}mI)}~s;6^T^!T~?Q;$~MmWRD55> z4{(jQizKX=vq71&AIhBlNak$ty>j*wa(KE7J29OZGt)*&#-|!DKUMKFiI>%WmLPs1 zu*Ex^v&=DlkD28w$T>8f^BMiRieKS6`+F^uK<9hKrm9i#%KSCCSLhDqi@EY5VSqGi zg0;DRnLB_))&hwes!FK*29QsptlLsb)Cy?atAf`J&$7?jrG~e)2BI|`ONu)|tOy9! zap~T6{i@hXmRA3(j^Qi4?6xgq;m#V3u3ft*rLTriW6Fx>RwW!QHFZGCxk?qhso=h^ zJyuL*$4I!(U72%Y)c45kmC3>5V2Jou2I~05S1d<`s|aVoxnbKK1aG?J5JyP{)}WcA z>M?L$#Z?nlbH5I2`5ho-ofK2|F2^7suFhb60qwEwS!@-EU&n^X*+ zPjTa80?Y+?_b_;@C3Xk#o>_capn$^#94lZ%#6^FgX9mgshW3V8 zj0yBB*Ri=>DU0oIxucL`$0qO93oOXsOiDFwUT2MC5k;WBp%CoDyJ1uu-@c9D1>=ESR8ZMXV7bHFK z0GE!{-@;cDGr0Vah;Mizu0BNgjz{=j0k8U%{@5eDR#95k_H&Q$%S!leGDoAhjBCu+ zVZ6Z~U>JYm&$`n5203KLN6^Z#g?U_$P5i^*3C`X8>ceJoZlRQ|u=z?q$N4g;f98Yq z9dzRF=)pe`76QE@$R~0)wu=EgDUS2ib_!34D}1;}6g?+#BCg^$c#|tdyoBH4cf`*o z?*ATtAfo!jC~ml4qu7s|xJ8)S#N1olYotB}Z{s#WT;Tau@_RDwP=?1pL;hLPvQQW4 zUO>TJg$64$6l)hTfS|Xdpj$!4{h#uvZHs6_<1$o1u6LpC=G5H0NKN$>CXjYd`8WQ; L-3QcKhq?a(sbVzP literal 0 HcmV?d00001 From c1c4476173e1b5b939923eaa9d0046869b3aca9a Mon Sep 17 00:00:00 2001 From: esoe Date: Tue, 15 Nov 2022 20:45:36 +0300 Subject: [PATCH 3/3] to server --- options-home.json | 1 + out/repos | 2 +- out/var/www/html/index.html | 4 +- out/zip/molokoin-client-master.zip | Bin 2141 -> 2141 bytes .../molokoin/sourceListener/GitListener.java | 46 +++++++++++++++--- .../{apache2 => fs}/ApacheService.java | 2 +- .../molokoin/sourceListener/opt/Options.java | 8 +++ .../molokoin/sourceListener/GitListener.class | Bin 7054 -> 9651 bytes .../{apache2 => fs}/ApacheService.class | Bin 3727 -> 3717 bytes .../molokoin/sourceListener/opt/Options.class | Bin 2509 -> 2774 bytes 10 files changed, 53 insertions(+), 10 deletions(-) rename src/main/java/ru/molokoin/sourceListener/{apache2 => fs}/ApacheService.java (96%) rename target/classes/ru/molokoin/sourceListener/{apache2 => fs}/ApacheService.class (93%) diff --git a/options-home.json b/options-home.json index 8a0d98f..8a9ddc5 100644 --- a/options-home.json +++ b/options-home.json @@ -5,5 +5,6 @@ "downloadPath" : "C:\\Users\\Strannik\\Documents\\esoe\\code\\sourceListener\\out\\zip", "zipPath" : "C:\\Users\\Strannik\\Documents\\esoe\\code\\sourceListener\\out\\zip\\molokoin-client-master.zip", "unzipPath" : "C:\\Users\\Strannik\\Documents\\esoe\\code\\sourceListener\\out\\unzip\\molokoin", + "sourcePath" : "C:\\Users\\Strannik\\Documents\\esoe\\code\\sourceListener\\out\\unzip\\molokoin\\molokoin-client", "destinationPath" : "C:\\Users\\Strannik\\Documents\\esoe\\code\\sourceListener\\out\\var\\www\\html" } \ No newline at end of file diff --git a/out/repos b/out/repos index ab1d9fe..cd6a2c2 160000 --- a/out/repos +++ b/out/repos @@ -1 +1 @@ -Subproject commit ab1d9fe840340945098569399bb6ec50d5daccc0 +Subproject commit cd6a2c2e64ec4093db8a428c3e26c5aa09df1b79 diff --git a/out/var/www/html/index.html b/out/var/www/html/index.html index e59d56b..17faf28 100644 --- a/out/var/www/html/index.html +++ b/out/var/www/html/index.html @@ -9,11 +9,13 @@
- molokoin.ru + molokoin.ru/ try 13
diff --git a/out/zip/molokoin-client-master.zip b/out/zip/molokoin-client-master.zip index adefef5713fa1bef8f189ac265f7e89f23a54d68..7ef9d9fef84f32b7ad0ae81560bac6ebcbf836f7 100644 GIT binary patch delta 742 zcmcaBa94mgz?+$civa}smgZ07RTKPkzBn0G&_xSHkOQo;-k2Gva^u!aWD+O&_Tb$20VL}Kk_T4-zvG4I%|?w22ZE3j2UNNWY)Eu z%wVDQOY8kNm9B8^I9yYh^xM|@{KN8o{qC#3Ur(A6G4s#2Hh2G?HQSq3mp1b|9-b(>`jSLX(gsJ~eH&ftm+6#v zPnmd+Tk7(IbBA4|eGhT$n&-2Oxrep>j=adnyXU0l`yMk%d^hKG;<^=|=4=%FS~DwE zk~zP5MRc!%XZn71di7+I}8JQRu;3;8pBbx=9I5^%XpJ8*9MO6@BS+Z$jqJd>fnqiW;rAe}xxq*R^NwTG3Y6<{ z+b_QBT*)6{#Ye)-gfEbi$++R_4B zE??Mw?s3Yl>!Q~dHTh|uXzPz&wAM}6S8R%jLR#g=$E{MlQ+kc_-fubkw{dfD<{RnU z??;*iO&(lySi$%xwIb*7Q;zr(Askb#$l0;)yRcLxM#-G0(K=iO;k- zt{4A{)!u&|JiF4cpCeT}ly|?5-Y2%FrQIqOsxS05xVin*TlDbF6-kNS9Hlj1R_tR$ ziI2$#Sv6521RQmff3q5ZVq~%&n;bJRMkf2SnFvGTl97pl0UpJZr?FX}iGw3_@C7Gorn;N8; trX(gOCmWciStOd9nVVY}85tQSnV6-e7#SFwnpv16CmJUj7$v2p000p+4HN(X diff --git a/src/main/java/ru/molokoin/sourceListener/GitListener.java b/src/main/java/ru/molokoin/sourceListener/GitListener.java index 0933cd3..343e9bd 100644 --- a/src/main/java/ru/molokoin/sourceListener/GitListener.java +++ b/src/main/java/ru/molokoin/sourceListener/GitListener.java @@ -4,10 +4,14 @@ import java.io.BufferedInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; +import java.nio.file.DirectoryNotEmptyException; +import java.nio.file.DirectoryStream; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.StandardCopyOption; +import java.util.Comparator; import java.util.Enumeration; +import java.util.Objects; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; @@ -72,13 +76,13 @@ public class GitListener { try { NetService.download(opt.getZipLink(), opt.getDownloadPath()); extract(); - move(); + move(opt.getSourcePath(), opt.getDestinationPath()); } catch (IOException e) { System.out.println(e.getMessage()); } } try { - Thread.sleep(2000); + Thread.sleep(10000); } catch (InterruptedException e) { System.out.println("Проспал!!! Ошибка!!!"); e.printStackTrace(); @@ -132,13 +136,41 @@ public class GitListener { } /** - * + * перемещаем файлы из директории source в target */ - public void move() throws IOException { - Path source = Path.of("C:\\Users\\Strannik\\Documents\\esoe\\code\\sourceListener\\out\\unzip\\molokoin\\molokoin-client"); - Path target = Path.of("C:\\Users\\Strannik\\Documents\\esoe\\code\\sourceListener\\out\\war\\www\\html"); + public void move(String sourceString, String targetString) { + Path source = Path.of(sourceString); + Path target = Path.of(targetString); System.out.println("Перемещение контента ... "); - Files.move(source, target, StandardCopyOption.REPLACE_EXISTING); + System.out.println("sourceString: " + sourceString); + System.out.println("targetString: " + targetString); + try { + //просмотр содержимого папки target + try (DirectoryStream files = Files.newDirectoryStream(target)) { + for (Path path : files){ + System.out.println("Очистка пути: " + path);//вывод содержимого в консоль + //очистка папки + if(Files.isDirectory(path)){ + deleteDirectory(path); + }else{ + Files.delete(path); + } + } + } + Files.move(source, target, StandardCopyOption.REPLACE_EXISTING); + System.out.println("Метод move() успешно выполнен!!!!"); + } catch (IOException e) { + System.err.println("Ошибка в методе move():" + e.getMessage()); + System.err.println("out >>>>>>>>>>>" + e.getLocalizedMessage()); + e.printStackTrace(); + } + } + + public static void deleteDirectory(Path directory) throws IOException { + Files.walk(directory) + .sorted(Comparator.reverseOrder()) + .map(Path::toFile) + .forEach(File::delete); } public static void main(String[] args) throws InvalidRemoteException, TransportException, GitAPIException, IOException { diff --git a/src/main/java/ru/molokoin/sourceListener/apache2/ApacheService.java b/src/main/java/ru/molokoin/sourceListener/fs/ApacheService.java similarity index 96% rename from src/main/java/ru/molokoin/sourceListener/apache2/ApacheService.java rename to src/main/java/ru/molokoin/sourceListener/fs/ApacheService.java index 7a6b11c..1681226 100644 --- a/src/main/java/ru/molokoin/sourceListener/apache2/ApacheService.java +++ b/src/main/java/ru/molokoin/sourceListener/fs/ApacheService.java @@ -1,4 +1,4 @@ -package ru.molokoin.sourceListener.apache2; +package ru.molokoin.sourceListener.fs; import java.io.IOException; import java.nio.file.DirectoryIteratorException; diff --git a/src/main/java/ru/molokoin/sourceListener/opt/Options.java b/src/main/java/ru/molokoin/sourceListener/opt/Options.java index cf48226..b70f843 100644 --- a/src/main/java/ru/molokoin/sourceListener/opt/Options.java +++ b/src/main/java/ru/molokoin/sourceListener/opt/Options.java @@ -7,6 +7,7 @@ public class Options { private String downloadPath; private String zipPath; private String unzipPath; + private String sourcePath; private String destinationPath; public Options(){} @@ -46,6 +47,12 @@ public class Options { public String getZipPath() { return zipPath; } + public void setSourcePath(String sourcePath) { + this.sourcePath = sourcePath; + } + public String getSourcePath() { + return sourcePath; + } public void setDestinationPath(String destinationPath) { this.destinationPath = destinationPath; } @@ -60,6 +67,7 @@ public class Options { s = s + "downloadPath : " + getDownloadPath() + "\n"; s = s + "zipPath : " + getZipPath() + "\n"; s = s + "unzipPath : " + getUnzipPath() + "\n"; + s = s + "sourcePath : " + getSourcePath() + "\n"; s = s + "destinationPath : " + getDestinationPath() + "\n"; return s; } diff --git a/target/classes/ru/molokoin/sourceListener/GitListener.class b/target/classes/ru/molokoin/sourceListener/GitListener.class index 4a173997d0bf41e12e5a186a07e73f2636433559..8bf212eae5dae1c4286a28ac0e434a27307ad7ab 100644 GIT binary patch literal 9651 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 T?wRi~6x^6#fvAI}lc@7QS}&7f diff --git a/target/classes/ru/molokoin/sourceListener/apache2/ApacheService.class b/target/classes/ru/molokoin/sourceListener/fs/ApacheService.class similarity index 93% rename from target/classes/ru/molokoin/sourceListener/apache2/ApacheService.class rename to target/classes/ru/molokoin/sourceListener/fs/ApacheService.class index 83886f6bb8f3d1e0a77d7f910b12f1186452eeeb..34a82f8d2a725b21fd5d2afae0b7347a790e7bb9 100644 GIT binary patch delta 43 vcmeB|ZIu-`^>5cc1_lOmhW+deOpFZL69uH1(uyY5cc1_lOmhW+deOpFW$69uH%6AKcPGg6Hv>XtAW`5*~wJaCj30IUKK AasU7T diff --git a/target/classes/ru/molokoin/sourceListener/opt/Options.class b/target/classes/ru/molokoin/sourceListener/opt/Options.class index 5b292d6a3bffbaed5dea6dc74b450ac106a0073e..e2d40357b6cfb0127cfff38ba41a4a85cf88f206 100644 GIT binary patch literal 2774 zcma);{ZboM7{;Fsl!SON7z=_$1gta!A+@d40%8jks>V{KMX8?)*@lI%n@Kix^iI4B zol)w?j2GY?_^)^2bjI;{_iRYIoSpHXJ-g?5&wGC7ydTM*|Niy|fa~znNLiR}v`WW* z%|G&8uhjHgjeV!=HUr0V8YRCTl(y=D>wC>KdMykd+K=s0&GxFLt-V8MKd_Mg&aIbS z@5n;F+)=lKhU-WRZn*Lt zP4)%{Zqq`c{Qqu(r^+^+;9>jRLxr;kpV{e$g_jl1p^xU(F7xw+nX~rV<)*$XS^BC% zy1g`-=6SfSe6(*-3|~{oh+&RyB5k zFlP$qnTSQZEM>51!ODuK_Y`i3&kyin8s%q-Me{1$#THBAv0ZC9TaQ?J-COB`S~4U@ z1|LZd>EsBHVqsfh0%I9GkjQtXL?nNra8cx4%H4$)$)70{ME*iwkwhs{zEZd>ip{{E z7Gk9BE4(2Z>u8`;n2}gjxF({@sKp93vN%$B8)LjJ)>>94!GYo1ha+=19GQCI$V3fC=2$o~c{t|jiG6_2L4K7uS{%<6pWuZbL$eq8 z>NrFrzfJhbz2ur~LG93rGXat!tgB0T+mk3fw0Fm?+5LTA~ zq!nuP9gDm9s;Tm0o*#V*$HEq{%_$8G$I4g7^o{DV7Pk$D<5)=~V8S`?Y%u!DO4 E0e6zd(*OVf literal 2509 zcma)-Yje{^6o%hTLhQI(9NdHu(zFSbV8;X(XiAAgN+CcmhCl;pL$69Kg1|@~Tc*?g zlm3f#rVYK!^aCIH2Oa)PhxcgZ*eI)+e$h(%o;~~QxvZZ5_t!rF&f|Ut0}6AkPUUgX z2p$EVUug%O*0x*o+M(;atxC`gD{IZr3;cElLkgo0ohMGE;rKh1wXKKlcBqi~$!pd; z|B*tW)>GHRmgnzODeripk+r-9+fL(_6FyMT_237;5jb`8DQ?W$NXOrM&)3~{==qKi z7tXhWENh9WU-bYiVNy3X>WKFii8EKJ&3+X}`U3dEJCZmcFHt=`M|@ zc^+;nAKk!-;W3S@80NW0zhwb+XpzpigV2kOz#%p4#>3C1rJGvx5 ztWIm>x}1!N$xDI0R$on)*q+tUVq2icgshMa15+m%yst2kte(pquTghfS$seQmV}hi z%+gE_i&&CuPvp44vc^$N$=r&@hq$CL>@=IMUsqVLC23zC;$5m)Tvkvy@wBS(p7^|m zk2ARbO4S=)jZg3?Yx{}Q=(ub58RPz~OlMRrDbJ!Nm0?mI9Yx`$#@m?6;+EvIFVV65 zxyEsk?@;dVm{{J>I4Sa%CPb2pSh=TB5#?*9bFZUf?OTnqXx}q2i4Kb`wlvORiUDDh z&I4X_@=AUBp*T}5E=WsNs@dn?uF~Atc`K53e6MV|z6>dHt*7N1xaiq687tJ0d zU_SD2*jU9L#Jix&#;l~+R}bVj9QlP#2hamKWCeNC4lav}fXpUArmZ0F*g;MtL1qXtn*t)$BOt7D3&@Ei$Z;!3 z(GF5dg3J-*WD1Cst$?s`EFh&MNXZIv$_}!S1UW^Jg%l9!BLQJ|TR;|)AQdafyLON> zNszMyIhO(=4J;tMC@dgnk|2v#5MH!qu`2T>k@kJ@Hx@Sw=bz%j{4T1yxLEjzk6m1; ziBSFnS1A=f;~e!HY5JPcZ>Q<&M!%b;e_`~^H2o{1f0L$vXLP4uFZV)njDK+80w%G< mXBC@R#*es&pLvV@$^Y2DxYQT*7x7&+iD%f3qh60LCHEy#U7T(J