From 697b3dbfb81a8ad56086b533390c54c410e249f0 Mon Sep 17 00:00:00 2001 From: azadehobenland Date: Tue, 25 Oct 2022 13:54:57 +0200 Subject: [PATCH] testat --- .idea/.gitignore | 8 + .idea/Bank-System-New.iml | 11 ++ .idea/libraries/junit_jupiter_5_9_1.xml | 14 ++ .idea/misc.xml | 6 + .idea/modules.xml | 8 + .idea/runConfigurations.xml | 10 ++ .idea/vcs.xml | 6 + Bank-Beispiel.zip | Bin 0 -> 34167 bytes Bank-Beispiel/Bank-Beispiel.iml | 22 +++ .../informatik/bank/domain/Bank.java | 4 + .../informatik/bank/domain/Girokonto.java | 43 ++++- .../informatik/bank/domain/Konto.java | 97 ++++++----- .../informatik/bank/domain/Kontobewegung.java | 4 + .../informatik/bank/facade/Banksystem.java | 12 +- .../informatik/bank/facade/SystemTest.java | 154 ++++++++++++++++-- .../bank/infrastructure/Persistenz.java | 2 +- .../de/hs_mannheim/informatik/bank/ui/UI.java | 27 ++- Spaßkasse Mannheim-bank-data.ser | Bin 0 -> 2114 bytes 18 files changed, 364 insertions(+), 64 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/Bank-System-New.iml create mode 100644 .idea/libraries/junit_jupiter_5_9_1.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/runConfigurations.xml create mode 100644 .idea/vcs.xml create mode 100644 Bank-Beispiel.zip create mode 100644 Bank-Beispiel/Bank-Beispiel.iml create mode 100644 Spaßkasse Mannheim-bank-data.ser diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/Bank-System-New.iml b/.idea/Bank-System-New.iml new file mode 100644 index 0000000..50e375a --- /dev/null +++ b/.idea/Bank-System-New.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/junit_jupiter_5_9_1.xml b/.idea/libraries/junit_jupiter_5_9_1.xml new file mode 100644 index 0000000..54fcd99 --- /dev/null +++ b/.idea/libraries/junit_jupiter_5_9_1.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..c075574 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..7d1b98d --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml new file mode 100644 index 0000000..797acea --- /dev/null +++ b/.idea/runConfigurations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Bank-Beispiel.zip b/Bank-Beispiel.zip new file mode 100644 index 0000000000000000000000000000000000000000..3b41f8ccabe596f07ec0551d9ed20aa775630ba2 GIT binary patch literal 34167 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 s2b?pi2!I29IDdMj + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java index 27aeb58..86e5992 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java @@ -26,6 +26,10 @@ public class Bank implements Serializable { return k.getKontonummer(); } + public long getSaldo(int kontonummer, int zahl){ + Konto konto=findeKonto(kontonummer); + return konto.getSaldo(zahl); + } public String getName() { return name; diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java index d9b1d77..ba760ce 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java @@ -4,12 +4,13 @@ import java.io.Serializable; public class Girokonto extends Konto implements Serializable { + private long dispo=400; public Girokonto(String inhaber, int kontozähler) { super(inhaber, kontozähler); } public boolean überweise(Girokonto ziel, long betrag, String zweck) { - if (super.getKontostand() - betrag >= 0) { + if (super.getKontostand() + dispo >=betrag) { this.auszahlen(betrag, zweck, "Überweisungsausgang", super.getInhaber()); ziel.einzahlen(betrag, zweck, "Überweisungseingang", super.getInhaber()); @@ -18,7 +19,45 @@ public class Girokonto extends Konto implements Serializable { return false; } - + + public long getDispo() { + return dispo; + } + + public boolean auszahlen(long betrag, String zweck, String art, String auftraggeber) { + + if (super.getKontostand() + dispo >=betrag) { + + if (super.getKontostand()>=betrag){ + return super.auszahlen(betrag,zweck,art,auftraggeber); + }else { + long kontostand = getKontostand(); + super.auszahlen(kontostand,zweck,art,auftraggeber); + this.dispo -= betrag-kontostand; + return true; + } + }else { + return false; + } + } + + public void einzahlen(long betrag, String zweck, String art, String auftraggeber) { + long schulden = 400-dispo; + if (schulden>0){ + if (betrag<= schulden){ + dispo+=betrag; + super.einzahlen(0,zweck,art,auftraggeber); + return; + }else{ + dispo=400; + super.einzahlen(betrag-schulden,zweck,art,auftraggeber); + } + }else { + super.einzahlen(betrag,zweck,art,auftraggeber); + } + } + + @Override public String toString() { return "Giro-" + super.toString(); diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java index 31220e1..3bd6abe 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java @@ -4,63 +4,76 @@ import java.io.Serializable; import java.util.ArrayList; public class Konto implements Serializable { - private int nummer; - private long stand = 0; - private String inhaber; + private int nummer; + private long stand = 0; + private String inhaber; - private ArrayList kontobewegungen; + private ArrayList kontobewegungen; - public Konto(String inhaber, int kontozähler) { - nummer = 1000 + kontozähler; - this.inhaber = inhaber; + public Konto(String inhaber, int kontozähler) { + nummer = 1000 + kontozähler; + this.inhaber = inhaber; - this.kontobewegungen = new ArrayList<>(); - } + this.kontobewegungen = new ArrayList<>(); + } - public int getKontonummer() { - return nummer; - } + public int getKontonummer() { + return nummer; + } - @Override - public String toString() { - return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + "]"; - } + @Override + public String toString() { + return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + "]"; + } - public String getInhaber() { - return inhaber; - } + public String getInhaber() { + return inhaber; + } - public long getKontostand() { - return stand; - } + public long getKontostand() { + return stand; + } - public void einzahlen(long betrag, String zweck, String art, String auftraggeber) { - stand += betrag; + public void einzahlen(long betrag, String zweck, String art, String auftraggeber) { + stand += betrag; - kontobewegungen.add(new Kontobewegung(betrag, zweck, art, auftraggeber)); - } + kontobewegungen.add(new Kontobewegung(betrag, zweck, art, auftraggeber)); + } - public boolean auszahlen(long betrag, String zweck, String art, String auftraggeber) { - if (stand - betrag >= 0) { - stand -= betrag; + public boolean auszahlen(long betrag, String zweck, String art, String auftraggeber) { + if (stand - betrag >= 0) { + stand -= betrag; - kontobewegungen.add(new Kontobewegung(betrag * -1, zweck, art, auftraggeber)); + kontobewegungen.add(new Kontobewegung(betrag * -1, zweck, art, auftraggeber)); - return true; - } + return true; + } - return false; - } + return false; + } - public String[] getKontobewegungen() { - String[] auflistung = new String[kontobewegungen.size()]; + public String[] getKontobewegungen() { + String[] auflistung = new String[kontobewegungen.size()]; - int i = 0; - for (Kontobewegung kb : kontobewegungen) { - auflistung[i++] = kb.toString(); - } + int i = 0; + for (Kontobewegung kb : kontobewegungen) { + auflistung[i++] = kb.toString(); + } - return auflistung; - } + return auflistung; + } + + public long getSaldo(int zahl) { + if (zahl > getKontobewegungen().length) { + throw new RuntimeException("Ungültige Eingabe"); + } + long summe = 0; + for (int i = 0; i < zahl; i++) { + Kontobewegung bewegung = kontobewegungen.get(i); + summe = summe + bewegung.getBetrag(); + } + return summe; + + } } diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Kontobewegung.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Kontobewegung.java index d6b15dd..ef515f1 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Kontobewegung.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Kontobewegung.java @@ -19,6 +19,10 @@ public class Kontobewegung implements Serializable { this.datum = new Date(); } + public long getBetrag() { + return betrag; + } + @Override public String toString() { return "Kontobewegung [betrag=" + betrag + ", datum=" + datum + ", betreff=" + betreff + ", art=" + art diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java index 5d72301..27a4b04 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java @@ -52,10 +52,14 @@ public class Banksystem { public boolean geldAuszahlen(int kontonummer, long betrag) throws Exception { Konto konto = bank.findeKonto(kontonummer); - + Persistenz.speichereBankDaten(this.bank, bank.getName()); - return konto.auszahlen(betrag, "Auszahlung am Schalter", "Auszahlung", konto.getInhaber()); + if (konto instanceof Girokonto){ + return ((Girokonto) konto).auszahlen(betrag, "Auszahlung am Schalter", "Auszahlung", konto.getInhaber()); + }else{ + return konto.auszahlen(betrag, "Auszahlung am Schalter", "Auszahlung", konto.getInhaber()); + } } public String[] erstelleKontoauszug(int kontonummer) { @@ -81,4 +85,8 @@ public class Banksystem { return konto.getKontostand(); } + public long getSaldo(int kontonummer,int zahl){ + return bank.getSaldo(kontonummer,zahl); + } + } diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/SystemTest.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/SystemTest.java index 0ce5674..bd45a18 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/SystemTest.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/SystemTest.java @@ -1,19 +1,151 @@ package de.hs_mannheim.informatik.bank.facade; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; - +import de.hs_mannheim.informatik.bank.domain.Bank; +import de.hs_mannheim.informatik.bank.infrastructure.Persistenz; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Order; import org.junit.jupiter.api.Test; +import java.io.FileInputStream; +import java.io.ObjectInputStream; +import java.nio.file.Files; +import java.nio.file.Path; + +import static org.junit.jupiter.api.Assertions.*; + class SystemTest { - @Test - void smokeTest() throws Exception { - Banksystem bs = new Banksystem("Testsystem"); - - assertNotNull(bs); - assertEquals(0, bs.getKontenliste().length); - assertEquals("Testsystem", bs.getBankname()); - } + @Test + void smokeTest() throws Exception { + Banksystem bs = new Banksystem("Testsystem"); + + assertNotNull(bs); + assertEquals(0, bs.getKontenliste().length); + assertEquals("Testsystem", bs.getBankname()); + if (Files.exists(Path.of("Testsystem" + Persistenz.BANK_DATEI))) { + Files.delete(Path.of("Testsystem" + Persistenz.BANK_DATEI)); + } + + } + + @Test + @Order(2) + public void testGeldEinzahlen() throws Exception { + Banksystem banksystem = new Banksystem("Sparkasse1"); + banksystem.kontoAnlegen("Mauer", 1); + banksystem.geldEinzahlen(1000, 300L); + Assertions.assertEquals(300L, (long) banksystem.getKontostand(1000)); + if (Files.exists(Path.of("Sparkasse1" + Persistenz.BANK_DATEI))) { + Files.delete(Path.of("Sparkasse1" + Persistenz.BANK_DATEI)); + } + + } + + @Test + @Order(3) + public void testGeldAuszahlen() throws Exception{ + + Banksystem banksystem = new Banksystem("Sparkasse2"); + banksystem.kontoAnlegen("Mauer2",1); + banksystem.geldEinzahlen(1000,300L); + banksystem.geldAuszahlen(1000,87L); + Assertions.assertEquals(213,(long)banksystem.getKontostand(1000)); + if(Files.exists(Path.of("Sparkasse2"+Persistenz.BANK_DATEI))) + + { + Files.delete(Path.of("Sparkasse2" + Persistenz.BANK_DATEI)); + } + +} + + @Test + @Order(4) + public void testGeldAuszahlen2() throws Exception { + Banksystem banksystem = new Banksystem("Sparkasse3"); + banksystem.kontoAnlegen("Mauer3", 1); + banksystem.geldEinzahlen(1000, 300L); + + assertFalse( banksystem.geldAuszahlen(1000, 940L) ); + if (Files.exists(Path.of("Sparkasse3" + Persistenz.BANK_DATEI))) { + Files.delete(Path.of("Sparkasse3" + Persistenz.BANK_DATEI)); + } + + } // Mehr auszahlen als erlaubt + + @Test + @Order(5) + public void testDispoAuszahlen() throws Exception { + Banksystem banksystem = new Banksystem("Sparkasse4"); + banksystem.kontoAnlegen("Mauer5", 0); + banksystem.geldEinzahlen(1000, 300L); + assertTrue(banksystem.geldAuszahlen(1000,400L)); + assertEquals(banksystem.getKontostand(1000),0); //Konto ist auf 0 + banksystem.geldEinzahlen(1000,101L); + assertEquals(banksystem.getKontostand(1000),1); + if (Files.exists(Path.of("Sparkasse4" + Persistenz.BANK_DATEI))) { + Files.delete(Path.of("Sparkasse4" + Persistenz.BANK_DATEI)); + } + } + @Test + @Order(6) + public void testDispoÜberweisung() throws Exception { + Banksystem banksystem = new Banksystem("Sparkasse5"); + banksystem.kontoAnlegen("Mauer7", 0); + banksystem.kontoAnlegen("Mauer8", 0); + banksystem.geldEinzahlen(1000, 300L); + assertTrue(banksystem.überweisungBeauftragen(1000,1001,400L,"liebe")); + assertEquals(banksystem.getKontostand(1000),0); //Konto ist auf 0 + assertEquals(banksystem.getKontostand(1001),400L); + assertTrue(banksystem.überweisungBeauftragen(1001,1000,501L,"Lieb")); + assertEquals(banksystem.getKontostand(1000),401L); + assertEquals(banksystem.getKontostand(1001),0); + if (Files.exists(Path.of("Sparkasse5" + Persistenz.BANK_DATEI))) { + Files.delete(Path.of("Sparkasse5" + Persistenz.BANK_DATEI)); + } + } + @Test + @Order(7) + public void testSaldo() throws Exception { + Banksystem banksystem = new Banksystem("Sparkasse6"); + banksystem.kontoAnlegen("Mauer7", 0); + banksystem.geldEinzahlen(1000, 300L); + banksystem.geldAuszahlen(1000, 17L); + banksystem.geldAuszahlen(1000, 90L); + banksystem.geldEinzahlen(1000, 10L); + banksystem.geldAuszahlen(1000, 45L); + assertEquals(banksystem.getSaldo(1000, 0), 0); + assertEquals(banksystem.getSaldo(1000, 2), 283L); + assertEquals(banksystem.getSaldo(1000, 3), 193L); + assertEquals(banksystem.getSaldo(1000, 4), 203L); + assertEquals(banksystem.getSaldo(1000, 5), 158L); + + + if (Files.exists(Path.of("Sparkasse6" + Persistenz.BANK_DATEI))) { + Files.delete(Path.of("Sparkasse6" + Persistenz.BANK_DATEI)); + } + } + + @Test + @Order(8) + public void testPersistenz() throws Exception { + Banksystem banksystem = new Banksystem("SparkassePersistenz"); + banksystem.kontoAnlegen("Mauer7", 0); + banksystem.geldEinzahlen(1000, 300L); + + assertTrue(Files.exists(Path.of("SparkassePersistenz" + Persistenz.BANK_DATEI))); //existenz der datei + + ObjectInputStream ois = new ObjectInputStream(new FileInputStream("SparkassePersistenz" + Persistenz.BANK_DATEI)); + Bank bank = (Bank) ois.readObject(); // von datei lesen + ois.close(); + assertNotNull(bank); + assertNotNull(bank.findeKonto(1000)); + assertEquals(bank.findeKonto(1000).getKontostand(),300L); + + if (Files.exists(Path.of("SparkassePersistenz" + Persistenz.BANK_DATEI))) { + Files.delete(Path.of("SparkassePersistenz" + Persistenz.BANK_DATEI)); + } + } + + } diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/infrastructure/Persistenz.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/infrastructure/Persistenz.java index 5d08e48..57e4fe2 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/infrastructure/Persistenz.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/infrastructure/Persistenz.java @@ -7,7 +7,7 @@ import java.io.ObjectInputStream; import java.io.ObjectOutputStream; public class Persistenz { - private static final String BANK_DATEI = "-bank-data.ser"; + public static final String BANK_DATEI = "-bank-data.ser"; public static boolean sindDatenGespeichert(String name) { return new File(name + BANK_DATEI).exists(); diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java index 001e321..b0696cd 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java @@ -27,6 +27,7 @@ public class UI { System.out.println("4 -> Geld auszahlen"); System.out.println("5 -> Kontoauszug drucken"); System.out.println("6 -> Überweisung beauftragen"); + System.out.println("7-> Saldo abfragen"); System.out.println("9 -> Beenden"); System.out.println(); @@ -45,6 +46,7 @@ public class UI { case 4: geldAuszahlen(); break; case 5: kontoauszugDrucken(); break; case 6: überweisungBeauftragen(); break; + case 7: saldoAbfragen(); break; case 9: break mainloop; } @@ -58,6 +60,19 @@ public class UI { } // hauptmenü + + private void saldoAbfragen(){ + System.out.print("Bitte die gewünschte Kontonummer eingeben: "); + int kontonummer = Integer.parseInt(sc.nextLine()); + + // optional prüfen, ob Konto existiert + + System.out.print("Bitte den gewünschte Zahl eingeben: "); + int zahl = Integer.parseInt(sc.nextLine()); + long saldo =bs.getSaldo(kontonummer,zahl); + System.out.printf("Ihr Saldo beträgt = %.2f Euro", (saldo / 100.0)); + } + private void kontenAnzeigen() { String[] konten = bs.getKontenliste(); if (konten.length > 0) { @@ -89,11 +104,11 @@ public class UI { // optional prüfen, ob Konto existiert System.out.print("Bitte den gewünschten Betrag eingeben: "); - double betrag = Double.parseDouble(sc.nextLine()); + long betrag = Long.parseLong(sc.nextLine()); - long neuerKontostand = bs.geldEinzahlen(kontonummer, (long)betrag * 100); + Long neuerKontostand = bs.geldEinzahlen(kontonummer, betrag ); - System.out.printf("Einzahlung erfolgreich, neuer Kontostand = %.2f Euro", (neuerKontostand / 100.0)); + System.out.println("Einzahlung erfolgreich, neuer Kontostand (Euro): "+ neuerKontostand ); } private void geldAuszahlen() throws Exception { @@ -102,12 +117,12 @@ public class UI { int kontonummer = Integer.parseInt(sc.nextLine()); System.out.print("Bitte den gewünschten Betrag eingeben: "); - double betrag = Double.parseDouble(sc.nextLine()); + long betrag = Long.parseLong(sc.nextLine()); - boolean erfolgreich = bs.geldAuszahlen(kontonummer, (long)betrag * 100); + boolean erfolgreich = bs.geldAuszahlen(kontonummer, betrag ); System.out.printf("Auszahlung" + ((!erfolgreich)? " nicht" : "" )+ " erfolgreich. "); - System.out.printf("Neuer Kontostand = %.2f Euro.", (bs.getKontostand(kontonummer) / 100.0)); + System.out.println("Einzahlung erfolgreich, neuer Kontostand (Euro): "+ bs.getKontostand(kontonummer )); } private void kontoauszugDrucken() { diff --git a/Spaßkasse Mannheim-bank-data.ser b/Spaßkasse Mannheim-bank-data.ser new file mode 100644 index 0000000000000000000000000000000000000000..871973cfe9885cfe962b30ca0fe741ac9082b446 GIT binary patch literal 2114 zcmb`JTZl|?9LIlW&diR>V(p?lY^^A{G)rEHa>;G%*l3F+@gL_ubB;Zi@jw4#k1cAY zB|La=NfJqU;g#|r?87Q4q)0-N)@4mv*BAVM|8sWE3`;|%=Jdb(F5lnh|NEbr3;mFA z8BEt`N_RI~#I|*6SSiEKIm{y5XisH{-Ja4Mix_rli5Or0)RCNbVT9=rZ8_P>9hQdSTxZnP9aHlQ3m1t10JR;%#IsI( zhn0e1o>W@s%2QVV{LHz}UHj(7KuJSl2QfYBGpLhErCqCMWhv{vaI|sck!J^E0H{pu z6TxOwho}XC%)I;c=+h@B+hPz;LyhfO7G97om$ll7)R2&6+cos3z`6mrS9M|mXG~Awieh3ZyB@O+7hL)RL+>oqR5}`^E zs+@-)TAO|WF|RriFZS;VyYIXFe7i3qE%w~9%Y%`km5R$#ju6Y4haFqi@J00?S#5QG$8Q()FbKY(7b)PD=a9?ckEvy6_?(wM055R$f&6b$i)+1 zDm5us>Kc5c@v&Ay8hjxX@30|27E2(DL1FT)iA$c78~9?V?yhaDj^jY%he(Ale%9Lx Qq~~-yab4Q9I{dHj0|yOh82|tP literal 0 HcmV?d00001