From 28e61e73e59af0276026b3c1b24a954a337df4a7 Mon Sep 17 00:00:00 2001 From: Robin Date: Tue, 11 Jul 2023 23:10:01 +0200 Subject: [PATCH] bjhvdfgsbiuol --- .project | 11 + solutions/.classpath | 40 + solutions/.gitignore | 1 + solutions/.project | 23 + .../org.eclipse.core.resources.prefs | 3 + .../.settings/org.eclipse.jdt.core.prefs | 8 + solutions/bin/.gitignore | 1 + solutions/bin/.project | 23 + .../org.eclipse.core.resources.prefs | 2 + solutions/bin/checkstyle.xml | 203 ++ solutions/bin/pmd.xml | 2253 +++++++++++++++++ solutions/bin/pom.xml | 132 + .../grossmacher/Grossmacher.class | Bin 0 -> 1266 bytes .../labeled_break/ArraySucher.class | Bin 0 -> 809 bytes .../password/PasswortChecker.class | Bin 0 -> 3002 bytes .../auffrischung/printf/DoubleFormatter.class | Bin 0 -> 1089 bytes .../java/pr2/auffrischung/quine/Quine.class | Bin 0 -> 1477 bytes .../auffrischung/suchemax/GroessteZahl.class | Bin 0 -> 1340 bytes .../taschenrechner/Taschenrechner.class | Bin 0 -> 1475 bytes .../collections/iterator/SimpleStack.class | Bin 0 -> 2249 bytes .../iterator/test/SimpleStackTest.class | Bin 0 -> 2211 bytes .../collections/iterieren/CoinGenerator.class | Bin 0 -> 3693 bytes .../pr2/collections/iterieren/GameBoard.class | Bin 0 -> 2254 bytes .../pr2/collections/iterieren/GameMain.class | Bin 0 -> 1021 bytes .../pr2/collections/list/WordCollector.class | Bin 0 -> 4832 bytes .../list_iterator/Liste$Item.class | Bin 0 -> 1647 bytes .../list_iterator/Liste$ListenIterator.class | Bin 0 -> 2503 bytes .../pr2/collections/list_iterator/Liste.class | Bin 0 -> 2403 bytes .../java/pr2/collections/map/WordCount.class | Bin 0 -> 3080 bytes .../pr2/collections/map/WordFrequency.class | Bin 0 -> 1995 bytes .../pr2/collections/reverser/Reverser.class | Bin 0 -> 1606 bytes .../reverser/test/ReverserTest.class | Bin 0 -> 1445 bytes .../reverser_generic/Reverser.class | Bin 0 -> 1626 bytes .../reverser_generic/test/ReverserTest.class | Bin 0 -> 1551 bytes .../pr2/collections/set/WordCollector.class | Bin 0 -> 4076 bytes .../sorter_1/CommandLineSorter.class | Bin 0 -> 1443 bytes .../sorter_2/CommandLineSorter.class | Bin 0 -> 1527 bytes .../sortieren/Sorter$SortOrder.class | Bin 0 -> 2005 bytes .../pr2/collections/sortieren/Sorter.class | Bin 0 -> 2927 bytes .../sortieren/test/SorterTest.class | Bin 0 -> 2519 bytes .../collections/woerterbuch/Woerterbuch.class | Bin 0 -> 2033 bytes .../main/java/pr2/enums/eigene/Wuerfel.class | Bin 0 -> 708 bytes .../java/pr2/enums/eigene/WuerfelTyp.class | Bin 0 -> 1022 bytes .../pr2/enums/eigene/test/WuerfelTest.class | Bin 0 -> 1397 bytes .../java/pr2/enums/filme/LieblingsFilme.class | Bin 0 -> 2670 bytes .../src/main/java/pr2/enums/filme/Main.class | Bin 0 -> 909 bytes .../main/java/pr2/enums/schnick/Move.class | Bin 0 -> 2079 bytes .../enums/schnick/SchnickSchnackSchnuck.class | Bin 0 -> 1875 bytes .../java/pr2/enums/singleton/MyEnum.class | Bin 0 -> 767 bytes .../pr2/enums/singleton/SingletonBeweis.class | Bin 0 -> 1066 bytes .../java/pr2/enums/verwenden/GameBoard.class | Bin 0 -> 1856 bytes .../java/pr2/enums/verwenden/GameMain.class | Bin 0 -> 997 bytes .../java/pr2/enums/verwenden/Professor.class | Bin 0 -> 1156 bytes .../ausnahmen_testen/CrypterCaesar.class | Bin 0 -> 4958 bytes .../IllegalKeyException.class | Bin 0 -> 1378 bytes .../IllegalMessageException.class | Bin 0 -> 1398 bytes .../ausnahmen_testen/test/CaesarTest.class | Bin 0 -> 4928 bytes .../pr2/exceptions/eigene_ausnahme/Fuse.class | Bin 0 -> 1568 bytes .../FuseTrippedException.class | Bin 0 -> 1232 bytes .../IllegalCurrentException.class | Bin 0 -> 1221 bytes .../eigene_ausnahme/test/FuseTest.class | Bin 0 -> 5641 bytes .../pr2/exceptions/fakultaet/Fakultaet.class | Bin 0 -> 1884 bytes .../fakultaet/FakultaetException.class | Bin 0 -> 903 bytes .../fakultaet/test/FakultaetTest.class | Bin 0 -> 2236 bytes .../handle_or_declare/Buchstabenzaehler.class | Bin 0 -> 3954 bytes .../StatistikException.class | Bin 0 -> 1377 bytes .../exceptions/try_catch/Zahlenraten.class | Bin 0 -> 2668 bytes .../java/pr2/generics/einfach/Liste.class | Bin 0 -> 1428 bytes .../java/pr2/generics/einfach/ListeNode.class | Bin 0 -> 892 bytes .../pr2/generics/einfach/test/ListeTest.class | Bin 0 -> 1505 bytes .../java/pr2/generics/number_pair/Main.class | Bin 0 -> 1959 bytes .../pr2/generics/number_pair/NumberPair.class | Bin 0 -> 839 bytes .../java/pr2/generics/number_pair/Pair.class | Bin 0 -> 1230 bytes .../main/java/pr2/generics/pair/Main.class | Bin 0 -> 2385 bytes .../main/java/pr2/generics/pair/Pair.class | Bin 0 -> 1195 bytes .../java/pr2/generics/pairlist/Main.class | Bin 0 -> 2067 bytes .../java/pr2/generics/pairlist/Pair.class | Bin 0 -> 1215 bytes .../java/pr2/generics/pairlist/PairList.class | Bin 0 -> 1537 bytes .../generics/printer/CollectionPrinter.class | Bin 0 -> 1120 bytes .../main/java/pr2/generics/printer/Main.class | Bin 0 -> 1707 bytes .../main/java/pr2/generics/queue/Queue.class | Bin 0 -> 1681 bytes .../java/pr2/generics/same_pair/Main.class | Bin 0 -> 1867 bytes .../java/pr2/generics/same_pair/Pair.class | Bin 0 -> 1220 bytes .../pr2/generics/same_pair/SamePair.class | Bin 0 -> 809 bytes .../pr2/generics/super_extends/Liste.class | Bin 0 -> 1850 bytes .../generics/super_extends/ListeNode.class | Bin 0 -> 922 bytes .../super_extends/test/ListeTest.class | Bin 0 -> 1552 bytes .../pr2/generics/verwenden/GameBoard.class | Bin 0 -> 5459 bytes .../pr2/generics/verwenden/GameMain.class | Bin 0 -> 1009 bytes .../pr2/generics/wildcards/ListHelper.class | Bin 0 -> 1717 bytes .../java/pr2/generics/wildcards/Main.class | Bin 0 -> 1070 bytes .../pr2/generics/wildcards/SimpleList.class | Bin 0 -> 853 bytes .../pr2/interfaces/abstrakt_form/Form.class | Bin 0 -> 712 bytes .../abstrakte_klassen_s/Dreieck.class | Bin 0 -> 963 bytes .../abstrakte_klassen_s/Figur.class | Bin 0 -> 709 bytes .../abstrakte_klassen_s/Geometer.class | Bin 0 -> 980 bytes .../abstrakte_klassen_s/Kreis.class | Bin 0 -> 1015 bytes .../comparable_student/Student.class | Bin 0 -> 2659 bytes .../interfaces_s/api/AnalogController.class | Bin 0 -> 734 bytes .../interfaces_s/api/DigitalController.class | Bin 0 -> 729 bytes .../impl/AnalogControllerImpl.class | Bin 0 -> 2022 bytes .../impl/DigitalControllerImpl.class | Bin 0 -> 2336 bytes .../interfaces_s/impl/DualShock4.class | Bin 0 -> 3685 bytes .../test/AnalogControllerTest.class | Bin 0 -> 1506 bytes .../test/DigitalControllerTest.class | Bin 0 -> 1950 bytes .../interfaces_s/test/DualShock4Test.class | Bin 0 -> 1579 bytes .../java/pr2/interfaces/stack/Stack.class | Bin 0 -> 715 bytes .../java/pr2/interfaces/stack/StackImpl.class | Bin 0 -> 2213 bytes .../pr2/interfaces/stack/test/StackTest.class | Bin 0 -> 1249 bytes .../interfaces/uebersetzer/Translator.class | Bin 0 -> 1463 bytes .../interfaces/uebersetzer/Uebersetzer.class | Bin 0 -> 680 bytes .../UebersetzerDeutschEnglisch.class | Bin 0 -> 1312 bytes .../UebersetzerDeutschSpanisch.class | Bin 0 -> 1312 bytes .../coding_standard/CodingStandard.class | Bin 0 -> 1014 bytes .../java/pr2/intro/javadoc/Waehrung.class | Bin 0 -> 3922 bytes .../pr2/intro/junit_faculty/Fakultaet.class | Bin 0 -> 772 bytes .../junit_faculty/test/FakultaetTest.class | Bin 0 -> 1194 bytes .../buffered_reader/LineNumberPrinter.class | Bin 0 -> 1641 bytes .../java/pr2/io/data_output/Board$Tupel.class | Bin 0 -> 2024 bytes .../main/java/pr2/io/data_output/Board.class | Bin 0 -> 3992 bytes .../main/java/pr2/io/data_output/Color.class | Bin 0 -> 1175 bytes .../pr2/io/data_output/test/BoardTest.class | Bin 0 -> 2516 bytes .../pr2/io/datainputoutput_1/DateReader.class | Bin 0 -> 2548 bytes .../pr2/io/datainputoutput_1/DateWriter.class | Bin 0 -> 3195 bytes .../pr2/io/datainputoutput_2/DateReader.class | Bin 0 -> 2732 bytes .../pr2/io/datainputoutput_2/DateWriter.class | Bin 0 -> 3202 bytes .../java/pr2/io/datei_lesen/ReadData.class | Bin 0 -> 1625 bytes .../pr2/io/datei_schreiben/WriteData.class | Bin 0 -> 1542 bytes .../io/datei_schreiben/test/DataTest.class | Bin 0 -> 1866 bytes .../java/pr2/io/file/FilesystemWalker.class | Bin 0 -> 3760 bytes .../main/java/pr2/io/filetest/FileInfo.class | Bin 0 -> 1976 bytes .../main/java/pr2/io/filter/UCaseReader.class | Bin 0 -> 1376 bytes .../pr2/io/filter/test/UCaseReaderTest.class | Bin 0 -> 1689 bytes .../java/pr2/io/konsole/ConsoleToFile.class | Bin 0 -> 2125 bytes .../java/pr2/io/linecounter/LineCounter.class | Bin 0 -> 1555 bytes .../java/pr2/io/random_access/FileSort.class | Bin 0 -> 1258 bytes .../io/random_access/test/FileSortTest.class | Bin 0 -> 2686 bytes .../io/reader_writer/ReadAndPrintFile.class | Bin 0 -> 1524 bytes .../src/main/java/pr2/io/rot13/Rot13.class | Bin 0 -> 1729 bytes .../main/java/pr2/io/rot13/Rot13Reader.class | Bin 0 -> 1312 bytes .../java/pr2/io/scrambler/Scrambler.class | Bin 0 -> 1675 bytes .../pr2/io/serialisierung/Board$Tupel.class | Bin 0 -> 2091 bytes .../java/pr2/io/serialisierung/Board.class | Bin 0 -> 4093 bytes .../java/pr2/io/serialisierung/Color.class | Bin 0 -> 1187 bytes .../io/serialisierung/test/BoardTest.class | Bin 0 -> 2279 bytes .../java/pr2/lambda/anonymous/Alien.class | Bin 0 -> 1961 bytes .../java/pr2/lambda/anonymous/GameBoard.class | Bin 0 -> 2449 bytes .../java/pr2/lambda/anonymous/GameMain.class | Bin 0 -> 1001 bytes .../pr2/lambda/array_sorter/ReverseSort.class | Bin 0 -> 1983 bytes .../main/java/pr2/lambda/callback/Main.class | Bin 0 -> 2674 bytes .../pr2/lambda/callback/NumberSelector.class | Bin 0 -> 1074 bytes .../java/pr2/lambda/callback/Predicate.class | Bin 0 -> 709 bytes .../pr2/lambda/comparator/SortLambda.class | Bin 0 -> 2094 bytes .../main/java/pr2/lambda/lambdas/Main.class | Bin 0 -> 1822 bytes .../pr2/lambda/lambdas/NumberSelector.class | Bin 0 -> 1068 bytes .../java/pr2/lambda/lambdas/Predicate.class | Bin 0 -> 706 bytes .../main/java/pr2/lambda/local/Alien.class | Bin 0 -> 1945 bytes .../java/pr2/lambda/local/GameBoard.class | Bin 0 -> 2422 bytes .../main/java/pr2/lambda/local/GameMain.class | Bin 0 -> 985 bytes .../matrixsuche/MatrixSuche$Position.class | Bin 0 -> 1611 bytes .../pr2/lambda/matrixsuche/MatrixSuche.class | Bin 0 -> 1132 bytes .../matrixsuche/test/MatrixSucheTest.class | Bin 0 -> 1490 bytes .../lambda/mogrifier_1/StringFunction.class | Bin 0 -> 785 bytes .../mogrifier_1/StringTransmogrifier.class | Bin 0 -> 1232 bytes .../test/StringTransmogrifierTest.class | Bin 0 -> 1820 bytes .../lambda/mogrifier_2/StringFunction.class | Bin 0 -> 1233 bytes .../mogrifier_2/StringTransmogrifier.class | Bin 0 -> 1232 bytes .../test/StringTransmogrifierTest.class | Bin 0 -> 2636 bytes .../java/pr2/lambda/nonstatic/Alien.class | Bin 0 -> 2214 bytes .../lambda/nonstatic/GameBoard$Alien.class | Bin 0 -> 3289 bytes .../java/pr2/lambda/nonstatic/GameBoard.class | Bin 0 -> 3207 bytes .../java/pr2/lambda/nonstatic/GameMain.class | Bin 0 -> 1001 bytes .../java/pr2/lambda/static_member/Alien.class | Bin 0 -> 2230 bytes .../static_member/GameBoard$Alien.class | Bin 0 -> 3260 bytes .../pr2/lambda/static_member/GameBoard.class | Bin 0 -> 3274 bytes .../pr2/lambda/static_member/GameMain.class | Bin 0 -> 1017 bytes .../java/pr2/object/clone_alien/Alien.class | Bin 0 -> 3557 bytes .../pr2/object/clone_alien/Raumanzug.class | Bin 0 -> 2472 bytes .../clone_alien/test/AlienCloneTest.class | Bin 0 -> 1834 bytes .../java/pr2/object/clone_person/Person.class | Bin 0 -> 2431 bytes .../java/pr2/object/equals_hashcode/Ork.class | Bin 0 -> 1494 bytes .../pr2/object/equals_hashcode/Wesen.class | Bin 0 -> 2048 bytes .../equals_hashcode/test/WesenTest.class | Bin 0 -> 3026 bytes .../pr2/object/equals_person/Person.class | Bin 0 -> 2470 bytes .../main/java/pr2/object/tostring/Alien.class | Bin 0 -> 1975 bytes .../java/pr2/object/tostring/Ausgabe.class | Bin 0 -> 1207 bytes .../java/pr2/object/tostring/Raumanzug.class | Bin 0 -> 1699 bytes .../wrapper_boxsearch/BoxSearcher.class | Bin 0 -> 1266 bytes .../object/wrapper_umwandler/Umwandler.class | Bin 0 -> 1837 bytes .../information_hiding/Rechner.class | Bin 0 -> 751 bytes .../information_hiding/test/RechnerTest.class | Bin 0 -> 1248 bytes .../main/java/pr2/vererbung/finals/A.class | Bin 0 -> 789 bytes .../main/java/pr2/vererbung/finals/B.class | Bin 0 -> 634 bytes .../java/pr2/vererbung/geometrie1/Figur.class | Bin 0 -> 774 bytes .../java/pr2/vererbung/geometrie1/Main.class | Bin 0 -> 999 bytes .../pr2/vererbung/geometrie1/Rechteck.class | Bin 0 -> 572 bytes .../java/pr2/vererbung/geometrie2/Figur.class | Bin 0 -> 775 bytes .../java/pr2/vererbung/geometrie2/Main.class | Bin 0 -> 999 bytes .../pr2/vererbung/geometrie2/Rechteck.class | Bin 0 -> 572 bytes .../pr2/vererbung/geometrie3/Dreieck.class | Bin 0 -> 569 bytes .../java/pr2/vererbung/geometrie3/Figur.class | Bin 0 -> 941 bytes .../pr2/vererbung/geometrie3/Gerade.class | Bin 0 -> 1029 bytes .../java/pr2/vererbung/geometrie3/Main.class | Bin 0 -> 999 bytes .../pr2/vererbung/geometrie3/Quadrat.class | Bin 0 -> 571 bytes .../pr2/vererbung/geometrie3/Rechteck.class | Bin 0 -> 572 bytes .../vererbung/konstruktoren/Nachtelf.class | Bin 0 -> 1018 bytes .../pr2/vererbung/konstruktoren/Untoter.class | Bin 0 -> 1021 bytes .../pr2/vererbung/konstruktoren/Wesen.class | Bin 0 -> 1115 bytes .../konstruktoren/test/WesenTest.class | Bin 0 -> 2303 bytes .../java/pr2/vererbung/polymorphie/Affe.class | Bin 0 -> 644 bytes .../vererbung/polymorphie/Futterstelle.class | Bin 0 -> 938 bytes .../pr2/vererbung/polymorphie/Giraffe.class | Bin 0 -> 653 bytes .../pr2/vererbung/polymorphie/Gorilla.class | Bin 0 -> 650 bytes .../vererbung/polymorphie/ZooSimulation.class | Bin 0 -> 1559 bytes .../pr2/vererbung/polymorphie/ZooTier.class | Bin 0 -> 1439 bytes .../singleton_einfach/Singleton.class | Bin 0 -> 858 bytes .../java/pr2/vererbung/statics/Spiel.class | Bin 0 -> 1333 bytes .../java/pr2/vererbung/statics/Wuerfel.class | Bin 0 -> 1618 bytes .../vererbung/ueberladen_summe/Summator.class | Bin 0 -> 1025 bytes .../ueberladen_summe/test/SummatorTest.class | Bin 0 -> 1218 bytes .../ueberschreiben_lebewesen/Amoebe.class | Bin 0 -> 942 bytes .../ueberschreiben_lebewesen/Dackel.class | Bin 0 -> 1110 bytes .../ueberschreiben_lebewesen/Lebewesen.class | Bin 0 -> 828 bytes .../ueberschreiben_lebewesen/Main.class | Bin 0 -> 946 bytes .../pr2/vererbung/vararg_summe/Summator.class | Bin 0 -> 933 bytes .../vararg_summe/test/SummatorTest.class | Bin 0 -> 1202 bytes .../vererbung_geometrie/Dreieck.class | Bin 0 -> 614 bytes .../vererbung/vererbung_geometrie/Figur.class | Bin 0 -> 977 bytes .../vererbung_geometrie/Gerade.class | Bin 0 -> 754 bytes .../vererbung_geometrie/Quadrat.class | Bin 0 -> 616 bytes .../vererbung_geometrie/Rechteck.class | Bin 0 -> 617 bytes .../test/FigurenTest.class | Bin 0 -> 3095 bytes sources/.classpath | 54 +- sources/.gitignore | 1 + sources/.project | 23 + .../org.eclipse.core.resources.prefs | 4 + sources/.settings/org.eclipse.jdt.core.prefs | 8 + .../labeled_break/ArraySucher.java | 55 +- .../pr2/vererbung/konstruktoren/Nachtelf.java | 11 +- .../pr2/vererbung/konstruktoren/Untoter.java | 11 +- .../konstruktoren/test/WesenTest.java | 36 +- .../vererbung/polymorphie/Futterstelle.java | 16 +- .../vererbung/polymorphie/ZooSimulation.java | 53 +- .../singleton_einfach/Singleton.java | 7 + .../java/pr2/vererbung/statics/Spiel.java | 7 +- .../java/pr2/vererbung/statics/Wuerfel.java | 62 +- 246 files changed, 2934 insertions(+), 114 deletions(-) create mode 100644 .project create mode 100644 solutions/.classpath create mode 100644 solutions/.gitignore create mode 100644 solutions/.project create mode 100644 solutions/.settings/org.eclipse.core.resources.prefs create mode 100644 solutions/.settings/org.eclipse.jdt.core.prefs create mode 100644 solutions/bin/.gitignore create mode 100644 solutions/bin/.project create mode 100644 solutions/bin/.settings/org.eclipse.core.resources.prefs create mode 100644 solutions/bin/checkstyle.xml create mode 100644 solutions/bin/pmd.xml create mode 100644 solutions/bin/pom.xml create mode 100644 solutions/bin/src/main/java/pr2/auffrischung/grossmacher/Grossmacher.class create mode 100644 solutions/bin/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.class create mode 100644 solutions/bin/src/main/java/pr2/auffrischung/password/PasswortChecker.class create mode 100644 solutions/bin/src/main/java/pr2/auffrischung/printf/DoubleFormatter.class create mode 100644 solutions/bin/src/main/java/pr2/auffrischung/quine/Quine.class create mode 100644 solutions/bin/src/main/java/pr2/auffrischung/suchemax/GroessteZahl.class create mode 100644 solutions/bin/src/main/java/pr2/auffrischung/taschenrechner/Taschenrechner.class create mode 100644 solutions/bin/src/main/java/pr2/collections/iterator/SimpleStack.class create mode 100644 solutions/bin/src/main/java/pr2/collections/iterator/test/SimpleStackTest.class create mode 100644 solutions/bin/src/main/java/pr2/collections/iterieren/CoinGenerator.class create mode 100644 solutions/bin/src/main/java/pr2/collections/iterieren/GameBoard.class create mode 100644 solutions/bin/src/main/java/pr2/collections/iterieren/GameMain.class create mode 100644 solutions/bin/src/main/java/pr2/collections/list/WordCollector.class create mode 100644 solutions/bin/src/main/java/pr2/collections/list_iterator/Liste$Item.class create mode 100644 solutions/bin/src/main/java/pr2/collections/list_iterator/Liste$ListenIterator.class create mode 100644 solutions/bin/src/main/java/pr2/collections/list_iterator/Liste.class create mode 100644 solutions/bin/src/main/java/pr2/collections/map/WordCount.class create mode 100644 solutions/bin/src/main/java/pr2/collections/map/WordFrequency.class create mode 100644 solutions/bin/src/main/java/pr2/collections/reverser/Reverser.class create mode 100644 solutions/bin/src/main/java/pr2/collections/reverser/test/ReverserTest.class create mode 100644 solutions/bin/src/main/java/pr2/collections/reverser_generic/Reverser.class create mode 100644 solutions/bin/src/main/java/pr2/collections/reverser_generic/test/ReverserTest.class create mode 100644 solutions/bin/src/main/java/pr2/collections/set/WordCollector.class create mode 100644 solutions/bin/src/main/java/pr2/collections/sorter_1/CommandLineSorter.class create mode 100644 solutions/bin/src/main/java/pr2/collections/sorter_2/CommandLineSorter.class create mode 100644 solutions/bin/src/main/java/pr2/collections/sortieren/Sorter$SortOrder.class create mode 100644 solutions/bin/src/main/java/pr2/collections/sortieren/Sorter.class create mode 100644 solutions/bin/src/main/java/pr2/collections/sortieren/test/SorterTest.class create mode 100644 solutions/bin/src/main/java/pr2/collections/woerterbuch/Woerterbuch.class create mode 100644 solutions/bin/src/main/java/pr2/enums/eigene/Wuerfel.class create mode 100644 solutions/bin/src/main/java/pr2/enums/eigene/WuerfelTyp.class create mode 100644 solutions/bin/src/main/java/pr2/enums/eigene/test/WuerfelTest.class create mode 100644 solutions/bin/src/main/java/pr2/enums/filme/LieblingsFilme.class create mode 100644 solutions/bin/src/main/java/pr2/enums/filme/Main.class create mode 100644 solutions/bin/src/main/java/pr2/enums/schnick/Move.class create mode 100644 solutions/bin/src/main/java/pr2/enums/schnick/SchnickSchnackSchnuck.class create mode 100644 solutions/bin/src/main/java/pr2/enums/singleton/MyEnum.class create mode 100644 solutions/bin/src/main/java/pr2/enums/singleton/SingletonBeweis.class create mode 100644 solutions/bin/src/main/java/pr2/enums/verwenden/GameBoard.class create mode 100644 solutions/bin/src/main/java/pr2/enums/verwenden/GameMain.class create mode 100644 solutions/bin/src/main/java/pr2/enums/verwenden/Professor.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/CrypterCaesar.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/IllegalKeyException.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/IllegalMessageException.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/test/CaesarTest.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/Fuse.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/FuseTrippedException.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/IllegalCurrentException.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/test/FuseTest.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/fakultaet/Fakultaet.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/fakultaet/FakultaetException.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/fakultaet/test/FakultaetTest.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/handle_or_declare/Buchstabenzaehler.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/handle_or_declare/StatistikException.class create mode 100644 solutions/bin/src/main/java/pr2/exceptions/try_catch/Zahlenraten.class create mode 100644 solutions/bin/src/main/java/pr2/generics/einfach/Liste.class create mode 100644 solutions/bin/src/main/java/pr2/generics/einfach/ListeNode.class create mode 100644 solutions/bin/src/main/java/pr2/generics/einfach/test/ListeTest.class create mode 100644 solutions/bin/src/main/java/pr2/generics/number_pair/Main.class create mode 100644 solutions/bin/src/main/java/pr2/generics/number_pair/NumberPair.class create mode 100644 solutions/bin/src/main/java/pr2/generics/number_pair/Pair.class create mode 100644 solutions/bin/src/main/java/pr2/generics/pair/Main.class create mode 100644 solutions/bin/src/main/java/pr2/generics/pair/Pair.class create mode 100644 solutions/bin/src/main/java/pr2/generics/pairlist/Main.class create mode 100644 solutions/bin/src/main/java/pr2/generics/pairlist/Pair.class create mode 100644 solutions/bin/src/main/java/pr2/generics/pairlist/PairList.class create mode 100644 solutions/bin/src/main/java/pr2/generics/printer/CollectionPrinter.class create mode 100644 solutions/bin/src/main/java/pr2/generics/printer/Main.class create mode 100644 solutions/bin/src/main/java/pr2/generics/queue/Queue.class create mode 100644 solutions/bin/src/main/java/pr2/generics/same_pair/Main.class create mode 100644 solutions/bin/src/main/java/pr2/generics/same_pair/Pair.class create mode 100644 solutions/bin/src/main/java/pr2/generics/same_pair/SamePair.class create mode 100644 solutions/bin/src/main/java/pr2/generics/super_extends/Liste.class create mode 100644 solutions/bin/src/main/java/pr2/generics/super_extends/ListeNode.class create mode 100644 solutions/bin/src/main/java/pr2/generics/super_extends/test/ListeTest.class create mode 100644 solutions/bin/src/main/java/pr2/generics/verwenden/GameBoard.class create mode 100644 solutions/bin/src/main/java/pr2/generics/verwenden/GameMain.class create mode 100644 solutions/bin/src/main/java/pr2/generics/wildcards/ListHelper.class create mode 100644 solutions/bin/src/main/java/pr2/generics/wildcards/Main.class create mode 100644 solutions/bin/src/main/java/pr2/generics/wildcards/SimpleList.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/abstrakt_form/Form.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Dreieck.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Figur.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Geometer.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Kreis.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/comparable_student/Student.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/interfaces_s/api/AnalogController.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/interfaces_s/api/DigitalController.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/AnalogControllerImpl.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/DigitalControllerImpl.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/DualShock4.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/AnalogControllerTest.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/DigitalControllerTest.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/DualShock4Test.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/stack/Stack.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/stack/StackImpl.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/stack/test/StackTest.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/uebersetzer/Translator.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/uebersetzer/Uebersetzer.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/uebersetzer/UebersetzerDeutschEnglisch.class create mode 100644 solutions/bin/src/main/java/pr2/interfaces/uebersetzer/UebersetzerDeutschSpanisch.class create mode 100644 solutions/bin/src/main/java/pr2/intro/coding_standard/CodingStandard.class create mode 100644 solutions/bin/src/main/java/pr2/intro/javadoc/Waehrung.class create mode 100644 solutions/bin/src/main/java/pr2/intro/junit_faculty/Fakultaet.class create mode 100644 solutions/bin/src/main/java/pr2/intro/junit_faculty/test/FakultaetTest.class create mode 100644 solutions/bin/src/main/java/pr2/io/buffered_reader/LineNumberPrinter.class create mode 100644 solutions/bin/src/main/java/pr2/io/data_output/Board$Tupel.class create mode 100644 solutions/bin/src/main/java/pr2/io/data_output/Board.class create mode 100644 solutions/bin/src/main/java/pr2/io/data_output/Color.class create mode 100644 solutions/bin/src/main/java/pr2/io/data_output/test/BoardTest.class create mode 100644 solutions/bin/src/main/java/pr2/io/datainputoutput_1/DateReader.class create mode 100644 solutions/bin/src/main/java/pr2/io/datainputoutput_1/DateWriter.class create mode 100644 solutions/bin/src/main/java/pr2/io/datainputoutput_2/DateReader.class create mode 100644 solutions/bin/src/main/java/pr2/io/datainputoutput_2/DateWriter.class create mode 100644 solutions/bin/src/main/java/pr2/io/datei_lesen/ReadData.class create mode 100644 solutions/bin/src/main/java/pr2/io/datei_schreiben/WriteData.class create mode 100644 solutions/bin/src/main/java/pr2/io/datei_schreiben/test/DataTest.class create mode 100644 solutions/bin/src/main/java/pr2/io/file/FilesystemWalker.class create mode 100644 solutions/bin/src/main/java/pr2/io/filetest/FileInfo.class create mode 100644 solutions/bin/src/main/java/pr2/io/filter/UCaseReader.class create mode 100644 solutions/bin/src/main/java/pr2/io/filter/test/UCaseReaderTest.class create mode 100644 solutions/bin/src/main/java/pr2/io/konsole/ConsoleToFile.class create mode 100644 solutions/bin/src/main/java/pr2/io/linecounter/LineCounter.class create mode 100644 solutions/bin/src/main/java/pr2/io/random_access/FileSort.class create mode 100644 solutions/bin/src/main/java/pr2/io/random_access/test/FileSortTest.class create mode 100644 solutions/bin/src/main/java/pr2/io/reader_writer/ReadAndPrintFile.class create mode 100644 solutions/bin/src/main/java/pr2/io/rot13/Rot13.class create mode 100644 solutions/bin/src/main/java/pr2/io/rot13/Rot13Reader.class create mode 100644 solutions/bin/src/main/java/pr2/io/scrambler/Scrambler.class create mode 100644 solutions/bin/src/main/java/pr2/io/serialisierung/Board$Tupel.class create mode 100644 solutions/bin/src/main/java/pr2/io/serialisierung/Board.class create mode 100644 solutions/bin/src/main/java/pr2/io/serialisierung/Color.class create mode 100644 solutions/bin/src/main/java/pr2/io/serialisierung/test/BoardTest.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/anonymous/Alien.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/anonymous/GameBoard.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/anonymous/GameMain.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/array_sorter/ReverseSort.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/callback/Main.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/callback/NumberSelector.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/callback/Predicate.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/comparator/SortLambda.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/lambdas/Main.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/lambdas/NumberSelector.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/lambdas/Predicate.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/local/Alien.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/local/GameBoard.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/local/GameMain.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/matrixsuche/MatrixSuche$Position.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/matrixsuche/MatrixSuche.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/matrixsuche/test/MatrixSucheTest.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringFunction.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringTransmogrifier.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/mogrifier_1/test/StringTransmogrifierTest.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringFunction.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringTransmogrifier.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/mogrifier_2/test/StringTransmogrifierTest.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/nonstatic/Alien.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/nonstatic/GameBoard$Alien.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/nonstatic/GameBoard.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/nonstatic/GameMain.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/static_member/Alien.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/static_member/GameBoard$Alien.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/static_member/GameBoard.class create mode 100644 solutions/bin/src/main/java/pr2/lambda/static_member/GameMain.class create mode 100644 solutions/bin/src/main/java/pr2/object/clone_alien/Alien.class create mode 100644 solutions/bin/src/main/java/pr2/object/clone_alien/Raumanzug.class create mode 100644 solutions/bin/src/main/java/pr2/object/clone_alien/test/AlienCloneTest.class create mode 100644 solutions/bin/src/main/java/pr2/object/clone_person/Person.class create mode 100644 solutions/bin/src/main/java/pr2/object/equals_hashcode/Ork.class create mode 100644 solutions/bin/src/main/java/pr2/object/equals_hashcode/Wesen.class create mode 100644 solutions/bin/src/main/java/pr2/object/equals_hashcode/test/WesenTest.class create mode 100644 solutions/bin/src/main/java/pr2/object/equals_person/Person.class create mode 100644 solutions/bin/src/main/java/pr2/object/tostring/Alien.class create mode 100644 solutions/bin/src/main/java/pr2/object/tostring/Ausgabe.class create mode 100644 solutions/bin/src/main/java/pr2/object/tostring/Raumanzug.class create mode 100644 solutions/bin/src/main/java/pr2/object/wrapper_boxsearch/BoxSearcher.class create mode 100644 solutions/bin/src/main/java/pr2/object/wrapper_umwandler/Umwandler.class create mode 100644 solutions/bin/src/main/java/pr2/strukturierung/information_hiding/Rechner.class create mode 100644 solutions/bin/src/main/java/pr2/strukturierung/information_hiding/test/RechnerTest.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/finals/A.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/finals/B.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie1/Figur.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie1/Main.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie1/Rechteck.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie2/Figur.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie2/Main.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie2/Rechteck.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie3/Dreieck.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie3/Figur.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie3/Gerade.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie3/Main.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie3/Quadrat.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/geometrie3/Rechteck.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Untoter.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Wesen.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/polymorphie/Affe.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/polymorphie/Futterstelle.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/polymorphie/Giraffe.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/polymorphie/Gorilla.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooTier.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/singleton_einfach/Singleton.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/statics/Spiel.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/statics/Wuerfel.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/ueberladen_summe/Summator.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/ueberladen_summe/test/SummatorTest.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Amoebe.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Dackel.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Lebewesen.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Main.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/vararg_summe/Summator.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/vararg_summe/test/SummatorTest.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Dreieck.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Figur.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Gerade.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Quadrat.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Rechteck.class create mode 100644 solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/test/FigurenTest.class create mode 100644 sources/.gitignore create mode 100644 sources/.project create mode 100644 sources/.settings/org.eclipse.core.resources.prefs create mode 100644 sources/.settings/org.eclipse.jdt.core.prefs diff --git a/.project b/.project new file mode 100644 index 0000000..a628cce --- /dev/null +++ b/.project @@ -0,0 +1,11 @@ + + + uebungen + + + + + + + + diff --git a/solutions/.classpath b/solutions/.classpath new file mode 100644 index 0000000..7a69f73 --- /dev/null +++ b/solutions/.classpath @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/.gitignore b/solutions/.gitignore new file mode 100644 index 0000000..b83d222 --- /dev/null +++ b/solutions/.gitignore @@ -0,0 +1 @@ +/target/ diff --git a/solutions/.project b/solutions/.project new file mode 100644 index 0000000..ce0149b --- /dev/null +++ b/solutions/.project @@ -0,0 +1,23 @@ + + + solutions + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/solutions/.settings/org.eclipse.core.resources.prefs b/solutions/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..654c175 --- /dev/null +++ b/solutions/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +encoding//src/main/java=UTF-8 +encoding/=UTF-8 diff --git a/solutions/.settings/org.eclipse.jdt.core.prefs b/solutions/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..cd7ae0f --- /dev/null +++ b/solutions/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,8 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 +org.eclipse.jdt.core.compiler.compliance=17 +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore +org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.source=17 diff --git a/solutions/bin/.gitignore b/solutions/bin/.gitignore new file mode 100644 index 0000000..b83d222 --- /dev/null +++ b/solutions/bin/.gitignore @@ -0,0 +1 @@ +/target/ diff --git a/solutions/bin/.project b/solutions/bin/.project new file mode 100644 index 0000000..ce0149b --- /dev/null +++ b/solutions/bin/.project @@ -0,0 +1,23 @@ + + + solutions + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/solutions/bin/.settings/org.eclipse.core.resources.prefs b/solutions/bin/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..4824b80 --- /dev/null +++ b/solutions/bin/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/solutions/bin/checkstyle.xml b/solutions/bin/checkstyle.xml new file mode 100644 index 0000000..2a9d4aa --- /dev/null +++ b/solutions/bin/checkstyle.xml @@ -0,0 +1,203 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/bin/pmd.xml b/solutions/bin/pmd.xml new file mode 100644 index 0000000..97e1b5f --- /dev/null +++ b/solutions/bin/pmd.xml @@ -0,0 +1,2253 @@ + + + + + +Rules which enforce generally accepted best practices. + + + + + + +Instantiation by way of private constructors from outside the constructor's class often causes the +generation of an accessor. A factory method, or non-privatization of the constructor can eliminate this +situation. The generated class file is actually an interface. It gives the accessing class the ability +to invoke a new hidden package scope constructor that takes the interface as a supplementary parameter. +This turns a private constructor effectively into one with package scope, and is challenging to discern. + +_Note:_ This rule is only executed for Java 10 or lower. +Since Java 11, [JEP 181: Nest-Based Access Control](https://openjdk.org/jeps/181) has been implemented. This +means that in Java 11 and above accessor classes are not generated anymore. + + 3 + + + + + + + + + + Declaring a MessageDigest instance as a field make this instance directly available to multiple threads. + Such sharing of MessageDigest instances should be avoided if possible since it leads to wrong results + if the access is not synchronized correctly. + Just create a new instance and use it locally, where you need it. + Creating a new instance is easier than synchronizing access to a shared instance. + + 3 + + + + + + + + + + + + + + + +Reassigning exception variables caught in a catch statement should be avoided because of: + +1) If it is needed, multi catch can be easily added and code will still compile. + +2) Following the principle of least surprise we want to make sure that a variable caught in a catch statement +is always the one thrown in a try block. + + 3 + + + + + +Reassigning loop variables can lead to hard-to-find bugs. Prevent or limit how these variables can be changed. + +In foreach-loops, configured by the `foreachReassign` property: +- `deny`: Report any reassignment of the loop variable in the loop body. _This is the default._ +- `allow`: Don't check the loop variable. +- `firstOnly`: Report any reassignments of the loop variable, except as the first statement in the loop body. + _This is useful if some kind of normalization or clean-up of the value before using is permitted, but any other change of the variable is not._ + +In for-loops, configured by the `forReassign` property: +- `deny`: Report any reassignment of the control variable in the loop body. _This is the default._ +- `allow`: Don't check the control variable. +- `skip`: Report any reassignments of the control variable, except conditional increments/decrements (`++`, `--`, `+=`, `-=`). + _This prevents accidental reassignments or unconditional increments of the control variable._ + + 3 + + + + + + + + + + + +Reassigning values to incoming parameters of a method or constructor is not recommended, as this can +make the code more difficult to understand. The code is often read with the assumption that parameter values +don't change and an assignment violates therefore the principle of least astonishment. This is especially a +problem if the parameter is documented e.g. in the method's javadoc and the new content differs from the original +documented content. + +Use temporary local variables instead. This allows you to assign a new name, which makes the code better +understandable. + +Note that this rule considers both methods and constructors. If there are multiple assignments for a formal +parameter, then only the first assignment is reported. + + 2 + + + + + + + +StringBuffers/StringBuilders can grow considerably, and so may become a source of memory leaks +if held within objects with long lifetimes. + + 3 + + + + + + + + + + + + + + + +Application with hard-coded IP addresses can become impossible to deploy in some cases. +Externalizing IP adresses is preferable. + + 3 + + + + + + + +Always check the return values of navigation methods (next, previous, first, last) of a ResultSet. +If the value return is 'false', it should be handled properly. + + 3 + + + + + + + +Avoid constants in interfaces. Interfaces should define types, constants are implementation details +better placed in classes or enums. See Effective Java, item 19. + + 3 + + + + + + + + + + + + + + + + +By convention, the default label should be the last label in a switch statement. + + 3 + + + + + + + + + + + + + + + + Double brace initialisation is a pattern to initialise eg collections concisely. But it implicitly + generates a new .class file, and the object holds a strong reference to the enclosing object. For those + reasons, it is preferable to initialize the object normally, even though it's verbose. + + This rule counts any anonymous class which only has a single initializer as an instance of double-brace + initialization. There is currently no way to find out whether a method called in the initializer is not + accessible from outside the anonymous class, and those legit cases should be suppressed for the time being. + + 3 + + + + + + + + + (){{ + add("a"); + add("b"); + add("c"); +}}; + +// the better way is to not create an anonymous class: +List a = new ArrayList<>(); +a.add("a"); +a.add("b"); +a.add("c"); +return a; +]]> + + + + + +Reports loops that can be safely replaced with the foreach syntax. The rule considers loops over +lists, arrays and iterators. A loop is safe to replace if it only uses the index variable to +access an element of the list or array, only has one update statement, and loops through *every* +element of the list or array left to right. + + 3 + + l) { + for (int i = 0; i < l.size(); i++) { // pre Java 1.5 + System.out.println(l.get(i)); + } + + for (String s : l) { // post Java 1.5 + System.out.println(s); + } + } +} +]]> + + + + + +Whenever using a log level, one should check if the loglevel is actually enabled, or +otherwise skip the associate String creation and manipulation. + +An alternative to checking the log level are substituting parameters, formatters or lazy logging +with lambdas. The available alternatives depend on the actual logging framework. + + 2 + + calculateExpensiveLoggingText()); +]]> + + + + + +In JUnit 3, test suites are indicated by the suite() method. In JUnit 4, suites are indicated +through the @RunWith(Suite.class) annotation. + + 3 + + + + + + + + + + + + + + + +In JUnit 3, the tearDown method was used to clean up all data entities required in running tests. +JUnit 4 skips the tearDown method and executes all methods annotated with @After after running each test. +JUnit 5 introduced @AfterEach and @AfterAll annotations to execute methods after each test or after all tests in the class, respectively. + + 3 + + + + + + + + + + + + + + + +In JUnit 3, the setUp method was used to set up all data entities required in running tests. +JUnit 4 skips the setUp method and executes all methods annotated with @Before before all tests. +JUnit 5 introduced @BeforeEach and @BeforeAll annotations to execute methods before each test or before all tests in the class, respectively. + + 3 + + + + + + + + + + + + + + + +In JUnit 3, the framework executed all methods which started with the word test as a unit test. +In JUnit 4, only methods annotated with the @Test annotation are executed. +In JUnit 5, one of the following annotations should be used for tests: @Test, @RepeatedTest, @TestFactory, @TestTemplate or @ParameterizedTest. + + 3 + + + + + + + + + + + + + + + + + + + + +In JUnit4, use the @Test(expected) annotation to denote tests that should throw exceptions. + + 3 + + + + + + + + Position literals first in all String comparisons, if the second argument is null then NullPointerExceptions + can be avoided, they will just return false. Note that switching literal positions for compareTo and + compareToIgnoreCase may change the result, see examples. + + 3 + + 0); // should be: "bar".compareTo(x) < 0 + } + boolean bar(String x) { + return (x.compareToIgnoreCase("bar") > 0); // should be: "bar".compareToIgnoreCase(x) < 0 + } + boolean bar(String x) { + return x.contentEquals("bar"); // should be "bar".contentEquals(x) + } +} +]]> + + + + + +The use of implementation types (i.e., HashSet) as object references limits your ability to use alternate +implementations in the future as requirements change. Whenever available, referencing objects +by their interface types (i.e, Set) provides much more flexibility. + + 3 + + list = new ArrayList<>(); + + public HashSet getFoo() { + return new HashSet(); + } + + // preferred approach + private List list = new ArrayList<>(); + + public Set getFoo() { + return new HashSet(); + } +} +]]> + + + + + +Exposing internal arrays to the caller violates object encapsulation since elements can be +removed or replaced outside of the object that owns it. It is safer to return a copy of the array. + + 3 + + + + + + + + + Annotating overridden methods with @Override ensures at compile time that + the method really overrides one, which helps refactoring and clarifies intent. + + 3 + + + + + + + +Java allows the use of several variables declaration of the same type on one line. However, it +can lead to quite messy code. This rule looks for several declarations on the same line. + + 4 + + + + + 1] + [$strictMode or count(distinct-values(VariableDeclarator/@BeginLine)) != count(VariableDeclarator)] +| +//FieldDeclaration + [count(VariableDeclarator) > 1] + [$strictMode or count(distinct-values(VariableDeclarator/@BeginLine)) != count(VariableDeclarator)] +]]> + + + + + + + + + + + + +Position literals first in comparisons, if the second argument is null then NullPointerExceptions +can be avoided, they will just return false. + +This rule is replaced by the more general rule {% rule "LiteralsFirstInComparisons" %}. + + 3 + + + + + + + +Position literals first in comparisons, if the second argument is null then NullPointerExceptions +can be avoided, they will just return false. + +This rule is replaced by the more general rule {% rule "LiteralsFirstInComparisons" %}. + + 3 + + + + + + + + Reports usages of primitive wrapper constructors. They are deprecated + since Java 9 and should not be used. Even before Java 9, they can + be replaced with usage of the corresponding static `valueOf` factory method + (which may be automatically inserted by the compiler since Java 1.5). + This has the advantage that it may reuse common instances instead of creating + a new instance each time. + + Note that for `Boolean`, the named constants `Boolean.TRUE` and `Boolean.FALSE` + are preferred instead of `Boolean.valueOf`. + + 3 + + + + + + + + +Consider replacing Enumeration usages with the newer java.util.Iterator + + 3 + + + + + + + + + + + + + + + +Consider replacing Hashtable usage with the newer java.util.Map if thread safety is not required. + + 3 + + + + //Type/ReferenceType/ClassOrInterfaceType[@Image='Hashtable'] + + + + + + + + + +Consider replacing Vector usages with the newer java.util.ArrayList if expensive thread-safe operations are not required. + + 3 + + + + //Type/ReferenceType/ClassOrInterfaceType[@Image='Vector'] + + + + + + + + + + + Switch statements should be exhaustive, to make their control flow + easier to follow. This can be achieved by adding a `default` case, or, + if the switch is on an enum type, by ensuring there is one switch branch + for each enum constant. + + 3 + + + + + + + + + + + + + + + Reports assignments to variables that are never used before the variable is overwritten, + or goes out of scope. Unused assignments are those for which + 1. The variable is never read after the assignment, or + 2. The assigned value is always overwritten by other assignments before the next read of + the variable. + + The rule doesn't consider assignments to fields except for those of `this` in a constructor, + or static fields of the current class in static initializers. + + The rule may be suppressed with the standard `@SuppressWarnings("unused")` tag. + + The rule subsumes {% rule "UnusedLocalVariable" %}, and {% rule "UnusedFormalParameter" %}. + Those violations are filtered + out by default, in case you already have enabled those rules, but may be enabled with the property + `reportUnusedVariables`. Variables whose name starts with `ignored` or `unused` are filtered out, as + is standard practice for exceptions. + + Limitations: + * The rule currently cannot know which method calls throw exceptions, or which exceptions they throw. + In the body of a try block, every method or constructor call is assumed to throw. This may cause false-negatives. + The only other language construct that is assumed to throw is the `throw` statement, in particular, + things like `assert` statements, or NullPointerExceptions on dereference are ignored. + * The rule cannot resolve assignments across constructors, when they're called with the special + `this(...)` syntax. This may cause false-negatives. + + Both of those limitations may be partly relaxed in PMD 7. + + 3 + + + + + + + + + + + + + + + + +Reports parameters of methods and constructors that are not referenced them in the method body. +Parameters whose name starts with `ignored` or `unused` are filtered out. + +Removing unused formal parameters from public methods could cause a ripple effect through the code base. +Hence, by default, this rule only considers private methods. To include non-private methods, set the +`checkAll` property to `true`. + + + 3 + + + + + + + +Reports import statements that are not used within the file. This also reports +duplicate imports, and imports from the same package. The simplest fix is just +to delete those imports. + +This rule is deprecated since PMD 6.34.0. Use the rule {% rule "java/codestyle/UnnecessaryImport" %} +from category codestyle instead. + + 4 + + + + + + + +Detects when a local variable is declared and/or assigned, but not used. +Variables whose name starts with `ignored` or `unused` are filtered out. + + 3 + + + + + + + +Detects when a private field is declared and/or assigned a value, but not used. + +Since PMD 6.50.0 private fields are ignored, if the fields are annotated with any annotation or the +enclosing class has any annotation. Annotations often enable a framework (such as dependency injection, mocking +or e.g. Lombok) which use the fields by reflection or other means. This usage can't be detected by static code analysis. +Previously these frameworks where explicitly allowed by listing their annotations in the property +"ignoredAnnotations", but that turned out to be prone of false positive for any not explicitly considered framework. + + 3 + + + + + + + +Unused Private Method detects when a private method is declared but is unused. + + 3 + + + + + + + +This rule detects JUnit assertions in object references equality. These assertions should be made by +more specific methods, like assertNull, assertNotNull. + +Deprecated since PMD 6.37.0, use {% rule SimplifiableTestAssertion %} instead. + + 3 + + + + + + + + + + + + + + + +When asserting a value is the same as a literal or Boxed boolean, use assertTrue/assertFalse, instead of assertEquals. + +Deprecated since PMD 6.37.0, use {% rule SimplifiableTestAssertion %} instead. + + 3 + + + + + + + + + + + + + + + +The isEmpty() method on java.util.Collection is provided to determine if a collection has any elements. +Comparing the value of size() to 0 does not convey intent as well as the isEmpty() method. + + 3 + + + + + + + +Starting with Java 7, StandardCharsets provides constants for common Charset objects, such as UTF-8. +Using the constants is less error prone, and can provide a small performance advantage compared to `Charset.forName(...)` +since no scan across the internal `Charset` caches is needed. + + 3 + + + + + + + + + + + + + + + + + +`do {} while (true);` requires reading the end of the statement before it is +apparent that it loops forever, whereas `while (true) {}` is easier to understand. + +`do {} while (false);` is redundant, and if an inner variable scope is required, +a block `{}` is sufficient. + +`while (false) {}` will never execute the block and can be removed in its entirety. + + 3 + + + += 1]] +| +(: while loops with conditional and'ed boolean literals, maybe parenthesized :) +//WhileStatement[Expression/(AndExpression|ConditionalAndExpression|(PrimaryExpression/PrimaryPrefix/Expression/(AndExpression|ConditionalAndExpression))) + (: at least one false literal :) + [count(PrimaryExpression/PrimaryPrefix/Literal/BooleanLiteral[@True = false()]) >= 1]] +| +(: do-while loops with conditional or'ed boolean literals, maybe parenthesized :) +//DoStatement[Expression/(InclusiveOrExpression|ConditionalOrExpression|(PrimaryExpression/PrimaryPrefix/Expression/(InclusiveOrExpression|ConditionalOrExpression))) + [count(PrimaryExpression/PrimaryPrefix/Literal/BooleanLiteral) = 2]] +| +(: do-while loops with conditional and'ed boolean literals, maybe parenthesized :) +//DoStatement[Expression/(AndExpression|ConditionalAndExpression|(PrimaryExpression/PrimaryPrefix/Expression/(AndExpression|ConditionalAndExpression))) + (: at least one false literal :) + [count(PrimaryExpression/PrimaryPrefix/Literal/BooleanLiteral[@True = false()]) >= 1 + (: or two true literals (e.g. true & true) :) + or count(PrimaryExpression/PrimaryPrefix/Literal/BooleanLiteral[@True = true()]) = 2]] +]]> + + + + + + + + + + diff --git a/solutions/bin/pom.xml b/solutions/bin/pom.xml new file mode 100644 index 0000000..7d56871 --- /dev/null +++ b/solutions/bin/pom.xml @@ -0,0 +1,132 @@ + + 4.0.0 + de.hs_mannheim.pr2 + solutions + 1.0-SNAPSHOT + jar + + PR2 Excercises + + + UTF-8 + 17 + 17 + 5.9.1 + 1.9.1 + + + + jitpack.io + https://jitpack.io + + + + install + ${basedir}/target + ${project.artifactId}-${project.version} + + + maven-compiler-plugin + 3.10.1 + + + maven-surefire-plugin + 3.0.0-M7 + + + org.apache.maven.plugins + maven-checkstyle-plugin + 3.2.0 + + + com.puppycrawl.tools + checkstyle + 10.4 + + + + checkstyle.xml + true + true + false + + + + validate + validate + + check + + + + + + org.apache.maven.plugins + maven-pmd-plugin + 3.19.0 + + + ./pmd.xml + + true + true + + + + + check + + + + + + + + + + com.github.thomsmits + game-framework + v1.0 + + + org.junit.jupiter + junit-jupiter-engine + ${junit.jupiter.version} + + + org.junit.jupiter + junit-jupiter-api + ${junit.jupiter.version} + + + org.junit.jupiter + junit-jupiter-params + ${junit.jupiter.version} + + + org.junit.platform + junit-platform-suite + ${junit.platform.version} + + + org.junit.vintage + junit-vintage-engine + 4.12.0-M4 + + + org.jfree + jfreechart + 1.5.3 + + + + diff --git a/solutions/bin/src/main/java/pr2/auffrischung/grossmacher/Grossmacher.class b/solutions/bin/src/main/java/pr2/auffrischung/grossmacher/Grossmacher.class new file mode 100644 index 0000000000000000000000000000000000000000..e31903601899531885b0a90ca7f5f0a62623c37e GIT binary patch literal 1266 zcmd5+O>Yx15FLl4NtQrLprw2qhMv+Mb|r)mqQC_Ks+7W^r4r)gc%8&$*IsOIMSd9) z2)Og35aV4?QYj#WIB;06$MgJV=IzXW{r2HA06c`7ZD=sK>#Rs}u5@z3PkB<<+X*ix z6RVt?t#K~rVkT|!Y_V@clfim*CF2BpF+P#PGgy0|wDOM_oEz>OGiW|Gscb`+ zL4SdLVy&?qIL{heFSV7H-{%;AR?tWfmN+^%6ETkn# zwDYzU-dL<_9`1zlN}bAy(xD{s(4Lo>Uq;7xP&ywxghH-EUN!L&Wz;?NR_W;q9nl-) zmFfhVJ1_GUpnq`xm(&q-;6e{taFM~raJ1;1I_164Tm2Cg_q@!<(jIYY7Y2io5j;EQ zRt5XVVbjl)V{mWuca6SBO&q=-gU#XVRf%+9lfkDyXypG_Z3fYyDXoxCX&7j%m*%`` z+csQ3GwgLG40;F3IqIMz8czqefTo`QEC3DKwP20bHd%M*l+io-2%T4h=sonlRG2=k v0R!}`)7q<1a0v!vb>T8xp_9O{dxl|S1w*T1Xb`pmSF3dkZqU0)4A;H`!*+s$ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.class b/solutions/bin/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.class new file mode 100644 index 0000000000000000000000000000000000000000..759ec97c0c7f2de81f89346dffde5fda4098b1ae GIT binary patch literal 809 zcmbVKO>Yx15FLl4NtQrDpnQmn+f#Dcl`0OX1tf$(subXmQVDuMj@QY$_1dekUBNFy z0txQ?D8y_6>LOJjaoAb=`T61GZ?Ke89~I?i&G^7gRMu}>hOfYmC5v&LHn7@ zRTugUh8NuDhz@&jm9hJ8EGqBJxyre8Wu=V>+F4$qTNqXPeV+7>3dM6JjX)w*LY|40 z;=ANDZ8}Z=aJtKLr#!bV@KOX>@IWH!Lq!&wB9weuC!f~d(tk)M{ll^{TI#@ktQ3-A z>jOp^9P&;2lPTApN1Lmqw)D`FPG~Kn2~Bp&Uq&D56Jl{;YiAqbhGddJ53UWM1J@aB zPi7b8n+Mc(bx@agI3tBuv0NxT5>zn;k2pNr8p}MtLyP?UWAeEia8|+xT6VVRyLMjSJxT@Qd>5G zTy6Djb$WamQs6l|tt1vTaW1u)cC{ zedUAt=4dP6iu!@39@9>TYP9E{LM*D+9?>crw8|!}^6B2J+>#f%!V#LPDC82;^p%#8 zqXS73tcoQn6pj2AZwnt|wDAOG7P-1tyG)lOrOgRyQRbVZ630C*tz1J(;crui`KE*> zr-uOPfHJE0L;l|@?JLc_J`g0$;BnmvuwP97cAL3XOkgX~whX-ZlN+GuiC#x6+gvJ& zNSdzjgi;3UST%8g&<=v1?7RW&=h$!-6kt3L7F;GUS*#tgWYUoHhDAqfNEs`U*W_}Y zAu$pduLTZsH<=V>-+h_Z9ia$3tNrCDm?w}$F49Pg=w`Z4GFx`(eHN|}SUj7!4R8Mm zkr5~y`;AY5UKJvlq4c$oZ2QUeP3efSJ0;2bI7pEeu;s}V%f z;ful$%fyM18Q+gGaQE09G5L!K5Px{k9}!7Sjd4{xMtn1Nv!L1_ju-8I`?bMcx+ zO$#pIGml!2(Td<|eTBli@zKw4={xRHFoDmJ_ylPI<$R(AQ!tIYEL?%BT@Me?Lkiy| y9%lM@$j2UxP7bcajUKzB$o=dld+ct)t-f}&PrQeRb}5*{s42J&_i#0p-}wbB8o|;4 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/auffrischung/printf/DoubleFormatter.class b/solutions/bin/src/main/java/pr2/auffrischung/printf/DoubleFormatter.class new file mode 100644 index 0000000000000000000000000000000000000000..74d0a554985c79a941b9a2446d0436e139cfc1b7 GIT binary patch literal 1089 zcmbVLO>Yx16dZ@pWVeBo(3Wp7JtZ6x34xGk;X;Xol)#}O66(p>IEl;ddS!bn`pb|& zf;&G7@w{7TKmk=8*6WWq<9TnMzkUDo1;8`#8Y&Ert%-VxP-*W-9E)CN9`-~&n;B)J zMV`)SL#1xk+t>LdmVIp!;hZ!zR2eo3L@X%k&E!Z%j$v(2rOG{LxX|v58LBVzRMrqM zG|ysR8lz1e>x>QGrbb#FAIm9^bdsr9IHgmb8BLcZ_9+j8(L(a6jACIZC==0pF_(OY zWOkQjc1xK%e5$48sdk)nMhor;Ek9(WZ5d4|cYVrTFN&b6xx(O8lEo@gj@vwwh9sue znLKjZ@G{|chbznTbSh^mr5k2+LUWPFZaKQkhq-nBgrc}ey`++Oi82fhPOOs&k3{Md zm`MJ!ICSL5hWUyk?lc$Non$f$QOBhQF5)u7R(o((@DjZ14QUQY!RtJkNHY>tV}{m1 zMA@cVh)E_=T(B7DZNY8~5m6C5Agc05*Rv*8l(j literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/auffrischung/quine/Quine.class b/solutions/bin/src/main/java/pr2/auffrischung/quine/Quine.class new file mode 100644 index 0000000000000000000000000000000000000000..0f2165865c9d319fe3267174ffd0f4815415f994 GIT binary patch literal 1477 zcmcgs-)j>=5T32ENzU|#)mE)qrw4(glnaPY)(WL62(2Qm1!;ZQTsFzp%kH_m7cA2M z$akTFzWYasvzKU7n}<9Z$n5RyH{Z;CGqXQ`oqY#@O;|0$6oWNu;zo~4)i~yT-bl^E z2G81UBW>KxRHyMVlS(w+cw2-5gZUhma5{S3JQlHIP`drpv>4x%Ht2bBamW6qp_kq)<#uTRhl&u8DpGqYcUUwpZ$CEztqS+cLIsm z5vVN{PjC5Sz7D=B0YKp84i(QSg%vA{`9n}P8m!;kxII! z46fAb2PE&dZjtu04Cc-Ser}95C75UI?5#4w>ZC7P80%gt6H-MhQb{)x(X)>+DDQU# zwgjnZ2=qt(aJ>E@wzROQv?GmN+(k#u;!{ec9(AU+iM)o9&xsToSIRIbzwD({Na@gK zsW6lvb%V)brwtC;r&dR4F;gu;b)*1oI-zHtC2kZQ;cjM~KOq!yYq=*7=Jv^B!C%Ms6YTW7%bKI@63Kto5DBZFnQ3e&U}X*UHW`V$>o zBU_<2j|jzR4Zgw5yM?*0aQ#P)yGho2d7nkHl>rKt;1=!5a2xIn8P+Z^ERSKB%^9Y0 Pu6wz?4@hf)7*>7*3^1>C literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/auffrischung/suchemax/GroessteZahl.class b/solutions/bin/src/main/java/pr2/auffrischung/suchemax/GroessteZahl.class new file mode 100644 index 0000000000000000000000000000000000000000..e58a6d65cc1955966f372e124628cd4766b56ddd GIT binary patch literal 1340 zcmc&!&2G~`5S|TbVw*tPK+8WYJtZ7$2~`{@a6y0~C2&Zn1U+q>O}xe4wRYE0`X;;y z5=e0GLm|dapsr-3svJ0Yyq=x;=9@pC{QUYI0Gph7q;s&zC8(EBj;4ex9?R)AIk0=DGbOjYTLdHCf6v z(v-&PEVN3~Rnpxa6^3SV%4b4ij2YhGnPsspTl;jF8Jpjr6=gCfwE`|dVmN8}JdeX< zp2LLGKNYfyGP+<|Ff5Me4w;QA%sh8wwUG0QD_S7f;}pF|$JoiF!svom9yoBN1siac zz;<_V+U*sa{d^kQ15EvGmQ1)F=Q$AQ3{=SCgLO`8W!*-?5O^}U$YAahaEe(NvL%6y z?qR>zcVLGAKgX>7d+~AP^RXhZ(><&zf&;e+d_D)2|I$PP-biIS`vR>WsI5U8Wo`rb zY@%!xXAicZQ|PY2^%6o2bt{DJ3WP=lf(tj`<{IJA84kB95ZVPo9;F6%3V9bE;Jc0p G_kIC+iG?Qs literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/auffrischung/taschenrechner/Taschenrechner.class b/solutions/bin/src/main/java/pr2/auffrischung/taschenrechner/Taschenrechner.class new file mode 100644 index 0000000000000000000000000000000000000000..2056d27ebae969420d090485e335f7f428b87caf GIT binary patch literal 1475 zcmdT^&u`N(6n-vcZPG%wj*Z`7c4|2!65_pb2SSc!$c?}c&vm8$1B4I)Cp{sA0`aJZziXLI|3UAQb~76;7YH5LZE)6Bhdhl zK<6C$!WeCu&?2?gTco!-nTv>Won|s&PHIInqbG?-?KA3o<5Cb9#e-b;$wyymszj_LD7Mr5EuN7)AwGbSt7Y~)aIEmC|Ox& za_+RDRRel`DlN@bB&Jf~PE%aLoaKpIMhA41TUV?giZWG5tB98-L3S)xu;M(4~(h5+9?c1Eh%AA#;HD?n$~iF6I@zzh39*M3`|=Ac5{sbC#Se3SLasT`Vnu!{KEdzK>?EypKt5a5U%-ny^bC zx`1ad{p0ZD6uu;|+k3yR6-~H9;Kv1&{6_{L;2-PUaPd+We|CHI!YPkv10Jm0I#qQ9 z+9PQ#8hwm@w(tn>`oW71FcLJ>2F3=Co|a<({|hwVb^TA!{)V$P=wK``fX^nzcA5LI z1>JIP8*VHyY~WnQu(O7twT8iin{aEv@OVYT?KKQrB|{B&slnYc-h+qut|PZi?liMKuPop$#u z^2?B@)PC>(=-)s*yY{tCVw$7k!`*3iXP%jP=H;IK{nryB`j&20X@Sv>HF0|+lx{y1 zW6{pcPCHJMM8-~~+P0OGM!3|pduo&=vgbtns7e(^t3f>x`nY}n=pob@Em?od=*olc z*~>jf^`1J`!sSLXsyyiTakQAFmJ#bPTHaS$xdYrZI?Y2y*MH8nQzO~YV`bG*BEQ!< zbt1&XXuaFZv&=|qe-%b6eQW`?G!{wjvG1e+^K}e!V|!cBrl?m>K$Jj1U=`HyOay=PBIzQ z&vJEvdIxn@v2xtznKa-?TW9hZJ-{c0ZZx^FJl6yHyV7#d;`egve8RyjIpIo=(?^mE z1Ux*A5Y;CT7ld$sER9ivixLa@`?$`NGn;=&wUSQDsYSF#S6Ao~y~${^F*6Q5XV9;E zzQ-?jLElgL=t!ErFQf14G#1IBFv`o*!-^X!Ov!HdzYi*=;_7KgG{hA4o7ceG$J8DG z^!>Bb*$3{a39V$g9iB;jQu>hkasx=s!y0|SXzSGjiFpi*B4f1CXwEP>g~Q-Cnqiw% zGAXfrYQBNnMd-J+m-HTs;<^H)a`)I*T82~&QVs7qMd6fTwpMVn3h6Giy>9fF)_z;R z@+WORg|tX-;q9#n&o#WgKD6j@i! ZEyxShp8EZQzJyG46Hg75-JxAt{0GieQ9J+u literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/iterator/test/SimpleStackTest.class b/solutions/bin/src/main/java/pr2/collections/iterator/test/SimpleStackTest.class new file mode 100644 index 0000000000000000000000000000000000000000..b7a97129fbcd172f9e2774c64fe50028c3f6e125 GIT binary patch literal 2211 zcmdT_OK%e~5FV!?k0p>2Qr<{zPpOc0CB%tPB!obU6hI=O5=X~z6PI0kWqTv~%aA}S zcYX)I12Nt-Y7i?D(H`2vdOh~%Z)Q9X|M>Ow7y$O*VHHXQy4LV0VNykhY{sJ0JdU`I zW5J!&%0|)&!<;se6V^oonWV88IL1E>QLaLnz-E3fW@-|>8y(^~0+nY{N%x$4K}iz?I!G*7XwjM1hBSINfD56TFuOQS!DD6+ zl%jez5p)NQ4VR1!7siI(*d037!cwIjO_<|T>X1WxPSL_;4s<{C?uXvA@ZXGcJMa#) zaa5ZL9 zOEWbV2U6kv9pDbmSr)rxbV%Q1*7+SoQKtNb&xw~P@s2P)1rAfEDWmQv6+wL|)m9;$ zk*X*b|3`O`Z5yoR>bZe>C&hmb0SKT5*BWpIt`pem^iTW1+@-GX6U{y*&D$&)2{U9^ z`UF~i%~`z9jP&x!V%bflC9u~&L+9!esQV_7w=x3v-)G9nMD)~5T8XM&_`1&95NfLQ zeNJ?1aGSvKI?d|hW;cO`cY6`o8r&n~=yJPMzr003AQIs^C~f=}9gF1mB?cu@!uQ#&=vTK@&%h0sJ;`Y~=F*Za@nqfSb5mf;P@P gY775=v)w9SYZtQJS%d9v0o$VjHmpOmrUVau18J_cr2qf` literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/iterieren/CoinGenerator.class b/solutions/bin/src/main/java/pr2/collections/iterieren/CoinGenerator.class new file mode 100644 index 0000000000000000000000000000000000000000..c87ef77548cb512b7b2b64a2164a16e9ba1ef299 GIT binary patch literal 3693 zcmeHKTW{Mo6h2HG%W=}C&62KL*M`k{adxqLSrK6F3iP@fP%lW*0DYuoCT1&<0!6v? z-|6dqz<>?d-uI)19a45hW%XHL8 zn2?QUtj8LuzS4+P9P`KsC9{SwTnnzbY}{5t{>UZQ%qSf|iNG<}BW7~H@u>X_dk~o2 zdU%IGCEQ}Nqmm|pxwc}uLm&um*#~@6mU+_VngD5Gi&eLaRkyV2?~YcCFOpPggEVNw zqz&EXbV&RIARK4*!c1f1aJdojzXP^VIt=qMAqq8$GHUuMug-6$8nZA3ROsn2Ku(5J z0=1Gf7LhPC%TumVVlp#2k5Kot5PEHcij3y6!}o;bojQGxXU59Kb&LB{$ew!6DZ`|9 z$0JndeHi#)9`(4^VxqW4*Vm=NQh!^6qcE>D9A+#}`kpW^`qmQ?Zn_F>Lvv=h^)$@o zo>qz5@K%v@%;<2x?s1*jm9mbIh%6Iw-$|DiV|prh+i2TyN)miP|LtDz8qG(pUK#QU z^ca&i$-_p~d`scxWV-)Y;g0OTbJcrH3u{rBL-gvHw-Q?={ys;3f~>+(_+$|lV1>YH zEj*}Vg$|mw$}NRx9uHkL+_5YOEQcy$@$P`t;AP2lMMhvV{701tiz1uN#7IZMgRRc7lE}mbGw5MIG*1Fr^IBVMh42Lz5*)& z`Tg&XK3_o}jXR=}wpFepeor{t8!Nf)+nT_I5z{Qbx|)S`p#zQi(`rlFFEo)EF3o*B ztS}vQ`vH87rw_Mc0ep)l=o|q12GAI`+(G6to+mJU od^_H`3Gwbvh*yFOj^D)r&l+rC+s+xV>XqRu_y+2539i8GUwWaJn*aa+ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/iterieren/GameBoard.class b/solutions/bin/src/main/java/pr2/collections/iterieren/GameBoard.class new file mode 100644 index 0000000000000000000000000000000000000000..29dc852c28a70c79679d4fef3c006c4399a8f25f GIT binary patch literal 2254 zcmcIlTTc@~6h6}ey;v?*P!yFBZ$+{7LSiCHqE(?ufy4rd`e3Hpfe!A@Y-XoLewhg- z`tC3BR~XN1yIi!ulHkM6?#zDko!d8Oe*WJ54gfFUVG0ri9tGMdc}&RC7HhMTuOF8j z<+|K4Ldl>c4A+8dE=vo{8>nNga+(`sDXWhLZ7v~i9=zk>?_vVE-9e2qTh+Q4%mg_$Ri zEKIKx=qsxRPr-Qt!~3qj(OT&=Tp)epYf|$-xozH{j`DorG8-`UwW_<^3!c$zX0^#_ zgF7zM2=bZpnQd}9g&8Uy$WU=FLsPV&ctE8x)MLhJQiJ>X7ax;za6iUewD~Stw~9xz zb?ghzSK6Q()M3(6*Ex+GKP4ix$F|K$O#cPfGQ#a?IFwY6Kh!A7sM+y(Hq)u`S%6*( zkITRo`rmXOv{+WI(nn(2ObdoG=@h`RGS@8!HBAo*wGhTOLxnWcShNkU18c*|!V^It zjXyt|GEz@CNkMl2bEM_5A+FWbV zQ?UnAyr7xi6i#p!;l>h3JioFq0%JKCgo^~m3f2AIQ8OAVHfMXwa8*dY-16#NuUZ`t z$XAua-1V+5x{H0LDX>XBiQVS*S}eA+bVIXkyMT?fP>qrmnxA;rk_Lrbk!=wOwExm} zhOmF3xokBGbS@2)z;29A7wtHq7LgYxz+zP+4hVy3`3+`xClA=zKcwLnfyLuPvb{TA zLjJ(h1zryGboF(8Aj+O=R8OJf#LBVC@2edW;R}posi@J{Qh%JHN9k$6H zY_mPs2=Yy#AHCT2eY@F%ZN3NFZM2^TG74b5O2Qo+6L1#__y#E9lg8C)xDOBh0GuJA AOaK4? literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/iterieren/GameMain.class b/solutions/bin/src/main/java/pr2/collections/iterieren/GameMain.class new file mode 100644 index 0000000000000000000000000000000000000000..31451094c1c3be96c0dbe5688e7cc08ac9d54afd GIT binary patch literal 1021 zcmb_bO>Yx16db2%Hd#_q0xjj+^b|N`QN@V@7gRo^6oeXDRh%5hBrd!5%Il=`mmz@! zcYYM&IiaMHf&htwpZ9sk_qjyPxjc4)<*bS?%AmP0!a^Zk;C?TnZDYdy1b5pF>R8 z#Iaw93w1ltrf-iI{N~k6tjL$hP0NcV-)A^*8p_CsATY<2$CBiq#fP-BMm*4srAs#s@u z_ZJ@c4+UX}_w2|?^;CzOuACZqVgRbq3nR(ty6{xh=j3(a`#viDACt4DikBi?$auxIsT05VKe@S`qv4jK`~%JW0hikioyjn pDXZZkF40P0xI4$Nwt!({!cZdY5-w9LVFOoa25!=*P<|EHe*jmLBRK#7 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/list/WordCollector.class b/solutions/bin/src/main/java/pr2/collections/list/WordCollector.class new file mode 100644 index 0000000000000000000000000000000000000000..69eb9675d6b8ff1dfc79c9605a117e59fa81e8d5 GIT binary patch literal 4832 zcmd^DTW=Fb6h31NUYkI`B^1JKf>dPF)=pEzLjy>Gg5=5}Qj#V@JWY1T$-wT+GBazD zUsegE_Psv}ab`D!b+V`%X{i$N;Pqa<`R1H6=Qi{2hj)Jiz(e@80W|{iM*IDU3E6+e z#;hOfg}$%Cko#6BY5Jisw!f)#@FaVwbOY)HE~Ma)$?g8i)++=PIP*YAVIL7V)#+{! zs6SBwZ$Oj4^k?i-t(ErREb-`{QgfriF%PJ(qF98?O-N&{wn846-)O73zQbw2{g7z{ z#ms-rwmH3x683Tu_MC*bX`r~FQdt@?>+evDL;2en1T|u{&kqN)(dW`8I7KZ0Zw8iy0!?uAyd#HRCZZIv}^WMw4-4TYs z!tkiA&LV;4zSRiK7Kt%*)<9ruzb=>td{5wP&Im}eCblKBiAEWFU!-|(Sj|U^9$X`2 zP@-LOf)p%AKFCYCUMWycyZ@N8DzPf!A#hb=sd2?&Nd{}!P}qUADh&(|ZjxI22`x5?okl|#7Y-Jt(vFim0+&Z}S>sX2>*1zs{ ztOPE1ULLLv-3gJK?iDqVBH)Ep| z#$Fojno2tVS$ed>8{2G=gfF)|re!EGm?>P8(B0-v=ZIVwlu==dnohH=^V)X|s=KnQ zh0iTAm~6M{rlj$Ntlze-mIooMUeR@h;;)ha%@wJoUt=&=A5VE{pA70`84jg&lVBO{ zFqr;Z+lIBqR^Tq1{IsVnI-`1+@Ytl8R3ebbGiy4;id*JUwS9;@!B`1PMwy6@MHl%Z zvECSBy)nZ2B2NrDu8rrZ@bMw{gn=g+@jZ+|{58TmHbQER|0DMEkZESD=Y@UlrQ)&B zAxa1NSshVzE6tRQrROfs&{AF6d7H=74ZQ#6^(8JH&vk+aQd2?)q@lCOl^?cl@DI83 zK|@wt=ukl)cnFfhg;pcB{*ep!h70abGrW9OgXm{5)hU;{XO2T6hUgrr>+DUy?baAOm^t~i-z7fi7_iW`&tq%p8Ue{Bbb4?8q{F^+(+H@ zR_bo?Kc`#NTibcsLE8>Z6o!zAh1wTZ26=E<@`utfm><jvB; zsa!}E+N%)#k*DZHNx&_#>|5N1X|mZQ@8BDKgPD)BvtQue50WO~KJ5VwXg#34R-7Yv kNSFYRMsB7^D#2sgC*a8d{V6;nImBnM0MDTUi-msSH&nm=R-0Sr=9{_9450u-u!RYqvKtcVU(#k(zbhmK^ z{pKE{@?66AxvdM#GRir$3St>33($3o~LN)PGr8JscIiBghe5N!A zJ;N8QMHc&U=@x&SIUl}2iVGb)7y*w#!d$3IL~8;U?hO~*AEk13R>#&0oAD7>dT3q* zA_n0+;n(cw=ize*=s<1ykEQdbA z=*QW+z^T@WrcxOQw=ECRFE2Ejzc9M`bEdsYWJeE`Q?U6%xKer8V6xsVva?yGPZ(`Y z?--$B6bjR$!|2*+!#!M-6UNIr=eg2ojzw>DhvCS@MiXroUDC?L3=ul`vsb0h7`>cM zGH+{d$FlZ6stLi{HJOd%Pbws~o)59S*D+dq-Jxz#RmJdF?dZ^G!T{8MOQDo)G&o{3 z-_csyhp})@x(a=b@o=_bSD`ken=|WTs)SL=XyNo&zKt1NcmbY|m2)WckXBSubz3^W zWt=BY$QAw&l<-`nIqWL=uDY~DHL7D>#&e10@#P(??m#-o*8il1r^`#f)AHZgm1q_3 zpiOw*$2-VFiawyr`Pqkb1)5i}4pJZCw?NC~appsh|oy9Vtlu@%a37<^a*%MtJO zGuXKD7B)Vm4R|@7|Mdy{*Ct@k(dY1>M2%z4P5J_RqA&3*)&$L1DBb)Zx}uqy zd(9w;A{jW9XxogGb$=-*jc|!+wqeOKjWartdq+ZVHCH!2z?;#;rZN`aC+(3TueO|w zml#d0sVyyBW+bC$hlE+~be2|tH696{&E&Gu%B?Ue)#~e5eVK${aGcT1cLuMFNlb-K zu+pFJw2?N6x-#TJ5~nH>UI(6r58lKzZ-%YIUwG&vYm^l}19F*uig+MQ+f$!QW)o`5kz1p*@2h z@Bk#j`D%e$d*s4h!UcCbsT@74e)J+{w8NF|CLetw3FI8&H9GoHaQ1@!sQ)16)vh!~ zg$GG?27yKk@_VSLqndPE(bBWi(f7f4_fg&M3XL z$?@kPXFww(kbS{FunyT3T@wv}acfAk)K&Tx7d5!Kj7Jw)d!x=l%h z;VxFayOpz=tf48@*DG|H(Zc>M1|5b`rRcbfrfc-0p(oewZ9vq`P~V2p!sl;Ye{AT`C9oCujbE8 z-UJyvUhX^{D3!jbD?cvvR08`#mbsSpeaSyr+WoFj`6k%jfub#~rFn_x!Ae`E+l(F^ z?!m%q0tMnS-C^{6bcmd#E;M9xe0ZTu_fZJ>Hb|A}VPWB(fy5hSEiR2$($WIqeZ!+Z zhA}~tu*$hr!8|o&m#|l*UocN&?=}9#@U8w!$KKD*{7onShgG6em^}(%%weAHdC_S) z1MBS2%DLR@JY7KaUet@`QxKU;jz$dEzwQ$6laCVEWvyBYMY@j6PT_`kNG=H z2|NDzF>5+P6S!YL#ywIaP#i>yz}zqw>NXM<**}~*2Nwv8rvgBruqE0dGqFPdHjboO za`bLZ@%J$gy>4x}mWRtE^VZ?6a;OrgBa+(Jki@4C`)KWOGWcJH2KRb8ybcLHAsNEA zl6{pBm@U59wuXe;%CUeo-Tfb(pUVNfk|vF2Jkn9 zZ7Jy&;Vew!C=ci0Jg%I W*81x*Kog7ea2x;gXmJ)6;N}k*mf}1B literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/map/WordFrequency.class b/solutions/bin/src/main/java/pr2/collections/map/WordFrequency.class new file mode 100644 index 0000000000000000000000000000000000000000..3853eb26a07cb9bd462b11c80f8eae16e3b7a5e1 GIT binary patch literal 1995 zcmbtV-%}GY5Z=^EueAzRz#pgt6m3;{>hL6p<1jLIrpPE2$H(*cS+uBUvT zdqyZ3;ZEp&P`b6M`KOpmZ!ZT~0%M7-&*Zkd-rPZ30@=@KMW9sgZ*3SYZu?UKC^Ub zs8!SFLG+9k@{Km9E$;bDqfyAbUAE2XEXG$o6kiqNo24zqBPx}l0W)5k8ua8}LJaG$ zC*BiU3t6>Xgv&+9Ly5pdiUzF&N9%Z}Z{ncIb;D-VYFl~C-(*_Y_x+Dq(-skd zC-pPdku3`=U6f}-5m+dn8K8odH1#f)Mg+VjJ0cRu>ZMg(QVd9{Q19LOq60Sxygs>X zY}ND}PL?Kt>3s9&l+6dIy1X<;tc5GX!Q%r9!|ls+(s5c_D4vrkDY_+K%?)aqPQla2>ZHCcmy+mNyXnu2FH0A z!5JV24$fH|c_`ri1$F131QUE+)?fn1IRT+f}%R ze%JS{Zs6KOvnO`Zrc%)6QqXRphXVwUu{Z>7!!*u4Jj}J4YJF^J>-*t`%q5S3Ov9Sz{TOD<(YX(!=OLrbjXvGX$0jgdCNwe?x2I61qVAb z2Y2XDaYLoDG-EayQ;XO6yBwWcypGX!T(lkMRp+;4m35KjN?Te&3oBBZFzE~oIGuU_ zFMx+xo{B_RYKoj|%#Soy7l~DxR@rXvQekKzhx}AXjP4XqP-aDH7ttMhR2b_{5Jj1E z>8OYoD8nEY2s$4bwTd!o-{(9GdR7ZL`U9vtFPkOEFzDhtGtFEW7hvre>r#s$zX+~X z!V94e8x2^4D+IRM@w}+3%X_Zqn=vN(WswcI?lY`o0Mv~b=qs8q?zklAt1H{(h79oc#G~fTCSfwZkggsU0guf8( zwKrx%vYakH+`~EO66wSJUuI@SO`vfkjKRk0W0M(p2sk`(G6Q%ht-(63KJK2Nmf%19 z4D~my@FO(7mY6244g>gY;@YTCa1~mm?iyT2rY)2`xbc(8!+phca|u&@36lr6OO8A6 M0RQXAb{DpP05;6-_y7O^ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/reverser/test/ReverserTest.class b/solutions/bin/src/main/java/pr2/collections/reverser/test/ReverserTest.class new file mode 100644 index 0000000000000000000000000000000000000000..c766e1148f53400ddd608e91abef98dab108b64a GIT binary patch literal 1445 zcmds1&2AGh5FUrLNtTqff%1DXJ*Agj32{ITAXNyYN()GBsKn86+{Ep!y&8KX`YyZ& z5=e08QFsW%IBC=%7Fr=r9Mb11joEUJIqw>c6ihpOcWm}nF%CNA>@e| zE51ca<0Yl>LTMb7Zt;;-jvMQFF1(y@PaNu9K?;{SDE2tS9tUahpBd*mbY58W+~Sx^ zVFLe9@kInbL5S@l$joc$b@tDIztgps7nzpYb5|A$DbvPzETy-|=XL9CbM1I(M(Ri# zO3@MR&|H+6Uq;9LW$Ap_Aru!T&**z2$=Y(?Uh9R9^@=@Tg5yo|k!c z5yh#ia2B-|-CD7EIfe+Du-1kZxW-_!m!9|UTv(*z`4xPOSiow18(s-S#Ju}r#ldIj(kF)DTo>tRPgnkolG5B_w zOZI=1j6rl@OO)z`4z<`=q$?z2cFW;D(9=W@AV7^~E3isqgRF#P$BTd8Xjd#s_2-VuqZc= zBd*g_a3{60kr5}tSYh7wg%U>c=+($kgDQcg;hB`Feze~`#xn%wwxyD;Ltv)4c}SqT zqkEzT0fEIa_PH_I)ZrSbe0;5pusS^vJ<4^K%ar+hX>N2k6`9?lVUP?2?FpVTgP@%8 zcdRey1_s)i2(<2Rp`!FRx>NI84eaJ-^#1h&5EWspXXDq2H$g{hA zDt{;1M>!hVyC@{DnM}BWE@g$%Npv%rQXa1gp9M|A5b7}BfLT}|u+ogjay@WHs(#zc zc`?S4y)3e>Fo~}Wf#q0pmL4)Ay*+YP-9TCbPva{NSDV12{K|JIGuc zjS7LF8T;N1GYbx6Uolr0%xR(Ymj^Zv>u{IAk4sGIeeUs8@>?) z9&IOE@pw4ODs?9GQVwIg25b2K`I-=D>`7};L<#oM!aCsdh;J}J1$VPBhieV3UGx(C z55GYD&2sn&8sE^Gfkj+B2Jp9pYokQLby!C0#yQW;A!-Fyk^2_zD{%XayMlJfeP;@H Wa4GH?xHn|IKVp9X6zwWT^zaw_;OXlC literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/reverser_generic/test/ReverserTest.class b/solutions/bin/src/main/java/pr2/collections/reverser_generic/test/ReverserTest.class new file mode 100644 index 0000000000000000000000000000000000000000..5ac6ba5200d8f5fc67e2d4233fc321d6439e10e6 GIT binary patch literal 1551 zcmd^9O>Yx15FLlKNtTqff%17VJ*Agj32`ETCWG$@-0#vmlVgpD~^NWEj~8rxHg_=!pkZ5#DyPnQd;IBFXG@u93;l)V_xV|S#GT7 z#!k2tI>Z?vU!Ld}2(g|8nMW_YO8*(~Z@PA~JXKP8?ur~OIj^0!h4jYqMIL+GTsdCo zF&-*SRvpp`^+l2TGCJlj3+KZMp}5e&+XZonl5C(!v*)pIYzC4Iuo+*tHjC&^$NDN3N{8eX@3oF{RBwb B=7RtL literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/set/WordCollector.class b/solutions/bin/src/main/java/pr2/collections/set/WordCollector.class new file mode 100644 index 0000000000000000000000000000000000000000..f6d75e5253f844d84c4aa0e17d71fd1c5d634fa2 GIT binary patch literal 4076 zcmeHKU2oeq6uoql%2v~*&6aFU){XP}VRwm*6?SPANu)qh zLHw})uzypa1-AG7s9~2G1Gg-j5^x`PZA@0pJJdcu*tIH9F|V zOvvslcEY-ee%K9E6!E|cB~90G+x=PTa5sOZvZ*`qgRL}aCJ*aVYdlf zX|)dt%d(a@Tc#hrETIo7mBOd)pYHn0?!b2LUI1v$Z>(NB3qlm}md+Ik1hMa~x zh?quD!h&DeF{e#5urp?02Muh}P;o=0vNUEk7*dNf`Duc7jn70!JI>LLGpJLc4cw2DNCd)ClO|ka7D!`t8d#-io>Q$h6^5oV z!W0ppC9NnQ$Qe)j4L{TPP`s?eF5g-BLd5<-noY6&Tcx5UF>1Udz!{aTpuu$ zO#(|j6|m@#Y2ohQJ)E;cVF-NNn^EaE2{g_&nZRn16+O3k2=veTo$=sP0@ud&3~Bn} zSTdVxG_f<4X6vGt+naS*BjmRdUklEVg6NG`bg2w01se12vNfw|gjIQ0QGX|JOJfgp zU2jK*ebigKFRjYT5#JSt7&{Rr%Eq*JQ=(5v?RtsmSJdVz4*pCMG86d2)f+roxQ}=O zE3KCo8%F!E4tEF{l}VZZb?f}gce?n^s9PuneU<8fy9`A^no!~Fq3r#o3Mm;4fq&7!I{fAc6=-F8IEdjE8~1H!MR$%xt4L(a84aQhuZ~A vUlcHXS-{jjV``v}O|->%HEF@u1@j)C&8xxP%=UY*f&V`GvjX>_4d46?9L^;n literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/sorter_1/CommandLineSorter.class b/solutions/bin/src/main/java/pr2/collections/sorter_1/CommandLineSorter.class new file mode 100644 index 0000000000000000000000000000000000000000..158d850e68379b9aa8bad08dd20703cf79c7e230 GIT binary patch literal 1443 zcmdT^O>Yx15FLlK$u5DEK*Q(3^py6nD-Z|N0uqWqLQ3I~PziBBj@M0GcI}nzt;jD! z0txQ?D8zV|Dyh0i5fTRuJ8O^MJkN}0=Eu)3-vHn#+-pIDz+-E8oH4256L!kt+&qlA zPE*01)XK(I8z;<%2k}s68B@tfDlsl~Eoc(hDveU6X7QWp2^taDd?J-}&j?%^>>d$l z4s{}05D@4tu`i6#rVW=#!@N~SSe>4VgmRtbGG+c^nj1Y$MP~PD7)<7ZCW5ETASh@2 zBby1jgPuk!o~P9eJ;!Kay3q%Phy3X$dWy zOetr|UoaK)%=>=f-!{N!Cir|NnRd!m%z47cZrMmHvgXRQ7WV z?wp%VRdNV)4yCnN;}a}p3-6J-l`k5EhSAAW`QyI%MiI^Ro77p2Dl sep@Iz6$-9F4|f4vha0Hz414Dowrd!IlA(dv2HY&=Ex3#SCNkXq1tNC8761SM literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/sorter_2/CommandLineSorter.class b/solutions/bin/src/main/java/pr2/collections/sorter_2/CommandLineSorter.class new file mode 100644 index 0000000000000000000000000000000000000000..4593181bda18e2008dcae0211e16cc9530dfe3a3 GIT binary patch literal 1527 zcmeHH&2AGh5FUrLNtQrLpyBsmdP;lPm8u?43rMH}2`Pm`LM6ljIbJt$@!BifTakC+ zJ&-_xI}e2z?@~3PL8=hkIP9!F{^s+{cxJwR|MUd_9>Ki^)CfFqmM0mLIyq)1EXnP5 z!i`dbdug;woUvZmx7*3S$ug$Xfz)DH>KafduvQu=rYFhE@i7_^SbZq9^p6Q#>Tezr zsPCIpG@wPGbB29tt+7qGOlluqX)ByjCnBZXWVuugfhejc`;OPc!EElzKE5?{jo+-Wbny<;zf~-g&i?0SpwaG;Y=MeE5rV$ zvhJtS5!fC4X}j%VD}{O`(Cfch=1LQKgzQ|Po&G=bFP%#u8k)j#@l1yI>zx~Q<&0>+ zorQTC<6xY sTSM8dP;d>pxNE_6xPh9$u(iOjzJ#GwGSm=TgPWzi1$XgZM~2%!0HEaC&;S4c literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/sortieren/Sorter$SortOrder.class b/solutions/bin/src/main/java/pr2/collections/sortieren/Sorter$SortOrder.class new file mode 100644 index 0000000000000000000000000000000000000000..d6e59f52403a3b9c6887dd94daa52646ef4031b3 GIT binary patch literal 2005 zcmdT_O>Yx15FLlKX||sfT4>9MsW`L}+6cq}wSZcsfv%LMhlEO;DreV8Tz2in_EzmL zLjnoz{3ygYTbf9uh@xCLWXH~o$DTLO&)_a>7noCDqR= zp^9T3TA`$=7^SV?n#)QPM_fO4=1@mmm!L>sp}#0*vRgT9pWq?_<=tkr*4PUgZwYMG z|26wI0dKE1$h3Ny^|-p*tQ`l9X06c-TES6`z}g^kgm?0#kixzuu)I+p9Jgt;klpQI z^N2vPsv=&3IRf*8fST4yPr(A2D7=%J8x^1Oh=wXjMa&#HG}Wpd^TcdXuiWZ!YR^+n zT>{?$;@4!B(2z-~ENyf8D}_%3ONF6AMnWTE@j1FW4&o5=ceF}y{xL&eMEx*k#?X$4 zxf!`fUd7mVi8yZT4v@0&1M70Sj=b=Pc;R32Vx2~c8|sQom<@Z>A`<*8#ma`)BM*GX zGQW?{)!FhYMUo=Tax60|;t>U2BQQwPScJk-lcii^3#G9-3$4;LC+)_jYe*&|-VxF@ z0X;ZoS!{=+eR_}?>pU1mnRI35iHA~pgHyC$K5sQ3r6nGHNd#eJ5M5v!8CcqAemSG109^+Y~(0CL3Od?B((>#us8!A+#;|v zLPnj6&e!o;G_s`4b&H`e5?HLOki|z#3pc;`vuJz5pt?6zrbGS)rH#P!1xQXDaDza) z3nh%j7VhKg!*tj?ComI8$#vC9A~z+tN5H?{^Ma4lWgANHkiguK+#`Cp#X$~y3#A+n zIo06C?ki(=o&tdz_-qz;R$u}q0nnB%?9_!VJBx7z#AzDs49=e8D!0!20<-TI=Rd*C zZ#XN!ZTwDRjEi5w?@WK}!E!&x1l;LI-Gvpj0IT@(Fan=CxQ{zioELHS03P9}0Bb)1 D$mWEu literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/sortieren/Sorter.class b/solutions/bin/src/main/java/pr2/collections/sortieren/Sorter.class new file mode 100644 index 0000000000000000000000000000000000000000..2e78bad30a2e476d49b7dfe9d0e6e931feada1f8 GIT binary patch literal 2927 zcmdT`TTc@~6h2cfZ5Nb_qT+Qx)Yh1-F~%4{A|V(_ikK8hjJ^!JLp!)TyUxrK_+=)V z=)3XNzhgYJ3$#eVHueD?b~=|c-#K$GU(b)ja9S}@K8UaPI0Zlso9M=wE(VF<}S%3 zq#lzpGIWE}eF&E>8!9vv(iaM?33l;l(;Dp|{-%mTTz^XN%%`pwFsYPrar`;A$y9b`0rhddVwT}#$@fy^iC-_c`FKfMzadU0l+|)nE zqh+rYVT|$1e3=*#w0U3`g3DnX2u~QQlb9R(v9_kM>=b`$QjDOd#qth@2*eGHX z3OEwvz(E}IxO$wf0i3T;csK5RhT-qHn}ZP?tqkBdisNuPcVG<0apk}TxQJ2{IM2bQ z6zTpUq|0rP#!{pl-YLQ)T-~$4-m`m|1=rf#dvb8E4{oFyZ^A8m0}&{G(=R6B9=5T1=`(w@=O{?yhVYw@9dxsxJ@R>jaN1X2q&Er?H>yKTDlZui*T3;LG{ z3i|H9B#5)Q+9u>mOYlLYFL$$<*>7jQnfo?Betr1{0MB8i3MB%MjSho^2^k!*9t%>v z9)v26d1!@_CNN4{!8MnG<;DiPxa7KxW);c=ru%zhCcD8-=Lq)@C~q~|4Fa?8Tc^HV ztA*@t5U4y8QrH&+uB@)@W9+7iconV^sGkPE(pu?BxJD)(?n%v!ihDewp-NH_GnW)i zwd%w?F;A&C)js4j;$h4*2Bj?gz`C5SU={vA75+&TzN=z|Mv5CMm8A)@;UTpM!at^% z{~!nw<2zz}mz#eMWS)sgQY45f-K8Ou?tl)be`**CLAbvVa@Il3B#lKVEHzomHIgTd z)mdnjrg@)M*QhWwlMz1<5{o`S585n??O?P|w=-j%2csyHj-?!U0MeVv`&&>CwTd!o zKcyUtN9NB7xe(69g8Fk>a2zI!t{ojYT1Hxw=i6giFr2W@>ID!cX~4mUK|Y-H;QQX{nIK`^Q6n{A1Z33Pa#YYs~8b#eU9dZNr3I zMyUSov%?pG<+qu%BH>Nh6GmVL4JVX+Wyb?6EvFM3lW>c`&x`2)f2u0jKu6yeAK`Cd zh}O;K39*aA8wNbyuF7=CUklgny4%3}cX&9V8`01-UjXiUfTG# zfxr?>Kn1M{w5u?Q&na9zLNCF$_Z7T%Gqulf{X4Eoa08!}z6S>l?OGlMvoMD%fO$kH z!2((?Y7yU~Xg3Sc<_po5#zcEih_*Z?+Ik_{?J?0_7NC{j4l-4OyVw_iGBS7XH`Qk9 A`Tzg` literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/collections/woerterbuch/Woerterbuch.class b/solutions/bin/src/main/java/pr2/collections/woerterbuch/Woerterbuch.class new file mode 100644 index 0000000000000000000000000000000000000000..f2aede2f30c969120b03da66bdafdf13c7caa097 GIT binary patch literal 2033 zcmd5--A_|76hEDV%e_v)DX92CBGc4xmKfsWm)KnN;xsJ7jTY9>-iK ziQrCZW#bQ87$;08=lytZI1ivqV6Mu+FoU3s@%OAJ=rX!oA91-p;_@=>YGJ9; zj;743IE9wu)yyM(d9+ z!#TyGHPO}xDsZg=Ayf&>*G?8DUx{X$c<*25X-Akg!{S1q+SHsSyUa+x{v|BCzO)3M zHUFx@VgW4snnGZq_HLXVGq6a=${DKO*xS~@peY)YT8xshg8 zl9X(u5RGk=z#>e+H2wozm0$)xYeWv$_pQKP$I)wfh8s9m1}K<^1zd%26KZeyecZGZE+?qWKsJk1=*$w1?d%8 zDn2&kmt=a-6|mb%jI^ub{o;&N6tMGLTOD5rxHUaE70^9)CG}t+V05E><-PNLxFf`; z57tv~=7LI8uBx?>Q9FyZcMC&Rc!t^FWKCF-GSaiCmg-!t2q(;yw_N##Yl5YtfYwE< zWK?U6e2gw@hT1;HkIU2J@@)9Xo z_ZYPe#DtSC6O68P&QK&gHZp{luDr@J=)>J1+=hDs_NTKO@8{8LyE;t&W;Ej)-!;{O z{E1|{1&n7-NpmW_PWg4Q8`nArn9lxhFb)M|bJuu9uXXA(DOT?Ok^F8vB=- zXrk}_L%tbjk0xMj3=f^}PBZh}xzEne-(SB2z)N`KL5V@j=qN~pRKc+ri6GM(0jfMP z0m=a?3_j+lk1*aJXC71-%okO$P=nz8;W0**L8-IJ;BoiDKHIM4nG4SulsoHBi@4$9 z2AyXNN{fmC3n_Uam9(!IEH%4lH}|ZTYOo!Ktpf&?*J&R;XfUXsRqSe=>RGtP;MWJG z(WLPR`#egMOvb{>RPjuwhcPB*i~H66A@V*(vCveMiReTOkgpMnc7dXOieioTQ#4$q zmM6kSLvE=JKW7Btd>e6SJDzPfP5U1czZxc4EF)>T$urb6lrmQ5kxezj&=%OYl3H~%9DDG9!Q8nQCR7Y+d(s%%1zJxuJL^DK z&~AG>%Ww&107$)w&Q7#CQGcSBok9a@aD}uCB|=swpLxnQDX) zZcv<|8h2i%SS!vx+$_8p+=AQZ99-S0!<{J(TT>lYfM3|5GsU3{tHpF{aE}z=A^j@k Gc>fRig7eD& literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/enums/eigene/test/WuerfelTest.class b/solutions/bin/src/main/java/pr2/enums/eigene/test/WuerfelTest.class new file mode 100644 index 0000000000000000000000000000000000000000..dd54deb6c033899a0d01de933488a5e87c5a4346 GIT binary patch literal 1397 zcmdT^%We}f6unMM(+nvME#=VyGFhb(nh}T<0VIg16e$#`X@k0SW^NOg8GB@Vs%C-2 zS0Mfb2_)F_8~g|2I-xX(AV9ETF@B7XkMBMA*dIT?eGdTl;d&WL3?ggdC=*gehvG;? zxw##oDl!|P9H7F;p>@%-0?h%YyEHDtJcHU8n+i3Ep7swhb`0is_O`nWSewC8ODpSy zay^k2I0vs^y=1U(Pb%piFqms>_6Xk636^1r!SX5BV`H>ggk@Ih?J0v+r$?CZSZBFR zg_BzG+~|IanZ3({%I*+(f^jMgfpQT)7X##VN+2935Ka;ZeFAl!XtZ2u$1~yLA$PPF zk8_HAdM`;4dMQF5QaGDwa<0sBZ5-ETz+<62Zy)(d#NR=P>jACMSQM$7Mu+@KVVz$g6c@^iGa;U$q`XMW8QE~B zx!`V;V^BG<$|(OE;5VLMkaS1NiDQo5I5)Xe7O5)r7j++z_f3ipc`FsxKGMl32%rk* zt5AUz25XJZsq?zdNHu7BXD)Y0g6$&fquCW?HU=vl9gDOljP&!bKj+<0S_Zc|e|UeI z465FeTS6LzmMAuM3gu*mZFMBAq!S)`Lyi4Ts|y`3dUFvr7<~GjTk)Tlh(XZRg^6)X zdhKf`exkI-*Ai|3y&?2~F<6H)ut0s8W+hmpk5Op@YR}T2JA`7?2k)S|zjE#k)IN-H utJL~kp5X$u)d>pL;3CZcE)hcsF4M@Pu2BCY+xiT))fsFIuG0PzT>AnVKcsd5 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/enums/filme/LieblingsFilme.class b/solutions/bin/src/main/java/pr2/enums/filme/LieblingsFilme.class new file mode 100644 index 0000000000000000000000000000000000000000..0f385ac09cb9ecfa02c385bd82200ce7614e6b5d GIT binary patch literal 2670 zcmeHJOK;Oa5T0#IlZHT{l=o{}UI~sD4aYSpD@wQ7ZC#*_$`)6L!E__Y|O4HjVAOv*x+6mw52bs3>9zdu{498Qk+cbPmJzbUZ{-Kk!M5Ahih8s zGB?NjRw`TM8aGiJZo_2FfCwaZx!r1G&+k7h5t5telEyuu;wsgVi0f6Js1pfcdvtPw zwl6(txry4Ssc{ActI&b`U8bZw((p(%a8oL5l=xC)Y}^+~yuZbz>V)r+3reXq47JBx z4sKWfEK;?DTFV9=L}~v@!U2{e2UBo550h|)!O0YLi*;+#rG8nCf;#G&ASsF!H1veO zF0_oty~#1#l7>O1iFP^B+37-YrxIr2G6R1PQuo*0$Lg}5BSQBKrSyCt@1upHlZ7h` zW_C}51h*TzGPnw|HtZ(G;QUIYtPIdm9cd)-@GL&eiDnZGIk(>m^I0e|__6z1iMsbA z{*~roaQROTY9#f;JgkP1_K^MqsBcaT-yzA(Lw)C{Shl3GsO(FLT4=Aem4Px{>f0_# zQnL))9r}^zmmOJ2%%mdBrXXBPMYy_;9Ezz3*9c)0uJ`tOgKVFZ!HxYx15Pc45H@gH<0xh2h6LCm6>`I6erCbn5NC_MoDj`nJ#z|au?Un7V=r2P8 z3GVzT#CU^fiXwr;!DEl-`T5Pq_aC3X0yxCI2rY(zvw2nurLz-pDzeHx%A~GKm(5jC z%4|%L2yKR)CR_-;$lgp(WbPTZpDL~VGlomU{bPpqb2F0>Vus#1_Jy^^c5s=o!?)T> zXNprfaPp{<1iZrdiqP)_OR~p2me{v-8tFkIot~_^jB`rzP&f7Zo#`0By!+owCuk}pM zl_usnMd&Q*!mp!KKCYb)5khgHgOnBV8f6k6d8_n-=RybJQ^|i9!y7KRKdU5x&YYL! z22hfqgDYKZ;VQ%KaCBba74Jc4KyO3}Uf1PR+KHf=GW16#7sau#D)_%H+kUAW!-LV^ zJAXi34K-xg8@}K4X$N}@(|_pff2Pln9GTkY@}&xS#bGR)#zwevVK!I)Fm%VtIV$*s z>gsSGG^8~2K#NXW*d`m1_n2-O?a3E(-u07D=zeQ3J+c73m4MO0QqY>~9l_ylSo1Y={dq(u@Rw|5I&dbii?ZX5eK{4ge( z=(``vID2g^*go6?F+SYR?PlgTGr!rH{rT(bcK~<=TPcVUSl7y__)N&kIqS1ZS3R$A z+4FTpJ8dbPPUSG@^AyAhEQAUklV_EB>zq4=K)ShKZ8qzTCV`Dw6rddfiKD%vg9d?k zqrU$Rg=9V_P^eANn??zFhN^QNJ|K{MDWov332Yaqm8#Q6(vNYnf!`G#Ga`_*tAduteZ5Vynd3I6E_XbpP^rtD4m;y?4H+wk zjFm@>tx-4Nn##aXpBbl34chTfU1aQ{9nw{{yq9e_UTZi2t#$R z%M})GLe>FZ;y+{wX-ZUR+LJCn6_UGUdf3y(RwcCe22{v?(BYI}NbSo|5o3uI@YN~R z`&=pE@~fcn>Y|E*l!ZJj<{$@41eRvBwC&b>4XgCN=eM{zX4rssKm-o+PM8vQKRS$? zw$M0+OfYmzV6j-5?tcO+jh-~Z=T+GkS|Grly?bGcqkXnEW^*SE4+wmYFbu{P|B8PC ztAFQkj7@$ik2v0KclMktMH|m)ctpU9kbaaxN9ti@zZvwD!`}#7=8PS3;Yh^GQI)o% zg*IH8w}LCCoc16EMFR5|W;ix_3N|mjPvhH=I~>kK%aq=I2Kc1l)0fy?h6E%5P^LyQ zZ6y>S1KChs3#HZ0!F9Bo$G;b7oj{rW2KkSL8(-k&58TDz7OqLu0sL;`nhXE4a3{nh zunc$6a%H4-59Jum+6>X|&p=z5fwqbkX&{RL7AFG~9*&~hL?08pwHbIDAzlpa=3pJy S7(9jzlmJihOXB_slzsz7c59yi literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/enums/schnick/SchnickSchnackSchnuck.class b/solutions/bin/src/main/java/pr2/enums/schnick/SchnickSchnackSchnuck.class new file mode 100644 index 0000000000000000000000000000000000000000..e98039cb249d1a760de528726ec18ef143c885ef GIT binary patch literal 1875 zcmeHIO>Yx15FLlmBuk(rr3K2D+XG5CWF-VbBESWKR4Jtr36&~Nj^j3NcI}nzjp)ze zS0I4|caHoZ#CSK*pe7+y;>Ka^wf*M#&3MNC`u*c)0C)IzJqzaGNh=qx{ z9}1PmHne=8Bp-&Iy!RdBL*J!*Sb`#fmCPby>M-2x9SQCTEIpA*x@QE=)f;;RiqCal zl%PUj`2_pI7;VaMffT;IQASuDjYOYv9VaqkPHIIHqkEBv?PD5Lx&uM`f=A3CC_x46 zP|z)u+00}%$1=BQUkgi>b~I*=52!;s@h(AClXmEA(>vSra+;@E^8I9-Xya&xNu7)+ zXUa481pTS^FM!)|5=kx{wP_*@I;yNQDR0!)Ey@RLEa-T=9FV+Kpk5r;+a$g(CST-idP&a5pLb$_84&Dmt;QUGPRScUU&iNIRDeUkP0v9x?uEVuChU!`$Rn68fu zfm&O07VV8AHJ&WGfwTl3wa-+cEdnK9Q&=|ycI$s6+0i4>S`5|LF2g#3&H2@f#fuk! zFE#?}^|#YPQHBjd-p{AWE`k3!y+BF-vz#UnbaZOCcqx6dZcKdOJ55}6?Un7V$d@63 z1b03PG2T=(haNcCz$>GVQeinO%PQq)!9Qm6Dh zM{jgGS)R~N1T6+zH7FN)o_?HNp!5vb8wLmC|7AI(g10n|8MI$2t^8{SJHzoc?Wwoa z_;9p;#-MdtzX_RL+MJLUEzP zy;dF8xZ@bQaHk6$7%VssTZLZtHssfa0VQudtC0U!T>?&m@88*KfetO0jvZWAWp@6p_?*D-9@98K7% QQTO2iMSw>%T7=mB3o#Vb>;M1& literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/enums/singleton/SingletonBeweis.class b/solutions/bin/src/main/java/pr2/enums/singleton/SingletonBeweis.class new file mode 100644 index 0000000000000000000000000000000000000000..a5297bc0995830974e20af90f41fe9046d5d54c9 GIT binary patch literal 1066 zcmc&zO>Yx15FLl4n=FB}p)H>W(^JY}R|QTKIDkMxO5u=D32}0qY2vbLuWWCj;*ao8 zkU)YvKMFD4g*HVw02dA(&)CmT&-3x^`=>7e@BnT^&|t9RtW0yEbb2U`L|WL}De5wJ zsZ)BEp*K1m{qi2+TU0KBCWF-qoe4clUrY{BdIl@^l~(>CgL8xJeFn|PW{MGX81zoD zPpmbz4d)qq|596YCOg6@mnJV%CcHA57uHNN%-ua6cgAz%QV26u*k-A23ABB2-zHV3blX=uYHgAaeuCjTXe4C0X~t;DA)Bxn7%A*os{ zf@^0cr54JdyQf^}-7!_y!A+o%p@{@&kk^70vJpjh>6FnPe}?v}e*6)-Un@+HY`_4m rRkGb01#8f!r~{W^olXM7tuqW8OBh-eLxZplxLnyQaGmxhFfH&i9|6z5>8Qs1+bb;I`3$A2A{Q9oA)jtnd0< zb|T|%7G(`t(wqx2#= zJ`hsaM+C-d3!4PSmsH3LaDqT(Kgct!l`g_0$^CdEH8-l=qLP;8H)ok;~ z+^1e?qs3{+gErG>6tmzx+vc>2Rn?QK>VvAPG*sMBsVt3{4O-NqC;t#*LBpO{Pu;Oo zcL~+AaMG9}ij}q)ng&cd&?cw-WDi&*IBeJcS9VEvGcux9QAX`v%)Qc65pii8--jz4 zwp&tdrH{1fGA$T(%PXxZA+uN*##+U8X^~0lu-UR^aZ3c|$f#)rBceG8MclSjNF&wd zwFN2+?cgMA35n9!!s?t>93~xzIqh-JO_)t#1XeksuLmAf%20r50<*QozV_Fx7IJ&h z%|@kx(O-3%bxNQkD+8_?b8V9i$YPRbx2u#)*eLj=GbFVwn zV((XEH!bS1(|0m?7|3h%SzRo`1p@I1Gurn!rd|Ck{%nRRbmEX%o@S2^$-5$4Ch+C& zCGzhDL16xO);CaY2bo`29UbuJ!f9b@(9GnaLK&^dK;gI=%cXrGxMn(N?G@k}fr;K* zegoUy=a@kGr7#A?=HeK*0{AB5zXYlbCLoWyG29oRh-(Q?_mVS!_ZhsmGv$vk^$l-x za1z%%+N7QU`rVSk(g^lrT_EaX6NQfr}yrA(RwIH-Igm`ij(|RO!lQK%BNbG?JU*|f<$H(_v|M>ak8-Pc+<)Ox~m)j^zh0@`%n29j6_d=>aUBZWncB*zUcrI=qQ(h7V_O z{6Ca}!9O%p8_B1txZ}oY+m@zNbzbPm=v?KF>iJwrD{M45@ot)oHFqwGGdGMfFbXuj+EpV9taVmcHH3}|dpY%fr_fG%Y% mT*M_>DH!%v7`7@Hc1ngCVb^e(VhuaELNjoaMuYOJxc&>Yei>l^ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/enums/verwenden/Professor.class b/solutions/bin/src/main/java/pr2/enums/verwenden/Professor.class new file mode 100644 index 0000000000000000000000000000000000000000..18dc7dbd2e4766fe57b3ea4327b7c77eb430cf3b GIT binary patch literal 1156 zcmc&zO>Yx15FNK^H(AoA4U~`a<@QvB$V!M40VLW65h*}KLL^Se@eYm4uD!CIl>9Oz zkl@abLd+5#_cnVtqEHJq5tc+5jbaW^tBFgN;2=zF1 z(FE-g>KJv@wdNx_XKVl^25SW_5&9r{Gdx7;8B}}Sx9xuGL$BLv?K5C)1}l3;J1?{! zh-8e5l#p^QKT%rwXAIVNI=e>LxY_9%rG4|>fI(@`#2CN|gW6e!mbJ!~p~e=(J8jXK zWP&l5Ce2hLyfT_+)(jI&-D4hB`Xl5q%0yTKWkP-u2gtXnq()IvmPE}5<)R>`Nkgc@dKD^AXRxu;IUB;Bw@M!rLt5)7jjzY)5N$ta z%AnpcQY3>D<|mIOKT?jtgU&xJSCc{5Gh-|9g~|i3o~~Une#EJ*B`uY59<_g|&1gW z(Y)E;1bbPKUH6S~KOm^)AULi0u25(ClN(WAm%I!Ns zauo)T_<(xhDDnelf}xQN`vD)Ruc%w?4mllgFJKalBIa$e4Nm7U_{KQ+#@~aVql1tu zDnd<1OnXDB5rsdFFy{RzC}_h7+A!oAhhe(aOhgR?{p{j|mej??E90YuW1uI-B%uai+9hn>2dMLvm#C#g)?ze_L9T^$Wf}x^)%&}4i zvuo@b_5in<Ds|5-OS1}9h`Pn<58c>t{G;{+#h-@ z=rQS=|2r?sdgv|-bk+;I7i4Ufcv zHOBW8kW#x)A&M)>g1cd+y9pOqu2DNn>7%GZXSXLl zXHvcIz(oQYFl@-wFrseb}fE51^A0MW%gqJr~)#|d~2Lf{-6gX4Iw;J*?$_(LD? zGG3?f&1JMAcz1t+>3g#?PvF(x61!7)HD4Ko(|Daqt>85{le~K!-axdo_*_a_QzYXt zMS9bMRI?(zbqLbi7Njc{BmkO3y&Kh-%bW$FV?}rm-p`Ec0}Ilo1*r@*sH0-LT#QDk uE+1MDezYQd1Rw817)R5vApGYx15FMwXNtQrLX`v9HCa2_*l@KQiNL5utL`o%EDsifu-D%>oYp-l4YX1cP z1|fk2cYYLNyd_OPBBh86hn-zpGtY14J@3z7U%vyu3uu&}z+l~)C`^S^;h`9bFf&g= zJc=-LQY#yZp;cm#qS|+89jdUCB-j_p8$8||XO*DHU?HzggzAUey+e!~gZbxDN%xY$ zT(h;uptzx9EJ1}qZIZibj5cMs&e*5-%AnQB2xA`UG?R(&6nJKIFTvD4<3VM2fIP-1 z5r&d75q%VWK-I_M1$iJ zJYq00c?tNrJ3iK+x+Se8fBVxdJO;Y#^lt%*jJz{Xu|%t<`5GYj2IUWn!566hpxpx0 zDEb_rXMtih{|?|5EarRUzB32~+WT9C+pt7uFH@yI=MKFu^SL{PPkjoXdsJNpwgfrO W9NedM0qXF8-ax(kGYaq!R(}J1GKYcy literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/IllegalMessageException.class b/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/IllegalMessageException.class new file mode 100644 index 0000000000000000000000000000000000000000..199cac0e333dd45f97dfee7296c5bb5e81f2c466 GIT binary patch literal 1398 zcmd6nO>Yx15QfKTX*NqBrL=stP?J-7$x4V51tf$DR7$BtLnThg*_~!xcI}nzMD5?; z&mcg8J3k6B-Zo7?l_GKAu->&be*Mh6Llv!O8TLiCf!2yXu8ktAFwJ1LRLF$tN1MG}j2(lSr&3Ax zoWWFUWt+kDOPyd9Y783V*fnFc3E(PYpWiEkR%b&@c&zh6X2N6e!suRxxqZUJS~o?W zV4Mj*!cy+rmgc zKU|!4sk97Ucm7GotuhFlKA>PQ-##$fT?KslM?x*AF=3FU>iscb4D2|J^juLf|3 z!PiT)-)P7G4AyymGlNJUEp`w`Q-Gvis|}Gf92g9iAI<>-LJv} z2IHo$0zYx*M_$x7q_x!Vp1{IGpvzDH8=#R7lTl7B5bNd{g#dCP>((VA*Jd`?9 VaF6B{ScD~d1Lf||sK9+#{sT?pkD>qo literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/test/CaesarTest.class b/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/test/CaesarTest.class new file mode 100644 index 0000000000000000000000000000000000000000..f6644931f8b8dacde23ca3a6a75aa4194ee28e64 GIT binary patch literal 4928 zcmeHL-A@xi5T6C4r4;!RQSf8Iuj0cs5}!m=(qKX?nn=a?WVY9ByLh*E?(Pv9{S*9u zOf=DV|0v^Z4`@@)P_)LEd+6Qn&hLIZH#0Xo(;q*-d;@@WC}d!Wz`9m$(Pu&y_t-uw zhHACQ4_qD^5lCHRk(R9KbNSYAZMZDjTd~BrW~ze242%$%YCq{Q*(koK?s3-;7=0+D zFpmff7glx&jFf^J&%hXg$qsf?sX%36oQ!{bB^B3!x6fjyM9 zR%vo-S|O*Fz_FV-C68%MT_$Bx?6te30D}ZqmV1~xzt8Qt_c*4 zBdD-q9T>?PuM26Nh7ugJ$TQt&hi*sOSP7yilh)!faTg_82OX5~!qfzmwSy`*w&i)e z!Mta@wRsf%{XMbGwZEJ{ zDJeIW8a9ns=B26N>*_4rB;;=D>wY^8 zG~P}SDVIORUKvwD=TCrkGfN=9Ewskwrh<{7VF|GL$Nw1s(+k1uGK$v>&hFzX!F%p2 zWZ%r>K12RH&W2zTuNDLNo5E{8M!_`9;0$0ErNeLmN27?IgL$~z9uru=`$^`-1m=ZA z=Boo>b`qJd4S@McBJ=eDFz+NX(*ZEo6PcF=z}!k?UOpr9jfB|vl)yX$w=lMb;5OXp G#N997#_se0 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/Fuse.class b/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/Fuse.class new file mode 100644 index 0000000000000000000000000000000000000000..7565d1c00a1ed9437017a756dfed8c32bc2ff358 GIT binary patch literal 1568 zcmd5+O>Yx15FMwXX|^p1fdb{z?J2!v)s%9efP|`6iWJJBp;AxC*_|eCckPw!E$uHu z0tqoSn2CqWzg#66k{IgG?R(&Iq=NreuAle#)E2ah&;w95r&*H5uJzu@>R;Y zHOjg5N6xD})@ZrXj;F#!L+%I!&oat+9E4GpLA8@+iHxMWSG96MVaOg%Gs2nx1O;#uo4d){A=wEqX4ugo6RQik!= zQ=1M~01dda0N3FzgQaG7RO9>9BWkea8=}^wV%W>mKAN7_o)b@RE4|27&r)79svxn?0y+vQ zaXL0>K)OqYKB_@#R4<}nXOL3M>Lj7g_BhHzQD8pL?km#`cH4&(Isq>nSWAX2(GZw* zoVGRg%)Hb_yVnBK>y5_7zCdv+?vRIyz}y6B+uGQca8ro-2V*IX`$Ou;Fpd)4R~bQ> z*tp%ND19OQa;rzOLt$T84oXz`Np(rCaY407LA477t;tSIsWh>Zk#b>AItHPmgbO$e z!Wz{wjcOUU+7*y~`BWMiDwAQiNuJVou~gC>C*+rRhh(kp&=p~OES>3IH^}!fi}?yl zxFxW--kiug!mVfW&o#B7cY~-+wxw86fod}jRexVuo!w8IMc31*z*h6Who&x2a`A|P zz{2{*pS%Q?-w%w_5jD(ErxwDQbnmZi@dZ{c zGH-Fi&$Hi)2R5V~or%44*0Lc4znn!E(<0cVsT7Lemi;UV7(c!U)`fhYXT I@Lgi?4cm=I9HBdonp9FLi zQtEVKvVe4#41HAn%&1;WK|PA7tD^0`wPf7R80cYEV17stDbo%1+J_W60l%vUWLhff zlYpoT6rXFO-AjSl&H7f0!*Ps3XH9PIaVmT{5*v zJEAyyCjD}=N3ugf{~OsdsG1PC}V9iIcH%VNW_Hp`(;VpCw^y zs<}1QTwC=LO22$+hYXd;x!WX9<-0^G>5fzK%X~~?})dS+dtRPhTiq#Hrb|PM+FudNvNWhvN}JXT+X_l&IEQF|D#uG0wtG>Ldf)Dz0qWq4SUBPq`;)zJZzkszOlEJw>rzX zg>nTM)*&#%gU>a_H57SQ;Jt?uuVp?x<-Y}v{x|ps3zaXp`D2K=#cPosL_?g2V;iru#C3TW@bv%U*JFR zr;uo(@zp1Pk?~AdWyOKLK~TfPcBeC^U(cLdPy6ND`;P!{3;Y~(5SZ2~@FOOq|AMVD zKT(rDe--e=h*)Z$iwc+gIZL%Wkbj`+Po`YTj1M9N)l!{dz_7U&%6REh4!&P3UK^!F_WcJ=PQSnm9BRx&M z-qH%EWgdh~p-{qtm#o6+2K@xwJpq{lPv_Zkz zpkNg&G{UXwB%&l%hQ_Kw119ZVmN@;nn`T9RzimC>woA`PNhktgs7@2E&=pb}l?EnO zwCdQ=F)B1oWtlGviPl@j6&$lPG_}$Nx{zvPS5S&FY0X^)*C5e0=pDx%sfj70=5@lo z-uW=(6&B8>N^xoK{fx>wSJ~)nM`V>L!7%c?-oKHwV`jUfHCI{EJB-(=FZQ&}0(sB2 zJD2XeW!vl_s6>+Ra-)@Lcj{TSmTp%Q0Lm1~>Y#tJcp#~(hN$ipcDUw6~yb;{l*A?0W&Yb@g0>ZEJ(nrm{( zHF=#tzcpXU7AefYi5#3KFywkVW8-;x0{#(Ny6D&TX%K8O0VJ7BhCA3q56EeNeKX-fF&qTwvyXB_-o1h5ZB z-Oz)_9G*?#EWv;81LU6$dTY@43C}uU0FPD%@OJ=@eN`zq2!nVAa0pjBVF*WExN;bV zab)F>;{TuAV-D_+lY62m?nwuiI=QFY=8ikLXWHi8aB^we+`CTh*|xb4o!pUM+#Zac xb9E!)g2Qvqoa9SQl1ClnH%{{9Z6LpOlCNw7`JIE@0pplo9dH#2S-xeK{tjkUo{s7t~6TLOC>4;^;Wu#OR~P0GxN>oZ)fc9KRID1q>4`18H+Nr7m0H& zGAFgNQOr*B#4+KbgZZouRRUXubHda#dOJQ5+!3g~kV?8&1g>>^#{{ac^+eR6Nua&- z-8V*?23#kVAMcbARwrj-Lb*;enJ}M`W=4+_k=o}pXpUxrP6SVwL8pxIQ#KWJ7a4|2 zhT($YE}dv$snU+7%<&m@7%t8;B)1xl#|`~)L(eMwEm+VTq*)@lbkydVFi28aXL9be zq2-agJt{5D)kMTnVTu?nIAs&`1= zVqq+Gx==Kg)}pQCSNdI%FV(nA`2ZSlqXiqVNnpD>T((6iW8b$;dx%wXn5Sc5M*epZ z=nOSy$uTq1uP-*MZYC{(z2U!hZy!4|X1-sm-9c|aAXt=^ZNObpsr^M`Ue&5^&dYvx zaew`p(|Q|#S>+vv58^9p`*BtI{a?yN!D aSc6o7dx*5;vP8JQ2BEzMfxyFp#iL)#C{FbN literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/exceptions/fakultaet/FakultaetException.class b/solutions/bin/src/main/java/pr2/exceptions/fakultaet/FakultaetException.class new file mode 100644 index 0000000000000000000000000000000000000000..62e45c7ed00886909864eccb6e0cc758a5ee8d46 GIT binary patch literal 903 zcmbVKO>Yx15PeQUHdz8Gg|>Xx>8ZW!N{9;txS&=<3UFws1UJVqS+^T|<#no-KZXPn z-1#s3g{rd~niMEKa9Hom_|5aooB46_D(Mx~!mCsm?Cm8hsH`X^b~ zoXf$bFa_&S@p;MKa>4y^ro!f|>B~VOLbO{5u*9%(fntSV?Y=hZ&2%zUZXielhULDM zBHa^C7yhqc%_ll%==T46yj_N1to(;^nAOd#UIVuoI+qWG=D`r|+NqOjM;Fzt{k=G) zrqp52NZK)-du9A9t(9)8Jzao6U-1>~`-%HF5I_rd)Wdg0z4sjE=%Ge54&oLCZ8N=EI3@v*5 XPlhV)P^^NxxJQ40(^n_|J|3O|5MuNp literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/exceptions/fakultaet/test/FakultaetTest.class b/solutions/bin/src/main/java/pr2/exceptions/fakultaet/test/FakultaetTest.class new file mode 100644 index 0000000000000000000000000000000000000000..508fb105d87992ede6f3bcd5fa376e87566d5ff5 GIT binary patch literal 2236 zcmdT_&rcIU6n;|*Eu{*gh>FVCQ%Q6;5-(b8VhAK8MH8tc9;e%(9oU`O%*-Oj_;;CT zqBjrz4gMV-jc;1IEn(G$^q_~GowxJNH{biQZ@&Hf_!$76LZtvX0*{Rj{D=wZAF^ZS z$9mo8CjpPGP}2AZ>?jE>A0pi3=s@RJx7j&h*$o^#%F(!4)2_H~FT zR@zdfJ2YU@@wYe~cyI=CmTj`=F^>NoWG9M45eQ375_63)m&WQOuu9W@2CHjS7@Ej7 zKM)dwb$}~4XIKcMXpinD#<~?mQ6^n<`@|!Z7!XWGhVRrW%BX!C^U`cuRa=9?8+XHm zaARn6B^YtrRc*?Q;o3I4TD>vV%@ECv^B&aiQ;g$-I(_#(Bb=@no$oZ==piK!Lg z7J;whG&n?$Tg$14aW_l`M__IcqOFsMMYu!Y`(!-(H-D`&{;p$H?5RWtd|UMDFf9p} z=icQ(pu8)L!P;%&k8R){;01{HEI=M-(=dZ$0j)>)mEgPd35u^5OCO;81+5&+Mzw9*>QXk*+panRpFtSdB-o8E*t!<)Mo}f3tJIqP6NmZJm3D zK=*wS3GU`o(y9VFw20(O4b4% z>U*?QTxxLIqT$n+c`w--rz6O?vctHthw%vYCD$~PhK9^|4QddEZ^lRx$7;i%8!FZf z70a%2AZW@)gt1hHHoFK(Jr>zvYMgG*<%pOiMg&fFGhrMEPZ+9`m@D*rq>V~EBNa{K zSRSWB(EZT&!VcC;co&L&bwclJ*s12q>%PCo6^h5-FUYaKoGhRFekKnllX{&i?my$qKQOruWo+4GLe1iZ z5)|M>FC2%H1cu79J4Gw)JYkDk-z>`Ad=l2UTC%H$z`(5ZSg_n$O|8Z*(-4}#ZO$uhmx$!Rn9eQIBNiSfy*2_YCsiX?(0K9TL+&@SBVUUs(){0je! ziHRoq?vFCg9+ZkD0pp7gH+MUk{pOqbX70z&FW&&*B{WM=V6bLQ6sAI|@KB6Jn3<;` z9!Hotsg(_fLd6O0YqK9?ln8_2juTE=CyzEJQ6(rcSjcZDLJh+0{vk$=!TbxUqF+WbEU6Wzgzmj4_XNn#qLnXvH(5`w6D@IS(qkL*!>X zVxEcUNDPoSiE?L3xidq#$zzR{EA4nHTr}j4VDLC2l9cNlhWgO)edu_0ohw0u%6S8L zB$P+*BR?;}X)d@s$uOwwI3v~IilFT=8Y5%8BJ5gNzD+5*p^o_g-4uaZfZGffTfM1drxdzg(prz8-j32fnq5IEF{t-+B$7R0 zq(7fIi*6__gZ17&k6M>O+38aT3>vNWEH4Jj??%eW6gSmaT1hn4ygK@ z_ZfV;#@tPA{5Rq-SoyQaUDEMlp*wnHB77~qE=#it=W|ZlZmNhjomLu^dn3^Z6Ae#F z@Pxs1!b`v}toTHM>Xx*YhTA8%unM&6^lJgKj3#HEY>7_K@-sm270Ms#!Dpy`CvO32 zWPJ?Kvp}|*e+O^}>bZ|*?>B@3`TiE+E;K0jBHi?P?$LXe&(bA)mM`J+fNqz8H6X{C VgNJl3z%o3dH&E?9M*$wg$}fnZhjst} literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/exceptions/try_catch/Zahlenraten.class b/solutions/bin/src/main/java/pr2/exceptions/try_catch/Zahlenraten.class new file mode 100644 index 0000000000000000000000000000000000000000..4287eb213cc58b7fac459cf49caadcf503386def GIT binary patch literal 2668 zcmeHJOK%e~5FUrnB-@mhzIYcCI3x%qqUwnPhgPjrDWy_dDgg)N>^h0duD!CoRde8v z@JEn9f;&G7G0wJ0P?J6+Dh_anW3RuN`S$b7tbhFc@(lo9z{4D52rL@y*CHllZJ!;m zTC5jq{LtsI6-t_#)t&b~vwpkwmbF7JHM3miAWLAX3lEuW)wUY@+_wbAo(n1LO9EHQ zl|2I4RTc0Y6bMZAv1?i@oriIf{q$ODZd7={1L~_N79n#nX{=QvVD_=#RT4G0##3%;jOcRRd8Y$~iZB$}I4RwBB#d!q*oCF%d66SKg>_10 zU1_Yl^Jc&)?k-_VT6RdeYd%k?kcMMTmp+!9GOqW8+;X}aGGkU$(D6LT!$c9T!ZiYO z<$Aw+rJ^mn?lxJ+a!KEN*X0L+>ALb+xObEbV+4wuX&>IjZf)Qx;C%`2V}K*UmNSN9 z4p&RvHGuaO@^7ZS&rtl1Pctxyqr(9Hrf@8F=N?>#Xt-9pbU0}F`EzMP#7Qq(OA89B>g3qRpPkRgKYxAw4gfE~EkcffYc%)AOe+73oijhy&;6lLLQ8IZ zA=QBKk>8QViXs#U>`anEriT8z{+ZyGz{WsogHNxMm2?~hqD7#5B8Q6EL<<5h{%dl( z+ie{np~w@hg~G)*+fqq;Kp^indjtxvaET&ZB~ZEC@EffoU4k7#il<5o6NTp@pgbDK zGGtapipDzXhhl8@sZ;Kb1PufanZ~4;@egb$Xan_lb3NWnPlE=LFjPgBj+x~nYH_Og z7^9uVsc6SbJ$vbnytN>wd^CVID+pi z3GHIGN8cvKrX!d|nM(IF1uq~S2ezTQ1rA&%P;)z%s!ptyYS>CuRys&HPR4zqyA16R zsCFXG!XDEyjc1(&JCcULv&`p+$G5u-`V`M$erC$N67nnv{`iKeugN!Tx>zvHUJ33K zsQ>%y@#wLLh5~D<<{mW{oXmJwYuJxGtb85{rm@XL55U zCyqC*-Q8d19jtai9gv21G>5+p*uYx15FMwXX||yWftGJ%^^{80t^~IdazRu=3gwWc5=X~7&AQ#SSGG55e;E=; zaOVecM9gl}LK-eTc;p$+do%MqKYxGy4ghc9MGG1X_MMecE|iW=#au*%eHqPAqgB#H zsPu`DX*5>O_Q1x*IMIx!P^7JZzaqVx=!iSU9!e|+=lHG}p<&9v~PMFwkeOp&I> za{`6q+mt5Ut6KqvRBJ@2^`X+rj~HwZR@>Vcx5y%teIw*y8|Ay;}m&JvV2_1+|kdGXw$jV7mhy*tsF$#9O6jwQ}7t(H@og6m2X> zjA|8(6xp$`s`3}Xrcae)u(SMjQCz(T6H{7=hpJ-Oy572ab_RoCe6ae1qty^_pjD$C zZ_v2|>*Td+Z-ZvKyaqh2?Xv~@^FP-=^$h?3 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/einfach/test/ListeTest.class b/solutions/bin/src/main/java/pr2/generics/einfach/test/ListeTest.class new file mode 100644 index 0000000000000000000000000000000000000000..889e7a12e9508205deb4071d8f770d2672e3de0c GIT binary patch literal 1505 zcmd5+OK%e~5FUq+#}fJolvgjNhbq17ipPlnQd9w|6hNY(5=X~7OEmF=dUl{0N@F%*P+7Tp0hH^h0@7^n24mX_mdH7 zv`V@JmEIR}oOpCT=_}`PK(jhj8LUjvnb4!;_3!|tXHa{rwDM0GT+|zmdP>{O$^AvC#0*-^M_++-3f0Y-;dT#89OQ8ez z5c!evzaaBWr(w@PcM@bLFES;S=dLW!Qtq_#wv^sjKD&v|7FUj!I>mjZDe!&Tp}8nC zKaY<2%hLI&NK4th-nGewp1Qj=fcHc;m?Fp-beYjZlW91k;=%2eIyW}G@ zKrc;uI^E7tSO)8FO6^sSJ9?s=A~(HIz0)QmFSUM1WVZn~8GJfRD_*QJU{DVMzd(9- zqFqy3iO*HY?9!iSYTDj#7wA2r=MHFObWJrH>tsEg+5pj4XuNAjpP}`gRx7YfW557? vD>SyI^9WXYx15FMv!lU)KSftJsM=_!Gdl@KRddO;u+C4iJr384x(8z*tu^{#AhMSmF* zNO0#zA;#;aNu?mtzy*oJdOh~@o9D4-{O$XvF97fuZdag0;GR}t5HlfzBX-P!R6PjB zTyiBs9mp&maP=-_LIqufRG>^?J;y~%j)RwjBOV$8Yr8@Uvqxa1**YLlev%A%1v~=v zDfX#SiK@Z{vhw`3R9q*~F(1+}iBl0VBN9ndl?);t>qpf0`V&rvJdBt^P|CvhY|QBv zifjKA*Pao#MTZI3R3?VT%!Ctaa5?{wqPW@RxYM@XY1^u5|B}r2_Tw}Xp)gcuDOV^` zYNN8yB#OE%H(OL_n#my_35hO7ID>tbMP?S=rrk^%JA)|7q}AkzXDEHIXOxg*8Zv2j zFyQnwJSL%xnv;~fh|H{_ukcWI-OBBKY516{y=Gz4VxWagBd#<>9vhNaXl*@NM(VH& zdM^n7K%;XvmFVohr_k}8Q{apIg6E+;jbYK*UMPqK7_W>wg5UV>ooK`3IUqcSWu|Y@cg|4{b}-j% zLJ`<(zMbd23Y(;KxIn%yb$b6(087tIiC8L#|9T1#@Ow$7LjFwHyY1O`DlhOAxOwKW za?v4B>$)n~$0DfV4&bYW&mlkwd#kX9Z3V4|I7;yEe}?LthW`<2Uvo?yTZ;kw*0HTQ o6kLV|S{_`1t2kmA?w(=Tn8Q%c8A^yP!L_`-4!7`MMurYx15PeQV(ky{MO3TN|^ppx|S1lLRgh&X{(+VMFsl*96j+Gd8?UmQ5;FlqR z1Sc;1D8zV^(Dr~7q}6z4yzkAt8UOnI^*ey)c+^IN;ka@#DTFr32XP^i(w!u8Wt7vh zO3bpDD)+t=+9j`R{|&iqG#Q?32@3#*)<_%e#|(RebVW4WoJZ#jor#_s;g?R4KghBn zeIeg`X=kd9n+(0Wxm=ie^2#~uc5#d0=Ud}cW%CO)P&~0dza(g-izShtU!D41x7Sp%Z*pdw+j>Nubmhfn+AtoWR;( zfSHYidrJB?9NMrgq%a)2I`Fx(HPQrw3B= zM1>RXQ%^;)2$>N|(pale$fIPRI;FvwQ=fYw(^wQU@0bOg)=`SqnG~%#DeBZ$JfTt< z8ZqOIslj&sB}OUc+fmn+)wN}B)%qvQDZP#2P1MeWP7;w{_8g8f2Ts8>$ zvC+ixB2WUg|BoN1k8VO>e`ZPBYE9|%RjNJS6;_UtHGeio0`2x-fBDSe1-Z_08Pot> zkAGhds;~|l7!|SztqP^N*ug4-Q!8WTv|TgGBrUY+XFNAgXcX>`IUVpcV;VsPOFys?r(38h{-r8* zs!Y6aUE)g?o9CiBwo>%7SZ@C5_c(YL%vb zlC3rshL&=`he9Iv5L@t@m6@GK$Fy4->sk;+nRH@2@f>9o_N*3iL{lc6^ggG*6Jix* z)E*by=U}cEeS;I;@jV~zNy|rE@3y8fomRAwX~?yq$m4R63uD|!j*)uolA})v&o%z{ zJo;suEwztNZ>2roKNh-oY%I?gfbe%Z<)#Q~aIp@naEZW1t246@FLc{kOrwMQ>s6We zx!z~!8U&ghm9p%BY2o5&Wnjm`5V+r2#@)8jxtvQ7*lfLDG;9qv$;z`O+-s?fI*U8s z-hVT|vtdF0XE{6Dn?Tf4rB3-v;r4ClE*6u6xe7N=+%9}#2-Lg&5ZlKy%)nj1YX)9i z04n&k3Ts$aF?x)(1mDpYsJ&}OpP>G2f@xssFo4fGmUWMU%h1Fqge!0rYaGLa6AT** W7=j5y1+f*lHYu;eEqn*aaN{Q*-VG}N literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/pair/Pair.class b/solutions/bin/src/main/java/pr2/generics/pair/Pair.class new file mode 100644 index 0000000000000000000000000000000000000000..bd9a00e5f32c5d2aff45dade462a7d1ad4f064b2 GIT binary patch literal 1195 zcma)*U2oGc6o!wxZf!$Hx3Z0IaLX9&O(JnQN^cOAkj979Qi)49@ltPz9XU?Lei;%- zaL=#d7a)$)ZnR`Vy@=y;a?WGxJ#T*g{`wsNUcylYN(2s5?Rzm3(mP`_<|X>M7jnt9 z@KY~gLVF)@sX&>)PF@f(8G7$0XWTagHcy34@!dT6_uC5swV?e;XqJ;V9EabF}8n~AlxK@KU4HQqQREEaP_)}`I zkAF^3gXKO{(zQyu_Bw8n;?&;6NhEw>XqqKl0HuImx`2TGT^5|^1!8U zv((t5^0w%L3OQ5foHD%2bd}&Z(15)<+<<)o`^$^bWg50$Tz4=i4NUDb14CbcV>vW4IK+ko$SY8E6 zp!NR|NTU y2kv5YZzXd-uX+Fvuh@^S*p@J7KfZ>&y(YW0#BQ(2-d&4bf+u*x5*#j6dHM%dM<1I2 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/pairlist/Main.class b/solutions/bin/src/main/java/pr2/generics/pairlist/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..a610e6a6fa2aba7bb8b261341969d68339c65ced GIT binary patch literal 2067 zcmeHI%We}f6unN1tA;840nXr5glNr38=?Dj`;m<0LLK_Q>{BbjNS- zB}gE_o{vIYXHuF<0nG{tsf+RWaeRDyeIGx5e)$FfPvL$8Y6K!{c#<)xl4EwllH5E> zra}oLxlM8=O)9NR`ncYJI)TkOC}nDzyc!(~?g(t`OC{X_fwic6M4hwg6Dc4ypQ|6>rG&g#bip)NtVKAHtIu<--20=OF@7Yw)9aI*d zDT~jP?a;9nmMZON#vGqfhkM0`9F;Ba#XH9SjrBC& zHnhBK)TPqWLXE{lD&(Kw3ier%x@B}s`-OFW1yPhKFQ_D5q6~w9Gg3_{XUfYT3HsYG zPE$tRX)a1zEbXGN@k#c}oevL{6H{RhqQ#glCc4Np5yn#F@%G51wf-c}NK0(R(-(x7 z8vltMD>+29CmEbtC$bgq7KYG-t1VcEYXr8U-g%6cr|ux43f!$u!6taiu!G|G%?daXAqnofzYM&~kh)SmNdE_#7{+3;;In)1O z$4U-S?Ye)C9RlG%7lw-$(g#K0%i_GGG~n)q+E}U~(CU||cZiwS!UMn}iKQ2yhP`#z zz_x*-$2d#yAAW`A+fMiyTHoiGHntuE_-$g_Dp7D9Iyeg82HeCM&#-%eVQU3Lea=ur RYz=PB+uLvt|8-=z^9!mzoR9zj literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/pairlist/Pair.class b/solutions/bin/src/main/java/pr2/generics/pairlist/Pair.class new file mode 100644 index 0000000000000000000000000000000000000000..2663b840c1e8cc66d9f312f6807cbbbc3b867cfe GIT binary patch literal 1215 zcma)*O>Y`85QfKu1lT4ep-KAP8v3>Lz)Cr$luK2lO7ug5BK2r?9dNSPE8B~jUskD= z+IxRdPgTbYq)<@BVZEN&na9>U@BaM#^*aE(gr^0_5%7%;gE12_IA;?UB>E&6a>=y_ zO^`65V_|IY0XGH66WGs+VkU>d`@uO6ErIPbp$)z(oqxZ*AW-Uxp=37IoWNGEhnXG2 zLnR{@_FdQ%QrH%OXZ~vcYNp;trjH6Da>Z{k7Ig7okGn*GH+jQSpRF zG*sh6#LNmMX`C(H&iN1$ION! zYO$ApPEd!%UR1Q<6m7UGHP(~7(wlJ-i%?i<(u8Zgo-|gcp;ekrrSyFFX;!7&zL|t&o@IIqug6BaQ4tL=i91%ELRJLoiki$&7atE>R((!=n9z!|Y z2vx}9KGVX*vt-_mgdy;}v#C*Vs>jQq%VZ8a*_hIt4!MQ2;*i_+)MST#ebp4`LBEdW zMW6(#{~tL{936zf?#za+)fv(2s#J%(Eu0V~XZUP<1e(p>>FSyNHM!Pm8B_tCj=x(D zDzFVZ7!|Sz?FprY*uyG<^V-GAX~iB~$I3S5UBCAY%AYC+U*N_MjJDtyS4RVUZsNL| z?LD{!w=uf2l)0N#-GlpA><3qDN0_o7u3_(O$gVE1Ya6l;He%=C5#BHdk7uep`2*s+ BC|dvk literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/pairlist/PairList.class b/solutions/bin/src/main/java/pr2/generics/pairlist/PairList.class new file mode 100644 index 0000000000000000000000000000000000000000..18c8ee5028b5f04f15aff3d98c19a661820cba8a GIT binary patch literal 1537 zcmb7EZBG+H5S}fCwg-e40bkIt;0vwFU82Dcw2~MjNt5~#TWgG;ws&j0aJPHe-D~8R znP{Tl{ZYob0}92)93O6PXEXE6Gc(Wb??2yv0>E>4Sb_q9$42{J#Dw$?*^qg$e&Y4H zvab<;t)DJ6F@l2f@{74=zKHtlgb;%pUV)E>v&sWhWF6uz+3Br(@mjWkv#zEzr@ z47XaN!q7wp{ELu0aOvyB*pyus79LX}hw6w^hDiqF2#y0wur>#?aGk(vwRPUgw$<42 zdOD?r7Q((sq8`^BhTTgiqkI;2nHH&idRVjrfm3sHiz}5YPIPS?3~N3Ge0C+I3xeCY zEUONJj!A2Z1p$GbYVHhKBX;xqkJ!|@Ww=XV^Z$B8IpRI(bG)cKcs26VBCvZE{}C+$ zPFp3~=LaGk==|C9ktvrzqtV&BAchm2)w>hU_WyN*O~7LC0V}`?Ov4OXrOYZr5h~!| zehSZKVGh?tv<}cN;NSTHOP`jneS_6sna>Se(`dl&Ca$SJdciGN$N%lIlRIb;*Z_)1 kC)qY9U~f&pp3jMW5AKh!ALPVd%7tBkZDe17>M8TuU)va@5&!@I literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/printer/CollectionPrinter.class b/solutions/bin/src/main/java/pr2/generics/printer/CollectionPrinter.class new file mode 100644 index 0000000000000000000000000000000000000000..ae8bd1e33c9ace2580b2f2188d959c0511b698dc GIT binary patch literal 1120 zcmb_b&2AGh5FV%b+a-_^X!%EOPiYTXsj4{8(n|#rQVK{3l{h+%o49!GmF=zQGw=jF z2@*(f=b;ee-BcT-NFc;vy&lgu-+VJ;|M>ak8vs0m$1SK4*mssEDU&)mXBRBV>|Qbx zT3E>)8d7^I(tUNX|6# zxeck8y@$I;2x!Ay0w4e4idD2LTJay7N+2GY+;Z_khHh*5UvJSQYUl+b#fEw-^(8RTc);^vR{KsFR{jL{(hR*i_)5SGl0KauyJ0%KkLJzG7 lZozG2+Q5AcHVdZR-Yx15FMv!lU)L711+CIZZ9M~WF^Fj0un+XDkX48sDwB`Wx{3yhDw^dU$5_;vyW*Ujpu?+1y7klP|o;AHWPFQ1M8m! z);|qwhfcMyRB1;u=J=dC+$uih7}(-gJYnCTuMJ@~`P+4aR?zEv*Il4V6EiKek97=^LIK&kkvm$ki=sq15*7+4g zQKo#(D&hsoI2t*u|7=MTsMC~Dcan=Z8c1ZioTo)d5YKaC*hv6c0AwF8?ab%rQuP+2 z3UxRVf8~6ynVtWUDuyOpZNVyBBe2;WoGYkG;htAmdw@lIQ)Cli#tcP6pfk{%r3cJN zZ=X)q-CSA%y+NS9_fWfDBm}m)AC`G;!WJQ)1N0kI?tn4|@q|_}z~BFSZ3x68T^KH2 zNq-+A|6Z4mT?6i1c(kjO5@-#jwW#eeO4!0S;OmXQ1b`ZjR$&d>23n7BmS7)$gXa5A z`~_M+N=zGDj{*GFv29f-*nkdN5nP8GIO7?1FEDH_VTekG8e(g3vutm{UF_?~aQioN C1sBKw literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/queue/Queue.class b/solutions/bin/src/main/java/pr2/generics/queue/Queue.class new file mode 100644 index 0000000000000000000000000000000000000000..62a0f4557a257b995fe1d283bcb5b6c5223c4200 GIT binary patch literal 1681 zcmb7^ZEw>s5XUdw+O?rD=pK030I$GE8B1Uj$QiI1Dc1=o7tSf|QzukAPL~O$ zxEnd2V-_>#T{14fyaCr!6Q7E%^R{!!Tx~#+`7B^UM+Ph%H>bbv8Bl8RuAn+r%z*jh zb{n_mLW$-^12=HCV?d$K1=stywi>k~1J>ThLi2z%M4v~z0z)-1}t6#^GYeHim+lBhaUtwO25xM;>sZ8eo7^wl6XuI z?Gm%p?lIyq*QW}NLh7E;E+bVG#{MgeoeEPWo@5ch$Vfo7+anqs*_RM?8Fxf|?L=QY ziN~ISF-z0=5SJzilMW-JXtgAi=<|@7rA83?+~t}?amWR)iZxdDmR4Ahy`+eX zO+5Qe9CVm!QxrEToOG#wL={ig!_9f!<5*OynXM18)T@&ilw^q7&d8`^7w#kI{&btQ zku}k3d3kce)KrcGfzlic7NTlLMR;hy#=lz&J1gyX-#1{{s*Pzj z*Z{l{@Isoyp2|Z3R|~kxK@p!4nCbjV`p)CGGF-*+2JRlBM-JcScc^@-EPsX7pSYTX z+c+i^z~>H*<#cYs8m!~$?!?Z$)QVsXx#6kR8SDo$*w-?$AHn8`{dmMqq8r3Li@ltY lZ9#3sellWTXflhvo{_yZ#(tWSUCqSK!8T@}1AC~r^9Qa1lYIaH literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/same_pair/Main.class b/solutions/bin/src/main/java/pr2/generics/same_pair/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..33c677f34cd9046a7b468e2faf68fbf03d8ca44e GIT binary patch literal 1867 zcmeHIO>Yx15FMv!lU)KSftIfxOiu|^yAp7sr56NJr38=?Dj^QY**J;Iu6Jd7EBecj zK!Q6z3NenCWGe*`DlSMI;`PV#o9CAq``hP4Omxf(Dm83L_t8nO78DPhOOWYtWCCUC#Ia((Y(?b;F{ zu-$&UEOs5XN#)@R_3P9wvBjq2|Fph9&HvkJO~CJ`xr+F6Ve{3qugUBpuEFhdPl`(% z0*#)#uLgKsX}Amcw&0TmP{H0hY+zf%(IcEC`1L7TF(^Ar8VA92aG z2#jx7%s(bfX#X891;`WF$*LkINB-O42@foR&10brzN<%ne|tut)Dt7gY^phdjeZ|9 zTZRWphAtequq~vp9RiOUtNp8)<^Y)u1Yxt==U=Fh7hs1#<O$L=8$@&{+QE{2NBa)l(68GjX15N5Uq0|T5}=lG*sMBsVt3| z4aU@BGyjyJ5R1*IY0GKaa(8O|1Lc)o#YrRrVW~+IuJMA>Se*t|X*w0R(WJuAREGRm zNFKK6>(p3xUe*?!Q6VSllv9Qm8ZQ$(4=S)%hD)$dV1H5Dp4CE*GW9A)h<%gBL$3P_ z1#v@E0gDDq3m4Clc{>({z~iH}y@G>1SSFn%=d`EmW7^X}cMw+`aoe35ZLiT>H3s^y z(Zup1Py)68j~%CuE<#{$W<}TP%;@!0ssr8?PKuH>S*~8|L8tOqB<} E0R=ND%>V!Z literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/same_pair/SamePair.class b/solutions/bin/src/main/java/pr2/generics/same_pair/SamePair.class new file mode 100644 index 0000000000000000000000000000000000000000..4b1cf637dc806092ddaedb7a3acf324a02a13056 GIT binary patch literal 809 zcmb7CQEL-H5dJnzljcktjkZ>w*1p(2cn9KB6Z0Y#grJ3-g+7(dX1Q#=+dcL+MSqJw zL{QLof0Q_TG}=-MDJ-)yvpe6+d^5lQeE$jHHJ-N7V0ckEnG`~sZ}ynB@@z)Nok|WaIjKH_|DK8YNP##;raf!PLK`b+BkD>P;>8*3tZD5n(>qp~MW%CO)M=i(8mg9dd@9~*c6*t!NLU=jno`TiqlIp%1OjN{yy*QK< z-vSjyh|ud|9rqcwuM#owPMfT5uQ%34yW*(VzSUjsN7# literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/super_extends/Liste.class b/solutions/bin/src/main/java/pr2/generics/super_extends/Liste.class new file mode 100644 index 0000000000000000000000000000000000000000..02e31c6745d2f139479d684d5727c6efeee1dd5f GIT binary patch literal 1850 zcmbW1TTk0C6vvOtrELZ)gTcnGhTYOJl4+L*pyLG%sZwDNbVz&IWE{7crA}l!2=>J$ zZPNC>4>j#1h0+d&(kY6QW1swd{P*Aa_50fo0C)q-MJN#PjOKoaN#!4~L*~c&h2IuR zXvvLll33_Z;>ZdW7{4Kn6-5{&FqNf-Ott-Ydk2DB0%I+y4L)BrhU0BVfmkC@-jQv^ zY@!8$mH$B0n$5L!

?LwNO~dcugv4*9nZc)m;Lk8#qxBt`ex675`T2NS9!WkeT;N z3loKhBA`6##4==7MvBHd+6zU;tWu}k+!r(uJY*V^V#YtSwxEkBn0G3eHz3#|4I*Kv ziY)Cg%lD~8fH;a#uYLgP<)!+2X*``}ioG&E6x zXi0^Wv~UF9SrXd*Y>#dw#-<~fMVU&g>Vo@_jsuf0Jpm5P5SVovXR_^BEmeChm9^49 z!gkWx6S~PzDFV}th_i5)X_>|+ouhVN8UoLU+*#bvxk21z(Wmk@=W_ zTWhYK*JS;C7c2lOf`6m}USlwhQ89~37?%g)B91w51=|VC*u<|0KArC{`C+>96|Vin zXauffn^FMpS!^e|Suh7TFuFO=GoNMMg4;M(ch);Sb^*t_?7J7R=X0{}1MRUFaM6bKN);DM$OTaeDU?G(B~Hlk4jZ?-_R97~?JuhY z65RPwh}rFfrjd}~;L*%@=9`(%YP3qa z*p&s^&v@!lCoUc-=kd@a*o1&Vw+_#QPU8>LW0amjkO(gr^hUR@UNLBmRjP$AEizb{ zOvn>x0%q`H^zRK&_RIfB8&KUL<*p8tR({A}tH0dp?hys_DY8<6H}$yp7;mnJV%CcHA57uHNO%-uc@Tay{`1Z5^H1rJZ znNQJ91QAoMh>;>Y5>{3Ar8Dp|n@}V0$QmAHOseRZ%~_P22hmh0 zVI;SaEplN#h*Kw2Vk0N4i(+Y=7-O#qbpl)Eo|LI+^k#A_xFgVbDwTB430&##9TKRI zbRwG2CeS^{zA#3c7F;E@Pw$iwR;P23P_DCFrp!sLXm0c*6`6fPgZ6kPXd-yZ41#jT zPuNt@T@)Ig2@Nj@4ZYA^nrLCE(vD`#@fmf;48G=_kz#R w`CekW*m?}$w}ow|Lcuola0GB2S8H$sdmgoe|I2JQm#}RwVIy!G_t)UgFEke7k^lez literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/verwenden/GameBoard.class b/solutions/bin/src/main/java/pr2/generics/verwenden/GameBoard.class new file mode 100644 index 0000000000000000000000000000000000000000..158b54449d8b1e2a1b5c92d80ab6c96a71d37044 GIT binary patch literal 5459 zcmeHL+in~+82-IYvj@_o2`Q%norKed!!DF^YSKWm4JBwwt8Rz{cg~Ev>vYB*dAu8f zkhtVExZ)L%K!SUofmh%a5Wi=3vJ1>+j5LZ0;$n8Zp5LE;fBsMQFTelr69C+Rohnoa zv|{D8L&`<_kPc}(QdiqOCYa)0+#WJ@#Dvd8`xXt^wxr6h!VH0niD*DYuYKp>ka?QG zIVF4oHTNDBz6{q1%*L8VEFe&IyPA3ru&dtXJwf$AF#?Ne?}por6xVEh(+mmakc*yy z8TDdcB)QNr0kVq#h^h3KjN^plWBj87Zw3QdS*b zve*$)J0aCx-_bajeGwralY^1pmf^Q$bZSk3N@wO_B$Y-59FGcvd%&Db<%d!tSrR?c zMf(0L_Ip%Tr;M)A8Q>K5p|EeFD<>iDh}Ipsgpyg9W{YUc$FXK% z4vUStr4F~{AZ9y5R%kS*OjVk<+wDMELC?lj&Uk4y#2W>XZ_{*Tx&L;Q+vrsm zRSj5%C+A=ho+5Cm>5dD+G~BM6f^os+f_*Xw5186B8Hd1Y>SU9jta9Fg)xoG~IF9L!+rdn^acITg(`|$QGuj z@3Nw)ZMj>Lz5SwN8sPg*9Rd|oU`O(!BX53m9KdW#9i5~k< z72d}Sqx2Y6g)MBSBvqk<0EwTVhu=<*dPcPvRse67@T%-QEa5YYttF^J4SVa@u0R8y zM_?{#Ux4}Ky#N>SJ&Q7nC{5r|{C5pe2)-LX!t!TJk9`kM{G7;M9!UazeHz31UFXf;e=Ag~Mng!a+IcQ(ypsm2G z@LHj6tsJy(a?r3igEx@nyp@ibznX*gZ4TNsYx15PeS5ZnC7L1X{|s=_w$Ql@KQiTu}LtQV>cgLY$o4A#ustE3cE#Uxow{ z-1$+6*@O@x1pyKVk9WM!&(HJ5U%!3)4B$Sl1t~W6ggC;A3g6KQ|tvc?rEd_1A(>XjU$2bLz_^5sz7~#J#fyt z3Qh^pd1)Nwb~vU)#x~9LPDiJh$YExnaW`jd>pYR5Zm`hNf&jLG;HBO0v~6{3R88rE@IV7u8~lzqm% zU)WM_YeUaQX^&i2ais+sZ5ylMk#f4oe=L^$K<5Hc`=454pKULyE3ngiv+Dc`b_Cx3 zh4ufT8UkU*j$BNSbaBnidH+tW=K?)7u{F8QJ(u)}CZ}9HI0Yx15FLlmWS7vELis2kb;~6!(yl<2kZ37~7DS~K4rwcKbi7XDvTLtwZy~>k zGbbdF;LeXij5jnbQa~x{fkPaB%zJ(_`#j%&eEtdmPvL$IDgcZB9+B`WrWq~kw_@lSuRuNq*gRHx|52`KA~Z-*B3MqJY@!ha>n1X zo}kMpFgg|(jRY>!L<>umb~Iy-_o+j$c%P%R(_qXs^0`J{Q}hR_FxbiRRC4L4Eihvg zsH`&uciPZly3G|TEiF_cx>Df#1sfOCmLnc{fZrDcl#6Gb~7fn^PY z_P{!kjkzfdUKLr#=lWL>69t`z(h%x!xd9hpn!tRsbz-5mGg9@|y~So)SksU>q|@EVe5=WUndacc$xFwC$QF>jG!&iJi=p2kwIJb6mx|^d5_Ob zv9Y>|EOod^;KKwj=6^5}ftoF{f3Mj#foEs0(}UK~2Pn?H#6G%xaXGbss>BgWru1AGYx15FLlK$u5DE(3a1G)l&k}u0Wh9a6uqdO5o5?32}0~L*jPVUfJG2egHp* zGZIK}=SLyN8)%6XP>*P}wr2F^`OVk&AD_Phz+<@Gf(C*oRlzqBHp%GcHY0s$6(wG%u~0r(k?vlC(dADa#~enFLMAU#Q~fpeS=CmFKQ1(UL&zyse}+mM_!o z54du?(iy&08nc9tD(Ay{by&XOO3%#+azTP-s|;~;=&jOIE`<(qC&*7L;SCquFG@To z=shLt6>Zpl<^<$!?MLfV_KXAQ%4&Cnoh1FqHQb+|=$lNfIN1Zgxl%K!iX literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/generics/wildcards/SimpleList.class b/solutions/bin/src/main/java/pr2/generics/wildcards/SimpleList.class new file mode 100644 index 0000000000000000000000000000000000000000..d5dc03b42002ee46fe85f30b328bfe0da3aafbef GIT binary patch literal 853 zcmb7CO>fgc5S?v9otQw{K+3nY?E$qHTX5jegh&Wcfn?wiQ;Fkdy>hnLyVmTckY9!b z65RPO`~}1~X_8igLl2(O?7n&X=6Qbo`St??=fzO}NhB_XmT@+2TxPT-vhIh49)MUZEWqs&q#@Y^4*$GbIaw1geDmByz>~Nno@T z7_9{E^UNy8jrF_~UQW2DX7!~aX&0Mm)~KE}sx?Lbp<29516%Zb4xD;ja4AepKURFH zJZ!x{6tmiuf826!x!`_QsW5~l+-So!xXGY*kgN?EdDJHF*M@ZxZPdGIIaZho@_<1% zu~HN#0(D)VA2$3%I|fgZEB>}VgWbz~Bq%?l*WKo!q9X Y0X>QvunTwQ`7Yd}4DgV?2KCfgc5S>jOJ8=Ukf%17-dP**~ia1f=La2lk;LuWu6WXlD@iz9ZwY!emUskC| zaOX!M#s(?$g2Z8F_G9Ml+c)#$=k+%Lcm+=)=rKs0m1!lEPS3?gq_usPD(%tcLZVB> z(s?V^{!4Cbl^&CeAYic9<(5LP(vQn?l%4^*Ae)n2G6-KPt^8{S{pox@J7W;MF&RcM zVlduTzO~la0o-OR{G=^9Q*JQh(p0r7g;z%N+L~pFm3zVC;c0<9Ls<$-Nwtt`u|j@8 zbdxRJt5#ktjVQ&NjxWiz7y4Wgp z;;quFqgKiBf?z*1)e`NgAaNK>7DkHlOjy#Xj;y=54#30H`fwCavo#~7k z8a7oKG*LYWpbsIf0*Jb}LpK8$l8@>1Ic4=J#$RFg q^W@eQjK6nP6Y?SD0NGvgqi!9;J=iBG2KV7X7az8f?jDiv!Q)@YW5X2y literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Dreieck.class b/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Dreieck.class new file mode 100644 index 0000000000000000000000000000000000000000..a73e13ba7f06baba29a4674408b4b31a5c5150b8 GIT binary patch literal 963 zcmb7D-)j>=5T1=mlU$?G*!rt#*ZPvaq7bGJ{9wp59fXsbvt2>{KTXl}84w$DlGcIHr8% ziPFkHqe8pa+umnTeqj==s}kf==m0-N{+oq2TyXy>$0&kTxZHpmTw$=@?w``%^H%9mH^|fM zD~)fa*%0kO5Mu_dzL6r`7gmM)yjb>Q8FLNPjl)q~c>&(Qojp91P;lry+WXQRj? uScCPVb`7r6Yx15FLlKn=FB}fx^|4OM2OrDufU%T!2bQ0S+ydI8_txByr=lSGKq6KdS^1 z-20;{W;aO5fdk^;@y9&Bd48VTyYD{%;0-)Ypd;XA@G37++x!x*Ft7Y!u5BbgLq#FS zX^0+|kuH`7Lm+z*@)JF;eF9wpJM9&NcAkHkUXqFewvV;d@vVS+Q=-XlxYe*crbu1cqm|RJXza# z8ojpjqsHdpgc&~9<&^vxvU37P6Q|Iequ0&;&tW$%bP(`r@_&DRBp{g?B(>lI{J-x7 zq^GX-icWM>Gi^JgHM08*7{YA^(Bahfgc5S#;*VAMhd)L}sN930w zfdqGc6k_ZEAyN(%$nvaa_4e)ao9FL8K7R#(CvY!-27^OqWt%+KGuV8rwDM0GTf(Nb!(M(RFK4LYuk=eh85!aWh;$AV=3O+*evl>5b(J8~O)aIbP}%&y~hB;>V@))!p^6Y|fRQnJIEX;wGyMVf(~erN>+fT}e-n z|8dA0F1Vi;NT9j%n6CkaA+%tt0~>IS!ES%JbbY})sHV~#lC0Ndo}e8GGMYheXr#za zg;iDmYqRMm$}t!W|2ZWCNYx15FLk*O-vxPP`+Bg^psw*5<&zyqWjL{`u?ccK~<_cOs}Uc<7yqbE!?dFK03?-2GUafNoDJ z^syZI;N&FW?j)1mquKTGYlqrLP(MrVmL5+XgNBodo_YpslMYX`(cu|`dUtbUhn5#M z!3Zue=u|Cb(v0Jm&RN%li;UGi7>C|wGfafCd7(2Iv^An|c9dc69}C_ZrYI6rnRFCX zNHvjT6zjyTcgU@G47YWWSoFf!AaWU0DgpuFrvg>@8;B(9m6G+!{(7f?<*j!!bWSHI zlr$y$2*n>3!3rtD=K^`_jST6DAv5W;B#xW|hfW(JxXfUsJ2+HnJ2-8|{ZhrwKpT8J z%}3~lWfFtsfmJfwnS;!o^^j_s!=u63oZeXBH0_qAH1!q8ZD`KFM(Tc<0ru`b%gE!d?( z_SFuj442zGjF9Czvx|7G&$Sj^o&|fyt}4sWPr2Z9yUsK!dL~EkSQ7u;bRJAVr3@Zi zA}}*TlAQibwlE)7|1tgK6Q~d!2dP6NbRk)?ccvQ%{C34vQjIcTF)9^#>t zN;z+FzFJEWT9U z2(Fp-d%Fd=k8Xo&wE(q4PnZ3)Dz6A*@R{O{jDdL|FoqAMF{r>f7{|W~6!z*Ol#&sI zh4W}v#@1uB%wz3+g^Bl-$DbBRTY z=6q7L>m$&nMxfn9k0KD9(&1n>06hjfcYr-V0(@m2F2syX|cd-U|fTf6Y-NRD- E4b0^;=l}o! literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/api/AnalogController.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/api/AnalogController.class new file mode 100644 index 0000000000000000000000000000000000000000..a9319d21b02bf33080f5322ed70f029b73527d59 GIT binary patch literal 734 zcmah{O>Yx15FLj!AKO4mAbf+Yo>C6G5=UApp#rA>l^QB>svPfhv4dV5kUqryIeE0djL2JHizV;A}i zhO6qA&RN%kO$I;S8He8L3(UE+Wu>$T${JodJJ(qHr#$J;7RYmyS~x1Iggh4o@@-O_ zt`x6bPkc&>w|Q>Sb7KQ9MUV>~hy_1Xq;j2wTu5sd(pp^lKhED;R9RUUclqq&=8;4V6@XfNE zqninGhQVlRrO?O1sXA_wtz|`)PhLdlb9-qh(s)XX*>I{@5N;M24y{+U%MALHooST1 z%OE+jODFM_s@cbXFFYF5g$KkG8yE~;EAL6)jE3Yx15FLj!n`{FqftGK{>M7;0D{-U+4h2pDDm7H%R5{-1#>H!|Y^Q}^h6EDa z`AHlQ<7H7Ify8B=Jv;OE%^QFJ`S~jVJb?!ZbQnDIPUe+RCO;P!BCp+}T$zCGOi1)= z$5Wq+TIJ7Gse;gl)&ys@MwdXB!B*3&g(>ql^K+DeLH|H%WmI^|;L2q0ghBVv7MQ?* z!Dva_`-wbf`^YarYZE{>JYBMh(Yh5HEnw`UD_xCgbw~la0z&?T~wxz_`x?%RUky ztKG>y4qgc<>>C0j#nK*u(G}(MG~@{sdJJn?E1iMMB=z-!)ZD0`&3)>rRwx2yg_1PX zsuu8;c}a8G-6p3#_X4I76f*Aux%F-6IUXxm+;h#fv zy`Kj4DLZ}2&b#utq#bXNUula@_PanmCY`k!r`?cFp<@H=$R^^P&cYLxnkeKNrI5zz z$g@h*j@-o(6^2IA=XD`5fI9Brm_-2+_RwXz85!$#5Jj1E5qF6DK)LMTH7EE)t)h(D zO7cxA4w}(d_%T{5omJRWoBGi zXfapq-se&V<_N5xU4yO!y9dq|5bgWwNMaZ8IzA9%S~Qy2Pc*pQRz|qWCXg+bsiF;ITA3Leb(V2;?_~F_==$w1EY{2NmD-6nh`Nj!q7W*!nv)W<1nZP!i z$ad?3Yzv8Ow=c+6N@TlpLAIxfZ1X@-@g&`Px3G|)+lvIYyQp*q$TWb{e+2Gfn}YlB Q0DFMP_-AnSA(UX`FD)AsTL1t6 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/DigitalControllerImpl.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/DigitalControllerImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..9ef1bfb196f6954159fae2c5067a5832e39478de GIT binary patch literal 2336 zcmeHITTc@~6h6}ywq2@RyaFl%-dZ2pXnYbiF(8qo2oWUliA=ZCc5ruQGc#M{Kly4* zG|_i|l<`bkq}YuR()i@V?%d9NbIy0peDmYymu~>@3?6upA+Tz6P>q<7)qU1s)mT5O z3Te4+vVfa`?j8=JIIOOUmar^bQPOG^hFq`XtOq#)Q(b_N$yRlZa z8W!H`B&u`0!|)0dn5n6Ng}Y1(H||g7Y+D!tYqe466RJ)oi3!ZVNu(7KUzZ(W1RnOn zUC6GW;8}j{h|%Rd%o2#sAU#JrPD#}n_(dgbr~_2WT*#ZKonu(1U~&!7e{r=2`v1Xh#gdslgZdti4ORha1}B)Bu7pTyNZm3wl1A?31hjmuLRdj z2kk=-?h%+C+UG$DsqLnNKygDDgLUZ+H?Ro!B;m`51qov?j=gd0dyvO}0Y{H^VB4KE6s7|=*k#8@OTF)_n-Xh*g)o0(aJUuL3- zzWbw$XSR@5Snamr8xP%?>74!M+-A@D@$<_!0C)lqGLRzh$Y`(HWNO*IUZln#(|%z^UjhpUGx*b>k!VEP-(*nXj64E4(cN#oDuI zxu~So%J;dRCs1gJrmzU=$egJyb=JQLjV%Z%>{9|GrSdv~^rC9;44fb^(LM9I)=Fn# zf{d-cm6{vnZ}SHAR67tpvqDK4Xtm+ z`UmMq9rnq_QkT&_;R#Dk7;ue_lg8@Mvr5xWI7?+J3=L(2ZwiU#ZsHEkS?D9MD_x;0 zp|NfUr6`lmKOJz7P(F7s6=HOvR#8UnZou=oLs`*B{y*bax4G7$!TV@2sMg0=40S>$ z3>e{KYC;dZR`><%lh;XP28>S<tv0+Vk-X+@ha%WYu`$89zE(!K_JBaHRIWwofIhoH$or$yD?yUwlE@5ZUn1my;Y`F#UuB%Xc{DpAWX`d#bxO_3Slgl_NCyOX|J`LfjiiW9&}U&?h!bB$kq&0 zF(V^&u@hYp#^8N+dKj1i>^8AEPC*eyVGL(Q$UqjyJnrP8=QytBP>Q&Jze3?%@#JSX z^&M9!ID^lzXotXAoEJJ$a1PGniogXVq~PM7)Fm7b(=Nx*&c@QFhNMl!(yk0iyB k&~Boqvp_JdUEYqsEqtb+1Z5ln?&B{HX}Aq{p#men0NT|C0{{R3 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/AnalogControllerTest.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/AnalogControllerTest.class new file mode 100644 index 0000000000000000000000000000000000000000..7b7bea44a097f9d2f46b9909893b128812ac255a GIT binary patch literal 1506 zcmd6n&2AGh5Xb)xp-GlNN@#($e3+ifB`YCL6p*U4NR33qDUMQVm!qrEk0D(yZ^)=*{Go)fgKhRTcdEQw*^q0-7fW;nNT z_kf|=H3L~ggP~QNFBN(i?^tVW9Tyn;{!&}%OnM{-JTY0WQsI@+Jh!Hw%FI3BQDc83 z`9LPAuw;~rEuW3EJ_%A#@UG(;!-v0-?|)FSBJt%w zDe-lzGCZFhM7V-w*VzSUi1y6bCi002m0T%%hx`@yt%h3+i{)j8=2PVyNn@Y%>~IJ4 zn9z#{Y8lCBf!Z34?iXVq`i%OkcJvX=uQXdhi`rlV`WC5e7X1j9(WVh_g;pzAqF%6C srvLA>t5ayLDYPolt`p^iP$Am!c~+(nR;LguSRkyl4X3Vg zBI!Vlh!dqPRk}+NK=U z)4^rdSE(>Gl^wn>BnE9CcW}(o2yG704Z4*Y>vj-DnRHPe5RZT`DtIXcQmIvxQTsmO z)rnl9ofhw0I_;Sg@Xr)x*}r3|P=O0I7=w!h=IX()7PhSxvfFgEG8te1pQLdcD~w_K z6PO89$f8}Qg`59cEZLqg1U7@SDB~u|apjT=J%Pm+sk9>IEqNe}K>Lqfs%Q0y=Ennf zq0I_hCh*~Js`$USeggCLAm=MazXA&co*(ardyH~tk53H()65vIZI(tGZ&DUv>}vH^ zE67$d%S#0M$6LX2^=mtqS!kKDax&tVx>P=9W}47Ui3WoposEny5M z@D3KRfn~sVAOAD}B^-^xIJRY+-NRLaef2X`Ud>cLLhUQgJeb7RVF14=Y-eC Qz%w3DxQ)H@Z5eL<1V2zlGynhq literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/DualShock4Test.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/DualShock4Test.class new file mode 100644 index 0000000000000000000000000000000000000000..50bb48b56ddb54af5f982b7c01acec5a5c8ebd7d GIT binary patch literal 1579 zcmeHHO>Yx15FIaRK9KO!!%wyk&}~73z~Gz|dzvYe4~+KKC?#wlBG7y&we*h&T-v&K zNT4w=W6^>RfnIem#dMxNvDVl&Tqe=`SK10^)J%*iH$^EG^U`QqS~F6ja1UtQIhY7K z7F;olppx+umJ7Ox876gxbLNptLWY}kY=ooQcv>*eC)6X2cv}kY=V>tKBwSk(PM0ht zJw1&qN@G1WHm98F5Mm_g&pggR&Jtcc8ZTl&Q0fh3)W0i5+}W48^i0*yxD5YGI7@)P z%VP<=7UV?(V`#&bF08;RfsL)Kmg&%2sq>v6<6b7Ucrh(TD07C&B+$01;X%(8RHY-Zrihoa0Z>e%+5h xK=(_9>EReKfZtUdyQe5vgFboy>-aZYx15PfdbY_bGWLd*BT>M8AESK?R-7X%VgfI~thj*epzx4X7wJ5}M2A%O&U zeiUN7U6CSjBj=(QvU;{D8O>8*W9z?SL<=3f$Pp zYZ2v&M=Dj9j;LKPr6r5BWRVyZ|7?`^uQuXRnAC2r_#d9pa>3&#r~V@-M-Mj#xP>7@ z_oP*De>~Y}HjQ4J<0irZwzt;34puP#?xHC?uy zbqsss!)rs@-}G!wsdI8cf2Q{Il&=}`sa<=iUgk=a{x%yjKT-F6 zAq`i37I5ur!-5@u-Hz=j2`k_bn9Kr0Cb#^x?luoh1x5+DMR5p>CTYLV6@jUDozqw= z1j@85l=obzSXJR7DLZeZ;yMn8yhnpLN<_$v zh$T%_+zol8AJTelW58*T2O(1!l%OoO#pxod_KsA0nd(K_i@ByUHZ)=;7*K<${C$Fg zkEfz+&u*V*8F{%t_1fM((SS({*X8t(r-><}W;fyWn%!U#2t#$6aD@t_HYyEFtmt08 z+oD3#RQ7mZNZ#}4YO0N;l%<8cRLEhx!zsfegOdmaDHP(lHsnf)9zR1)F|5o$=YsUl zS^b{{>o5*e4H$!I0yFNh{#rLm$gLIIM-v_N&#N@*a<##*H3&32alpb&riA_8Uv$hs zU?+N=qOENmj1BB0sUDoFzUPLl`t0je8WHif911P4+*8{XS*v2Tdgs7jD^<8b;B$ed zKFBy1ADx#Yvx_VtFzvREox=V;RAG_8$Nx|of%((Nvw^qMi6e3n&Uf&bwfKP6DZ8z9 z6jB16c>&cCD0<)Afk(dL07k36)jYQ}9L2W=_`?Iv=m0-1)46@goSi9J^U`!?J;llM{% W@1--bOVC0cCAbUsaCUHy%fA3B$6$Z} literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/interfaces/stack/test/StackTest.class b/solutions/bin/src/main/java/pr2/interfaces/stack/test/StackTest.class new file mode 100644 index 0000000000000000000000000000000000000000..6a5ae6a85324a7e5272a5d585333b3cf884c0be1 GIT binary patch literal 1249 zcmcgsO>Yx15FLj!A4_Q3K>56wp3=*%pqvOGAylMF0VEPCadaFfal31;?AZu@2EPUg zB)IdV5aSIfsYp?f5QnwL_Vb%JT{nHl!cnr7eP+@S-JDFrco8(l?MUuPwi8iR* zL`dZmk3ya$s5~ZvU=GQuLzTf!iB5%?Ca*@PN+N^WBW*N3VQ{H?aKfPa%#KwZnhe@Y z?2&WUHQ+L<9KA74d7IAFm`j`GIu)p`;kmP;RAv4lkD9}o;$tOK;RuwIdofjfpCrah ziE$}04ifkI*ecJBMV<+iGmdm$y~|16>U|104gtqOR(vtr!oSXP>yTSFz=!9%hq_~QX z`HRA1I3W}lCS-O&yh2F{p@&!#J4ed}$M?C4nq?(zf(g?9jEkTFS6Z+I+YI)){bivI z&}lR6g+griN$|@e8!0ywR9g%>eJe$JBAgEEpPN;jY0u!W|JM!CW6%usSH{KQ&g;UU z&eXA)Yp=<{(@-{LbrXNBA2QTyzzqf;HtB)?nokDNz!pxb=Q<>6y9_A^E}I4J0(Ce2 zJOC7>H0=P=26}U!LK<&}| TJKOa&Y^^nH3~ti>3f%euo-KEO literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/Translator.class b/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/Translator.class new file mode 100644 index 0000000000000000000000000000000000000000..1ae293cdf7f4dab9c184fd94f76d67fa9fe7410b GIT binary patch literal 1463 zcmeHHO>Yx15FLj!n=FBpK+EUB^ptYgmH4<&;DSJ^l)|B*0&#MjN#e3=uWWBc`C~{R z!JQw47;h?)N>LR>;>KmXwx6Eg%)XglzrXzefah>8f*ONI&dM|wN~g!-M5Kj%m@4hj zj)g>*mN-P~(0@Uj4y@2F6W-Ve>I^n3d?xfHeLFlx=@~ShDXshq2A6ufM-1vO%?KlC zG3d;(udFq;371)I|DCqzOm>1JE=^u2;#NlU!kS@*xqHgv)?kW!gfbJBK!uQ>#02>c ziA?4qlLe7Gd}PpZZ9LC~ms9SE06!NbZ;^m3p~$6c;+Enh`Hh#;rqdm7Z`ZbjV?d z{BMc8;ez|q0ts~LJmyP47hkPJy%OjjzP}E23{AMwh7GvNV5`@kn{8IjyiyR5=Du`fIes9$7xPiotg8<1!UZ*kfgc6r3#~PD~(aO8L00dO(GPEg?=&da2+P;Lx-Z$Ia%EZn1Z*-AzULV@M#u zogdSmQ1#i3a1aP_*pK%#9?#6%pO;_119*vt2{r_t1+Vi`8JnM~GnH5VX>M#J|3PUA z`I2Vj1I5qe^P~2jpd&D9J}8u3HArW6^y?6CBL-mzX*$#~nQi6|Ei=8LZ^~q0pmXuYZKnc~D}obsl&IrKd_O z_ng6{=H?-T;&wbh53Vq%&7*XTiA@=FZDxF2FHArW6^y?6CBL-mzX*$$K6C|MXLuz1}nLLDD)`U?;oLb9+Vhtod=#l>8aAn zJ!f#Kxp~N-xE&ABgDVVb^C&yU#HI{a8T)jg4ca)I;DF0GN>nJEiZxG6+z&CbPq<&{ zjgb#fhQg3hBIG+ULcUJvw&v-!7SdhkgBUH>vEz|&a?Bk8;QNFUTLhr=T3Pj48L!rV z;QY#Nl!Qtu$8DORA)?wklS&sGJ}p>tlPk+pJ;0&T6l6#@q>D6ki`Ff^ms*$IkQEm? zV>Ja{fb=W-6EsE*kV~PnEc(d*6v@S0aQ7iWztVL^>Cpuk`QSsX3LdO5xYg{;`!tQv z&iYvE5aritL_^gR)EWl$PAo-uD2&SX$A?8XR+hm|=RCu6YBt*p{CQg$Y%HVpH(Lg) zZ&K}4gu8m8tRiwRvNGm_Mcn+(tiJ6s+-LCl3?n%6xPW4xscj4zr*r60&rjyjjZ-7> zmCBmY`1cdf=i7tEiFZEjEQ9KvvX-VOL$|O7^la(7On;dItsay~R%o}Cp9A>cz<*n> zet~O0a+~WUOJtMT*GX1$-G>`+lXf&taGN~u99!L`b%s_TeTsH(30i3h+A4Vv9|F#B Q3h*G84}sHKq*#xB0}fn>_5c6? literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/intro/coding_standard/CodingStandard.class b/solutions/bin/src/main/java/pr2/intro/coding_standard/CodingStandard.class new file mode 100644 index 0000000000000000000000000000000000000000..e103e933c4b1b9695c3eb1ef9cccf8a74afa85b5 GIT binary patch literal 1014 zcmbVKT~8D-6un&*mL0&wMO4I(f-%{B*-4BsM%0ABl1v;RVF!p$o9;~AEzGo&wzGfQS3(N=hQMSi*lZsV zsG=5LgLwjt3k6-Rm7azsA^yJ9+^BTS6B?^57b&wsNt$alNO@*nQm-D3I8At*GL4UN z79X=Ar>od~r|iCSrTbNyC~l}!mS)VxBWkgpf6TGxKkL!Uj`OnPWOe?|=GA*eo})-} z$h1V84UL&}>;q2EwOd6QwI@0E>Oq#LA{LgKBIg>rLKAfnTczo#^Q|@&h88m6?}g+^ zhi(_fI)!CfdP0R9t7A?X{$zBS!SkR2w`O4$76~l2!V61#R-?8xXL%z;+MOaBa2+vp zkw7z4F-s4a77m|XR_#a_0x!bv$1bn10tCv?!V*lv z6rvhNxB}C->WJOhgPHP6(9t=3aRbpatg7PI`wESB&6}TL;d}Y!HtvoEaNWUuwmf@q f7x~@YJy^#5H$w&QP8sfB!|>!Ffk(dpHRKn8 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/intro/javadoc/Waehrung.class b/solutions/bin/src/main/java/pr2/intro/javadoc/Waehrung.class new file mode 100644 index 0000000000000000000000000000000000000000..24e1c279aa539802bb9c5391a62891a6997555c5 GIT binary patch literal 3922 zcmeH~VNcse7{{LrffyGC%V1l}HV)dAq}!6M?KTSABt)46O=bg_{ z+i%lPF=>;w_kGnb(C^V#)t+-m31A=<5$dEyitRhy{ruej@jZY0`Rl*_0f3)jp#%j2 zl|*~>hzVKWVJ%jV_4T@tMysspE3f_=9lkcqv)L36vZAtaYP>Y%UTg?WSBml97Fu=;ufk%68S2vNotbAUAj|hzIvsbiM+JQ+j`0Sz7JW*kb`_xlWEJ9|4k~G$8 zJLFNaK;7YufK#7)A=5Z0X5KDqaypBu)G}3SmW!&)QeW|eN@Zxoj2BRY^Z4T!73rRb z+SaVL*|geGiaXq1IrW&dtZh!;L}(Oc)I5oKkAqgDI24{RG)ZHwaeGMZIa=%9JrirmZXVbzbRLGXv<&o#tUleO9z$<$kyEl}i$laspnTfoW;tX@a%fZ0N4VW=EwCGxc1q{D=c^}W z-oZgGl;M*R7=upJt z#wq*mY->C3-A7>huuvOV4GxIq1S|>c+lm9<5_tKpNY!09&n9{o3E$=TA1Mp*89A`0 z+a-6gy5+!4LSFPwgZH)k46l)WOuM_TQtk0yg)P#f9W%_{g-bAh;A5gwVn*(YB*9Ms zyI~TT0RjW~0a1iYFbG4~Dq*Vt4%&nZ7x20aBQTnsKgiAwjv0e-JbsA1H*vQ8266v} z^6%w|KjGtlu~mSJc(gRY|0O(*WY;cC!Dm_D=kP@rp@@BL!gLN{K9?{9vt0yxr{f7r zxrEDbC71AJP7G_ggt@mMtmhIcNEm=BMsL-+hUbo|`z!h?C!Vbw+BY~Gvoir12mKWl qI*nb=VS7EWzk}Yx15Pc45lWfzb1j@(F?J2qJ3dD(0E~u3vg>q=A#0fcGCvm!KuWWBce_17v z%AFsDI=cayN(G6-j_vWAx6kwD$Iq|V01oiHg$6_7olJ6}O|lRdA}QR5W|n-IER+lk>u)sS-!eQH49^&v?`*1C=rHtdv4_rC z*Tx28n;(r+-ewmn<9KM3*tilE|BWl^jPfGWQU~tKLOGIXd~l@<*74`XXaoqr{pVXi&Hi}8Qjx=)so*JNaKFdB~9c*3yz zZ$In l1Nycpc9$qTM8D2G!eh$(W@u1u$*^+|!^XV~PpPJXXE(pJ(klP} literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/intro/junit_faculty/test/FakultaetTest.class b/solutions/bin/src/main/java/pr2/intro/junit_faculty/test/FakultaetTest.class new file mode 100644 index 0000000000000000000000000000000000000000..cf69cd15235e9e75f0776d7032ca480346046d75 GIT binary patch literal 1194 zcmcgs%We}f6uk~<9z!4{P@WspRl1pxDi){#B!q}mDS$*nC059BoW$vjJ+kja^h5X- zB#>awAF)APPoPajcnBdDWBc02$H(^`&!;c%J^;XdxLJn^gS+0zBoo>sbFmOf?sgMx z(Ai{O7>%zcLKZ0=C#XCoeQ`vAP&lNh4pj!5<)&1aY4U6|R}vZ2?rGZifWf)$&LM;9 zBRf`gXfkM@VjnwaT?5WD_W6Zz%G-3I#$4Jg*Qr2l4bPn&r7H7#JZcVSijS2{g(FZd zC}$jrLcPvO;3@@OJq}logR=OSgi94V%dJCh z-IPmV0{uww@A}U`PRM=-{2AANmZw^3U9vBlxB-f`e~8 zFAVBT?VE-6nvQuGN?rPrPN@w-u6hl)#^BALxc9$jmO*r23nx`ymnl0bTo7J*9c}}? zPx=c0RA{sTHEQb=-Jw}Vee@n0FFVm&Xnia(ZE6Ds=-Z^WwM4-s=uiZ3nN}-sg+>9j VMg5O#SJ$vbYuFfEr~MVU@fFbEXF>n~ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/buffered_reader/LineNumberPrinter.class b/solutions/bin/src/main/java/pr2/io/buffered_reader/LineNumberPrinter.class new file mode 100644 index 0000000000000000000000000000000000000000..fd095c03fc306efa24f4c889a124c3fee9f1a1c0 GIT binary patch literal 1641 zcmdT^&u`N(6n-w<+J-{6!p6^o*{S1@NC+XsfCFeqlRAdjn1nb?Zt~iCBz9yw)ApAk zfdqGs{6UD9q^K=)qD5Rd#Ic>vUp~M0z4!I|$Ik%p1a8-$!r*~5VUP%^f@5(ag4Em# zqz-ynzmEo^BZDGB6Lh7*ms!$7^U6r&(A1#HV5K+`3pEJ#ddC<#2Fs77lI|&k3!TkF z2G!>}!WuLfw8q$NW3;KmMOOLtMj5m^KEa5GI!R?LoYab^M)zV&>?7_q4u;4h3}ZoZ zcq+p8Vt{;ubox^Jzv$fHkw(jvc03U-9CAm8@iZlAlZWZbetu;?*W{l=RsLBfsWy%m zK&g2sR8HPQ{!{nAhV3M2EJNwI%~CWJ6=j{tLZ=NcW8B%~((+72*r%jKyiZ?fF0$B7 zqJ6%bS(kqy6c;KFLrFYA={5Ep<#RCOUfgLexI0U6PSCTFWnLGK`2*uZ;1@E+xmf4B z%$aqV%+TjGcJ{VULre<`{+{Wnh@4B}K^-nNVF@lXSnG7ht}n%HFt5xeC2t}j?*#+^*s$grygR}S0TJTA7yVJYWY_cTT(ta{Q zLErr}egbi_r}UtO?nx0JvdLtA`R&YPCiDI0=dS?p9PT$@ioqji(5zLmh{pw)IDU{Ej)TK-uqQr;X7opy7sh&C zfu!N7(1Ey*{Exl=H>{HvN~Y3tM;B))w%U1HrruaSy0x`+E*&p*h6hqpd=5xMYf&mc zj*j`;()pkv6c;)KbVNKx8MSu3m3nYal(;usaDP%@)avxMk5eqF3qBjqapWt?zmBHt zBVH8w1-z4?UrUAcxi8tVOQs8+_o_0j9jFQ5AyN~-L!IX6hbH63W>O1vUXF#L4C%nP zj54-n=F|(DQaBLmr5%(xYF{_kI)8VpcZAl;3@^ydT9%JMo267)sMRx1&3I`{j=g~J z-@X(P%)??EnsAN5@>=(_Cye~s2t8w=OK;6infKA|32FljmbxYtYF}6x5FV#V?rwXKP+BN0Kip8tU1;y1q#%(N(WH%Z=t?Adja2mk`F7olTd%#c zy`enwH=#-(!8`v7FZ>0F@otZ7$f~;+RZSmq>y5|Xe)D-eGye0RUw;RH8}MZV<_KJ} zChW&dsQx3i$NGu6+84SXF~@$;sY_DV-_XoN4VWjeoS8_bCjIU4BOW>e3uD6_K35++ z7*--}YN^dSfyL`W3HLRD6P@l3f%#1x@dlhEu(bby+s0_qgxAQz-}jW^R?9se(NM>U zkjx3KXkzqO^4NYwgVt!5(};(X88k{*_?S&NT|sAhLiY;Jtk6hvOON4j1w# z3Hnl8h@SMkCOyxmR|1oNQN)Qhj%G$e(~v0-Jmz%D_tiEV#EBH4aMY#=H>j<$&ZME! zhUVMb=~7{7sv`bSDAea6&fu7((iN?H^iFD>pFu0ilovDyE<@?51N^|J5RM+^RoFx!B4 z2%IeBwtyX*#fGak0wp2Kq^>HRnRQE?C93N@Vq6zO4vUWV`&X5pi%+4<( z-C|p2Ikt2+NbzU?a$1}ZALa$rRFFWTK zN7(Vm^(I^*@XPZ#X6;SRQoBs{s+Fz!5hyk^OXSY+zQ@=(>T+DGw>E#y^Z5} zoH?6etscNSSAum8S$K4h`YtRVLhx+-Y|iGr5`=FugoA8wJAfkM)F1C}j&Pv_ft4Tt zdTp9DnXDX2n0Tc4zlm!x4puv_?+_D*Y}eWw4Y1RuHb6iA(YzVoPZww&OskO W#bTWh6Dut>;bNaVBR#8UnNy5GIIQ+#R4;Eml0wuUg zU}Z*gTyLsf%;rrR_qpydEH{B#R|PCOWLmiO>Ce0!3PYe|)i^ML<;Ld!?Iy7PHkDSy zydy`#2o%_HF0zIq-|J57ZI$3A0eOkmPZ$?_y;MO6Z2X&E536}T#RHY`2!sVJw$+S8&aAFgz&&C9pVkuJLdbp?>a`O=?!z6UN}Ra6!%XBOow`S2(x5 z2J=t=z`5vV$l+6hGVXi0dV(m2^S;Bv$J&*zQ2m)!+w2I8W3ZXRNk1Lv3Y-+Bz~yK$ZcV&K%srF$cHd4$c7g@Gana1MdC-&4x${ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/data_output/test/BoardTest.class b/solutions/bin/src/main/java/pr2/io/data_output/test/BoardTest.class new file mode 100644 index 0000000000000000000000000000000000000000..3105a45d9494614c77551a078fe2f0bc9ab16cb1 GIT binary patch literal 2516 zcmeHJ+invv5FMu>mu+ZDpEk4r099OHdOvk$3_1Wp}(jKA!Q+ob``iU%mmrbD&iy5eSS9gM}g&qb^!iC=-~?u`!eT!DjD}hn7HPtF^t;=@KZtTf@;a zA%%TGU}||~mq2-4MZ5~r1e#|nTUsk!gR7+cX-8^qRNUtg4ONngm|3ADO||O9JTXtH zSMMHh8u2h@8bK)wKd^mHm(X2bD1X3R-?_U)BgGAs%F=|{@PJxe&5u&_bZ|9>?z_-^ z=afH+tJqs4snV7zy-!0X9dnP<6R-b(6g+a_17Zio4GC_5ogKBj1_e>A$(M!cpiArY(N!e3Cu5d&P1#TXVr;Zvx8OtCQEu; zcU`RznCqyJ#kA`s57DPt`ev@ZF|KMr1nnx!&Komf$4#cA+WfWNh=cG zmVIFa`ts5#RxYZzb*1AvaJ2?^N$KY}(tFvjlh^tGq7(mSzhZ-It4xR72>^ka)9XwA zt0&Od5XPVmb@6Xw;342e1@A-z7T^k0&?=!_g&IEVIC_G!1mE6Q@ZQcfKEurS9CHny zm3#(!9qmSeg6nVtM*#E4Fasl*ahl{NG^<|>bsOSJg9;i5#k+4!FJk@FxVQe08uQA+19%2v)O`uc+ zZ^an-GEwYG)jdUVnTHAuPn6}cu)!X;v>gvqB6oZ{oww`G+jXqEzcf~SUB;=>mgi8Z zcpwsIeuVrd_kRRt@z9oHR~ndE8BMj=i_=I3(sGlfs3~@du{sN^(!9uo&I*@?XGw^= zG9l0J(i?gfSws{k=q}&PjCF4a#YN&mRTw@7@)`rHWip<^gj>Z0w?`>@4N6YYbLmQG z6!B~{ZYWJjG6OiE@JHw}za0GUQ{9jemOof2Uk#3o#c3|e-H0<>;s|XiyP+t)>xTiR zdC{J(i{sHbY*SdWYF%b zKtwx2OE>?qShai7FnG}aZTVg!X?FU@V5#$Z8izV8vC5Yc@?0u-=cSn|R4HGbQ7BG? z&P#Lh-z}*xrS*Yq4Rgq?&N(!4Q`$2d5Ul{Xl_bl=>IgNARD*~)cjCy z1yG@s%INNWfcmSp_YRt$a!iXxhXJ}4XlxcJxB_jOHQ*{-qZMc2-U$nf YQ!F%d3l+jv;CepZfZKGhl7*Y!0o}hyEC2ui literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/datainputoutput_1/DateWriter.class b/solutions/bin/src/main/java/pr2/io/datainputoutput_1/DateWriter.class new file mode 100644 index 0000000000000000000000000000000000000000..3b20d61a374b6ea3aca10e688c15136521caeeda GIT binary patch literal 3195 zcmeHJTTc@~6h2cby;v@yAl?V`p_tGO>XWyGK%0aNvST!BHkvhS zRc)ZKRJ#ZwsSHh^LQ@L;5&?wyMrjoLVKpE;2u!9lqPY8CDcgD zs5y-Ig@O*X;X#JFVU-N#$BWEb$*o48ILlJf>yy3r4XH5aGpy+awlSN1K0G|B3a7}l z(oTn*#hr%m`5C+)>exRprFs3pY+ttNOsr##*ocEJR~?3Z#P&JqGJlIHVd;M#^JZ6Q0x#Fk+*+|o z=56;NFjM`KWkV4jlaZq#n%jAE>Ad{cRpz?N^fbo7MeDqYcD1Su4z+C=E0^0^jRnOv zxOA#c2F3!+_l?$Ra0pbILTenNJ2+-&m;;=GafHvoJ-7j*NEH&Qh;+G!zKIB&x?vpG z2}Ha?E`rbU519NsHT50t{7U%l;%cP;{%3Kmq$rejAE^>NfQR_SN_gHU;ZcT!*+fDP Ru{n5>tQ4N&GmjGH{sQKb9I*fZ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/datainputoutput_2/DateReader.class b/solutions/bin/src/main/java/pr2/io/datainputoutput_2/DateReader.class new file mode 100644 index 0000000000000000000000000000000000000000..07efd670826d6c02aced40273849722728d6f634 GIT binary patch literal 2732 zcmeHJ-%k`V5S|_fcefrMqTtVm%G2S)ZA70$eL+Zw2P7Vn7#~b;cYxyVcGGqV{ADJZ z=(~TEak{Gl;e_%)!UGRG+jhUselwk!&d*<8zXQN4c+`LzgQrGEVJc)6?umU7=6WHN zDvX7trM$4Jup~b%gl~k!cPL`i4X87iD$$9^cEXL}9!8eI#7mh;`fqG#ZucW6UF!<}wjhs*LAa4HHbw3m&vKcag^!B|;M@7tv?2 zgM5xC_N3~aqBzH6g@$L!@>JMpms{G72RV^DzMbstIeUAKRqwybs=v!LSK9ItDix1J z=F|_7|K)x~U=|Oo7dvlYVP!H><7%2GGLn{?B1cVUml>;z$STdNNa)UUX?T&vxGgjC z{5E}|u_zLvc!cipwZd5Ug-~2%?x-ro$3Q`AV71J4Mlj)4al!3jjzO#X@u~}0!lOvf z!Mk8yQJTW!9N>TgAVGilWsqHw3HqDn@PpP(E zq(ju3f~qWo>As3YvL&>1^FNDqyDJTYXZ;Ib4U1IvU2SDB+x<9-Llb7%*jta%?{(tW zY5%VRdil#Er#&EN~%5?%JLT8WdGbd8Z zj*yPW3@$~nk+H$?%d)e^4F9Nv;i>?60#gavXW@?1>h5vZ5Gbv!bn5GyE6qBA>5b$4 zwoxM7c|~AiRfgKI&}=b3=0zysl4F9%Fqz=i$a{ z5eoB`z*u#0i$H!=db|MF2}~XUvkVZ;&eIDqS zv|Q@!a_Vu{X9__PbHB13P8ZPsnvk^<{x48Za!o^NXuyoSOAU(ig9ttE701J@*~6?^ zt7-$uQtcv$q%t&t3Q1iSTKX=h|7^b?FvAbbP}ZG4FgC)^RJ|TVzHo)1I*z!)OUB4j zv1_EFX*^aJsn9eIJ-#hMyrON~!T&7w(U)U%jW%O#><*$R3+;E5n8T-z|C#20rs;2#E?1_(=C&Ux%H(L;{tj&>DN`4z?Q_<^j85?BsKB8?L}O&I-w_i1TvK{3;@_(}rs} zP9owtN)h}m|A47a)6?JJ=Fdd#7LJw$@H>ZNB}F0I9h{ZmF5JTv%kZR+;eH0gT*8n; QYz`hKBZWu!n@5KEKjM}j-~a#s literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/datei_lesen/ReadData.class b/solutions/bin/src/main/java/pr2/io/datei_lesen/ReadData.class new file mode 100644 index 0000000000000000000000000000000000000000..d2ae83485efb32ee4c6c5f72ea361ed62dc53915 GIT binary patch literal 1625 zcmds1O>Yx15FLlmBuh$5p#@3-x2F`Otb{o6C8Ux{ky0wr5(#lY&h9jI*|k@;w`zYG z5|!Z2k3x($L~YbX?12-99k1=@H=Z}1`SJ7XHvo7E>kX(e*t8}JQz2D&B#uRxnJ1yt zVJsZVPYGI7;X4%Z8{tF)>I@bOR3g+k+#MZZ(#kra z+)yMrHlf8}t;B_Qr@CYr%)O9Gx>pRYbT)@XzNKSqz;y--=kz^ev}wX3tDU`92CYtx zG3Jp@Gnoh{wc?r4qXbj?j0dg#L*y|=i7*7pMD$sVk#Eo~x>9?e(?B+ix)P?|VGFa|ht{(sV7Y3Asw|P23voGjH`!ds!NQS~lKmWa0cZbq4cs!_F%v76o z|B4x`bUv2(Zo)mrURNluN-|f^+W(bf2Em@rO@uxyYKPNaS~QOaJe+B$6D1k6ccit{ zKliDIEUW|dLTcCyR^ckl(b%9_4Vv^3JzOK(rj@6JVl)P4F#lm`;S1dOUf^z#^`|_; rGTHV71uJlyW-Yh_cWK2lJepxxEn!$G7;1#A!CGPO1E;Z03=e(*pRe>Z literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/datei_schreiben/WriteData.class b/solutions/bin/src/main/java/pr2/io/datei_schreiben/WriteData.class new file mode 100644 index 0000000000000000000000000000000000000000..4b1f4d9fc5a5b7b66211f1ea4073f1069c62b3dd GIT binary patch literal 1542 zcmd5+%}*3D6n|Y;c6V46basV;LgXwl3Y;mTYv>gKfg#V6- zCVKaeGQQ5JEMbXD;=#kbPTOC9@B4lK@%bwNJcp$Q)ELCh$|Ms?CkNtCB)NT*D3c6? zNA=#xp+(h4oxHKi<4fU11L_RsN@yzdezMg+Ks&^b}DX05SJm}9k%ueC*I z(nB0@X|i0U!YiXmkLjnFxhFho?F^9*P^Q8XC>QdB*hjuhmc+^goueKv^MOIfwedU? zUJkjZ$9R;Jv!jnGcyS0`9Bhiup{g{iEH~Ek5~vK9LI?6b^51sPM@cmeoCHg0UK9ZAf~@;RHOQ{EgqkK;^?BA9{sHbiih z!9w?JQ-q4{^eCRMimZ=zM^KT5?lDrNyTYol|8-dRL**De>|Lx;sqgBcG8rs(-;Fb% z3AY)Wo}g_e3fcvd@W1AaL9}fOD=`?zVD`_Wv!6ICz iT?=jyZ^iK76vM4C42va0jo#JZPATsKr?pND_kIFg+Sqdd literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/datei_schreiben/test/DataTest.class b/solutions/bin/src/main/java/pr2/io/datei_schreiben/test/DataTest.class new file mode 100644 index 0000000000000000000000000000000000000000..b778322d2e4c5ca838b9661bfcd8e89e8b65a049 GIT binary patch literal 1866 zcmeHIU2oGc6us`cwaq#<24lbgnLTw9N~CE|43H)$Ql*YbtPG(EAvf_>kHikPQ*9DY z{3#@m;GG|ZxNcS!SooL_Jn<0wCO$bix#wQ{)8}^|0N^g%s6mCms?lMPFd>5jHe^An zR|BDfh*>UPm~f!E=yMrZZfx*?S=Pg#22}!cBY4c@ez4U);Grcjbw@~H?-7`2t?Uq} z-d7Q?L4&~T3AU}Z(sh_76R)30&5eqOJffjWQV}yNl%%Ov{g@}_HuW040jCiUW2O<5 zvhXF_=X4o0`a=2NY4n}OWg01Ns8p6F%!UJMk%1qksISO?|LnVe_MI^QXMDK^k)%pn zs`Ne$nRM)ZPRHuMf#h7jLXAEv)W3!OnfgwW#v&A!nk?lS9h1iDEVN3~-2c`J6^3Rq z;(J13viEQWW0u9Xi1z7bW~^I56lK!6lM@#xF{Nl`NqVSNlu>(>a<9?ZY9EF?9Tm-K zSBl7|T3GI?w}jDaY+Eg4nXyHRj!ZL)NY0WHk|Oe6+HPpgj@qv>7MoW8$nxFiw`e|>*x;JL<&2Iy*z=$cGfkL;a|9Mz-IM;zldz;ihStn3;UF&2K@V?qYMS`gv3L{X?hU>%8mVsZN>biniuftVB-u%wS^1r+o{d?twW^SuYhuk#-fthjL zjrLmt%}rqp_FNBZ(!fo?69Z2qfC@&FFok0c@7C}s!P$Ec^=I?mTWEe9VPZ>pk0W(5L8fmp0@G!nXJ$GrqX_xx}(+G-~ z|C;qVok81LLba@IGqkICOrPVw%VUDfgFlBwj8I}j3Cb~a4^qhs&=TS^FhG-EV!flNyw$y#^!Jq4$+uj^{));2n@N= z5mG{b2}m(Fdo?p65O*_fcGkV}iM^0WBSOB7P}{n!6c&pSWoguu2M!#l!#+4jV5-si z-LA5Q=4?Bg=wLZ~l!VJ%FEQ*;1SUJmXTdY3g?<0^v1$e)CUCV=zMsxvue9BXz;xr~ z@Ws7#`r;ZKBd|ZmzXK--`BwcKz=1PljFi~20&emfR-D)Wi+wRSdo}ZKLeAY;_sZ9V?G<|h&f4+F*4+oq&Bf1w z^8`MW$dppms1P)&ITW9CJp$gMO0>@{-{?Y0d+w%`-ZyG+2}^*@lq3T z!z8}Ba0HGbY6_pNzUfrg>;_%Ohv+(*>Z+iW11I4WN?IE>%AFn}H@hz9!C5$$le4-q b+vyOwg>|_K%pkG?7od@@K87}5gv&nxd*s7( literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/filetest/FileInfo.class b/solutions/bin/src/main/java/pr2/io/filetest/FileInfo.class new file mode 100644 index 0000000000000000000000000000000000000000..cd97e3b79cea38e8c895905cd5bbcf50cb49f40c GIT binary patch literal 1976 zcmeHIO>Yx15FMv!HoHwp2{e3z+XG5DWF^Fj0vA-INGU~1sDwB<8z*tuwO6*cYJV9L zNO0#zA;ud@(>7a0J@vpL{@8i*Jmb6>|N8yy2LQZ=CmxgtJT*EB6DDMMzz$iM>gSEmd0go(!$}1s-eM4ZWwY5*6{8kOQ2R?!NDRxI| zrK_+)mdr<~xl!>UAJRxAsfd{sO43xTLCh2Lk_LW%!s(DlG1CZ2S@eaCIo-s#+CsHY z;@YG`#SN9p(uCP)LM?jnqZDJB^}^iRF1NM|rhT4cdX`91r7g`7QYacR>1YR>o`iZ4 zw;-&Du9Kv(h=ipkOS#6IkjCmPvP#qGy|%WfFf@}xJ`xfW8leT(EQ{?dx=nX8W1R(2 zlu363Q{oxQ!0%ZtmWnmNvw9(YMC#eBtP16O?nnyt_C4-Wo`&UkQ#z{-pat8kB$ zHWug@|Mh*YT@|ai*m51DdZj`q5cE{0Bkpn|u<9oFV&y&GgGXnct*KN9)OLk2*cAKN z`wVOVzF+tz0+evI3>6$b+`YiB1n1y8R6jL>uTcA$W9m3M4B&4K$J!JHH=%($A8x^I lWLn2{87)9EuyK}hwoU4RhCAgoD58yG*72G%B;UE5maW((| literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/filter/UCaseReader.class b/solutions/bin/src/main/java/pr2/io/filter/UCaseReader.class new file mode 100644 index 0000000000000000000000000000000000000000..adb89199b2b3dcd2af150e67efaa53451107175d GIT binary patch literal 1376 zcmb_cT~8D-6g^!QW*JsN1Qk&!s1aUv662GoiP>P>WR--kg!t5*t!#0oowQ{Gzsy99 zzWY!76UIBUt_->fnD8*|ZF}xL_uiiA_n)7>0(g#x0V)iSoQ=EiX>v!d7k7FlNfj|7`NVFh*E zjvx<1)NrMaaa?7XUu~a?VcT1!4+^nNx0RM}kJ65`JA&??VYY2zk?aYp^7Ze{s_!Ys zu-3kyWYYx15FO_`X&@!E<)eVyp3=)MsyGoqf~ZK5QYy7+C63Onlep~KE882DUxow{ z-1$+6ahB3W4NZID#9_TN_Ve?2W}d(Q`1}LFO)wP zk>%RA+*tp(#|%H@EaZBKeicdtR_EY|$%%h3I^}^SP{hl%$DPqlm}mIc?O3Q%*x3L`)+nVZjGB;dC1# z^n~)V2t60!HVqXwR4PkjW`ilUxRIYF7*>8GUet3J^;|sO0-EeZ5hqGps`P{gOghpL zr{}T$0m&$qq2{Lv^>1N+i@qNxkqCsPCQZ1;%u8c+8d#-iR>#f`6^5oVqdmHx8tYaNMVWNz&WLlAm@KT$f{RnDD5Lgc!W;Ge!QNTGlX>wk=R1#lla9w6 zTOn)3CA2pJ=Q?}|?UB_&POcR}2ECfE0X4YQgfiSFu-+M52qoLxbwX+lFvaiEc!cs} zs0{+`feKi3!nAPyugQ{~3PWIba8o^Z2{fFFvP+@!yB?+r8w6Hz6(X>Cm`W>R-j_3B z1Rnp|No1~FJiRh-74O#IAtAl%DExnaT-ozjjU$!nfWH;4@N2n7b%~z8WCWV~!WeAJ zAqvXC7T^<%4?I8ttuj<_tfKb}X9@lrU!eBB-S`B}Z*xowM~4CYR&i`*D7XV{^Z@SS mY7y4ZD&fjH+(XOZ@8kb6?}G)r8w+>~u!;K%@CY8CGyepr;Rq!F literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/konsole/ConsoleToFile.class b/solutions/bin/src/main/java/pr2/io/konsole/ConsoleToFile.class new file mode 100644 index 0000000000000000000000000000000000000000..fa2a47ef7a88fec0662cb51e7372a63ad6b397a1 GIT binary patch literal 2125 zcmeHITW`}a6h7|C+GZUag$)=tZ%^HX5()9d?SW}Sl{$u4nS^+9UAOg?*pcH*+b=@` z30@ID3UQnitz!$yBqUyVh@IG-6GKHp6>2hBh~0Bfq6$_ znX>yVOhp|U1m<|o>xX(oVD_0*(!L-t(_Y^vP~Fr6yz44~g;TaIW3;KmBANO2P8os5 z9f<+uI*Mh;tkjCeM)yMzB~Pf==#2#(2p%$npqTMPHWG9Vee+R}(w zKBg8AiQ^bunm&Z#@m+X)XN&(EMShcvVr?wV08&%Vlq2m6`peFL1nWd`D7myWNn>F! zSeOQra;pu^Q`cUnGNGv&h@n*I^bmLOou#3jM*DOpO|08N6lKaqDJPzy^cs1>FL0k) zO&PT(u_y_8nGS~nQ}hdQ7Q7hlf;Us(1IgoBtzACjW;Ov z32`Ahk3e~3xquc~STfdy9^(08>dx-gF&A<61vv7YB_{n0`j%7mNVYhrS!@^W`|22W-_J@luufrWu@k literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/linecounter/LineCounter.class b/solutions/bin/src/main/java/pr2/io/linecounter/LineCounter.class new file mode 100644 index 0000000000000000000000000000000000000000..8647b94685213c0d421d96f9ab1042c9d5141a47 GIT binary patch literal 1555 zcmeHH-EPw`6h1Cp(`JQ^!pc9GU3Ca065@&h7feN()G>*cNr)@gaa)hXj%;Vzo`nZN z0txPUD8xwuEYn(Plepv}&N=qy&*%Tg&oAEq-~~MJphn=aH9Sn1RN(y}TqFg7bjG2>K(bVWkEE4;S`mOO?&`9u@83d(_e`GU3H_*C3>Y!rX z2930^RB1;O=J=dCyeN)RG^=_MoeXj(gWR5A0ZsX$Oj2zeEkIIJ&Qwl35%iC}{~ETF zq_O1EQJba0U^J9qN4E4qsY+^eUT91*Y|_U{UV# znIKo6xDfcYjK#TFms{sU6E3%51+EZS?+;JPw+!7@Uf!L&Bi>}mM3^zdiY3q;YR=+) zW@N7a-mJU1v;>0TMLKK?yC*MH0=@o+#n1bH(_=ljL149#uqNChWN?oD`dy{P+TROI2iF_}_^sjEE>Un5x~R3_8eB)Fb(HIP(kr+go#MK=fU8w-)$mpg QZWrqvxR3t^>OHvo3q!--kN^Mx literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/random_access/FileSort.class b/solutions/bin/src/main/java/pr2/io/random_access/FileSort.class new file mode 100644 index 0000000000000000000000000000000000000000..78b08a67e5072f75462c9cbea4ec1226759ff8f8 GIT binary patch literal 1258 zcmdT^U2oGc6uk~zlV;tz70Nfr?5Sf~A|aj_AR#oQNgb1DnZy%v9k2CB?8tVe@yn1v zf_Gl{M~It*u~t-Kd*mUGuYG)S&-JO}a^BG5U< z?i!;_0L#Sl-YO%kPESNaxz2K#GAFg7xzXcPWcCRSTcfFi9b>$ACC{v}n zns|mXYz>`}YO)|<>NI84eauDJ+B?`ihKT!mF+ lx`y)x?({0IhjUyv7I3XsTpphC;8r!>hI{yKV%&o}zW_;lcHRI0 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/random_access/test/FileSortTest.class b/solutions/bin/src/main/java/pr2/io/random_access/test/FileSortTest.class new file mode 100644 index 0000000000000000000000000000000000000000..6da9ce072be30f9ce3686673d0ca59c6760c292a GIT binary patch literal 2686 zcmeHJTW`}a6h7|C+Gb@p7%;}g8%T5r8VOB2FhBw{q)8n^tW4qwxv9H)Bz9yw)Al3y zGrS;y1n>MP#Bst{re$i!MFNS3II;8j^LKnM_Lr|8J^{c3xL$!0fhD5@KVm}q+iZvV zvA*LA$^<6U2_chP{(5Jd2bRF-eIbQ?NMNL~ zxJjV=M0I%uY6K<@uq#?CU4=1He)m#pZdAC#yEITyEJ9|5k~G$;6Y|L1qh77u=d{a% zkZA~IP^m19m<{^W;(Wdvqq_Wjw7KbQZaP`b1j(2Nq0&W#`YU0_8Mzw8p$LSfCW*O5cS&P)5?G~a=KRJY z6^16V%X>oNUia`1ezPRBd32MmCC0ixh@wn7=VZh=O0TwIwU9;IO|7Dg+P#<$30hrW z*$sG{2G&vU<>_32ugW;FxHxA~fqQ-py`I>Uke>kVQgVRY;kUtMT*Pf(xulHu+^#e- zcif`cdy)3Eiqh0_j-dIVc& z$55c$>I3Nh+2kZJ?hdBMNe5l;&QAh!FA`}*gvDk@7=go&+@X@5eHaj)(_71iTHE=zzOmBrvsK$D9Y!n?wZ`4qc0~93W6%%gSIItEGW?!21#2 zzyMohXJ^V{3AJrIUI8C$*xP(W6A9_8tvd!-=4=;0ZGb${2sk z#)7V)$WZEVM&ufewXjraM^onbggU$`jx!WCeHE<@y|tlN6jlXD#7HUDeaPMRf>OGj;<34biN?^73x=KY8Rtb4DM;ZMO_SwNE5Dau~xbP{8@&2{h6`i61 z*JnCj=}-dgU1=@W(GbhU!Y#nohrJb`hO-4&#Ib>^JGe{mAAEx5t8VZC+FuGx2S<+q t{FZQRmnc|!pb+8o>~r#_&71(02E>)=Rk!3)hh5~CKCUE9Wp;vk9;A0 zCC$Uf{+?YOs1jJul@UuO{_g022Zq4vGm!}Mg207Ncb`D@l?=H9E`i3W?Uqtf)nJWO ze!NW-*D^ZfAq`}liijB@6PhYHig>J_QqLVuISqLbF@;7c3qG(3r)`X=CuA>=s7*u3 zHBF?UF*CuG8oa`fQVghk1ykzTlzKLj-V8wDMZ~F8hURJ^X}}T-IpXwBjQ`qfJ5D1J z2t#$2a)lL0v{6}Lq@qPVJ6$R?&61FhMS{7EQG;ieMW$@sqdS>4R)bcQB{um2xCH6B z1EWMTnUfbak}_(JQ|`IjyIV&APxCgMtw7mwaI6iF=fI(-#j2Otc+9btdz^(f=QBkv zyZ9?(J1C`mX+Ecgn@+KHv6JXrTNidlVxhIIh|Qc9CZ79RM0}~>mMZ7sN_bF%i*;Cm zO9VDL{Zo1rxSN(fjXpN?O%{*18Zu-Afo5L@EZS#ESo!zIs+kH+pxr-@wVTLDO929{ z&inZ;y_5E92d)uVD-A>qZV>Wu3C=E6niB9iW3af0|0nH)xQmNKz#GU+1>BA{3OOC_TZi1b6QX)ZR6{Pf-7s+ca>s zHh{l%TvOQ&9IJx2DsVGjZ^2#MS5a=k?O!Ad B7^naM literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/rot13/Rot13Reader.class b/solutions/bin/src/main/java/pr2/io/rot13/Rot13Reader.class new file mode 100644 index 0000000000000000000000000000000000000000..3eedd2c80b0ba3e1a3adceb1dfe1f8ebdda2bbdc GIT binary patch literal 1312 zcmc&!%We}f6g^JUPC89#2`#Szb;CpHCL%L0h9XGpgFuKp7gNDuySUz zYpt;*EHU==KwFubXefI;G;yLL;gr!lv8EfzIDO3h#m+$To(v;l36zNNo#;zmrTps3 z)bsqRyk}&}wQ)QaE*x-2Ch{bq#3oIszCOems5VO6&Od02DE0v}++bmp)EilZ{{{$$IHjf389_=2{X@OS%6H0F?{s)x5UDB`w2Wqjl`JNcza{^(lUrr}(`=7A3GX`TO4~z1CB(^b+{9(qUfJHNeFNSI z2_(4l2s{j8c9*1EH9t!QF2nv3mo>emMoK}Ui|%pfRX{5=~Bx`CbrQU^27 zHt0wTOOtlOC*Ig87JB}nnR?foT-dqI<<4lOOd+Le*$sw8#jjbQWC z%QpTTy|3M_#*F>jC>96kLk+GsUT(^KQOrf0h^P!EFL7rT4DET|z!wp*8;((sX#0 z8fS4y{H`4qYZ37KIyGEmJwRY}HiGjR=E1`YbGUdC0*yUsEq3_;o7ut>z=4co9-xBK z5-j8D;qDop68!t0q4u`re}u-@9Mi-#!vKD3xHbwD+<+GD>TnZoA=5g_RlI5ETw52o a?#$t;=Uf%ks=&Q`y$_G@zl{4fJopJjlncH9 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/serialisierung/Board$Tupel.class b/solutions/bin/src/main/java/pr2/io/serialisierung/Board$Tupel.class new file mode 100644 index 0000000000000000000000000000000000000000..188192f1a2eec5c68e4e5bfaa9c8dde11dde40d7 GIT binary patch literal 2091 zcmds2OK%e~5FV##9@{`lp+I>^R>h&^kQIm%1teOvB2q{WEtNPryVKOgYp-l?)$+%X zK!Q6z3NgD2YEUb6gMb4EuOIWxxAU^+>$i`e0pK~@Z$gbh=xh`wLhA5H9E&iuk3(rf zhgJ$DokW}INw{f*jUVh~DXJ#a87vl9B}gUzw!FdS2k9 z;gQfe_Zaz4tN#mFKS`C0r00&ZY$*}id7DMvSYD=hZJkTUGaciB)D+1BlF(XY%1@(v z{B`DhE+G^bIuCtGJVhC_cgq5MFDS(qgp_;31^1^Z64YC%CzpWwqwSLj)1q+BXK0$P z^ro-V%o8(;gEZDvx%`Nci=JWUt>?AS{P|LwC8zyd6Gpas_$ zEUyjDx=HERM&50@1A2IdSu#eum%lCymIfvgYF|)Gqy3M=x<8bT!K1;9{cnRouxm0K zVP2}VDSBhkMHqDYTB9xQG`c3-VX$7Ap22+4U>UTA==>|=JaC{MO3k`PV;&mx1!xvC zqq7#YNgmMI6GAbXgHN#VcInCo=zgJH4VLKJC?pK7)4Efl;07$yZVql1s9SKG=73}j NR^TqJ?iJ@N-vRagt*ih5 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/serialisierung/Board.class b/solutions/bin/src/main/java/pr2/io/serialisierung/Board.class new file mode 100644 index 0000000000000000000000000000000000000000..89c33060e21d2002007be124d283f23225e9128a GIT binary patch literal 4093 zcmeHKZExH}5S|U!+?{)n&=+V4FWXSyE~R($g}0_a+b9tyu8l;GNL3}IJ$rlEvfj0J z*J;cDLP#LNcm4|h0d>~y5g)M{8$l}}KG*m!NlAtuwycvUFjJ}2-(x3@!}v7sa0grfwO_W!YIj5aNJku0u#qYSrN?(v9*I!=US zPH06FqbHKb_6iN!<6TZ89!h3VC}H7uY|7~>n$#D%KX1}1jWoAZX-8w`!d>ccEq|Dx zMa8vfPv4W%_bT z=HbxoQDJGSB7RROWbz));FzV-6{Y+1W@??EK`F|Vr#=TRKnCsGc^H1r(8VQ`Ql}}S z?oq-~)ES|shX@U~Hy?&P$pYt~hl+5yHA9u84v{&F4?(Ugza=EEj=mw8wYRj}(#UL8 z6RI2guW+}Wx_ac*Sm4>KAzsP8N^`IO1)W}3!axyr8id&{=>xG^I7M?yb0??x(Q zjqliksNHOcK-_tj=;go)=?8c(?Km zUCpcwt)gf9nN|`4EvIv}2%PBl4(3DxD_^I|i5R<*J?#521zz_ZY}RBWg~4c6jF5-- z3H)AxhuMllibEy3a-ru_z6iYaS8m4GbI$W~Tc;-EdBzX2u*uF0Sb>Jh_q4(~Y#6@8 z0~Isj?jx)cL#4RMIy;VO{StvemD5upBJt>zMP?H|LbzhD+=Nf&j%qX4cWw%6u}${s zTQ~!_h4CnewGWQKB90bu+=Le1+xT`FX9+%opCPz&tn(wh^eetCz{^i0^OXRdTndiE z37l!eNq7aNUd3?(XHI2UYjaqym0+!)79QQBz7ER=5WF^iHrM8j5`;?`!n`) literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/io/serialisierung/Color.class b/solutions/bin/src/main/java/pr2/io/serialisierung/Color.class new file mode 100644 index 0000000000000000000000000000000000000000..af692e7394a49692ca5c4b7c37e566ce177bf613 GIT binary patch literal 1187 zcma)5T~8B16g^X*A4?TPKoOM@eW1~_(fA~4K!TyMNFo*Ei^+65(81lA&CF~gzsy7v zefLKh?{29SZ3x-y%+Aia=iYNae*OOT1HcPBD51bmb2eRCwj@k~Lb87GknmFF%^q^0n*^EM5=v3y&n@!CMnNfYnA09 z$fqZ76iQ)JXO&XUOYL`Pyo3#VCna!(t0Ub_%~8VYxp5ojth%e5qv6P$x{b$Rn4obk zY%F04MS%8Fwxd8#85Oz@==79O87}ya>5p?)zGCKQj+vviNEpz2oz`mp9bi7^pm?!J vb~jE@H)$WTWi|u0r7>&^W7w9-q6{_{4ykv z;GG|ZxK6vR(>m5k@PhUb=O#WmKE7Yh&tG4^1HcP-T7m+B4QqImFsY&=He^w1HX^Ab zD~x2Zv{IN%^&=;&i(YGHdL6V%P$aON!()cCd)*_!9f5`CQc3rcz}(vU0fFL{?uimq z2-ME7+s0^9hDB0reo#hO9S=p1a-F0yW=?8FQ=_}FNbEBjR5}AedxFQzASh-06YC4w zM2(@;;dzar*Vv>zEi6^q(S$iZpbiPdafSqc%&0K@ThIOvarybQG_(bt)~*R8JgAh2A;D z8MIjzyGe9NcQfn!45BDg-kl@j2}*PVdVh*k>NI84eNIJC+1cAZ<|565e9@1S$UM`o zV4DTArDNRGWor!?<~XKWP`Sa4>oAYj_5HH%j8xN#W0s%>mCHgI1W<-sRhWk*0*$ry zSr-{C*z#Sb*2cVimnB_cIzE~N>TS(gd@zpg_+`-zq$RM~zJ9xF5h(lS@`feI9-Jnz zEx|nkixX*0VC8+LoJ_=y8e;QAIj?-b$Qv83zR>n%(kjCvQaGNa{oNGR^^@^`DdvAw zRG7m1Ix}3nmA+b*PLK8cG$c^nmDXZ8cd%(&SOq-J@pl2BfYv-L;8?<^O?*r69(;rH z$9nJusy}i}4M&dwyq0mSj!i7h32WRKtE?PyLX~2E7JpKXRFY-Q|!rPd_TYwe( Lz5tKm$qDmsr^ME| literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/anonymous/Alien.class b/solutions/bin/src/main/java/pr2/lambda/anonymous/Alien.class new file mode 100644 index 0000000000000000000000000000000000000000..cd69fcc1cad63d8bb1ea5c337888bfdcdbd49d93 GIT binary patch literal 1961 zcmeHI%We}f6uoX*CYh#BD39`T3rJHIiG)~DKuX(GL<%KRN+edunQEW#H2}9sqvGy*dQ?H)Ww4bxOE~zp!`}GgZwze>tbL7 zaDMpy5LkyfxPpH#dySxoA3<*UxX$CrQ$%Gr|0|T=tuB6s+1x;xOp-I>kIv`CEq%EUwy zefJ0WbBt$pTPV6fV~8(4>~?47oA2DdIn(byKYs;)M^Mf~AAxD3{c6O7tZuUwtH%0X zHDpmeU{xlS+>KPzRF_!9pD3n-Jmd(BCBTr$t?EjBoBNi)01E||1n$;)V4HK;83Kc| zLJIqsK!2&cK_EA;0-lFc1V;A_ENZQE0ftHL$1AD1QDKV*)K^g~LS}`MG}fvf^2j`- zUU9v_X~6xEX#~a0f6KNwox+eRX-Jj5kfvy$xS>*68ZqlPsKu@PU5wFmZ^dXTE;kkD zQ6-ZowJM@mX^Y0G&!l6mbJ}tD03sn`JNCcAHLVCU15QMhu|ln)jN09pd&LD2acNws z|4eN+ZeE2-ABt%)Ef@+VErze8vAXG7+>yw!lz1{tUn(JO8B4dxwQ=lD7m+YV$gRX5 zngG3G0zA}O>iH^@fr^d+In74gHdH`a5Io1@#%sb@F1apAzC)9lxq!tMC(7?Xl&LVZ zDFePKBuaG?BXB-Ci*)atdd2Q-$9S;P;#!ML>2~KgVO(r+nWf!sV2^xDn#B#_o0IYG zWZAlk5~&t19hLM%KdG$Rbrfbp7=dEzVV?&cj1EB_#t57%)%H8zn$@Ve8P^#{YgphdopJm!VswR(u4Puf_=CUXtv`f2n?5MokS*j<7e~Vg40U{Wyy#Ig4w&U>FnF!JDZnIw zk0wbkoR+2Qb4fF?&ji;@`;FZ^+`{|1 zeVgCG>UUC&$$XwRI%mhgb-y82N^y zJ~)lir+&i3eLb;9HCoq9#I$CsEhd9Ve7;1l9R8gH}DsrgwG(3Z^G?gBVO47 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/anonymous/GameMain.class b/solutions/bin/src/main/java/pr2/lambda/anonymous/GameMain.class new file mode 100644 index 0000000000000000000000000000000000000000..42bca731877060c2097119d926ab776fe2f220e1 GIT binary patch literal 1001 zcmb_bU2oGc6g}>`rVSk(g$>51*;4`0NQfr}yrA(Rbxdew6XMBrOzV-@k>hssmmz@! z@BAplP0J{iA^{Q)zRq=ykB{%U{`URT7XXiNBS3}WPVQus3T>ieF%ePb?nQ}62eF8R zv1XduaUMMrsoEn*fGWfK43`KqjP?h|N_vLcLv6Hw%&^kAb;wYCVq+Dc!O&V@cb&7Y zjx&tyzcx*KkM#6sIO1JD5x9k>*x}`+(Q+1kI=jm`Rg(+AEil53|Ld=N7 zi7&+!)jHB9wkIXOxwl+!Kh0FwIPgxJ;U7S|6J`9Xu^N|(3Q@;e6RSAOu+ix)N8!ZQ1E{Y%;w2 z3)BBYEf~TBJ9bh%)x{;(PCIvIJC)~!k=Eoo_f*j5S~=n5Xd2)O?ORwD;M!7~&vh|0 z_jI0KcoJp9ezaf>kQMPSYSY7onmv2!a1}l oYv4RC&`QB@dx>GAgkfvOP$BFJE>f)E61HdtuG6Sdei>JP0Mw)!wg3PC literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/array_sorter/ReverseSort.class b/solutions/bin/src/main/java/pr2/lambda/array_sorter/ReverseSort.class new file mode 100644 index 0000000000000000000000000000000000000000..5f88906e9eda89824cae82434d0c9ad2a4590ca9 GIT binary patch literal 1983 zcmeHIOK%e~5FV##lU)J{ftKgNluOECS3FJ>kWc{$DWwt#l~51J@w$o2uD!Co5%~%H zA|#OD&W}QjcR@`dmFNKuz+q=S_UCVBX6Nzw%lnT2a38KVphn=PH9XFkRPh0uvN$)l z;*@2hgvHDlHhX2Yal*vU#Z(w82BMo8&gejJM_}ciRMI^lu+-bwB~ahe ziD*DTpnZsaY>YNdI7OD;zEDP3olZqUxz2K#GAFg7xzVFkWcDr%gW*KbMDUau1m%ps zW@ACu(Zr}SF`74VohDjXsHZT}s>r&*p#E*-T+E(}ITS!W9Fw4qh3dmB_*TBt9s44jc_yudf=G-cGyauEiPm=k{&3SXH<6aW?f!|I$|g1pUzP;cdV7m(Xu=w)UH^rq@jsn^>`?z! zIui&7x-eWkkv>m5bCav=`3<;yWPDZmLZG!Rt;I$-#C~Vt8sHqmF$qw^)iSK0Y@l`r zcL~13572zs4c|fQQ;BJ#^ccXWgR)hj;4E}e3*a1_#~sgb;|Rm*0*0Vus3Eon7fN{% LuHd_l441wFmH~JR literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/callback/Main.class b/solutions/bin/src/main/java/pr2/lambda/callback/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..c9296b86900a2113267d5d9e2e61e20777fbd34a GIT binary patch literal 2674 zcmeHJ-)j>=5S~qA(>tTBt*u&ru=YVNA_<63wib$1ETpZFTF~Ib<}yjP-t8T`d(|TT zNj{4T`tBbk&fcXorGfTMguLwSW@f+nW+waX{{Hj*CjdNydle`#cwltch=o**192!C zseasuMBM3$Mku1FBf|HMZL(IN%wR5eiG=Dmb~^_cS_ac^H(oY3cNmn~TeMn}O4@Y> zQ$cN?LHT*o#R^XaX3Xx z8K;T1Jon11jCd%N!|otI=Inc0aT>``T5hrwHRYg;)mdm0&5Qa3H7*U$R2O?v5se;M zXfCqIj(XSmc4n-zkQW!q@h*TzAbqc8wN(8vOt?+B;PxoRf_#j2kWe%kS=7NRDxD04 z#kDPEv5$KF5tqug-_>|eCvjdVx0ml^aR+q^BdQq@)!0LA9JVWEERAu|bI&1A5p9Iy z__PbRe51k-{4AfK_USW^T?we{)Ol1kk15pvwRHUx9jdGdskcRHXEEv`3^BFAkXntp zQ)GKiy><^#YuUwf+%5*zIx-gHF;Kp@p|vWqK53c$k6Pw~53^OMz#N0cpm`#0 z#SvX~;y2r*!(1GxJwbZLV7{4gpKPQMr|1?_QxXW%BA z`f>qfov6t~O(qwB@BRA=fPvpiG9BUz>14ul@2&iOQh__C9$m$eWl-HNF5^AAwGG?{ zdT-H-j=?fqf@zwSXkLLC8a-M)AuFS={{#Ft^VP3#^;hn5jmGKRLefO@YT*S7aGh2j fEW*+d;o&KS8)Fa_a)eTjdn+H8;Vym4gmC*WVx4i$ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/callback/NumberSelector.class b/solutions/bin/src/main/java/pr2/lambda/callback/NumberSelector.class new file mode 100644 index 0000000000000000000000000000000000000000..2382297e06dcda3513dbef0420e6d5729e284aa1 GIT binary patch literal 1074 zcmbtTO>Yx15FLlKn=FBpl=2O7drB_5sBj`B7eu8q38gP@4!;i{vtK}KbXsYuiqOrID{R@`9puJYjQ~7gD6cQCk+=pfqKjDSh3v zDzw|9!qQS@d@2;OPjLt5tdwpQ9nquGI=_P`%9NK=5wB2UI_3Dx=V8jLPdL4B#c9f@ zJ1=`$!g7EPy8jf@LBCts`MAHf4f6wXh5LQt%xD z)Nr-|n>YrzdWlhj|L{9BK6S#c(E7Q+v~lzpz;6r3R)vB)&{@Q`;Vv@m;JgO+E|`3V Zis}9uruG`98a!NZJc6hAuVa?Se*oNcGcN!D literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/callback/Predicate.class b/solutions/bin/src/main/java/pr2/lambda/callback/Predicate.class new file mode 100644 index 0000000000000000000000000000000000000000..f93478f575ad849517216da2091ce15303b48c5c GIT binary patch literal 709 zcmZuvU2D`p6undHe#F|XtM#idL!Y(^3HaDu3nCT@i;5cy`gSw9Zl@+QVKQ0tmkA2` zD*h<(P8!>aeMrbT+vsTn3OjvR6Y#ipDk)K$=q~}fgRI#(mn;bI^G2>t;zDg$=9yUe=BUl_6PwoRMk_t_b&PbkH_Ew_w zpDT(Y7{JX9*o2XQ-mI%&dosTWz3@((}h^QN7J4FK6$=W0BhXHb?7nfGkVmq(Ki^p8%JMY<3~HQ k#qTf!{M>4paI?m6oAI3%Z}aBe_Um59+=mB@!`4H9KNxqyDF6Tf literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/comparator/SortLambda.class b/solutions/bin/src/main/java/pr2/lambda/comparator/SortLambda.class new file mode 100644 index 0000000000000000000000000000000000000000..0e87ee9722c362889523e2fe3981371a6835833b GIT binary patch literal 2094 zcmeHIPjAyO6o2lzr3rImaQd8tyqaV^(UBnnKT1BO^Plcg{O!!bp6f(pe{ANXJ7ttX-DU5YH zh@wn7u3hX(J=2;^&FmL02&ACTczKzEACbo z6ZLhG4Y=+ztXBf6+J>$XMr367PlSt3xg$gTni9!bLyEQGV{LdojX5xdN13GBIG!tIPR2YE z%0my3|6?2mtt5?QBptU|iiRRk)|o7F+VCPf^<6G4&(sh{QW1+0NoX&!*v)D;cqg;Y zOGt|gbw;Z3946dpF1VYdSddT9ooezXV~3{xo)RY`;c&mD9FEZ(JmXTi z{^wmjGCIlgNw4}0G6=gmGZDU#zWW0I zIOMl!1@2#ZA&ORDQ0)|VM~^NU3y**v2YP)NY{N3F(5^)L3arvMpwkPIGFrnQ5Pn>* zeuEpoa-Ey>UCAZX@wBfNTCf4P=oG*vY)uiKUP8D%2Vo;eDCM|!^Y1o1ptVd0_x=K5 CszOZw literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/lambdas/NumberSelector.class b/solutions/bin/src/main/java/pr2/lambda/lambdas/NumberSelector.class new file mode 100644 index 0000000000000000000000000000000000000000..8a1fa4f23fe2232aaab28e4a5cfee14079e9623c GIT binary patch literal 1068 zcmbtTO>Yx15FLlKn=FBpl=2NSJtdc{s5p_f7e1s&DIg_OLOprCPU7OVSGKpJzYGZ^ zxbveB<80IhDH2p1?6JqsZ{EzIsnz5yE z$=fndg&hkexHmR}I)SYPRxv$G-leDLC$PCMwe*Jsu629I1nMtMCL(AOXkTJqTWf3s zt`qX=gSNsMbtW>(O zMmVaCr#bU{PCZ@}p9_?=dJ*&Nhdld1Pk#+f+#KeGl3aS~%0gHark%HC$eLDZc6(Gh zTIx(prAG28p5U65%CDmP^r&<`oFIxa9n@6BE0h>cdoc@fm=5AoK`(0J4Q14y7b0$s z&z%?f8c-ZV18%fn18x%7>5eYzJoZ-V*&y_xJwgdp2PX_mOQ16{oT+1GW!NvBbw8Jm zz_Za6U&8q=>qt6>9hqQ59Xtj6B=`dXYPi~f zO`Id#Jx4D=8-Ihw$4>kOT0a(;HqHS9IJR(ZRVcUxorP~3ZX?qUu4{1Tf+<9(nC`A& UYOi6c!Tklt19*(Kj!_=|20;BW6951J literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/lambdas/Predicate.class b/solutions/bin/src/main/java/pr2/lambda/lambdas/Predicate.class new file mode 100644 index 0000000000000000000000000000000000000000..c6fbcabe203672ef8207b8ae27c0b733c08dcfeb GIT binary patch literal 706 zcmZuvO>fgc5S=Z>Nla-M89ZmN+({5<*m}6agZp65Ph?A>G#Awbtthei;%- zaO1#_Ld?2WTSO1``aR7&zc;hL|9txa0MB8k2WtZMYp0SDwMou!g-PX}B?XpQj@?lw zZyn`Yp{E|K3)pJQ3N*{)O?F1g3+T^Op^f&30&b1>P6VvKv^iG~1PrgLUpZ%8AMObF z_1-wDZLy+UDqB{%K(DQlm9tqvWqlyyL3&CuCsiQ-Tvn*gaY=HQ-Ayjsbw|A`b4#@} z*2@yTI+dOq>2t-#t~YYXNeDR!ekM1_#Dk;8s9*z&W8=wvLPb)c3CbDCOT*qul>SRa zaSVO9y8)Xp6cEk20c?-wSCJRqX|tS$kqqbB(Cenm$fd|B1&roaVR3>^2i%bnDn%8~ z^dFszK~MKS3K%T((x7h~D@5ZoZOM3H8>i?<2i?ufeYIf)jA!Y=HB+6~;s2C?op+7# zx};;X(zRw=FGBuyJ2iWn-!P+TB!KtMHws{lCvqDi#yv*+9UFg#{)bWg6*hjhHCy}+ iHNelkmI?Q21os&~Xz@08K5V}pbt21^5d-MZp^Y literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/local/Alien.class b/solutions/bin/src/main/java/pr2/lambda/local/Alien.class new file mode 100644 index 0000000000000000000000000000000000000000..ebf42c5ff2668f4847ab008b59930baefd0fbd7b GIT binary patch literal 1945 zcmeHIT~AXn7=FuuvmM5#;s<^eL^E!-#CRoYGGN3d6G?_kyfWQ6g%!_fPugy}UuL3- z-uqYl55~70WFw5QTN5u%Pt!c__tU4p{(SoZ0I%Rl08<1ujgBfQ6S8v3daRP^XO)Dd z?U+>(6|tmJO$3(#OcPl0fP~4D%DeU{k1Tg$wph~T zIShm`W?u>^>}vwcrN)k8I^J#^Dk1ImR*S&&u8Mg8^8^-$0cu(+orgt|`~6;OZdB6a zF^yE3iG*39B+ayHCpv1HHu;apqg*~B>J&ul71sf*kNSbonQ86{#R?)1-OKqhR&g2#qhGMb& zSV-jJvC^KLuAS6hzyYU*=01B0PA=fD%y}@yrqv?j@g%*xSXy27gb_H9>apc| zU$c~(65jUf^9!K}%S9-_3W3#9V<-nM7kT34VzGfOI_Rctu8-W*39K}nP_@ojaCSIt zJHiln+L%P%wh06%1PKZefm~^;m4`J#_9s-H;Z*()bqsR}giY1e5#JYXTA}B&7gro| zT}Jp`2xGalZv@v&N1c8Ej|eQBb9Ep&0jv|4@yZgwW88WHAy9lPj6rT3;Z-rP4mdx2 za|o=#49wy`a4!(#@gvBq5Z5_8d5$QD3%^70!^*-}So-O4H*j@U&cjVyi+&%%D%|pC nx8cr+2ZtMYxI4x}X^e*)+(VlwxDOBT53q?}9y56e6gK_>9;{fC literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/local/GameBoard.class b/solutions/bin/src/main/java/pr2/lambda/local/GameBoard.class new file mode 100644 index 0000000000000000000000000000000000000000..bed41a6d02f4cdb9d47680fb3a2dc46e51057430 GIT binary patch literal 2422 zcmd^BT~8B16ukq5wkrzax2TM$Sd3{C;*+QeA|grsh#-l+O?L-6xI43%nHKn8CMKHb zqlrJtcxSeSA`2zP=z|Zt-Pt{J=H7G9-0AlppS}RVLzpST0D+3pVJ%@o);3w2)lxlM zi&@f$SS?l|i)%|P;g1#5Q4tCR#yluya-;ULvB^VAV2H(nO9IpNK1}ltH%DOjfsn#J zA~0B)StC$bP!TV}2?C>gU4oOO@a>J%+^D$CBO0nC6*03yNt$ZahO zaSJL|`cO=pX~EDSSusK-jn%Et;tX%YijU+jeWir7Gg!KHu8m`No=Ai-LT>nYs0RjR z4?J|WEb`Y(Mk?t8dahcA&qpk^{P5^AzL#yTwaE2YuMnPbvCUZmBpnlJ)gc8qxe1TZ=RMHnM+u2SD?bt_h*+2&j;9Id0?FIq{1 z>s4o70^@bpgx5M|?z}A6rZ5EV^lP}grNX9LiZt7DF9@8h)Vn3|t4_RbNsF6qS+=um z=3PhgT^3gf>fOT3mEbag^celPJEKp_az;(c582=3ryoO*H?*)7=LJ99>9NojO?pyE~g16%%AK}zj91Xx} zybt>?=uvzg$xv_x&f*Beg7b*F&_P|q-!9t#K4)x~a@b~b*(QFIZ7!GX3S7mk@?zV| k^jc1A3ps2Qvq7yeX_w<5>gm*(f*be?P{C^$$2Vd6CwE@WJOBUy literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/local/GameMain.class b/solutions/bin/src/main/java/pr2/lambda/local/GameMain.class new file mode 100644 index 0000000000000000000000000000000000000000..c4721d38dacb679001ce1bae91fa7606456085e5 GIT binary patch literal 985 zcmb_bO>Yx16db2%Hd#{A23jberWaBUSqX8Xzy+0pl!8!0E5yn1n#Ap{z4AIK{bfiX z!JQw4c)Otr5s~PDgP-@=T?^b01bxL47=-`b#+`~ zZ10_MD!0i*#a!An(~0of8lE{jNK~3X=3%2hQan~N5spBakSAiO_!bH4PK9+#VOu=5 zD(A*}o(eBV+|x1jDI-yT9;4TFi`R7vHQm2Rrnl)dv(D3{TnbY#4irC^Ifp1o#HnA1 zE2?y)O>9pWY;$k9;QlOAVdKC%ZHE5L<-A)P?jq!_CO$^a^NqLDNi66JurCqr0UUv5y_zC_Z z6HWBHpZrC}**j{BRw8`3yV=>9XP%vTZomKh{1pIRz{5O@5qN5JSnDz&YX_{yYO#J? zi&(eWV(7G59GN8S@Y+Ud?>KvPTNz=6l6lAxm`$@HCfl{G<^c~af!q;B5Fi1X$Ei8_ zTu5PG5|}6lL1hp9>#D``P$V!j$bYT1(jH6`^5ebK+^DF>TQpSNSVYVfq_I}bhKAr9oVIuvF^xen3lCYF(-ov&&FEK$=&#V0;)Y6PDSE>WwV2G0Vx&8qjGe$NA*+s4 z^&e1vA?U`D2!*94iMd9C(pa5@R%x2Gpj@HC&_uTQzK~d8A9v7ZNo0qkt8^nV*6m;v zWzsRqfQKN@U+x694;CF$A$#i3RZw{DQ-uA(R*!2fTAYSVy8bjd{oQ)2D5Lf`=6+!Z zr6AiE4f1`Mg4rT?aGAh-xiOe|hFf=s^LpCQxdqkVSh;3%5RT=4?lx zy6TM!>$XlH-{v+`>3F#kcyOJ-^4Xe0$z^GoqCKlJ>ICM>mA?-}VDVidt?2SV_Jk40 z|CQ@+s$-<@H~NjQdq4?%JiB_T_XR4Wh^WMfpNUz z#-IcfFo{+P^658+J02A9?W6YzM!7iu3ru||UHSww-%hdsqY2ssuHd_v+CI#|eCk_( zt3wDbEYx15FLlK$u5C}K=~|^TlJ7|$fAl11dvcwq(~`6N~wf;a=dQhcGq6n-l+Ly zNFc$T6Tb*C-t9+_04W?i9*^HVzp=;Pe}4W70I%S24JrhlTEnB1Nfn*28H+Nr9VILs z#|(qc$TOSssfhLpf8_ldR0*^SaKh9i+8>_??g*^DluEkS1g>?uhXkrSI!0_jpm~Me zHAb5{Tqoqm2W5oS$xOtQ>ok)Ib5bjs89h!!YG2SWIG73=3!X58pp5ZTHW73a74}Mn zy#ErIRfvaQ)C5a3P6yULk4fj6C_qrsrN zG|kp~ZKdzVejV--*!Xv=Vy6-aM>;oLyp_JF*1~To8jV0>pp-B>3A0w%8ayKKeA(hI zRS~FP2!sv5|AxOApn~2CtfH;q>KR4}&fyoRe{6@Jpz*E1G|_qt;Ao+3lqk3bZCnL# m8}4AlGdw|t3eF|N+8-F!3kHv=z`erWhX+0b86M(Thu{}1T2dzf literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/matrixsuche/test/MatrixSucheTest.class b/solutions/bin/src/main/java/pr2/lambda/matrixsuche/test/MatrixSucheTest.class new file mode 100644 index 0000000000000000000000000000000000000000..197e16b79704fae1460fa092b7b26bedfac37c0a GIT binary patch literal 1490 zcmds1&5IK;6o0ARevH+wb=S|!b5GsN42T!43X3Q#bQNq}@R(+@ZPuA&NHS&pqdW@= zdiReKU#3b2tfJyUJWM8e@0VYGc^~=o`P~NqcmOxr&|q-aS&`&i>Ex6zc~aQhNyhV8 z%E{=hI&-C1$iz$MlcUNo35F@H+t6gNUG2)ao+r;{r&4$Zt@}zV|B%7C;r=m$<|C8J zHgp;E*VxC_8ry;MtnucBw$hnwDN__CFI2|8G8zkOW|_?0J&d~3g~U{fj9UT~T)g6Q ziF+h9UP+B>QsW?X4^tx@YU7byVu79*I`&s+NyLMgvCGOTWL^vVXQ}E=P0-i z>@$hq)c-DIecWFl`;nx>yvUSL9$i^TO99r-+fsOAah0y&J}QT$PUVTx6q^(B(43c< zucKo;DxD7=LLt{7m@DEMB}IT@zu`9M4RZ9a3mJ6}oRcR3%BhAK48}(A?3h~>)?bZHzfg|BX#B?wIAYKZ z)n0WZgPYGw?Nu%h^-?)S2OWeGt-6WMX^lg2Mjg1ySo2qU?tf1ugJ@z(E94Uua literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringFunction.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringFunction.class new file mode 100644 index 0000000000000000000000000000000000000000..514fe2a758436fce707daa44a3eefb595c824c5d GIT binary patch literal 785 zcmb_a!EO^V5FNK^Hdz8GDS<*SRu8D z#HkY{-G|5dQEN z*<5CJN#-Umt@Pa3z$*;mln1&jKh-4e@@1MhixX#2Q}z$4wEKHn)Q2WWcY;E4fhMvS zlK&ANEJq&BYngWEF8v2k3LUuFgImyN(B5BII@}svm^goGFPhvRDI;G`t3tXll5Y$K zBP&oJqf@b7G*_^$^*Muw*U|jV%pg6oQzztsij-?t6VO=4VB_u71XamHGgDsCThF6C z%}?|UhNEjN+)Lp8mGI1o8T4K$?3bd(CsCu;MreC4+evp2K n-uDKxO5cb9TDO}{%;*5t=)4Sfn$8gJ(jHOwXn#PfMd$TjKJ?)e literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringTransmogrifier.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringTransmogrifier.class new file mode 100644 index 0000000000000000000000000000000000000000..9b3b9c39163a8361508e5a535a706b7c992161bf GIT binary patch literal 1232 zcmd5+!EO^V5FLl4n=FBpK!E}W(^JyJu8O!ofD57$QVNHLN(iCK>va;BU3+DFEBZD3 z1xO&losU9{cTtjxA^``)VaN9P`T31!X1{*>_!$5m!mR)r1nybGp9Qz^{hPQ34oRI`a;$}ZdiGzqL%r!uBy@$=+Ja7SS6fmG5xB5-anJRs0~ ztWyy{hd^(MePWC@Z8%TJyBEp`tFvQ~Qm*qtX3R;gXkm1ciQL|&VP`TIG!;B!20;bm zZ`e%GEtDG7Qlo{Y!<{XfYGJ9;j^@nqIdyngye&}L>S2sJ@=-@#Q}hd}u=6x8GRdW* zwk(7}fyz2la;FWg!yOE%w6s*Im`a5gOmPS2tjydhI-+}}b$$m?lqs*MCSIWoJM}YD z&Xm`m2)cM0rzxZEq!9la6ha#=bfE1#4&nT-`-4 z!7=;yb>0sPj{c54(|fj~k4Y*d> M>u?jtCNgY(2eZ+3F8}}l literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/test/StringTransmogrifierTest.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/test/StringTransmogrifierTest.class new file mode 100644 index 0000000000000000000000000000000000000000..8475037756a991b479e60e0675743e5d5f45d18c GIT binary patch literal 1820 zcmeHIOK%e~5FV##9@{|LKzRzu^psw9Rm6z^Qh7<0Qjln<#HsRnoy29=UfJFVeiFX` z2_(4lqY&dPG?7?A3kQV6VZFBJ^XJdwnepc@?>_>-J-F6{8i5Da@F-(aMaOK$qTJky zQkKODi!wbiax8^8+KHU7E;?{Vs>#SOWlwA)G&G@3V12$kWoi;Vi;o3&1R8gxlI}i% zmHzf2f%-$8h$gfNbQjpi#%R-mHL?=DP)1mt&O}1F&T^SDC$*xv(Qzs=dxr+?(Nxex z@RS(@<&3{#6G697b69E)PjnsagkJL&O|-C7X-6~W_>?+i5U+F8x6FV(2)z$NFD(2S zU#UT6xi*e!GohR*&mIfL#b(nDsX zAAg&yyQ#DU9u5Dz77Pe%_{7^UiwB?QFoEmO3*}@c_S8&Ti97H5teG2e(GVnhD%gX#$Bb`8SpbNvr6X_%CMpY{Mdz}|mxC!_U;JX7*!`>=1ux;Y#HqH|K z2OpsIvKPFA&Zjx1i>=21e(TtFN)&8B4@UqO&{~6w*z>4O{Qt;yse)~-f{nlxTwjB$ FUjd7NNz?!U literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringFunction.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringFunction.class new file mode 100644 index 0000000000000000000000000000000000000000..dd70f1eb4ee69b85bb6c005e0f0c5d1419a34e90 GIT binary patch literal 1233 zcmd5+O>Yx15FMxa+9i;Z628iZ+XJK=vQoJqQjkzZrAPrJ8Y=aK9LGsqcI}nzMD&*- zfdt~pk3x)h6B^huo;U|vm3=M z84OvJ=&_L_Da_m5=+GId#s^cyoz$uVMFQ&?K4xkhy&9Yd?g&)(cr2B4PYJBGc8&-X z_w`UzARtgbLq9i0n<`u&GU9XWh<4cf1?wJ*mXYX)+L|&#=J+8a>Tfe8i0O`+2a;nXt?d zc+~3d^!~w~ohmd5Y@Kf|^cE_z6FGAG6J{7%#8?9NS7=8Sztuya#L_fAC2(&AV@DC+mh4pE?k~fbCnivP zksGa#*0f~;IFmT`07YzB3Cg&y;O@aZ8h(Q6aU=WywJ#Vgz&hSN2JpI^MF0Y5z{V2K wzs-49R`5zoysL0+iB~w67c6-AkGT#v5W5C9GX-2eap literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringTransmogrifier.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringTransmogrifier.class new file mode 100644 index 0000000000000000000000000000000000000000..96dd285bc48608db19d655aaed55086e48914c0e GIT binary patch literal 1232 zcmd5+!EO^V5FLl4n_U7afdT~%rl*9%t`u>B02f3hq!bPfl@LOe<8>03U3+DFEBZD3 z1xO&losU9{cTtjxA^``)VaN9P`T31!X1{*>_!$5m!mR)r1nybGlblJF9I<1T6lR!Y zET5(<$@SdGnH1)5nCv?v)qG-@vP*XWO#++Msf?+4@_c$ExFfLfKq~1T5jfW$91v(e z)~N^}B+y-9pBSS}8_pB*?u9bK>g-sgl8Ez*c{}N@1;a-M279}!}@kK literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/test/StringTransmogrifierTest.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/test/StringTransmogrifierTest.class new file mode 100644 index 0000000000000000000000000000000000000000..f76b3b2f2793a18d87c4303ba53a5a7c272c5704 GIT binary patch literal 2636 zcmeHJUuzUG5T9JnyX$)PuhnX;#)8nk>_YL$s!;0{3U?LkStve~++KQ3-A$GxTlCRS zB`D~-U%`*zyExg^{-LWq*$O`Rl1+AIewmrf{F2Y#-hTvuN3c+b3V|m^he6DQ3=Y^K z3lhB?L@e(0SrDs%7JGv0-Q~b?V}mWLg&cG>ljca)ML`{^1ST@`h{-|ltardeOQ6we zw>quO?iPXRm+fPDjSSLX( z%B0I_4txUA8_i3hAS`MXWz@b&IA#ma=^T|+W4LzJUh>N%4u6KHmXG426`my&_IfX^0uM-iBXOHjkv2+r%!z;P5;_p>#C_W`_} zspdNv`-FchFo|Ogb)4lCj?HZD!8BaO6~GK4RNxxUoYr;xo<*B2KpQJWyEz2fTmjm> U0<;Ruqc;_}jj;n%(Yrg}0S#G7X#fBK literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/nonstatic/Alien.class b/solutions/bin/src/main/java/pr2/lambda/nonstatic/Alien.class new file mode 100644 index 0000000000000000000000000000000000000000..3371cf3566af6c742c682e9e32dde776e85fa26b GIT binary patch literal 2214 zcmeHIOK%e~5FWRMBuk*QP#!H0Q(oI15~<=u04ar3L<$hm5{VOXcHPEh*IwC9puY?W zB)IdV5M!qyso1u;B5{blv1Y!R&-2ar=dZ8d0pKaD7hr}!XmnIfnUK|eHel6EZ&VYO zc4JnRN*c?oh^qBOa9Myk0vEke!sK4{O?RJ1mcY4stJ!${VY}UEydXfD1kOMAp3-($ z(&w`n4C9=ABBZd-2rPuHO~rIvYqgb-wzk$GF!x-=ya4A3%#Q;!v{t$Z^JH%Moz&c@ zWWZw@sWcM_rllm!wCW~2HIHdf+Uao`^C)2&jWQN}WP6;hBAv>RPUR1sRT?X9s8p7w z%tk$G(UpJBkjI5{WQl-r()so}PcZUY{6l}b31Yg8DD zWcjX;sK;HUy+GY{Qs0O}O^w}s_9i?+cnXjs_Q&Qttm3xSBIEHicX^arQx1d?SdjXz z<$6oAl$#K{ev16w47k=Jx2q;<7eE;n%20wu0!v|QJUv{>a?ekf`4-;f>wenhddG=_ zz+y{9Ea@DIxIzgi}u7 zThPA=D7dDK@Tn8Va%o=*u9=Q{2L-rC;KHcAhEuWt4+xy`!>|A$e)^e*9A61zP^UZC z-3IOe>Ik1p0?Tj)&f;Ehk0%uIl%U1~T+iXjBmD2|f^SfMzj)ybT>RnfF5&9D9KvN> z%lh!VKI%PZ#GV?xTFhXt#3EHgeErfujEmvR=g< OU=4qc>0P)F4}Sw{k)O%{ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameBoard$Alien.class b/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameBoard$Alien.class new file mode 100644 index 0000000000000000000000000000000000000000..c943403ff7c68d48736b3ad908793440ca6b38a3 GIT binary patch literal 3289 zcmeHJ-ER{|5TDJL9Va9qlz!2VC8YFBsa+u+P}5d2ArMO@u}HAQORM$W#$I~2d)i&Q z&0mHDQv2RNs$zD}#!h-kY+fi555Du>&HQF=<~JYz{QL4R0QecI1(+dl$LO${Fd?hY zS)Wx?eWx0;q#d!URMJ>xMOb~r5`JGX9c|WP!DRvF2&{SWn8{9czx|wtmcUZ2QQz77 z?V!1{^MC-U6S%bPF{Ev=xW{MFELvQ!U12tVAW&&cV|xoVe-cvIUkKa_rc-S+m5_F; z+#)cyts-84RRXJ{FWAvq=^|Vvh5e^ebED!uk7%fpRKyqoC26WvJLZY`k(L$@yPQTm zjG0EEl!d>u4yPL!xk?tf%A3e-&`5DZrLr_(HtbT1s{GFs!!@poVW_wiRGdeZT%gRV zNK&OO8mA$X4z%07 zP1?BJwu+TLQ>M?fU`W9%&7rF+-3u*hys6HLug<`8y^Op#;@UU^j&zAIM#zqLiF%3B zqQ9MKFmwJ1laWd;5Zdo^twk;?$3O6qW@%T1=KqN1YC7Szt0J1HJ`c)N7}}E&KN1p4 z^$6qa!svo>I^bDG2Fk*;gb|ph=@4pCV1wY%L8^t#tM2hQPLj9#3Y};AxT#_h9-kTU z5vztC)Dzdu&S$EZX=3BMK(5bY6$+bY-j#*MHh5lHjGPR*RHJlVofxfcUv}+0RH? zJF;9q)HvQvfCF+WPbVw-60E?LWmtlb2wV*sqmk>JmmNQnR~uMkd%dL1^`UEV1lAiW zWN~ZI@&*s*+}=Ro?o^{c+gNaSDB#$Qar6_I4a%(|d_hPw;jAB&_6MH44NnLxC$3(b zxThE%5xDlGCoPV|5eeNUI^++9W7x{5 zZ8%OMIqT95Ro_+YuHc&KuzQT&*ClqD?UiV-Fb@lOD)>`zZ4DNog#Typ*%B<{^%9=$ z;@QcUUct(<^|cqU{zW%xR!(PYc9fKfS|9yU;a25!J6-T}VBUkOnO+=KwH-{W}!-)P5*Zysw3c>ri8GAs0-9I%se8o?+w|oE3>g#o$hN9&Oh< z{?s~y#d}go_XC47VRMf`Z9~UchYuL6j7|Myj5ZB8$Ld=@D}z=iLyUQ((@Z7=QY)Sr z-AgdFcX_b1+eaQ_ln6sYnTVc?1LUjZT&r-d^~SkX9&5B*X~$FHqCR(Y6o1ReugRn2 zSIbAKl?%R_t)6x!~?F z!(i!0nWD0uL~kc;Qf@;h+MFme6h;c7V3Fp?mya1lj!wKOpjJ-#a9c~|n#7BJG}asN zq)Vl>QXS-wcrFnv<;#f%3-C{cigh|gXlsbZ$VygDI{46ttS=+`f7Iq{Iz`vlF;Ddn z!zP!O4^)i%QcmrPa1+@Par{^h zEOw=JsL+JR=s#29j-ktr1dQa;Fg_=o4QEbN*<&m-BkzmfH?#Rh0;oWgYW*E%psob$=zVbg9Ok z4ALH&UEksuTY`qDCJ%{2zl0MLkyc;Q*X;9S@(n^11~^3#EG)Skxy z@waMzCHV)e3BPE3|R)hGIoddmn2QPamCC_?lLL W>+}Q^jT`jbqUSb!FVcPp-~0nmQQd0* literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameMain.class b/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameMain.class new file mode 100644 index 0000000000000000000000000000000000000000..333ed483c9f2880bebcd9074fb4223ffa30b77b8 GIT binary patch literal 1001 zcmb_bU2oGc6g}>`rVSk(g^lrT_SAuBB*YT~UeNfEIwrKT3Gw7QUh9$Ak>hskmmz@! z@BAplP0J{iA^{Q)xz2Tt&pp29=G*sAUjRJDtpF8c7Z7?wI)2MpDxHdX-|46QkK$2sfj zILFxD8{<@NlZlGCv}vXjDq;=KoE;=8%^&ix(H|)uE13vKpiId3VyO5giR;e9b$^N5 zNK;?Q*kbZDOd-JpUGW7Oo_ya zFU1wzI@Bh%CncY`w_I?4nyIj{@0~WoKY(^7%J|n~H7*quqK=g&mT{h8t<#&ge8#<9 zSkmfgqh5{EfpUF8U1n(atQ5(CaJtBUZdUzB=M49H|1cEWWO&h8hV{<7vg&oLGaUVe z>Hnb@4B@^VJE@-O;*u+8lRLGY+Vj##nrfYUYUm5CoN#h<8sHk8n_Cv(#=@A-bTKq{ zb)J)3eR3|xZP2{aj|5ccZ5cI+0c8(pm(d!2M*VF&{D|h)DW*lSz<{1rip?1c7tp4x nfs43AI|aj?1%|Z}hK(shg|JJwOtFFuT%i@XNl%UPtGNCH-C!DB literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/static_member/Alien.class b/solutions/bin/src/main/java/pr2/lambda/static_member/Alien.class new file mode 100644 index 0000000000000000000000000000000000000000..a2260f6052dedc48624710bba834554017e90252 GIT binary patch literal 2230 zcmeHI+invv5FPiHW*b^4l>5b$TZ&L3RXkBZ3ebv30U}x|@r0b+X=B*6SGE)Ammz@! z?|c+u><}dt+Y66KJjC8uGiT;_&WwNj{PGO|9>LubOfa}-O^9V)>$r7%1$eu8{J7Uvk!Pw-s&PxFiwRbqg=!v#4hq>qEs7Ds_mn+%oB~4 zEA4nDT-@c3-0@RRjK zO48k7vY8v{ib!*(x!`Uu$EX}iUH~(06ZCL|%@f^Ii7B$r2aa2Xvl%4M(!bdTir+a7$E!X56pQ`#Z6~qj>&QEazC}E>PsuB zAdMY|X2XaKZI!zJ82P>GqcO6utHx>YG!Q~t}%FicoqEXF?2Xw{{+3MdnU#W z>D3d3HVkhAiLR+)diJDssN8djMwqy}SAv@i=7%jdn3N^B&0snV#1d5LGt52W_(EDs zTHT@!w{RUuNAz?uxCqlQLwm_Tq%cdTjC3B+I!7n>>A$y&zCz{g;{0bg`90X3rqz3S zgfp~O!gmBqa5kKsgY#nu-fnI7)w~05s+db{B z4SD6CLIMfi`J)iCdp3586FYgSka+NYdFD4WJHPq(^RHij2Y_#&8Nd>OFN{u_ITNyZ z#D=U{=+BxN%X=wn8q2Imp65L8aov2(a{fRuoo=);!DRr;1g?9PjLF01)7}wJEP*Sn zxV^pme6O>;{g41@6S%siBtl8sW!ZpVLepsV^4CHN`z?VRQS4DS^W@I@4PpYBml{W{X)fNSIIIR53r7$Fb6XVeRZRWEp| z-7%F^_S8Wd}b`(-lS_0nUfek^;LAPxlHf z?5wsieU6K;c@efeP?%b#k2@+8$?>UKnNWJ{Wjl8*_3Se7G9B!`bL56RQ;D#%%)6S@ z*oV)m$%%7Q88qCsPz}@AQ!3+3UNoBsq=jSc_G{ zvhJumjy^8izAyy7j4!r_Y!V1?QfIg^5V#c8yA`-aNV?#PFe=#pxpEP%5UAyDaCC63 zF+3%3``JKRoS+jTy2ZyYXPDtI9&>B60(S}QoSh@L#f=rtt{8;gQv;pwN5Zk}+GKt? zULrx;(#>E$-t3Oxn(3r}jNZ2;j=Qalq4y?$4+wmEUJepi8EwN68Xi}9*}wz%82|Qt zI)Hol=-V-xeNqngeH@^8ER|hu?2a-P-UDPXuEzv!!3tc)d*GI3sNh$EwHD&_3V!(< z-<@3e8`QpEyY>rQ|HI3@hF7QM5MIY?%|C~56W;LO-h{WN5S(0z@b(OZA7&!lMua7J z2Q{6YJ9r=aGeLWI2HMdKv=yMJzl2e*;~n6A{J97TY`}*Y?R|WAk$(hr_yijGwgel0 E10f0s9RL6T literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/static_member/GameBoard.class b/solutions/bin/src/main/java/pr2/lambda/static_member/GameBoard.class new file mode 100644 index 0000000000000000000000000000000000000000..4e2176ca57a12cb2f217bb9ba9912f39c3c816d6 GIT binary patch literal 3274 zcmdT`-)|d55S|Tg&c3EiX`uxQbO{A6CAF&x5F!-G4YWjZY1D*B@PgKNlX%PB?rC@J zHn03sNFc#0;*Ubi-sP}eF0m6KMLhU^_-1FnZ|2*X`SY(|eglAea65nn26wE9JDHHG z^HhvPCpULHsmS_?=vXJ5jDN^5>!ayB6dB&v!XyDS7+flhQ=#@dkNZzCb_~vmRH9<= zY44;SZ+894bq0%{OC{YG3|@*>cNsJ`bb!??IWF)yUQ%s#t{e}3*|lckyo()rxpcm@yyL)bf$JgC(~Mhg@|ju zaHqN8?jXmo^`*>ESudu4CvDPhL#NstX)_W=3X)=(=2$E1%rJJe;-ACRE~Fn7nAZ4~ zmddS?JoeC7zmL~nCaslfzd*(d!?0Bt9=UJH;fYX*&Sn_-^O2z&=!A@!DKr(($$rX$vDoV=6Td|UsGy@IoQ&vj1P{?%2?7B z%FWD|)Z>pyVY5ZmcZS^vQyoiJx4l1;hU)NfXL1Z~B7+uPmzGf)`&y?c)M>LxjtU+& znxcLpcT+281Y_G7nPW0fe5dJds!=Js?w&*Qz)<71QBhdtIKY*R=R0^Igs{8>0bFA6 zYSbHdX%AlQulp{(+@pH&&Cm}KJH8q+xZKmRNOupbFv!TC@SY&)}2O&7m~O7EL*TReCJyYXBdT$f}IeUXRM2 z?4etD2WViWiJF8B=U|bZ8uT1Mlddg#`-r|Wx`)3)_}%5DpW))~^tJ#m({-`<;#UGJ zl~!;CUZFQ)3RlVM+M(5Jbg#TE&~xeS^%`$$wcf6u(%Z+i-rj__h*cf7G1Iqeu-&Wi p#)%EZib#8o4T`6a&I-IscYvGp3n?1!(eDF_z#6?T()S2%{S8@*^@sof literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/lambda/static_member/GameMain.class b/solutions/bin/src/main/java/pr2/lambda/static_member/GameMain.class new file mode 100644 index 0000000000000000000000000000000000000000..d1de8a437a3b498d8c55bd90671b03afc6387667 GIT binary patch literal 1017 zcmb_bO>Yx16db2%H(63r0xjj+^b|N`1>!`33o0K{3PKI7Dh|l;n#5(-UU{9A{xT$x z;LeXiJSS8kQV<|<@bf{O$XvF906mMuZAOQaYLBLYw4Bj73toyGbVUekzjE z3$NwdT;+Y`lBXh9y9A3+WmubFGhqhF%l?s)o?+#IHrhX8SZd$eXQ)25sfti%XwI-Z z&RJK(8O9D?8>dQ}jaAB}%?q8;S=R8v*?y+-@;;C2y`kc%l9_M>DujG528wTyz|K@) zXHMW2PpvAsv7YC`%OUr)U41A>+^^f|ww-X>PEghPE!p&Rofp=562YY~fw`~vsq8t# zgiIX!g}C6_fi|fcuEjwI|4JhE~@~k?jkoL;iEI>W8{yxYPZ|2HB?K2ZtFp+HV#qs9}TQ z-Cs1ofAE7L-m@bo)e{{qx_a8hlk$^A&yBRE)TJj=pK0ZUlf#n;S7_g?Y!R-_wfs~U zLt|H$B~`3P)hlrm)cf?XfC_yrV})Ww**#iiG{>J&J8Z=t(fB&SG${rQXsl6eOi?(8 p7G-su#|2sm47cYP))z2rP8ceLUBX3*6>Q=X&A@dUE0kZx)gN7aAe{gJ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/clone_alien/Alien.class b/solutions/bin/src/main/java/pr2/object/clone_alien/Alien.class new file mode 100644 index 0000000000000000000000000000000000000000..1ddbf6cc3bae056d594c108921116435025e5d5b GIT binary patch literal 3557 zcmeHJTW=IM6h011c6Qh{G~7d5oIqih%Pvi?G;L871raF(i3B8g06DYHu3^TW+MX5R zNA#tCq;Hj4seR{1RXz6Po=JALM5qsa*zwHz`15yepZ)gl-~R-FAK*?EMhILtI%+3O z$o5OtXYEu^x7F%P9@%yjE6HE5Sa8{%b?RjZ~6~m|3ADO|@E$d1Ah!VQr{ONU2f-MX3U-h(KSq+ zt1njs)OYNEGY>ml;Xh?8HjO+2O}eI4vhBi_5MYt7acwA;xbrU&#-O_7e&$QV+EK>Z z_t}!N%UPN#jh#CGI^wApg2Nkc*i3q*z%>4QzeA|QM|G&dIDs<-8tF7|Y!Ul+DN9zl zUUBN-q*_HRe!{eH-y45cY)=>hH_OSYuP;>SDpuo?*Z>K71p*fzWzvd-FUY$+E6Aer49uGm-hOwf?~4EkI}qm_mo>+`7_OD0W=Bu z`RIHbwx#|T$Nl0+;J8;B0=s*3BWYNhTLNdQ&>}E#umT2fn~;h3oZo}#4CstutLNPX z8H2g3G9B@I!YOU&b<*GKuwxdayJiVvxwQ8M*Gxyf^(uUY_hj#)Q{yUpv+I_fH#dR$ zgZ$WY4QXH!P<8McKLX=$97g?H6#^Vbai#_#K2PA+muThe!atz?bo|5L;N)N4_SA+Y zpxtSFuj7bTa0breNZ=ft-+|!gJi>(ngsDP=i|}zF!Y2g?HwqCh0Y&bU8%(Eg-1KOh z&*cKN=>oLRaCHC#U3EAFuEMngut#t{k5;1q`)&#B>u>`qa1(JVxYMlx9<&Q~c|LHL ZWAHiRkH9p1fg`}T_zQ8rTR!7o{{u;5CddE) literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/clone_alien/Raumanzug.class b/solutions/bin/src/main/java/pr2/object/clone_alien/Raumanzug.class new file mode 100644 index 0000000000000000000000000000000000000000..9e968e7018e0a2f7dde4b31ca248c291ee95304c GIT binary patch literal 2472 zcmchYTW`}a7=}N0-P(r1U>rA2-Z-@!T0pyEfP^*Iq1W50gB!|Qzc@!=By+=JUCC=jR{?Kfg3WaBmKutuV9 zH`K;!?%ReRDal{4NO0L$VQI|dyR=<`B7wu%)QHJ;<5@Nr|1vD)+E~?Utt+jWB|sJl zjNKJd*!u)VshOU2Do#YitWc6BT5Uu; zHg~93SqnK0xF0c%lM?1{vNor)h+Xeu*LPvh(m-)TrLr_;)(@%0#r$o8(d}N08K}Dq z)E!g3hm==YaQR>eLVYHk<_4!bxK>d{?N-9Q%2J#}!WWjBG~pTpk;dxOw@TA)wyHHM z3{7RgTSD@nPM1?-9apw2+M+^s)F!74HwpJDc$H;l!yEvw@~p$P7QrC8MV01cOAyutOF>o@|FP35y_ zooV65+kX~qC=7v{&A;>TJb|NFl+}HXMUyU;;S_OJ}`**Ozv`cp2{ZA(m7|o7Q0>`SgUG2G@1+3nV8%zmm z1g3l2r3}{yeErV}>y0y@cZMkkhQF#(?ej;%+49iNxs`o9uyK~8JMe|ET-qmsYo`5h zs{}XEFd10a&g09%7<9YqKm#*?zQJ!YfdY)e7(R{Ra|z0Lt>9=5-x9ogAHjPuIsP6F zea2A%j%?3#D<|=JygLhy!Z92n44lC0eua}c3RAfXQ#}~+6lku(G@M5IGuxzR@xGtu zTn^8b95sroF((+D)4^j3W_xHC@O?L17jm@chS0tQm!Sw(P^XAHRR=_HHD{N{19usL W>!@FV8&JnPz%BfhF`_CoVB{xSF|FDF literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/clone_alien/test/AlienCloneTest.class b/solutions/bin/src/main/java/pr2/object/clone_alien/test/AlienCloneTest.class new file mode 100644 index 0000000000000000000000000000000000000000..6111b6ab44be08370c665364de87d3d17ffbd421 GIT binary patch literal 1834 zcmeHIU29V@7=F`s>xb3O&ib*bWV`Ba&H)jTRfRDo47v$x9e5>anzfndB!?uYOn-oX zNl?&xf0X#<)U6%sv<&gei{`vZo;-ctujKoW&tC!HIXo;vj=)oEco;LO!ecgKVPYPI zx_2zN3wflKc*`OwROp0t;g&bI{c0DdMJNzh$__I1DFTbnq>}ChfqZl0kU(Ku z_eBxP1ZorPjxpMl;2Oz4d994FIvR;S9hC-SrNNZaz$;y+eJw0i+R>OfKBNvA#7Tl)O*5e9f%iP{!h+xNjWx(P(Z*42 z29z`9*?WSXsy_#raQ!{x9DjQmWH(MC$)%$Y1j@eavYZmAoTbth;WmMl%X3X& z^&nMF#$s2Eq?IUY%lB1w1)!$IwlAet304UCIL}4#zwplPqv>Xtr-0`yJj`!Lr-qA{ z(pS{-`8OfENeNWxWYk+S7zBm9mv=(3y$0E)i<0`>#cg!4FUw@T*nq8lx|wCI&T<6flA$KAGw6&<^g-Y-VR0_+=)T z=(~Tx|6;teOGAO0)}&89bhk5e?zuDP-nn;w{yzE+059NC0mcZd#M*O1CZxO1I?Rpq zV^=lzxo2E2P?CR+xQ>-{->0tvwio(L%OX2~4di z85<_eE(;P~gc1QDP?XGTXIAAFZzkHrJ~K&3V50Gw8IFb%&xI7`C4pSEwo4$trhHz2 ziv*@myu8s`=^|VrxucI#^H>EP?o&^NkqDR(O43NHX28Sv8FflKZBBje1xzC-V%`_l z;&d5LUC&Nk?>+T0^%ak)RECDkcx`IXnjb`{POmj8Shot+?WXE~)H=-{iErcc-)-MuG5zp>cxp<5^HWop?rRnkinbQ4!Nb`g~7F+{zxV;D43`rWakO z8%b>J3Zf{JcJCQ+52aIDvw>zPQJ>9FqbQ^1Fyc-ri{~gnHoOCPhJb8!xYoiS#FR-k zz}--wA@(#HNE(q%Www*ZrVIDq9C$oRllgqU^oD3iNk$jRp_m4X;=l~dm0=1l6PT-> zuOasKPd6}&HWzOXY*=f?)0e=F=An9MqJ+I#TstV>(kMQpebud?B9v?PUGkaT4Kis=Nrs?s#Lzh?2pv`3O+5H{TR54&vJ%>YcQYAEx>iO zym5@WiSP4li+$K8`>-vcbrHxcfaM{u47Uby-|oXbKae{IchSQb+=D8<0bKk!kcS#P IK#vdq06a_9UH||9 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/equals_hashcode/Ork.class b/solutions/bin/src/main/java/pr2/object/equals_hashcode/Ork.class new file mode 100644 index 0000000000000000000000000000000000000000..c7b4056172bc2597f6408ce2290db9e8df4acb63 GIT binary patch literal 1494 zcmb_cT~8B16ur|zyInr5fFG!g_|=N(CdMbLCWK%lRGUD>$P1b74(-71OqrQB`g{Bl zCYtEGKgxJ#S42otF!78g#O^Gn%bqch_obG%`+e*~7!9^68kP90vz z!ga>0X4;*4b=QMC1U`)xl!o|Xib@&rXxZt5_}8|hjoYfPL;g~@etOu6H26h$Kw$Rd zX=Vb7P(8JpJpcleuZ1!Aww+A|ZUZ(D{}gg?9mb)6RWYqRC_@Q+oab?E0w!^s!s-du z4)1@3>G$Q?&rtrJ;^%R6y8(X-I66F{;0jz#*RCOd9u{%#P&e><%$DL(wwpuP=n%Fg q-0cCGgOrB=#aj&L&LJ{Wx;%t?)021r literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/equals_hashcode/Wesen.class b/solutions/bin/src/main/java/pr2/object/equals_hashcode/Wesen.class new file mode 100644 index 0000000000000000000000000000000000000000..dd4f1036d7d086df21a9c89f7c018e29ff714aa2 GIT binary patch literal 2048 zcmd^ATW`}a6h7`oFQKqe*tiUsH*TwhT7-Ck0TP-(s?;%wjUjkJZsIlG5m1=O6KcI8Jt9rO+VljfeOWpYxsTXMg+g=?efnf?E|R5oj6hw__$`dz%edJJEOB zs<+L3+ve|57MZspGoh~n-hRammlc>KFrA4;O!nJrnJj@x$zo2R(LFp`w_3>lGJ%S* zjO!gdCLIFhhe8Vbn857P@4}ttCSt9ixeA;jFm;IbRBNTHFhxq=UrNo5iUvHOzKRnO zF)Ng$iB`Rc$L0a`Y8xS^0rw-OQ7B>l4(oHeh{3h;;95h$Ez&@7L#47bX4Vg>MF9Rj z!94s5fVpb9T(z8Et-ru|wLE(2GwDEkoF4dW6=l@!Cfuua;v^Eju+*dp*BFg7R;RvI zn&ydJYEofnDg(YHBoA72H8s{bmZ?R%RLFta;gq3~@F+q-7Yg~gHsD%|fR72M5LO|f zf(G*>jq%F$Ld5ipbls1P=f}6nGx)9 z$CoejI`l>Jn-xpUX0}FuN zh_6}+8gK&2xN1NJsyI*JNew(4PvY(#?wy?X8S1Yar$55t;Uy^DKNmvG)kb2>TN+z2!}0__TFRDqxwheO~h%>Mzqbbw7qVBa2#U4lhK PD8V(jiE|lO6L9?}h=5-! literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/equals_hashcode/test/WesenTest.class b/solutions/bin/src/main/java/pr2/object/equals_hashcode/test/WesenTest.class new file mode 100644 index 0000000000000000000000000000000000000000..eaa6f2687a67c7aef0fdfddc1ac567a92a031a2f GIT binary patch literal 3026 zcmeHJU29V@7=BZ`ejMvMJLk6$2SRt@IUs^)RS;1aR0pn3b|q<=wb{-|j!90@-{5cY zT2Rn?f0X#ArRlP7Q9k0<%|{nHl!cmUVRP#|!}8XhG~s%W1LS(KVv zk?!sb?jrFfW3hcbV0OTDPee{w7rhczs1EkZP$aODuZfxJM_c(K0;T&>N%xSzspiHG zf#PFaT81it`WXAf7;P$Wnk>D4sf@5X9*Q32I!R^BoYab@Mt5V8*n2dnb_Rm>1do|P zP|ElL>kGP$hK3_U!y|@<-q3a0)521v9Zi_y1L}}PyiM_7lPq}n&>ueZ#)Zdmj%<-h zs*R)C^eJb`@6Z+W*C`G`#(eWb&amx2KsJ*!mRve&vs4%iiL%aQ+-XBc0d8(kX=$c< zVoxgcqr%nlkF%r6Q>23Aex;O0xgq zpBX~2We$!B!~%gOF_F9{3fK{9=z&Y%B)EfT(&UStZ+v-%di!-oYn!{sDglG2U(IgH#PD2ZXr9c4p=q&$lz*?w9ZHKLWr#XjY*_;HJ@mpD-c)ZPsUg zs&DzKyUhdZ^Vb=R&C8T)qon^NU#c)hU^@4Vne6%NxhsKcUunq_PGF|JXWg(`$lfx6 znq)y#*vDCHxh6nX2~_S1DeQd$<>t~Rfw2`8@+zDlFtvyAP-~@YFipyzpGnP)iu*jI zfl5*lGb@y&saD;XC*}_I>Ya$wkOwi-=#;YH73*=jh()!EqFM)vTBM=khDv2=!fX&x zi{boDiq-EAM}}ICp_aQ<>qs!KzM7=52!y33L)P$;(pa4ZR%u!g)m);&&`gGWOGr$y zg%;eiEVlc-TXZcm)>+VtGU@JA0PlnJ>IJ$DGFB zN^ZgS!+oRhf-`UyPXx}vd5pZU<29Fi97el10Ifa%?J`E!fM808gOdUD2<#Hti<>SC Xz@9x8y98Gdp#)dq2Cfy{mEqbCRu=J1 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/tostring/Alien.class b/solutions/bin/src/main/java/pr2/object/tostring/Alien.class new file mode 100644 index 0000000000000000000000000000000000000000..ed01b637f7ea3e42489d646c81572a400166dbb4 GIT binary patch literal 1975 zcmb_dTTc@~6h2cbyIreb1#hSf^+GGsCd4OE6C@f*3M7CeK2CSXc3^jAGdtUeKgw4V zP4wL#WjwRBTx5X~dDxkq*>k@6&Nt_r{q_6X4*+-x^9~dU%qH4zMoh@&4(qXItQVT9 zy~BOeG%7J#$WC)96kIw`Bru-YgbX*=Ga~{;$s$gm(mMFGnYk?zC~1~POny!~1m;_3 zAG9$rN8iyGLJISW!0Xy^=yPG!w~^(t3b+GT2#g)@e519}E{u@^doMLlRM_JI^;Hy$ zkQt#QjkRirJW8HZue8YnQ8B(A=lNPYe={`}TD5GXC=3c3<_!&kkQ5*_i7@DLp z*BGb7`%QhLH0@tztxiQkQyK7&Lh_(NSJT8;=9yc#M}_RET}~M?=^jNGlEP3tFV1Ma z$F&y0g{XHTtKmZTpbXc_P=X49$()R~Njla-+1Jvj&GnYObX!%*XW=%}!mj^r7EMX$~&jCopq5 zU94CB%E0#h5QG$P_FvL_OOVlLTw%Bmc-^jd>dS#;q6fiI_nXZ>K{aYohspJc-& z7lG-2!`s5Xa5ThCm1>{A6*jNDEHSdqgXy>;Z7&ds;nKVlTr=%=_Z+BW1K)2z4$K{C z{{vmit0GD8Ct=S^UKrPXG0fr&@Dv{xcWd}O`2+0`IgkJV literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/tostring/Ausgabe.class b/solutions/bin/src/main/java/pr2/object/tostring/Ausgabe.class new file mode 100644 index 0000000000000000000000000000000000000000..594e6b4f65f60598206b7f09b760feabdfd5951a GIT binary patch literal 1207 zcmds1O>fgc5SYfBydR4FI0P-3HVc^sR}bj7t@r@F|aS^Dxq* z6A`<}Y3qzs<7mIIV?GiMs596oQ7I?)n-a!g{fSi4J!5dG*FR!Vf36e4witBIu`i6# zrU{oB`|(a0VRbqc3C23hWy+n@3Ui}JsmSbO3|fa1fr*GyZU~g~_>_+Y?vS*wk{14z zwu6Zl7L|6GaTia}QKa~oll+U3RAT5$485Rm8Bfr9mF207r9)ff!jLpY)fchT2CG7Q zeUugpm55`hL=xgbVVzG_hNUxLfSZv6o~KW(W1 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/tostring/Raumanzug.class b/solutions/bin/src/main/java/pr2/object/tostring/Raumanzug.class new file mode 100644 index 0000000000000000000000000000000000000000..d8b92ad58780dd1c1c43ffd12b9d342e2658cfcc GIT binary patch literal 1699 zcmb_cTW`}a6h7|CnufBCZsRs!?zpu~Gzjs;010g%Cbdl3#v~ry#BIGLc4Rvh<45s| z1QNXSqYx)4-GznG2_9m{$vL0D@7%us`1}Fu%s^J4wTQ=MJz zThA(EwU9k;lO++8ACg`PiUejdyO80Jjm(gM+vnO?9)?^KsJ0FbwlaVfbTTYSZB)0r zqqJt009hk2`BX?@pA(p`pY&?%5GbyyfS2F`f$2lkms%_Bz%(g5d@D6KDje{D`YMV= z$gEJ3##(hk9+@Z9EpPWZ4Y(gNjYcu^_gIh9CDhp*>THg5F3~`7L#47bV%G0di=O;_ zjIlWCiScTt@oJ`ont3>Gc{Nm$Go(O$CR4x;rw2r>qKw-8n7id+eEwpz9>t;Xg{3Bm zxkjB5^OE>hX*x_my+MVci41sGNFFq4J25t8p1FnlRLFta0*k-P+r~aR zE^$jG+UKuCn$W3((Uo;8&Y5+Y_K(16CGBg$HPe27zXbO%+6PTrg2u5iHwt;BEsVi| znBHli2ACBbqy?zLIhf4eO5osL#6MVJxSq$;W3(#Z?tX#FyXw>@nE963R&kv~8^C84 z*Gl&8!W_(J-!8%BBM7P85aCJ=LM<2J8Z3;BP|roU4mXhfO}sm0x`_Ko(IFq2!^g`( fTS9LK$Q)!i6L1U91-K1&a0j@LkArvJ#i#xgRU_Aa literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/wrapper_boxsearch/BoxSearcher.class b/solutions/bin/src/main/java/pr2/object/wrapper_boxsearch/BoxSearcher.class new file mode 100644 index 0000000000000000000000000000000000000000..14de92f02ece8b9f2d70ad9da7ba0dba4f5186e8 GIT binary patch literal 1266 zcmds1O>fgc5S|JYjUD98M z1QOi&AKdu`h*=xaR741ILL5BakGIcnX5aYpxAz|b;6B_4phaNY8lDtPs^pLzv7|J& z6P+Fk?vl5Lm8CGRQ@yZ)89q-Q>cylU2@^n@z@R>oGc`+|*JlW<-IGeX2L#THw)P3M zAL&d45EAI0U>_T!O&87*^5umx!s`4;WR&ZolsR)!D_RQEbx0u=B__2@fr-aH@z^Vie@hsJPm3~_Tsmqi ztO<%$)|rYsZD^DFXp2fqE0u`@sqixgxPxO>~P4?1w3!1`!>VuU8kU2l~B z80+z@DpFyl4DX)6aI87Y_nDD?{$sK2=F$?_8ULMYchQml$_Z?YUab<+g$)8<|G<_1 z)ddlVCb}|QJdwWggQY&NnoTQf}vA0v=G~Z%XPd0 L*YVv(hO6HJK{$bC literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/object/wrapper_umwandler/Umwandler.class b/solutions/bin/src/main/java/pr2/object/wrapper_umwandler/Umwandler.class new file mode 100644 index 0000000000000000000000000000000000000000..2ed0817e93f4ed9754133669f4c74cebfd0fcb3e GIT binary patch literal 1837 zcmcgt-EPw`6h01RO+(p6VdEdX!9}}^Mxcoc2HYT!CUtPJ9|>`R+{A6YC3a*x8+{fY z1PLU#=M{Jt#Bsv9O)aPzu!|-=_W3@4=g;}}_nKKxgO3W50okTBT~Ul#}hGf#vR_8Eb5&DIWq%5xR- zD%1$f9r?b{T4^6H5O26GH8(2R=P`{`nu&y2p(M?;>Lxrjk7-cb8gLr(C}A3%G8XNz zKBvp5vR$fdkEvXyvEqhGWogQ6G@uqK`1=e)I!=LMw_Vt6r>y-)!l1UEW{HS|r6$LW zpjc_F&LgWdEkkd%s4z5_G4Bb<<2K#MjdiCMuw+Pu+*f;?GL$tq$q>{wtroIRBPN~b zE~lfcSVbAN!;GT@X?fov$GlFz_tytcMKGPy&{&>MjLx+{%I!eK)T)xKDWq-Do>pm5 zU6&y`YEDdFk86X@#bzpuap^6bN_Y@}4;Slj9%czFG&@JlS?;g7=AG+cC12%fm+LKt z{YaqEQ4vdam=@0dwOFwOVF*0xoMw*J2>6FFIVJ0@aV_lqBDpBZyh(*1Qwfb$CKIG@!<}E@Bd23R5{-~)858%Y^q#G{H1VBJ3E?- z;-;&@@`;=Kuxj;!ehLsZx3lkU?3I?yhU4?5Can~o{mX6_W!mWw8+Y@jr TBb*0!@l+2e+{1ST8J2zm9`7g{ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/strukturierung/information_hiding/Rechner.class b/solutions/bin/src/main/java/pr2/strukturierung/information_hiding/Rechner.class new file mode 100644 index 0000000000000000000000000000000000000000..5a434387e95752d0d1bc6583d1c1f905f253fba9 GIT binary patch literal 751 zcmbtS!EO^V5FLlmBugMA(EE^6Dxr;pI1$Q$3M8Ze5-F8>LXLORb?dcPwzp~zd>0Z( zaOa~C<4vUoaY5oT*1UcD=J|Pk{`&eI01jZU2OR+Ro18g`Cy?$t*J@#xnzl@%rah@J$wBU*FnrcPdkt$XMkPuL*QUIwfl~^Ii<0Nip?2+w>;4}Cd zB#>awMQ&)CWH1l_Jy^^Hei!gw%=$goyn#$MPc$nWwTAOux6Oa+&#poc|4Jr zN|A9(pn{7tK9;ycs^g2Q<5kshP`!hxkq))-NF|90dLoqX3zEA`NT$TWlsM>&|ABt4 zQ00ZO9*rHN;5uwJl=!Q*3y@XnKYj5#(u2Inlu#aBSx8F;>fng*#^U@qdb_9`mO7Oq zrKwmtRkCu#%gisMV|-aUA65v3TnBgN#7mS^1DUx-Dtdz){f9zE%|$>i0~J97uC`zU zt})o^4bIbZ`rVSn43LA_M$(s;rUlIxN!~m(9hE!3yhn7k_x{23%BzELD75@wg zBzWgXA#NIAeW(x*xwfy*J@@2X|M>ak8-Q1M?4ic+B)3tR3Z=tqu@YfspM@)FrJWag z5nd@Rk~|!Es59)Z0g0ge<@{Pkj-mDTay*$1#?uQ1He}d4H#&DhyO~G|xkGJYhQ>>! zm3z&w)9cR|>gOhw9`+bIH-s0~8rwvNG4H*$GB?Re#ym17rN9_ z5pPiXKH4~FqlGTRVQ+L})x=q)7iXoFoe?pNi*zpSRFFFi-I0kzG80yn=ikY?TdJJl z>F9q(eMWNw!=47G<6jiqYzSMf*ed_Gj#WU*qmjEUQX}yA<0M3WqqN(*f?`K4tzel$|Pu R<1GwFTNoG~QcVqyegVM1%gz7* literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/finals/B.class b/solutions/bin/src/main/java/pr2/vererbung/finals/B.class new file mode 100644 index 0000000000000000000000000000000000000000..703789438f136ffe0b19e90595b5162a8bbaa452 GIT binary patch literal 634 zcma)3O-lnY5PhlrT&vakeTzk;de}wr8?p7hP$=!)iJ|Z!yXy_5m9{g`J?~a&5yakU z0onf{PZ;utN~`3UVXD5>X2_nIt}LL$P#HZC2;x1r*4QGZ86K~-m9YtivdeuFMk)}A zGMY!$bOIUfbEnkmOWu`!AS_`b;opm%E1zVtKADkFb7vW6WH8~rtq zp<51liUq3nsLLojFDTwrohOvvMwkl46azYQ6w6~2=24}pgas^8CuP_sh79E~!_owX O`4K~kVOXJYx15FMA0P250A`G$+zQz})vqT)n>3nEga0Ed=J93Ag;*R9uH+1{x9G9-}T z&X1~?-2wqokhs_$&&>0i_x$zz<7WVP1`iWhW3U^%$||XCb|RNDtNmWKM2~*a*di;? zRT#a-N7+;tjZdJ*V52KElJajBC#WKWiC?&mC4Q#gWe05V*=|8 z#;eYk-a9{lYYficT93h*CFVl8s@6tE?X0N1TNtdu6TydvC5jxCk)DcbsZM2qVwccuugdn`(jnP?9JNHs?-Bb0ocPS*3a7f|#JexjsR>&^?$a+L_u(q^>9j_t1O{|7r06ka8SVTN@OPV|4{-fU nS962bewU#c={&lqf}3!QB2ozM(E2CB-AfSGFGaZDz4PE3Y}L)a literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Main.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..6abfda9574a26cd4b7920b216a640b31f330dccd GIT binary patch literal 999 zcmcIjOK%e~5FUr5$u5DEK+E%BdP+g;3dD&57X%Vg0*8i5h?C=;CJwvy%JxR|!0$o= z3GVzT#CU_6R0;?V9CrMe&)hM9#}6fmTYpZOCLz-#s7iiI7Dq3OGFMW0?y3?kiPX;9N_u1YGUdTO zSB_UY!(*i>#4&kjFRI+HqZ2-=oDUvCaiN2zCGi?%934`H^^{AYLk1J%r{(d63+_)! zB+!ZTSZo0O$rVEfE_9&<7a8mfhO2HYLmq@~^@b$wRaH#Tjs-P1WC@xHtTVc{!k22nA=bJ9xJ#dIxqHeEf@f_A-wB{WyB2JbZPV!?-7;F^FVK10k3T{8TaD?F4H%$rn{0Q9 nf=ke+Qv{dc3f%;TJ7*YnHZZhmh6Z69aJ9DA;3ln2Vz~Yj0B9fx literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Rechteck.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Rechteck.class new file mode 100644 index 0000000000000000000000000000000000000000..92318d20b9e38a09f6bf6a4b947fd175e966279c GIT binary patch literal 572 zcma)3O-lnY6r9x7wrgv(+I#e*AiF4@ta=dzp?I(=cudpBHoCi6(zN(*{279R-u+SH z+hWy=;AN6Gc^~s8?;p>v0FKb9q9hQFosLpvvgl4tRg}BEXiARUV3NgAOg1I&4DCjj zq(`3geHCSaoqracnRwy^77tBk{INh~>->ECMxcCRhg3yfpf#JCC?0m|oOLxU2|QkB zj>a~b(okxf<|a|z*i7cm4iZWaWKh2vksOjvl;fOS>3bEE++_9PxBBo${iYmR8q3Uj znJTYG(sMaI+C8gPa-*Cn;xDr7M`kRr+xw@Z^Ka-11bsVkn$Aqoyg7fEX~zZx7WkLJC)Yx15FMu>o4A3LLixP7Jtb1LD^;8*a6v?h6yVTOiKFA4?z;8bE3Y?de;E=; zaOX!=%x-`b@gZ@sJ>z-LZ{GOp)yK~O@EjgT&|$D&d6g7W+vH3xWm5WsWQiXAqPAI* zp(`+WjR(n8XSI)@%V4W5G?MP$F3wN|2GOaJsB&b$W(<1IwAJASgYI}XIic;POEH2? z2BS6fmG{o~;Ud2oY>C*cs2)4jqy4 zHalz_9LuKX-=fqP5eFC4Y{ru#Pk1|=^+E2VVM4y;Kq0|>%#*E zyZ@dGjfId$uJ#J2y3xejKhnAhyTD+Bz8NWn8_=Uu2fEZ`pE3iAp3rTFcK!+Y`|aTe uxb>y2xlL=2YF0>qVSDCq2ky4H9k_Rmp{ZLj-2Vf^CcXVT!$Zn-;L$f-(#{(I literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Main.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..2b758866fe2ca65e6bc6db8554c776a9b763139b GIT binary patch literal 999 zcmcIjOK%e~5FUr5$u5DEK+E%BdP+g;N);yxTo6b|2^<hM9#}6fmTYpZOCLz-#s7iiI7Dq3OGFMW0?y3?kiPX;9N_u1YGUdTO zSB_UY!xN<`#0hz5FRI+HqZ2-=oDUvCaiN2zCGi?%934@G^^{AYLk1J%XXWvR3+_)# zB+#kzSZo0O$rVEfE_I;=ml^B~hO2HYLmq~1^@b$wRaH#Tjs-P1WC@crg5jc{!w62nA=bJ9xJ#dIxqHeEf@f_)fy} zB{1lYlylUtF}20PU7)F_-wB{WyB2JbZPV!?-7;F^FVK10k3T{8TaD?F4H%$rn{0Q9 nf-BIcQv_Gx8r=kjd*>K-HZZhmh6Z69aJ{xS;5MyIVz~Je3wa<6 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Rechteck.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Rechteck.class new file mode 100644 index 0000000000000000000000000000000000000000..b5676f954aebb12f08fc251333f9be43a8a14f27 GIT binary patch literal 572 zcma)3%Sr<=6g{b}tz&Do>OQ)vATwB8`PzsDp}6n`F4Ocfjm}JlG%fy(pCKsd-j5RR z6l>iGZccJf?&I8(kI$Dk0LR#@q9hQFoQ_guvglq-RFu0;G$BW>KhEMPCYzFXhC0zD z>7gh6P(@i__n$>w6OWz1;*rUWKM|<3&(C*m1BOoV5R4&Rd0r6=5MN{IgjQpoT^r6|4wswtMpxuGp(AJ}g#j_Dn_>>CaRf-5_An!2WF-k3d1wPOnc3;fIAlWoT$ qW0j+QW(z)eMeVK?Jfr^3Q3*}PBB#h-Wvox{0oKr(a_fvGYFyxgab zMm8Q(Uuv6VCRVwzsmz@1#grUNZ|QD8vQIizj&m}lhbki3Ve$U2cz-6oBm0&{GPSu( zRIUdy=W=?^Naugcc`Ltk!Y@Vn|2FeHG_cadB31>qcEZ^Tw`^4!os=uKLX*->k@U#j zDON4e4y{)4gL0;fr(`uBn32GKIH#l2E1U>;x3+Mau1(pyIprtHu?>L*J~8-Z(@|rr ob9BUP$$Rf;Jhr`8G(S12pv73`l=*9n&B@=xI@%L%gRz3mA93xT{r~^~ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Figur.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Figur.class new file mode 100644 index 0000000000000000000000000000000000000000..3cf804d559dd27700f5ae559b944f4fc350babb8 GIT binary patch literal 941 zcmcIiO>fgc5Ph45CNY7OLis*ydrGCsmVgrlE{I5x0vuW@A#vHPr_Q$auC-oA@XL@u zf;&G7F;0O5sUY>h#on3SdGlu8`}Y0Q7XVLjzk`;*UgdRCC}WcoHCIXLA0%_~9XgI4{o@Fx-`K!7+YDOg-clH(;C`5YnL-UjvjF= z_#b^n^meoV5m&!*)WS9Xt}kwQR6h65Ug0`!aMU1dtst~GcQFKko4B=tu;g(291eqX MI0)S3t}WdA0SG|!)&Kwi literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Gerade.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Gerade.class new file mode 100644 index 0000000000000000000000000000000000000000..50f824ce108649a9baab999ead0c87e8edfcb268 GIT binary patch literal 1029 zcma)5+iuf95Iq}0E>0k&wA>1G+ox25SOT61AR$CiqyQ2PmHN1GM$Ur0YptCKz6=Q@ zc;{RA2E^EIS_n|(WoKtS=bV`{^7o&gzXEuSojNK4cT*SmvC_tWr{>B}+&zCzj@)== zLO&!MQ|2_?_g|1x6RM*saA!rxz7A(jpcW}IAqj{9Cy%tz*%N_kcd&QJ;hD`@TLPUz zKT<6F+&SwSxFGQ3t#OpvXigIu*f`OV%Ct2yadsS0oIaFZb2KG6p&(L@ixL&QS0Tw= z9;A0NNbhuzT{*FoN@Ft_t1OtxjN$Ylp&Jz-D)N>PHFg=YDmD+R&?6JSI0%Y=OY~&;}|x zR8Hsl@nbcc>QulVuDGglyM2L1W=l1JjqcvxJqT>QnVC$-G%$0WYLhM9#}6fmTYpZOCLz-#s7iiI7Dq3OGFMW0?y3?kiPX;9N_u1YGUdTO zSB_UY!(*i>#4&kjFRI+HqZ2-=oDUvCaiN2zCGi?%934`H^^{AYLk1J%r{(d63+_)! zB+!ZTSZo0O$rVEfE_9&<7a8mfhO2HYLmq@~^@b$wRaH#Tjs-P1WC@xHtTVc{!k22nA=bJ9xJ#dIxqHeEf@f_A-wB{WyB2JbZPV!?-7;F^FVK10k3T{8TaD?F4H%$rn{0Q9 nf=ke+Qv{dc3f%;TJ7*YnHZZhmh6Z69aJ9DA;3ln2Vz~Yj7K$Jc literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Quadrat.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Quadrat.class new file mode 100644 index 0000000000000000000000000000000000000000..869caecc49756ee4ba1d48589a2825d8c7ca53d9 GIT binary patch literal 571 zcma)3O-sW-5S@*+X=Ain?S1X3UJ_AHR=tRVPy}r)c-(G=WNnfS+imgR_%j3rz5AoY zNh#Kg(94^d$9%k*`TBnQ0DyC7x!^DeCPs#tP>ge%tEqf9KyF@x%v%9XufQ0d$p49Q&T2wkW%Xw1i^f~H*=qfHGq7`!~> z1}8e5VZ^1*3Y7}0bj}N-M=55f+^Y`~I=$rzeL7YicgqzUJ(c6_G#jBA z2vW_U+0#;_Lt#`IFUX2b)P%udZ^fG~{?KLM_4U+9yjEpzf5Fd{!#*%rqbCDdMl!2} pE=4EAI%K_fs695lSMWb6a-cz2=9Kx{g#O(3UiG-JIl}+{d{mpI@)<08X({K}jGQI31Cs01OJ*uE4&=^lm6c4*_&blfV1)gs+ zM+2LTs3)~ebCW1;us;05&$j!I}S7CA-!3S)hI53q{nm|J5kVf`EUqM%m* literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.class b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.class new file mode 100644 index 0000000000000000000000000000000000000000..ee87e4779340dbd0bc1ee38c5a5298cf89e774d5 GIT binary patch literal 1018 zcmb7C-)|B@5T2#9zzI^(*7|$tQ=1qrY5HW_+*y55mt`f%ibR9UuL3- zzWdks7Z_&`TdE-qKHS`Wvoqg*_s#tH_2nA?ynuQEatsa<6ZlghmH%GMgddv&e})Fl zFjXUeqE%u|ICmK&O!zo&!v*~C4=p~PNp~#B(!ghRHLKz{uzV( zu@12SH>rD3aAJ%$Mc8EU^Hdp3bTq?|2YMRINLZ;AkBuHiI8B~$uQV7V4>5>@p`us> z6EQ-*OWrgty=naA%`Oi$CR}ODr@{tfZixXu#u(VE4CGnEdEIcr8rSi8rTH)MKq$vL zM1HB-YA(3_6ys_|9#o)K1`lpC*ji$m^Q_vD3cKlah-M(j1_rf`4n%Y&jCA-TClu7MjA%Y+UIyL#^{RNmC8pW)W` zto{x~*A4V+Q7mWQ9&E$iEJtQvVaQSLe;Ia2;X;GEY0hweiH4_3H00nR_2l3YaC+y7 G>+x?u90oQ3 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Untoter.class b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Untoter.class new file mode 100644 index 0000000000000000000000000000000000000000..5cdde7ad098a48bc2fd5baa53fd859b50c901add GIT binary patch literal 1021 zcmb7C+iuf95S>j!lbD3Gp)F7@-SnxIP%JJ_6p*4eph#&Ra;tbk8)uZ5*t^#5I>479 zfdub-4PSs5J5f_mRD}nx_l#%G9G{t=zrTJ5fLBn>L59H-qdhkizH~o`nQ$Zh)SaP5 zJ&fhpohoUpj;B^>lx|;IWl`rK%fMZ~>;er+2K(J!y?s{ioW1Y2dyURTz1wYc>b>)R z`z-_3WKcRyx(R6qB8YK=G&&5nV@WMP3S&?U8Cj#{bcK#-=ivZrcjYb7C9C1&Dksk=_E6F3Rh5?4=1$PR)3Gxwo zfzXr`32!RK$PdY$+NC|Uzw9~WBZY=bWqBy9H{q5T@Kc1Iy~;qo)e^gFiLlyrd`@Bh zOWYGOVI3mBRBaU(+?l77JGBTU}ub$(7yxSI67|T;XZ@v^@E|gFmSpm)*im`6N$wIcj{&i z4j61L2R^rtlFof&Xg7M~mw_rUNR}%D_uvL>63V40Pmuy)ps&;gZqivK^qg?IjNhR2 zu2TL2+dtC$9XgY0pl6rPVtRLA5ALKfGW!ZchGNctGTbGFOASeWw literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Wesen.class b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Wesen.class new file mode 100644 index 0000000000000000000000000000000000000000..5a818237b315a61b02c3377123aeddcb821d0b57 GIT binary patch literal 1115 zcmb_bO>Yx15FLk*O-!Jrw0spL(^GQU6^IjG7X%VgS`H0G9KGIY;%3)g+1`l$G9(ai z=SLxCH>hpY3I(Ybf6hG5dw%ol_tzf)@Dd(I&|;8yr;v7bmApCJ0i2_g|R^tGN`Etgn*w*VsjROGRDu^f)Vg-A{$H`=pOtU+)%+3b=WrBjf z`=i7&o3=@4WLGJO;KR<&?0os=obOyF-+z4m3INaGP6bK?o+O3`5tAx7Vq+G>=20*f zMwo7@2EjGK+p}e)IYVIQL8DV_G2u(+79DGE5d#bEX&j! zOfJ=!8Obmc3!j?H_**^{P-9pI1b_Q$Fd#DguqtkPa9vGK;1Q%lSmV| z^)6LbMq*oyWg_wD7p^B{jSNp(>bNMjt8k5wheg`m{|cBEJAq}V^(2*46>bvp;CwVJ zmYx52-4O70b!xbHEnPvZoZjBqbq99=uW9@<05}q?t|c5RxO$we0lY6zec$vxLH!$k zEkOfEhXH(6aja)^4=zI!R{(3cTY@V%bEtKEpJltcfNgCd+w}r$Hx{tnTfl}ziq@3i F_D^?t)tCSP literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Affe.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Affe.class new file mode 100644 index 0000000000000000000000000000000000000000..fd79686416f87e4fbb08d8adbf4877c7cf2bb439 GIT binary patch literal 644 zcma)4O-~y!5Pc4TB-^w=fc9!QQK{OMP*3GUst}w)FQiE2<~T#*cGq5cod|vz5=d}F z>W@N<7X)08xXgIIp5Gh$|NYesfL(lPp&{_C@;WP&vDsfWQ(5V^vKe{u!>Ju-rOPi0 z=gWzq?C04Twa^sE-aB#X+`y0*SlBVvggt?^&3=7Lt{D6{cw@)gUrz*@`))zoHd@koR3o*r5pziLnQ?GZ$#79p zlAw)`UCd*Fh4zi5U(;epexO)|K(Ft#%1@LxF@8!m!^BhqY5%=TkI%F%kQ}?I*K}wi zawjHh2`#J%EWPabk+neg$W#@-#(-&7SckwI{}HekkuKX7N8dTyV4qy0{il~)qI=6x e1E1K&p4h+0wp*VQEMd8>_iDR>&+MCATYUhCgtv_V literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Futterstelle.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Futterstelle.class new file mode 100644 index 0000000000000000000000000000000000000000..528ae7a3a12c028adf6d022fc7ec34f6f5b15ecc GIT binary patch literal 938 zcmbVLO>Yx15FLlKNtQs`K>4_toKmUUl~Bcj0uoeILJA<1Pzi3{-D%?DwO3w-l-|d0jrFE zsf^cD4rK1oOY4FxRLEvBa6X=utZqG@YmV!h<62hyd$y?atSF7nbdbI(kyxhnfvPMx zlB=SJyHa~u*&I)_IFwp;XpuVs?(K4*i*y5W_jz}L?f}%Hrx>K>d%&_9r2GX z5)h4DMHwFHy7ujL8!xXP?g0ChUj#sdXB)7|V~bb&92NYJK0*6UKl%XOFH201#~K6t kZSmM$plk3#sa z2)Zz^*l}!s`93=zpUBP68G(DtL$#gB=jbYL(# zGo*SwtU~!8O}Eaq4U&M$fw9IP30T=|6%WOV@h?3Y+uz^17EnHRT?VfUnE%b65IL&B zjDYtmOPINMgk7m!lA2g~VTAw}&c`*}WLKA$kB75S1RyN1%p!{L%omA34rWgcJgV_d5 zLxqL5jKzy#(m`q~Rw1C-a$3dLicB7VUzYvAWCFHZ|J>BRfZ);%N#m)>!5iNjEQC~H zMZm)Eq{rO3=-gx(@1)ISGgt=!Q~X(gy~s(kt#Y)>wP YpJ&@B&H*gIVv%nab_rJ5mpQlm1r=DkTmS$7 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Gorilla.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Gorilla.class new file mode 100644 index 0000000000000000000000000000000000000000..c670c724d7abc2c867c423a75c95a437287242c2 GIT binary patch literal 650 zcma)4O-~y!5PePqn=IiglyWtkKtj7})l+FJRaM(d+6w`RqvH&T!E3L)P6WTKQY*o+ zQhyZc>=FT&N?c|2NEVVC6V^uWX$ujtnrJ{N#)9!Fea!lH)z)hvnmufg;O+QSl-S?Itx`Y|g;6o!gb2=oVDD|@PfspCbm9jB%ecs+RT#uv|YB#<8aSAR^aev=`St*{G$7yMJeUeu)7CLF!xY>R#R8=bR$`V+ld gj#^k_Tlduc>uh_?ImHGxn|i;oTX@C3&9#^R01nH#K>z>% literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.class new file mode 100644 index 0000000000000000000000000000000000000000..25be0cb1cfcd7fa8fcf00fb970e9272b4ec5f055 GIT binary patch literal 1559 zcmeHHU279T6ulGECRwAYwXL5IL!J_m1Vs_73R+ZzR3B0c)~CttO*8H6%rY|@ng{=a ze@9TzcYl<4XII(=D`*9uWZ79}_T01Q-aYqz{r2%Q06c{2HK;JS>ulUlh1C5$F%|vH z-tJG)q8;UWx1Sj`OO4GY68k&G3}u=t;ib_vs4`e8B9tKDtI;0Dp26Y+sil9!;7q5x z&7itr60AXkLF)+n)LLWfaF$inYi-dPHN}L-Ce36?&NFL93R8EVM~$rs@&scgEP*l+ z?~7gJZIanLl-WBbv&|EOj%(w2DttWQp5pN!BX!5)Dd}EFx))^ie$5s&UZk0lvGm;K z8CsI5ows@Hjpb$1oi3M-=Q_c$)R^@6X6}6WWD%xjTXZex5V3tP-h!(xim;Og8+EPoDz=4RQGThx*cZUN0k z8ovM)x)xxO_BGnwp;JcB=o8f6EJq)p`K7?LXbl*kdx_R&iGmBTOuGhLgcUjo3^(Q& ZR!?A9DHtk*t-z&Xy$sjrStW)m-vK%V?MMIs literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooTier.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooTier.class new file mode 100644 index 0000000000000000000000000000000000000000..09fa4b5b46eda75fcc0599d51044a69ee68efa0a GIT binary patch literal 1439 zcmchX&2AGh5XZ-9Xp$w+5>mbjts5vxE?I#%Q9wcnq)I83Xj+NhoZV^ScGq6n-iSU2 z4}$~}+<6L~1Tnj5`awep7Y?!4yE8w}fBcWX|NQ(F0G`9c5)>Ht)&zbmr1JO0Q22>? z><`hP>7}agCptQewMhmN{avlQ5={w;4CeFLNKnXTZyy84pr}NQ3~HT|Pg~AN)n8*! z8W7CLJ_EMPVD_0*(!F4?&^#a9+9A{{9byTtFqk`my*5UhGR!gdV_O-tIvQfg105$a z5>9Hx6Qg?(#`Y=qD%}C{5Q9h<3Q9z9Ao|D~B(8ldu6;^egNGU|SK9GdxM08?<>QBh zl%39}R<*NMwX?F?f2Mhrk#rsil`(tBk1KYX3+@gR^eXFd63IY1Zqoz}X;IdhG;rGR zQCFKSE-g=0hD$M`9S%o2~OsX0Z4!RZhmZu7=V|D)wdOhTN=FtJfL#b*&7`3_f1G zXKw3p#{W7A2Ft%|=#q8M>e$k$3Gj`~4ySr_OXUBM5!bsDSrvj=rp z$lu+7o2Lj_+=y^%0%2();SMa)-ghZ8+vgt5<9beLOA~0T6KI^W%fRZ8a|)zBQ{I48 Jnu|og{|iLMm7f3r literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/singleton_einfach/Singleton.class b/solutions/bin/src/main/java/pr2/vererbung/singleton_einfach/Singleton.class new file mode 100644 index 0000000000000000000000000000000000000000..7e22648982ef285a6aef2db003f7b3df2e7b57be GIT binary patch literal 858 zcmbV~U279T6o${FF`M1SrdI1muf|>_UhJX>Qlo;D3V|3e5({3*WcD;W?e5GnGaK}m z2?~1ej}p&rzZ6BGEX>ZwnP<-Xp7Z_3=dS?p9CiX|F?iyvObVfNax7LNDea?Vg%<6i z(#ymtz0A=Y{T`J*5;99>=Q{zk8EiIpazUYQ7RM+(gYI}bo4=gyA28UPT#-Fu(0Qh` z@-G;y4Tgsd+WRKO0M;4wFP}WH*4QpwXRP;DTXZI0ValZ`N|g(*jOL{^iyRC0ltYdsXTX8iI!5<&f7|QWBI9%gCSRrS31Qbr7?~9>&p51;pSTYkt@A2C&&e5miWykY`xC-Wt73t6F32JVTN5KiekiP}*Jqn;pDD*+eTjZd zDGDtqax@rTxv*Wh!{GkEt3}0P5Y0?wCB9O1ZW|X}*BA^Bf%<}an86NQgAUDF^aaqR zosd?K>6Fnw`U26rt==ct_}0YSps~}OkY1YiPNU#v!wBIPY@ZPxH2ibI?Y|JhhR`Ak JgS!p=-cNqD^OgVr literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/statics/Spiel.class b/solutions/bin/src/main/java/pr2/vererbung/statics/Spiel.class new file mode 100644 index 0000000000000000000000000000000000000000..b95bec8938ca0bc1d47d02124e23c8afc7980955 GIT binary patch literal 1333 zcmd^9!EO^V5FLlKNtQrMX$u7;MmePgB?57xz<~-Rq!bPWa9z|Me$A^ zcPg!enIVVTcr2t($LM)4os_KX-@V*qFErT;l6v!*lGeMT%vGv9x~e40^0f1|O1-f- zYqqjCDL&7uPc!NYgEh&&XPsJS2rLTg)1^KbbF#71cI_BO+ z))djez>S|OvLnj5?1-!jDucI$axTb}EY9u2M>@okQ8h>3vp?w5JBo3Jj# z#uXy`e||gx$)2ffN^e#8DoH#y;y>4bdlwFmnLh&ByR$s)bK)F40X{|ea000DwE&Ae zZ}99HuL^!9KcM+}CHV&JUlFs!W5594%RIJcD7XbHJZr&iSml+#uyui9Z4Sd~WT-K= Q26y6k7w+@3&I}uW0T6hW_y7O^ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/statics/Wuerfel.class b/solutions/bin/src/main/java/pr2/vererbung/statics/Wuerfel.class new file mode 100644 index 0000000000000000000000000000000000000000..13d12379b216cf6a299696c1b5e43ee71baf50c4 GIT binary patch literal 1618 zcmds1T~8D-6un(=cV|Gr6;%AJE9&CMZen~AH4y^3VbMeujPa>EQ=l-@PTCH_gTKo} z6Mgrm_#=$BGmETYf|B^;!*p)j({s?feEI?aPoPnO5`nu$2d$V1+1h5itd-~o ztzE9U?xk|GWh}EIFs(N!*Bd;lz%YS{3>Pune%0INfh92V;@RTbQv3PxV!KPA^sY^y z{60HEfVhcfGE^~vYUg!k&EeW(A%%TPV5l*>PGERJg}ege1jY~f7qwQp3TH@3tVzv{ zigtNO0~IGCLSahMM5|uJWAljmUU!SrkOvXd2ufJ6!!|jsV?fPc0X6#p)oG}>p;B2I zGaGDCi)Z;>g3%0~#nd!iYMM?`vzRIOE8;|HOEX+*MMMK89ea<{1KqyYj+00P!cvna zTw@&4Se*t|X_{xUF-wJ^sSNpskSJsWchF{OWCzhrx{?~}b`V9Gbjow$0ZQM?Q(d5h zT16SP`w9P-pjE4d-28*P95kPbD0CS(lB7XtC&v~L`rhikv}})ZS4;P(kcQ($)j!mo zD_2Spx126S%$RuHEFE9}uKfSzx(Rq$2N)}M2uwC+kH%L8 zO5pqP?y`3KPwtz5zp7Fl@Fn3gKH7ikvX-yF3_etOVk>a#x3@139}lbuW3ceM*iHtn z16~@wu0wDUPC*$hA1YAAe+@je-44E&FpA@8oIT9ui24j;Z)+1Dq4pJ5OE86F88Lw0 zIUF6{ah-Yx15QfJg$tFue+Ccd#2e+r>vMV7F5(O>@q(}h{DU~=O$Ll6;ckPuwBK{c? zNO0#zA;ud@SEvaRhxLxfuOGjj@sFQhz5&2{7Gqz%BX&$C4VT74` zwMe~~3zM@x`ATGz>!Or7b5bi>8a>ZNVV}~td%P4h6Fg@IMJ40sY$50& z+D!h~O#ZfcNHZ-gRoYQ>%a_z4M0_gIVjY4vPr}WU;4S$FGVV@_GM8LBYJDjT8dlaB z&#@YGef`mxN=v=U#Hmzx&?&B9%zWV&@W)`b;RQKo{kHMoY1W9UG?2Q9ckU~e?N zEZ@u-sTN0}yn`tc-ueQYbj+|~1cp=1S$@Kd4D;W~rdvu&;K}sAT787g#O4!djV6=v zqyx7J9BgkK_6?r`%27`s3PBZhs;CO%nf8W@*D|>7Up%X-6L0`{BtB8V+vBm U# zBg_)~$6ulIVHkgg-glfeV1Q%L0De0-_SP!cg<+Mu3AZqFK?vkEVebk;YXjj;t9FVUF$8eBipIqckpA7 zK!SIE6ymz2tb-yZfp~~>Z66;WAD`sQ*AJfn;6B`FLXE+mvoa}!(#esSiKMi*lNnmH z<4RAG3dd-3k)eL=s-nQeqw~p-O5u$iQKt!Y2AlJxxu6x#$44kVgT_6jmEU7wZ^vKJgc=|YKzX~Gt9U&MX7S(mC?MkW}IW;?((QTnj+6o=E4%F z6!KV1knfP*_=n#3XT5RIyTdbsj%(vN$(B>@i3#77q;r*te29Y&aS#}vg?FJz6{WGB z8$01r=&;Ke`SLWUAg4J01pXc0eo^L1D$iY2q9wPq^R|+79em+^f0rxAE1lt?(saN> znxR@$xnD)c{AuNUm?0DwIykZ*UZEuUWZ)X9+#4>qe_LYIUdG{{z#?eDg$``MMF!jb z^du}pZ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Amoebe.class b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Amoebe.class new file mode 100644 index 0000000000000000000000000000000000000000..9b57dd9033a8511301889f39dd71c7c4b6674841 GIT binary patch literal 942 zcmbVLO>Yx15FMvUlWYTlK>56wp2}rcs(K={QiVW5T7g7LB~Hle9VLccdu4mm_Lo%x z3GV!;it(l?NCYYBVaJ}?@tb*X>|dAPegMD$Jn2Gt&=m0DntFbAomm<>g1?2wC_Tj!QqVn(j^pw&6i3mf5>2C_xTBf_A8SUa-YGl z>8KFY$ZKnj?ZFm<%a7WkGsPTpE=^gfLU?5~udK-mEZqwp^^a%BbCiX!lvD}%RZNlZ z5ViQ4TKqq1J3Ke&xHg`b!pj-=1cql7O8++)k&c6Eap*B#6FTa@rv|LbkxQXNi46HQ z8*jMa{=CAdKRI_E%N0pc1UP9aB&0147%Y?Oi?p<`k~fdmH1ZAl~YvcC~$1XLv^BbNq*de zhYa#H2Dv=3LJ7W>TvT>qYAf-L3OZ~px^9LB&w#ERy##<3?K-eYwoBeVMH#Kpcj$c@ xMHevm+2jn#h8&>p4%xvX3+}?GiQS{WEx3P`wN2~4Xb)DPbylK1qVp|y{2ST*4@Lk0 literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Dackel.class b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Dackel.class new file mode 100644 index 0000000000000000000000000000000000000000..330f8becfb514c6b2b9e65b040fc8ba928e5600a GIT binary patch literal 1110 zcmbVL-)q!B5S~4+O)htO_OxoP!nRNKC4u6T*A~PdAOr=k7JQP;X1H5TcEe_K+P_Rt z(0BhRagz3`V6Gf}$Rx9weDi(ZOn&|T_5%P8;h_f|2IJDoC>KgcAH`fmh24+lXwfE> zo<s1np4GD<&Vi8^{NdL{&_Y z?~=6eLRz>?+AdEGmRuXhbK&HSI|9Qm1xoiX7>N#R*TR}(xFU4WdqV`QN|8&U>lO*} z3pLJg!QE+rL2q(eI?P*&E_)S#57!5<1~(XN?!|x2n>efVbX=P|jFraMRZe3)7UUO$ zQEa5hPJ~r;ety_>GgUG;jIT7?v*j2w@alD$qGquDw$e`J_)5=Jsi@J@T7EM*>J!8Z zU&cP%Wst5gn6oP^BlkijGD7s^tJ=H&#N}+ c{y*BC7PPfiw0leVY_%ZtTM@R2K?ffE0fd7zdjJ3c literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Lebewesen.class b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Lebewesen.class new file mode 100644 index 0000000000000000000000000000000000000000..e47db8c87b24e6b930e07eeb78e12bfe9ce37477 GIT binary patch literal 828 zcmbtSO>fgc5S>kvIx(SX0|k!To>C#%65>Qlg@iytGH__A#0jm}(`1XiYwbtce}+^f zxbveBvkA00v%`Lh1ZW%thYXC;1#L+A`>A z9N!?inx<8?@XBc3T2t28xMw^a9M6zfC~IK})C&1oOp))B z-t0f>dDsEk8`@ET4rM)9rYx15FLl4$u5DEK+EUB^ptYgl@J#Qa6wc;N&u;$65@co&NOk^wO6(`z%N4r z3GVzT#CR9AsZ>zKVaFc(&GXEg*`L3@eg}XjaHk6`1`nN;X(5zOkHku(rM;i7(4x&M zy+|v}&^o!as4~>=b8dELLg^W7JXTuyrwlHPb`Kb|pP4y! zA!0B%!9KUv*dAPD?DZRM(V2XOb1qF$s$6(wG%u~maxB~<9!Ik!@;S;}SOS$oeh>@f zJCtg2oNDs7RCoB?pyS$jUI;Ij+!GmoDk;@Rqof(37=NZhZ{n1p+klZ@fu|u?R%^Af=i)8 zJsI+2>Ac~B`_CoDG4$Y4A3AWE!PaPUqInZM4m}x6=$V&QLEW7Rl9|D9Vx-6qgjK=+ zbJ+GvVJ@x!S?9gS-JFJo59|{XCREgc`9cR@0-d>+*6^XC=6-c&o10L zHK`35gZ@-GM}p2sHwSltMwb2zfEMjKutBy<-UB*iw8r0{_jVY6f&PygGawriyi3|nU~bZUkcVOwy$wm0B5t!-ks`5Tk(5PSdt literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/vararg_summe/Summator.class b/solutions/bin/src/main/java/pr2/vererbung/vararg_summe/Summator.class new file mode 100644 index 0000000000000000000000000000000000000000..59bb0ffec8b516b39daa36a88e5fad6dd613e706 GIT binary patch literal 933 zcmb7?O^?$s5QbluWSfSTE-lOF#k;5Wl8BEJ3tSLLl?oiXtb{lqH}SS!5<7C7iYvbg z2_(4lqY#spWpgN%IAk)Oym|b3#y@|3{SM$M?zPckxL?{N&V|zPxmby~un*#uw9?Ki zy@*%B3cL7FR(USt8AaiYZNp>OU#l}gqBrw%nK*{MCrT^#jN!^?e9GWGH>qr+!_dFf zzOdHV09P3szSUNiCR@prCnhgcCY&;w7uL)(nU{}w*g08Bp2{Q>mPCa}K8l6pM`SVj zYcXnCJmRU5CD+Dra+)l;BY^x=ki8~=P8`)Ij%r`g4qVuoBh`a-#=GS^f`{8d%D`U|PJ(6y@#xPc5q1n70);~K-kXnNVU znX^hSj_bDer$l&N<#TCI1a*pGFg1zDPK8zV`cKhwOI0#Foc{NCk7Yx15FLj!A4?!@pnP6TPw8b>LY$g{gb+xT7LZ7�fdhbmOvXuWWAwzk?rx z)JkyYM%RAW+Ex={bYs~ z?YPoeG80zV?5(Sc0uztUCqoK_H+Dox6Y2~$=i72Y=$GSTl%7FjUuoqZF}T#q_a$juWuf}xP=6f6#TRidw5Xyq)^lSs zE`<&!jFB&^I0re$cMk82Mn6QK2#!uyRRzk zRe=Y3rktX49*5hW8so0*r{nRzq&`Stn^;2e!I3IfNe(|)8(>_4iR@)LL9&&ZJ*PUB$dJp^PU%A6s; z>&TFvlu;Bo`tReO38qe9^~}U3yAUX~y50Rdf#RhdQ5kCjwfPvK;_g?@Sy#cj!1HbF zD7E2?MpD}-F`>$gjb-BOFr?^IdTTdhk|WZga-5SWJy8M4Cd+C6$XR+zIZZjTl*-s< zGE$iy%Z%&LQ$jlXU59nH^Ch+O>Dqr+^*mItQAG)x0*zLGDQdt=jDt=ty4E)_T~DJS zxf{hg1nPaORd}bI$>RlC%*G}aIO+d)*^5hc1iXQrI!!&3H>oc8xfbj}V1@q!*z!HF r%2?*;kl7Mj?+umvy7z+W2S)|e81tMwe~Ym?_dRT*KIe8A3)uYz3xKl^ literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Figur.class b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Figur.class new file mode 100644 index 0000000000000000000000000000000000000000..2af3e13eb60e99de7c9d259e7f244d1508033270 GIT binary patch literal 977 zcmcJNO>Yx15Qbl;AsPZcgbXkq`)p0vAFgqyUGON}Q16oo?Lj+AFU&f?tLN z65RPwh}jg_AXOlcxU6Tqo_8L5-Y;K2d;;(Yx7%n4+$+2uXUf>|v0AEe?(dA3?Sx<#amlR9wvfQL97-wbf-8`kNcp#(h!GdH=I#r$zWM*ij*^3o=tdFJxdHdYd!zx(+|ZsCtS~g*W=MYSev}<*Cso$fC^2 zGqx>)FLiKUo<7NNSDHeWHl`zEDIUq^Wf7{@tFrW+GZ%por1tsTw7D98Lpqf OFgSxj;3ju%;MO-Y!36#Q literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Gerade.class b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Gerade.class new file mode 100644 index 0000000000000000000000000000000000000000..223efcb2851ade2b27234ca0ed470b29709507e9 GIT binary patch literal 754 zcmb7CO-~y!5Pc45K9;nhq4fJ;IE71As#;W)j|(Zita^bW^;9{V(Z;ZAuN)`p-|7je zNbS8ps$#rBgaZ=dGJZ3jd7Ag^fB%2~0kDrZP1FQ-rY?;OrA>UM<|;1TyLe8H+-PR9 zCHj$(Eyz1f@fUJxOik1UK0I{xNM|!A(8v{;j0D7xlRa&;KM<(*huf!o9NIv?D$uPq z$`vp2**WW4cr5Vin{hO?`JBcwwMD6O<+U}kbas?e@kvJQlL^T&rMYt4Q>ye_WhA#) z+2BUm5-pW&$+4xWG}g;P`E(*Z^U%+dQh%F=H4lPcgRtG;e%2^Lgl-2-tO;!NlclI* z_S0m$L3B6KhQ7{<5xEn^Is|%&O;vuXoDTVQvF;~&D)2FRsPT(O+ZAYMM(P;tqzlcQU-+6>qIZ9k zaoP~^X1L7GyqTSuXLi57-#!4~3|bD97#vQG^kShB?@7#rmzsTVh6c?zOM->>7@&^P z8in3%CVV5T17!wB%U-@i8CsMR29;BlD0|MJ+_~Hv(Q%=DbfCtdQ4A6Z>VIX7HdR<- z@N%CRoa$(XK9@R9RV1v^2~Uk4M;M=Qw>Aus`zRw}C?^$iA_C-X0_y$(ExZL#oBJB4 zJkgfN!pe|as)NrdO8d7Ck#_Snb@S=E|5tTgsKR<3R$+rdtJ7aV4QP!?(95A4eU;!% z7LU;k1#vKF_O%qzNEnsJbFpkgHDz$zUv}N|x9Tx)2RbtnuT|cpKGzEt*aZeF^do>y uM)Ow4Iusp{n(OX6R3Dn|E7U(JDnWy6o|ETqlC2lM3tP}Ev~98_*!cl;_OwU< literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Rechteck.class b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Rechteck.class new file mode 100644 index 0000000000000000000000000000000000000000..6200ed18ac579e34bcb387a1c5797758a3e00376 GIT binary patch literal 617 zcmb7?O-}+b5Qg6(2&^cIdas`J!X`!&6a)@OPKSvyX?U+DD$LwoI3Y)_KTe~Wbr+FM$U8&f z73rZT{ZK|x;9%a{Z4-^1z~YHXjXx78?X+6EHv+|TJD@VE0`=(}vEud@&RJK%lEBk- z>S$!+2@RySNoHc@jZJ0dY(J*tNCws3kmP`LtQ_ZLN8(;Vj3Oi(DjZ<>2jR( z$@LU-2sAoYtN2Dall$Mnq92-(z)@%3W&b?Yu|UwZW2dQY@-E9i2U8ksL12Nu1X%Nn tV3B2+y?u_BSO>4D+%|$|)ZW=Epw2SS$@5oP)~0rVH8iHNb(RHed;!juv}gbT literal 0 HcmV?d00001 diff --git a/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/test/FigurenTest.class b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/test/FigurenTest.class new file mode 100644 index 0000000000000000000000000000000000000000..a4ee6de259d1e51d36adc165d8503a6450103f4a GIT binary patch literal 3095 zcmdUx+invv5QfL0P0}=_rL-K{0&Y2_7bFrwAW_a~iz0=V9;n0>ayD+_cGq5cy%9VH z?}CH`65R6^aLYR&#z`QpSX4{w1-)6@yT3orj6Jjd^5erN0JsmO9ApSQinLb=n2?n{ z)?t-U->h`F=DHEf)}Z&Q#Z|zK7QAA3WGbto6>BcHv7dt>0u$ZIKEpZdjXmxe0wd2i zSE{wG+WHy+vP@vCs$^uCG&{_XdG_JV?Qh@bsy7H^?+Gc)0|F;Xi#r5{s;bFzaFW3I z0J@^J(s`I5!&5J$=8^I{yh%M3gu-V=C`m)D8a@xAyRXeY;7z%qI;H!AXM5=rCZcv z(k|5C^p{VEB!{raMEp0mYC-4=PZ%1-A=kKdco=l-8Kr6O#FQ4Ph-fUEd{;;e^)7zF zK8t;GP+g|a;>g%9sG>~Tz3G7uATf%#l?f4}Mo~u1n~)bqHo4a}+}r;jWe(;qYc7tq z-c9AO+*7VulOGYQ^h6F8ZN#jp*-^Xfrb_oLxUHF@ssLj!S%drY#}@PwM~rUsxhgG?;}L+I^d51ZFp5 zX+*$lvLhmaOFp*MuUo!x#cbW~`BEO{2z+%Z^2a*E35?p{^wTpBmk7K~$7#2WcTy23 zSR;E`oreVi@6xd`y*lAS>c_gDZ+W;%$VNJTq?p1f|BlkM%!!3(WlP1{k3Y`zLKSfi|5;yWl{(m_Vb6H0nT`PoOO((k?sDt|ZXz NB+v+4!$@V|`cEm$vhx4{ literal 0 HcmV?d00001 diff --git a/sources/.classpath b/sources/.classpath index 766838c..a807c94 100644 --- a/sources/.classpath +++ b/sources/.classpath @@ -1,12 +1,42 @@ - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sources/.gitignore b/sources/.gitignore new file mode 100644 index 0000000..b83d222 --- /dev/null +++ b/sources/.gitignore @@ -0,0 +1 @@ +/target/ diff --git a/sources/.project b/sources/.project new file mode 100644 index 0000000..8c865d2 --- /dev/null +++ b/sources/.project @@ -0,0 +1,23 @@ + + + sources + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/sources/.settings/org.eclipse.core.resources.prefs b/sources/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..cf6931b --- /dev/null +++ b/sources/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +encoding//src/main/java=UTF-8 +encoding//src/main/resources=UTF-8 +encoding/=UTF-8 diff --git a/sources/.settings/org.eclipse.jdt.core.prefs b/sources/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..cd7ae0f --- /dev/null +++ b/sources/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,8 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 +org.eclipse.jdt.core.compiler.compliance=17 +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore +org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.source=17 diff --git a/sources/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.java b/sources/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.java index 31770ea..ef0cf08 100644 --- a/sources/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.java +++ b/sources/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.java @@ -2,18 +2,49 @@ package pr2.auffrischung.labeled_break; public class ArraySucher { - /** - * Sucht das erste Element, dass nicht 0 ist. - * - * @param array das Array in dem gesucht werden soll - * @return {@code true}, wenn ein Element gefunden wird, - * andernfalls {@code false}. - */ - public boolean suche(int[][] array) { - boolean found = false; + public static void main(String[] args) { + int rows = 3; // Anzahl der Zeilen + int columns = 4; + int[][] array = new int[rows][columns]; // Erstelle das 2D-Array - // TODO: Methodenrumpf schreiben + // Fülle das Array mit Werten + array[0][0] = 0; + array[0][1] = 0; + array[0][2] = 3; + array[0][3] = 4; - return found; - } + array[1][0] = 5; + array[1][1] = 6; + array[1][2] = 7; + array[1][3] = 8; + + array[2][0] = 9; + array[2][1] = 10; + array[2][2] = 11; + array[2][3] = 12; + + System.out.println(suche(array)); + } + + /** + * Sucht das erste Element, dass nicht 0 ist. + * + * @param array das Array in dem gesucht werden soll + * @return {@code true}, wenn ein Element gefunden wird, andernfalls + * {@code false}. + */ + public static boolean suche(int[][] array) { + boolean found = false; + + for (int i = 0; i < array.length; i++) { + for (int j = 0; j < array[i].length; j++) { + if (array[i][j] != 0) { + System.out.println(array[i][j]); + return true; + } + } + } + + return found; + } } diff --git a/sources/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.java b/sources/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.java index 2d651fd..ff7bad7 100644 --- a/sources/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.java +++ b/sources/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.java @@ -3,7 +3,7 @@ package pr2.vererbung.konstruktoren; /** * Nachtelf aus der Allianz. */ - public class Nachtelf { + public class Nachtelf extends Wesen { /** * Standardmäßige Stärke der Fähigkeit Naturwiderstand. @@ -15,7 +15,14 @@ package pr2.vererbung.konstruktoren; */ private int naturwiderstand; - // TODO: Konstruktoren implementieren + public Nachtelf(String name, int staerke) { + super(name); + this.naturwiderstand = staerke; + } + + public Nachtelf(String name) { + this(name, STANDARD_NATURWIDERSTAND); + } /** * Stärke des Naturwiderstandes. diff --git a/sources/src/main/java/pr2/vererbung/konstruktoren/Untoter.java b/sources/src/main/java/pr2/vererbung/konstruktoren/Untoter.java index 214f654..1eda14b 100644 --- a/sources/src/main/java/pr2/vererbung/konstruktoren/Untoter.java +++ b/sources/src/main/java/pr2/vererbung/konstruktoren/Untoter.java @@ -3,7 +3,7 @@ package pr2.vererbung.konstruktoren; /** * Untoter aus der Horde. */ - public class Untoter { + public class Untoter extends Wesen { /** * Standardmäßige Stärke der Fähigkeit zur Unterwasseratmung. @@ -15,7 +15,14 @@ package pr2.vererbung.konstruktoren; */ private int unterwasseratmung; - // TODO: Konstruktoren implementieren + public Untoter(String name, int staerke) { + super(name); + this.unterwasseratmung = staerke; + } + + public Untoter(String name) { + this(name, STANDARD_UNTERWASSERATMUNG); + } /** * Fähigkeit zur Unterwasseratmnung. diff --git a/sources/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.java b/sources/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.java index 1732f9e..4ad3391 100644 --- a/sources/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.java +++ b/sources/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.java @@ -19,15 +19,15 @@ public class WesenTest { @Test void testNachtelf() { // TODO: Einkommentieren -// assertTrue(new Nachtelf("") instanceof Wesen, -// "Nachtelf erbt nicht " + "von Wesen"); -// -// assertEquals(Nachtelf.STANDARD_NATURWIDERSTAND, -// new Nachtelf("").getNaturwiderstand()); -// -// assertEquals(120, new Nachtelf("", 120).getNaturwiderstand()); -// -// assertEquals("Hugo", new Nachtelf("Hugo").getName()); + assertTrue(new Nachtelf("") instanceof Wesen, + "Nachtelf erbt nicht " + "von Wesen"); + + assertEquals(Nachtelf.STANDARD_NATURWIDERSTAND, + new Nachtelf("").getNaturwiderstand()); + + assertEquals(120, new Nachtelf("", 120).getNaturwiderstand()); + + assertEquals("Hugo", new Nachtelf("Hugo").getName()); } /** @@ -36,14 +36,14 @@ public class WesenTest { @Test void testUntoten() { // TODO: Einkommentieren -// assertTrue(new Untoter("") instanceof Wesen, -// "Untoter erbt nicht von " + "Wesen"); -// -// assertEquals(Untoter.STANDARD_UNTERWASSERATMUNG, -// new Untoter("").getUnterwasseratmung()); -// -// assertEquals(120, new Untoter("", 120).getUnterwasseratmung()); -// -// assertEquals("Hugo", new Untoter("Hugo").getName()); + assertTrue(new Untoter("") instanceof Wesen, + "Untoter erbt nicht von " + "Wesen"); + + assertEquals(Untoter.STANDARD_UNTERWASSERATMUNG, + new Untoter("").getUnterwasseratmung()); + + assertEquals(120, new Untoter("", 120).getUnterwasseratmung()); + + assertEquals("Hugo", new Untoter("Hugo").getName()); } } diff --git a/sources/src/main/java/pr2/vererbung/polymorphie/Futterstelle.java b/sources/src/main/java/pr2/vererbung/polymorphie/Futterstelle.java index c5cc781..841002d 100644 --- a/sources/src/main/java/pr2/vererbung/polymorphie/Futterstelle.java +++ b/sources/src/main/java/pr2/vererbung/polymorphie/Futterstelle.java @@ -11,8 +11,8 @@ public class Futterstelle { * * @param affe Affe, der gefüttert werden soll. */ - public void gibFutter(Affe affe) { - affe.fuettern(); + public void gibFutter(ZooTier tier) { + tier.fuettern(); } /** @@ -20,16 +20,16 @@ public class Futterstelle { * * @param gorilla Gorilla, der gefüttert werden soll. */ - public void gibFutter(Gorilla gorilla) { - gorilla.fuettern(); - } +// public void gibFutter(Gorilla gorilla) { +// gorilla.fuettern(); +// } /** * Füttert die Giraffe. * * @param giraffe Giraffe, die gefüttert werden soll. */ - public void gibFutter(Giraffe giraffe) { - giraffe.fuettern(); - } +// public void gibFutter(Giraffe giraffe) { +// giraffe.fuettern(); +// } } diff --git a/sources/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.java b/sources/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.java index 8e00527..67db68a 100644 --- a/sources/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.java +++ b/sources/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.java @@ -5,37 +5,36 @@ package pr2.vererbung.polymorphie; */ public final class ZooSimulation { - /** - * Konstruktor. - */ - private ZooSimulation() { - // keine Objekte benötigt - } + /** + * Konstruktor. + */ + private ZooSimulation() { + // keine Objekte benötigt + } - /** - * Main-Methode. - * - * @param args Kommandozeilen-Argumente. - */ - public static void main(String[] args) { - Futterstelle futterstelle = new Futterstelle(); + /** + * Main-Methode. + * + * @param args Kommandozeilen-Argumente. + */ + public static void main(String[] args) { + Futterstelle futterstelle = new Futterstelle(); - Affe charlie = new Affe("Charlie"); - Gorilla buck = new Gorilla("Buck"); - Giraffe debbie = new Giraffe("Debbie"); + ZooTier[] zooArr = new ZooTier[] { new Affe("Charlie"), new Gorilla("Vicky"), new Giraffe("Tobi") }; - System.out.println(charlie); - System.out.println(buck); - System.out.println(debbie); + for (ZooTier tier : zooArr) { + System.out.println(tier); + } - System.out.println("Fütterung..."); + System.out.println("Fütterung..."); + + for (ZooTier tier : zooArr) { + futterstelle.gibFutter(tier); + } - futterstelle.gibFutter(charlie); - futterstelle.gibFutter(buck); - futterstelle.gibFutter(debbie); + for (ZooTier tier : zooArr) { + System.out.println(tier); + } - System.out.println(charlie); - System.out.println(buck); - System.out.println(debbie); - } + } } diff --git a/sources/src/main/java/pr2/vererbung/singleton_einfach/Singleton.java b/sources/src/main/java/pr2/vererbung/singleton_einfach/Singleton.java index 313fcc7..eda2217 100644 --- a/sources/src/main/java/pr2/vererbung/singleton_einfach/Singleton.java +++ b/sources/src/main/java/pr2/vererbung/singleton_einfach/Singleton.java @@ -1,5 +1,12 @@ package pr2.vererbung.singleton_einfach; public class Singleton { + private static Singleton instance = new Singleton(); + + private Singleton() {} + + public static Singleton getInstance() { + return instance; + } } diff --git a/sources/src/main/java/pr2/vererbung/statics/Spiel.java b/sources/src/main/java/pr2/vererbung/statics/Spiel.java index 3b76b5e..fc349b5 100644 --- a/sources/src/main/java/pr2/vererbung/statics/Spiel.java +++ b/sources/src/main/java/pr2/vererbung/statics/Spiel.java @@ -28,10 +28,9 @@ public final class Spiel { } // Statistik ausgeben - System.out.println("Statistik für Würfel 1"); - System.out.println(wuerfel1.statistik()); + System.out.println("Statistik für alle Würfel"); + System.out.println(Wuerfel.statistik()); System.out.println(); - System.out.println("Statistik für Würfel 2"); - System.out.println(wuerfel2.statistik()); + } } diff --git a/sources/src/main/java/pr2/vererbung/statics/Wuerfel.java b/sources/src/main/java/pr2/vererbung/statics/Wuerfel.java index 5c3fc2e..93a615a 100644 --- a/sources/src/main/java/pr2/vererbung/statics/Wuerfel.java +++ b/sources/src/main/java/pr2/vererbung/statics/Wuerfel.java @@ -7,38 +7,42 @@ import java.util.Random; */ public class Wuerfel { - /** Häufigkeit der Werte. */ - private int[] haeufigkeit = new int[6]; + /** Häufigkeit der Werte. */ + private static final int[] HAEUFIGKEIT = new int[6]; - /** Zufallsgenerator. */ - private Random random = new Random(); + /** Anzahl der Würfe mit dem Würfel. */ + private static int wuerfe = 0; - /** - * Bestimmt den nächsten Wurf. - * - * @return der Wurf. - */ - public int wuerfele() { - int wert = random.nextInt(6); - haeufigkeit[wert]++; - return wert + 1; - } + /** Zufallsgenerator. */ + private final Random random = new Random(); - /** - * Gibt die Häufigkeit der Würfe zurück. - * - * @return die Statistik mit der Häufigkeit. - */ - public String statistik() { - StringBuilder result = new StringBuilder(); + /** + * Bestimmt den nächsten Wurf. + * + * @return der Wurf. + */ + public int wuerfele() { + int wert = random.nextInt(6); + HAEUFIGKEIT[wert]++; + wuerfe++; + return wert + 1; + } - for (int i = 0; i < haeufigkeit.length; i++) { - result.append(i + 1) - .append(": ") - .append(haeufigkeit[i]) - .append("\n"); - } + /** + * Gibt die Häufigkeit der Würfe zurück. + * + * @return die Statistik mit der Häufigkeit. + */ + public static String statistik() { + StringBuilder result = new StringBuilder(); - return result.toString(); - } + for (int i = 0; i < HAEUFIGKEIT.length; i++) { + result.append(i + 1).append(": ").append(String.format("%.2f %%", ((double) HAEUFIGKEIT[i] / wuerfe) * 100)) + .append("\n"); + } + + result.append("Summe: ").append(wuerfe).append("\n"); + + return result.toString(); + } }