From eaf60b0c2fe1ef4551558bf1983e13ee47894154 Mon Sep 17 00:00:00 2001 From: Olga Stogova Date: Fri, 10 Feb 2023 00:57:42 +0600 Subject: [PATCH 1/4] Commit with all files --- .idea/.gitignore | 3 + .idea/compiler.xml | 14 + .idea/jarRepositories.xml | 20 + .idea/misc.xml | 12 + .idea/uiDesigner.xml | 124 ++ .idea/vcs.xml | 6 + README.md | 1 + pom.xml | 45 +- src/main/java/com/example/Cat.java | 3 +- src/main/java/com/example/Lion.java | 9 +- src/test/java/CatTest.java | 41 + src/test/java/FelineTest.java | 73 + src/test/java/LionTest.java | 57 + target/classes/read.me | 1 + target/jacoco.exec | Bin 0 -> 65860 bytes .../compile/default-compile/createdFiles.lst | 5 + .../compile/default-compile/inputFiles.lst | 5 + .../default-testCompile/createdFiles.lst | 3 + .../default-testCompile/inputFiles.lst | 3 + target/site/jacoco/com.example/Animal.html | 1 + .../site/jacoco/com.example/Animal.java.html | 21 + target/site/jacoco/com.example/Cat.html | 1 + target/site/jacoco/com.example/Cat.java.html | 23 + target/site/jacoco/com.example/Feline.html | 1 + .../site/jacoco/com.example/Feline.java.html | 26 + target/site/jacoco/com.example/Lion.html | 1 + target/site/jacoco/com.example/Lion.java.html | 34 + target/site/jacoco/com.example/index.html | 1 + .../site/jacoco/com.example/index.source.html | 1 + target/site/jacoco/index.html | 1 + .../site/jacoco/jacoco-resources/branchfc.gif | Bin 0 -> 91 bytes .../site/jacoco/jacoco-resources/branchnc.gif | Bin 0 -> 91 bytes .../site/jacoco/jacoco-resources/branchpc.gif | Bin 0 -> 91 bytes .../site/jacoco/jacoco-resources/bundle.gif | Bin 0 -> 709 bytes target/site/jacoco/jacoco-resources/class.gif | Bin 0 -> 586 bytes target/site/jacoco/jacoco-resources/down.gif | Bin 0 -> 67 bytes .../site/jacoco/jacoco-resources/greenbar.gif | Bin 0 -> 91 bytes target/site/jacoco/jacoco-resources/group.gif | Bin 0 -> 351 bytes .../site/jacoco/jacoco-resources/method.gif | Bin 0 -> 193 bytes .../site/jacoco/jacoco-resources/package.gif | Bin 0 -> 227 bytes .../site/jacoco/jacoco-resources/prettify.css | 13 + .../site/jacoco/jacoco-resources/prettify.js | 1510 +++++++++++++++++ .../site/jacoco/jacoco-resources/redbar.gif | Bin 0 -> 91 bytes .../site/jacoco/jacoco-resources/report.css | 243 +++ .../site/jacoco/jacoco-resources/report.gif | Bin 0 -> 363 bytes .../site/jacoco/jacoco-resources/session.gif | Bin 0 -> 213 bytes target/site/jacoco/jacoco-resources/sort.gif | Bin 0 -> 58 bytes target/site/jacoco/jacoco-resources/sort.js | 148 ++ .../site/jacoco/jacoco-resources/source.gif | Bin 0 -> 354 bytes target/site/jacoco/jacoco-resources/up.gif | Bin 0 -> 67 bytes target/site/jacoco/jacoco-sessions.html | 1 + target/site/jacoco/jacoco.csv | 5 + target/site/jacoco/jacoco.xml | 1 + target/surefire-reports/CatTest.txt | 4 + target/surefire-reports/FelineTest.txt | 4 + target/surefire-reports/LionTest.txt | 4 + target/surefire-reports/TEST-CatTest.xml | 70 + target/surefire-reports/TEST-FelineTest.xml | 77 + target/surefire-reports/TEST-LionTest.xml | 73 + 59 files changed, 2682 insertions(+), 7 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/compiler.xml create mode 100644 .idea/jarRepositories.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/uiDesigner.xml create mode 100644 .idea/vcs.xml create mode 100644 src/test/java/CatTest.java create mode 100644 src/test/java/FelineTest.java create mode 100644 src/test/java/LionTest.java create mode 100644 target/classes/read.me create mode 100644 target/jacoco.exec create mode 100644 target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst create mode 100644 target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst create mode 100644 target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst create mode 100644 target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst create mode 100644 target/site/jacoco/com.example/Animal.html create mode 100644 target/site/jacoco/com.example/Animal.java.html create mode 100644 target/site/jacoco/com.example/Cat.html create mode 100644 target/site/jacoco/com.example/Cat.java.html create mode 100644 target/site/jacoco/com.example/Feline.html create mode 100644 target/site/jacoco/com.example/Feline.java.html create mode 100644 target/site/jacoco/com.example/Lion.html create mode 100644 target/site/jacoco/com.example/Lion.java.html create mode 100644 target/site/jacoco/com.example/index.html create mode 100644 target/site/jacoco/com.example/index.source.html create mode 100644 target/site/jacoco/index.html create mode 100644 target/site/jacoco/jacoco-resources/branchfc.gif create mode 100644 target/site/jacoco/jacoco-resources/branchnc.gif create mode 100644 target/site/jacoco/jacoco-resources/branchpc.gif create mode 100644 target/site/jacoco/jacoco-resources/bundle.gif create mode 100644 target/site/jacoco/jacoco-resources/class.gif create mode 100644 target/site/jacoco/jacoco-resources/down.gif create mode 100644 target/site/jacoco/jacoco-resources/greenbar.gif create mode 100644 target/site/jacoco/jacoco-resources/group.gif create mode 100644 target/site/jacoco/jacoco-resources/method.gif create mode 100644 target/site/jacoco/jacoco-resources/package.gif create mode 100644 target/site/jacoco/jacoco-resources/prettify.css create mode 100644 target/site/jacoco/jacoco-resources/prettify.js create mode 100644 target/site/jacoco/jacoco-resources/redbar.gif create mode 100644 target/site/jacoco/jacoco-resources/report.css create mode 100644 target/site/jacoco/jacoco-resources/report.gif create mode 100644 target/site/jacoco/jacoco-resources/session.gif create mode 100644 target/site/jacoco/jacoco-resources/sort.gif create mode 100644 target/site/jacoco/jacoco-resources/sort.js create mode 100644 target/site/jacoco/jacoco-resources/source.gif create mode 100644 target/site/jacoco/jacoco-resources/up.gif create mode 100644 target/site/jacoco/jacoco-sessions.html create mode 100644 target/site/jacoco/jacoco.csv create mode 100644 target/site/jacoco/jacoco.xml create mode 100644 target/surefire-reports/CatTest.txt create mode 100644 target/surefire-reports/FelineTest.txt create mode 100644 target/surefire-reports/LionTest.txt create mode 100644 target/surefire-reports/TEST-CatTest.xml create mode 100644 target/surefire-reports/TEST-FelineTest.xml create mode 100644 target/surefire-reports/TEST-LionTest.xml diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..3c3f603 --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..712ab9d --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..aa6bab1 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,12 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml new file mode 100644 index 0000000..2b63946 --- /dev/null +++ b/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/README.md b/README.md index 69c6597..6322b5f 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,3 @@ # qa_java + QA Java Project diff --git a/pom.xml b/pom.xml index 8177035..a34d318 100644 --- a/pom.xml +++ b/pom.xml @@ -1,6 +1,6 @@ - 4.0.0 @@ -13,6 +13,26 @@ 11 + + + junit + junit + RELEASE + test + + + org.mockito + mockito-core + 3.12.4 + test + + + net.bytebuddy + byte-buddy + 1.11.16 + + + src/main/java @@ -25,6 +45,27 @@ 11 + + org.jacoco + jacoco-maven-plugin + 0.8.7 + + + prepare-agent + initialize + + prepare-agent + + + + report + verify + + report + + + + diff --git a/src/main/java/com/example/Cat.java b/src/main/java/com/example/Cat.java index f501323..7d11406 100644 --- a/src/main/java/com/example/Cat.java +++ b/src/main/java/com/example/Cat.java @@ -5,13 +5,14 @@ public class Cat { Predator predator; + String catSound = "Мяу"; public Cat(Feline feline) { this.predator = feline; } public String getSound() { - return "Мяу"; + return catSound; } public List getFood() throws Exception { diff --git a/src/main/java/com/example/Lion.java b/src/main/java/com/example/Lion.java index 8bd39f8..9938d98 100644 --- a/src/main/java/com/example/Lion.java +++ b/src/main/java/com/example/Lion.java @@ -5,19 +5,20 @@ public class Lion { boolean hasMane; + //Делаю инъекцию зависимости через конструктор, как было показано на вебинаре + Feline feline; - public Lion(String sex) throws Exception { + public Lion(String sex, Feline feline) throws Exception { + this.feline = feline; if ("Самец".equals(sex)) { hasMane = true; } else if ("Самка".equals(sex)) { hasMane = false; } else { - throw new Exception("Используйте допустимые значения пола животного - самей или самка"); + throw new Exception("Используйте допустимые значения пола животного - самец или самка"); } } - Feline feline = new Feline(); - public int getKittens() { return feline.getKittens(); } diff --git a/src/test/java/CatTest.java b/src/test/java/CatTest.java new file mode 100644 index 0000000..126589d --- /dev/null +++ b/src/test/java/CatTest.java @@ -0,0 +1,41 @@ +import com.example.Cat; +import com.example.Feline; +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.mockito.MockitoAnnotations; + +import java.util.List; + +import static org.junit.Assert.assertEquals; + +public class CatTest { + + @Mock + Feline feline; + + + @Before + public void init() { + MockitoAnnotations.initMocks(this); + } + + @Test + public void getCatSoundTest() { + Cat cat = new Cat(feline); + String expectedSound = "Мяу"; + assertEquals("Кошка должна мяукать", expectedSound, cat.getSound()); + } + + @Test + public void getCatFoodTest() throws Exception { + Cat cat = new Cat(feline); + List expectedFood = List.of("Животные", "Птицы", "Рыба"); + Mockito.when(feline.eatMeat()).thenReturn(expectedFood); + assertEquals("Кошка должна есть мясо", expectedFood, cat.getFood()); + Mockito.verify(feline, Mockito.times(1)).eatMeat(); + } + +} + diff --git a/src/test/java/FelineTest.java b/src/test/java/FelineTest.java new file mode 100644 index 0000000..c1609eb --- /dev/null +++ b/src/test/java/FelineTest.java @@ -0,0 +1,73 @@ +import com.example.Feline; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.Parameterized; +import org.mockito.MockitoAnnotations; + +import java.util.List; +import java.util.Objects; + +import static org.junit.Assert.assertEquals; + +@RunWith(Parameterized.class) +public class FelineTest { + private final List felineFood; + private final String felineFamily; + private final int felineKittens; + private final boolean expectedResult; + + public FelineTest(List felineFood, String felineFamily, int felineKittens, boolean expectedResult) { + this.felineFood = felineFood; + this.felineFamily = felineFamily; + this.felineKittens = felineKittens; + this.expectedResult = expectedResult; + + } + + @Parameterized.Parameters + + public static Object[][] getFelineTestData() { + return new Object[][]{ + {List.of("Животные", "Птицы", "Рыба"), "Кошачьи", 1, true}, + {List.of("Трава", "Различные растения"), "Еноты", 122, false}, + {List.of("1", "2"), "2", 0, false}, + }; + } + + @Before + public void init() { + MockitoAnnotations.initMocks(this); + } + + @Test + public void eatFelineMeat() throws Exception { + Feline feline = new Feline(); + List actualFood = feline.eatMeat(); + boolean actualResult = felineFood.equals(actualFood); + assertEquals("Кошачьи едят мясо", expectedResult, actualResult); + System.out.println("Результат выполнения теста:"); + System.out.println(actualResult == expectedResult); + } + + @Test + public void getFelineFamily() { + Feline feline = new Feline(); + String actualFamily = feline.getFamily(); + boolean actualResult = felineFamily.equals(actualFamily); + assertEquals("Должно быть семейство кошачьих", expectedResult, actualResult); + System.out.println("Результат выполнения теста:"); + System.out.println(actualResult == expectedResult); + } + + @Test + public void getFelineKittens() { + Feline feline = new Feline(); + int actualKittens = feline.getKittens(); + boolean actualResult = Objects.equals(felineKittens, actualKittens); + assertEquals("У кошачьих 1 котенок", expectedResult, actualResult); + System.out.println("Результат выполнения теста:"); + System.out.println(actualResult == expectedResult); + } +} + diff --git a/src/test/java/LionTest.java b/src/test/java/LionTest.java new file mode 100644 index 0000000..7b5ba43 --- /dev/null +++ b/src/test/java/LionTest.java @@ -0,0 +1,57 @@ +import com.example.Feline; +import com.example.Lion; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.mockito.MockitoAnnotations; + +import java.util.List; + +public class LionTest { + public int expectedLionResult; + public int numberOfKittens; + @Mock + Feline feline; + + @Before + public void init() { + MockitoAnnotations.initMocks(this); + } + + @Test + public void getLionKittensTest() throws Exception { + Lion lion = new Lion("Самка", feline); + Mockito.when(feline.getKittens()).thenReturn(numberOfKittens); + Assert.assertEquals(expectedLionResult, lion.getKittens()); + } + + @Test + public void getLionFoodTest() throws Exception { + Lion lion = new Lion("Самец", feline); + List food = List.of("Животные", "Птицы", "Рыба"); + Mockito.when(feline.getFood("Хищник")).thenReturn(food); + Assert.assertEquals(food, lion.getFood()); + } + + @Test + public void doesHaveManeMale() throws Exception { + Lion lion = new Lion("Самец", feline); + Assert.assertTrue(lion.doesHaveMane()); + } + + @Test + public void doesHaveManeFemale() throws Exception { + Lion lion = new Lion("Самка", feline); + Assert.assertFalse(lion.doesHaveMane()); + } + + @Test + public void doesHaveManeException() throws Exception { + Exception exception = Assert.assertThrows(Exception.class, () -> { + new Lion("Man", feline); + }); + Assert.assertEquals("Используйте допустимые значения пола животного - самец или самка", exception.getMessage()); + } +} \ No newline at end of file diff --git a/target/classes/read.me b/target/classes/read.me new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/target/classes/read.me @@ -0,0 +1 @@ + diff --git a/target/jacoco.exec b/target/jacoco.exec new file mode 100644 index 0000000000000000000000000000000000000000..ec35ebcdf688e26e0d2fa7388de7565d20117a42 GIT binary patch literal 65860 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

Animal

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total11 of 2759 %2 of 450 %353713
getFood(String)91359 %2250 %232501
getFamily()20 %n/a111111
Animal()3100 %n/a010101
\ No newline at end of file diff --git a/target/site/jacoco/com.example/Animal.java.html b/target/site/jacoco/com.example/Animal.java.html new file mode 100644 index 0000000..5fa28fd --- /dev/null +++ b/target/site/jacoco/com.example/Animal.java.html @@ -0,0 +1,21 @@ +Animal.java

Animal.java

package com.example;
+
+import java.util.List;
+
+public class Animal {
+
+    public List<String> getFood(String animalKind) throws Exception {
+        if ("Травоядное".equals(animalKind)) {
+            return List.of("Трава", "Различные растения");
+        } else if ("Хищник".equals(animalKind)) {
+            return List.of("Животные", "Птицы", "Рыба");
+        } else {
+            throw new Exception("Неизвестный вид животного, используйте значение Травоядное или Хищник");
+        }
+    }
+
+    public String getFamily() {
+        return "Существует несколько семейств: заячьи, беличьи, мышиные, кошачьи, псовые, медвежьи, куньи";
+    }
+}
+
\ No newline at end of file diff --git a/target/site/jacoco/com.example/Cat.html b/target/site/jacoco/com.example/Cat.html new file mode 100644 index 0000000..446e8af --- /dev/null +++ b/target/site/jacoco/com.example/Cat.html @@ -0,0 +1 @@ +Cat

Cat

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total0 of 16100 %0 of 0n/a030603
Cat(Feline)9100 %n/a010401
getFood()4100 %n/a010101
getSound()3100 %n/a010101
\ No newline at end of file diff --git a/target/site/jacoco/com.example/Cat.java.html b/target/site/jacoco/com.example/Cat.java.html new file mode 100644 index 0000000..28d694a --- /dev/null +++ b/target/site/jacoco/com.example/Cat.java.html @@ -0,0 +1,23 @@ +Cat.java

Cat.java

package com.example;
+
+import java.util.List;
+
+public class Cat {
+
+    Predator predator;
+
+    public Cat(Feline feline) {
+        this.predator = feline;
+    }
+
+    String catSound = "Мяу";
+    public String getSound() {
+        return catSound;
+    }
+
+    public List<String> getFood() throws Exception {
+        return predator.eatMeat();
+    }
+
+}
+
\ No newline at end of file diff --git a/target/site/jacoco/com.example/Feline.html b/target/site/jacoco/com.example/Feline.html new file mode 100644 index 0000000..4ae07fa --- /dev/null +++ b/target/site/jacoco/com.example/Feline.html @@ -0,0 +1 @@ +Feline

Feline

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total0 of 15100 %0 of 0n/a050505
eatMeat()4100 %n/a010101
getKittens()4100 %n/a010101
Feline()3100 %n/a010101
getFamily()2100 %n/a010101
getKittens(int)2100 %n/a010101
\ No newline at end of file diff --git a/target/site/jacoco/com.example/Feline.java.html b/target/site/jacoco/com.example/Feline.java.html new file mode 100644 index 0000000..0b2e15d --- /dev/null +++ b/target/site/jacoco/com.example/Feline.java.html @@ -0,0 +1,26 @@ +Feline.java

Feline.java

package com.example;
+
+import java.util.List;
+
+public class Feline extends Animal implements Predator {
+
+    @Override
+    public List<String> eatMeat() throws Exception {
+        return getFood("Хищник");
+    }
+
+    @Override
+    public String getFamily() {
+        return "Кошачьи";
+    }
+
+    public int getKittens() {
+        return getKittens(1);
+    }
+
+    public int getKittens(int kittensCount) {
+        return kittensCount;
+    }
+
+}
+
\ No newline at end of file diff --git a/target/site/jacoco/com.example/Lion.html b/target/site/jacoco/com.example/Lion.html new file mode 100644 index 0000000..b0d659b --- /dev/null +++ b/target/site/jacoco/com.example/Lion.html @@ -0,0 +1 @@ +Lion

Lion

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total0 of 39100 %0 of 4100 %0601104
Lion(String, Feline)27100 %4100 %030801
getFood()5100 %n/a010101
getKittens()4100 %n/a010101
doesHaveMane()3100 %n/a010101
\ No newline at end of file diff --git a/target/site/jacoco/com.example/Lion.java.html b/target/site/jacoco/com.example/Lion.java.html new file mode 100644 index 0000000..201bb1e --- /dev/null +++ b/target/site/jacoco/com.example/Lion.java.html @@ -0,0 +1,34 @@ +Lion.java

Lion.java

package com.example;
+
+import java.util.List;
+
+public class Lion {
+
+    boolean hasMane;
+    //Делаю инъекцию зависимости через конструктор, как было показано на вебинаре
+    Feline feline;
+
+    public Lion(String sex, Feline feline) throws Exception {
+        this.feline = feline;
+        if ("Самец".equals(sex)) {
+            hasMane = true;
+        } else if ("Самка".equals(sex)) {
+            hasMane = false;
+        } else {
+            throw new Exception("Используйте допустимые значения пола животного - самец или самка");
+        }
+    }
+
+    public int getKittens() {
+        return feline.getKittens();
+    }
+
+    public boolean doesHaveMane() {
+        return hasMane;
+    }
+
+    public List<String> getFood() throws Exception {
+        return feline.getFood("Хищник");
+    }
+}
+
\ No newline at end of file diff --git a/target/site/jacoco/com.example/index.html b/target/site/jacoco/com.example/index.html new file mode 100644 index 0000000..c710aa9 --- /dev/null +++ b/target/site/jacoco/com.example/index.html @@ -0,0 +1 @@ +com.example

com.example

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total11 of 9788 %2 of 875 %31932911504
Animal111659 %2250 %35371301
Lion39100 %4100 %060110401
Cat16100 %n/a03060301
Feline15100 %n/a05050501
\ No newline at end of file diff --git a/target/site/jacoco/com.example/index.source.html b/target/site/jacoco/com.example/index.source.html new file mode 100644 index 0000000..a20866a --- /dev/null +++ b/target/site/jacoco/com.example/index.source.html @@ -0,0 +1 @@ +com.example

com.example

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total11 of 9788 %2 of 875 %31932911504
Animal.java111659 %2250 %35371301
Lion.java39100 %4100 %060110401
Cat.java16100 %n/a03060301
Feline.java15100 %n/a05050501
\ No newline at end of file diff --git a/target/site/jacoco/index.html b/target/site/jacoco/index.html new file mode 100644 index 0000000..c9b1e49 --- /dev/null +++ b/target/site/jacoco/index.html @@ -0,0 +1 @@ +untitled

untitled

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total11 of 9788 %2 of 875 %31932911504
com.example118688 %2675 %31932911504
\ No newline at end of file diff --git a/target/site/jacoco/jacoco-resources/branchfc.gif b/target/site/jacoco/jacoco-resources/branchfc.gif new file mode 100644 index 0000000000000000000000000000000000000000..989b46d30469b56b014758f846ee6c5abfda16aa GIT binary patch literal 91 zcmZ?wbhEHb6=b<*h$V|V6X-NwhSNb literal 0 HcmV?d00001 diff --git a/target/site/jacoco/jacoco-resources/branchnc.gif b/target/site/jacoco/jacoco-resources/branchnc.gif new file mode 100644 index 0000000000000000000000000000000000000000..1933e07c376bb71bdd9aac91cf858da3fcdb0f1c GIT binary patch literal 91 zcmZ?wbhEHb6=b<*h$V|V6X-N9U38B literal 0 HcmV?d00001 diff --git a/target/site/jacoco/jacoco-resources/branchpc.gif b/target/site/jacoco/jacoco-resources/branchpc.gif new file mode 100644 index 0000000000000000000000000000000000000000..cbf711b7030929b733f22f7a0cf3dbf61fe7868f GIT binary patch literal 91 zcmZ?wbhEHbm$mi>nCYN#As;!%lJz1A{dHmlPuc literal 0 HcmV?d00001 diff --git a/target/site/jacoco/jacoco-resources/bundle.gif b/target/site/jacoco/jacoco-resources/bundle.gif new file mode 100644 index 0000000000000000000000000000000000000000..fca9c53e629a7a5c07186ac1e2a1e37d8d6e88f4 GIT binary patch literal 709 zcmZ?wbhEHb6krfwxXQrrpW*-7BK;o8CDEUD?$vun5^UNelT%D!ODhRsX(Ohwq+z^!{nkw1lu( zDPc2HV&`P7KEHX-jYA>R6T@ewM9fTyo0E0x)!k_2wz@P-Sk{|^LE{K>+|z);Vi!vF-J zIALI4-caAv+|t_C-oY&>$uA|y-ND80=rPrik*keM);A(7JS@bMXJ#`uzjsjN>eYc> zj1!vJoq|_~`Ugb%`8WwRvs$=Bx;h_qcXM-KZDthLjMNep5fPP;Q{vk%FCD3^prRsd zAfR@-Nl4k$GSW~(G16XNhoM=9$H>NPjk%o(&&DPp6ODz*?)|b>X&fF28jY>Ox-nZU Y5*r^bWMyL$kZ52~Skzz7#K>R`0G8r7i~s-t literal 0 HcmV?d00001 diff --git a/target/site/jacoco/jacoco-resources/down.gif b/target/site/jacoco/jacoco-resources/down.gif new file mode 100644 index 0000000000000000000000000000000000000000..440a14db74e76c2b6e854eacac1c44414b166271 GIT binary patch literal 67 zcmZ?wbhEHbZ%p}jXB Ub$^Lu-Ncq(ygK&ScM%3_0Po}%Qvd(} literal 0 HcmV?d00001 diff --git a/target/site/jacoco/jacoco-resources/greenbar.gif b/target/site/jacoco/jacoco-resources/greenbar.gif new file mode 100644 index 0000000000000000000000000000000000000000..0ba65672530ee09f086821a26156836d0c91bd74 GIT binary patch literal 91 zcmZ?wbhEHbWMtrCc+ADXzmZ>do2<@m9j_x^v8Q5duh#b5>RIq$!Lmoo);w9mu$BQ0 eDgI<(1nOeYVE_V<84N5O20cYWMlKB;4AuaIXBwOU literal 0 HcmV?d00001 diff --git a/target/site/jacoco/jacoco-resources/group.gif b/target/site/jacoco/jacoco-resources/group.gif new file mode 100644 index 0000000000000000000000000000000000000000..a4ea580d278fb727e4ae692838877fa63c4becf9 GIT binary patch literal 351 zcmZ?wbhEHb6krfwxXQpVwXtJrV`pb|Z&Bgo_>{Q`Df1G5Wa`}H^qKLgbHn221;#86 zie2Oyy23SVg;&(l)`=%9{nuIstg#PSrQx<&&vS#m*G7G>4W@o;CvAN*Y1^AgTVGGw z_ImEoPjiobns@ZmyknnMUi-Q7>W`Jzer$aB_t(pL-|kQQ|MAfO*PGv5?Ee3B$^ToO z|A8VGOaEW3eSEO?=BC06Ybq|Tt-P?N@;?|b;0205Sr{1@Oc``Qsz82XV5>PWtH47? zs^4Q~P@BxTjDV;&5*!R(s==>VnJe}-&SEIintfiq!@CwnVRxXubL!4|)qjO}gg>klxZ?TGXw~#-V zU_Y2&N}FX?r*L1YbYiM-aj|xBv2}#Mgo3?-guaA=wSS1Yfrz+)iMWB7#*ml2h^x<; ztIwFU(w+bR{{R30A^8LW0015UEC2ui01yBW000F(peK%GX`X1Rt}L1aL$Vf5mpMgx vG+WO#2NYmJDM}^)l;8n@L?90V%CN9pFcyU&MPO(u48jTlL$uClRtNw)MiWcq literal 0 HcmV?d00001 diff --git a/target/site/jacoco/jacoco-resources/package.gif b/target/site/jacoco/jacoco-resources/package.gif new file mode 100644 index 0000000000000000000000000000000000000000..131c28da405493661e3253ef79a68bd273039295 GIT binary patch literal 227 zcmZ?wbhEHb6krfwIKsg2^W*Nf7neOfxp04z;n8NJ+xzDotkS){bH@Hst%K#-*LO_c zo~yCDQ0v_4?v)A3lSAd#C95utQCbkGxF}NT_=2WF8}WGs5taT9|NsAIzy=h5vM@3* zNHFMtBtdpEuqG&|^`&Ia(}-MpBVo@mW@+b{B25<}cFdc?!Kkoc14n0vkh1`XOwU>7 z#al8o_@;D=?hdfkdC)D9Q@O@%Lfqp;ZBt~9C*29`GMF2XzQp8akWQVjDvMC75PzEx Mi%z;upCW@b03m@=3jhEB literal 0 HcmV?d00001 diff --git a/target/site/jacoco/jacoco-resources/prettify.css b/target/site/jacoco/jacoco-resources/prettify.css new file mode 100644 index 0000000..be5166e --- /dev/null +++ b/target/site/jacoco/jacoco-resources/prettify.css @@ -0,0 +1,13 @@ +/* Pretty printing styles. Used with prettify.js. */ + +.str { color: #2A00FF; } +.kwd { color: #7F0055; font-weight:bold; } +.com { color: #3F5FBF; } +.typ { color: #606; } +.lit { color: #066; } +.pun { color: #660; } +.pln { color: #000; } +.tag { color: #008; } +.atn { color: #606; } +.atv { color: #080; } +.dec { color: #606; } diff --git a/target/site/jacoco/jacoco-resources/prettify.js b/target/site/jacoco/jacoco-resources/prettify.js new file mode 100644 index 0000000..b2766fe --- /dev/null +++ b/target/site/jacoco/jacoco-resources/prettify.js @@ -0,0 +1,1510 @@ +// Copyright (C) 2006 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + + +/** + * @fileoverview + * some functions for browser-side pretty printing of code contained in html. + *

+ * + * For a fairly comprehensive set of languages see the + * README + * file that came with this source. At a minimum, the lexer should work on a + * number of languages including C and friends, Java, Python, Bash, SQL, HTML, + * XML, CSS, Javascript, and Makefiles. It works passably on Ruby, PHP and Awk + * and a subset of Perl, but, because of commenting conventions, doesn't work on + * Smalltalk, Lisp-like, or CAML-like languages without an explicit lang class. + *

+ * Usage:

    + *
  1. include this source file in an html page via + * {@code } + *
  2. define style rules. See the example page for examples. + *
  3. mark the {@code
    } and {@code } tags in your source with
    + *    {@code class=prettyprint.}
    + *    You can also use the (html deprecated) {@code } tag, but the pretty
    + *    printer needs to do more substantial DOM manipulations to support that, so
    + *    some css styles may not be preserved.
    + * </ol>
    + * That's it.  I wanted to keep the API as simple as possible, so there's no
    + * need to specify which language the code is in, but if you wish, you can add
    + * another class to the {@code <pre>} or {@code <code>} element to specify the
    + * language, as in {@code <pre class="prettyprint lang-java">}.  Any class that
    + * starts with "lang-" followed by a file extension, specifies the file type.
    + * See the "lang-*.js" files in this directory for code that implements
    + * per-language file handlers.
    + * <p>
    + * Change log:<br>
    + * cbeust, 2006/08/22
    + * <blockquote>
    + *   Java annotations (start with "@") are now captured as literals ("lit")
    + * </blockquote>
    + * @requires console
    + */
    +
    +// JSLint declarations
    +/*global console, document, navigator, setTimeout, window */
    +
    +/**
    + * Split {@code prettyPrint} into multiple timeouts so as not to interfere with
    + * UI events.
    + * If set to {@code false}, {@code prettyPrint()} is synchronous.
    + */
    +window['PR_SHOULD_USE_CONTINUATION'] = true;
    +
    +/** the number of characters between tab columns */
    +window['PR_TAB_WIDTH'] = 8;
    +
    +/** Walks the DOM returning a properly escaped version of innerHTML.
    +  * @param {Node} node
    +  * @param {Array.<string>} out output buffer that receives chunks of HTML.
    +  */
    +window['PR_normalizedHtml']
    +
    +/** Contains functions for creating and registering new language handlers.
    +  * @type {Object}
    +  */
    +  = window['PR']
    +
    +/** Pretty print a chunk of code.
    +  *
    +  * @param {string} sourceCodeHtml code as html
    +  * @return {string} code as html, but prettier
    +  */
    +  = window['prettyPrintOne']
    +/** Find all the {@code <pre>} and {@code <code>} tags in the DOM with
    +  * {@code class=prettyprint} and prettify them.
    +  * @param {Function?} opt_whenDone if specified, called when the last entry
    +  *     has been finished.
    +  */
    +  = window['prettyPrint'] = void 0;
    +
    +/** browser detection. @extern @returns false if not IE, otherwise the major version. */
    +window['_pr_isIE6'] = function () {
    +  var ieVersion = navigator && navigator.userAgent &&
    +      navigator.userAgent.match(/\bMSIE ([678])\./);
    +  ieVersion = ieVersion ? +ieVersion[1] : false;
    +  window['_pr_isIE6'] = function () { return ieVersion; };
    +  return ieVersion;
    +};
    +
    +
    +(function () {
    +  // Keyword lists for various languages.
    +  var FLOW_CONTROL_KEYWORDS =
    +      "break continue do else for if return while ";
    +  var C_KEYWORDS = FLOW_CONTROL_KEYWORDS + "auto case char const default " +
    +      "double enum extern float goto int long register short signed sizeof " +
    +      "static struct switch typedef union unsigned void volatile ";
    +  var COMMON_KEYWORDS = C_KEYWORDS + "catch class delete false import " +
    +      "new operator private protected public this throw true try typeof ";
    +  var CPP_KEYWORDS = COMMON_KEYWORDS + "alignof align_union asm axiom bool " +
    +      "concept concept_map const_cast constexpr decltype " +
    +      "dynamic_cast explicit export friend inline late_check " +
    +      "mutable namespace nullptr reinterpret_cast static_assert static_cast " +
    +      "template typeid typename using virtual wchar_t where ";
    +  var JAVA_KEYWORDS = COMMON_KEYWORDS +
    +      "abstract boolean byte extends final finally implements import " +
    +      "instanceof null native package strictfp super synchronized throws " +
    +      "transient ";
    +  var CSHARP_KEYWORDS = JAVA_KEYWORDS +
    +      "as base by checked decimal delegate descending event " +
    +      "fixed foreach from group implicit in interface internal into is lock " +
    +      "object out override orderby params partial readonly ref sbyte sealed " +
    +      "stackalloc string select uint ulong unchecked unsafe ushort var ";
    +  var JSCRIPT_KEYWORDS = COMMON_KEYWORDS +
    +      "debugger eval export function get null set undefined var with " +
    +      "Infinity NaN ";
    +  var PERL_KEYWORDS = "caller delete die do dump elsif eval exit foreach for " +
    +      "goto if import last local my next no our print package redo require " +
    +      "sub undef unless until use wantarray while BEGIN END ";
    +  var PYTHON_KEYWORDS = FLOW_CONTROL_KEYWORDS + "and as assert class def del " +
    +      "elif except exec finally from global import in is lambda " +
    +      "nonlocal not or pass print raise try with yield " +
    +      "False True None ";
    +  var RUBY_KEYWORDS = FLOW_CONTROL_KEYWORDS + "alias and begin case class def" +
    +      " defined elsif end ensure false in module next nil not or redo rescue " +
    +      "retry self super then true undef unless until when yield BEGIN END ";
    +  var SH_KEYWORDS = FLOW_CONTROL_KEYWORDS + "case done elif esac eval fi " +
    +      "function in local set then until ";
    +  var ALL_KEYWORDS = (
    +      CPP_KEYWORDS + CSHARP_KEYWORDS + JSCRIPT_KEYWORDS + PERL_KEYWORDS +
    +      PYTHON_KEYWORDS + RUBY_KEYWORDS + SH_KEYWORDS);
    +
    +  // token style names.  correspond to css classes
    +  /** token style for a string literal */
    +  var PR_STRING = 'str';
    +  /** token style for a keyword */
    +  var PR_KEYWORD = 'kwd';
    +  /** token style for a comment */
    +  var PR_COMMENT = 'com';
    +  /** token style for a type */
    +  var PR_TYPE = 'typ';
    +  /** token style for a literal value.  e.g. 1, null, true. */
    +  var PR_LITERAL = 'lit';
    +  /** token style for a punctuation string. */
    +  var PR_PUNCTUATION = 'pun';
    +  /** token style for a punctuation string. */
    +  var PR_PLAIN = 'pln';
    +
    +  /** token style for an sgml tag. */
    +  var PR_TAG = 'tag';
    +  /** token style for a markup declaration such as a DOCTYPE. */
    +  var PR_DECLARATION = 'dec';
    +  /** token style for embedded source. */
    +  var PR_SOURCE = 'src';
    +  /** token style for an sgml attribute name. */
    +  var PR_ATTRIB_NAME = 'atn';
    +  /** token style for an sgml attribute value. */
    +  var PR_ATTRIB_VALUE = 'atv';
    +
    +  /**
    +   * A class that indicates a section of markup that is not code, e.g. to allow
    +   * embedding of line numbers within code listings.
    +   */
    +  var PR_NOCODE = 'nocode';
    +
    +  /** A set of tokens that can precede a regular expression literal in
    +    * javascript.
    +    * http://www.mozilla.org/js/language/js20/rationale/syntax.html has the full
    +    * list, but I've removed ones that might be problematic when seen in
    +    * languages that don't support regular expression literals.
    +    *
    +    * <p>Specifically, I've removed any keywords that can't precede a regexp
    +    * literal in a syntactically legal javascript program, and I've removed the
    +    * "in" keyword since it's not a keyword in many languages, and might be used
    +    * as a count of inches.
    +    *
    +    * <p>The link a above does not accurately describe EcmaScript rules since
    +    * it fails to distinguish between (a=++/b/i) and (a++/b/i) but it works
    +    * very well in practice.
    +    *
    +    * @private
    +    */
    +  var REGEXP_PRECEDER_PATTERN = function () {
    +      var preceders = [
    +          "!", "!=", "!==", "#", "%", "%=", "&", "&&", "&&=",
    +          "&=", "(", "*", "*=", /* "+", */ "+=", ",", /* "-", */ "-=",
    +          "->", /*".", "..", "...", handled below */ "/", "/=", ":", "::", ";",
    +          "<", "<<", "<<=", "<=", "=", "==", "===", ">",
    +          ">=", ">>", ">>=", ">>>", ">>>=", "?", "@", "[",
    +          "^", "^=", "^^", "^^=", "{", "|", "|=", "||",
    +          "||=", "~" /* handles =~ and !~ */,
    +          "break", "case", "continue", "delete",
    +          "do", "else", "finally", "instanceof",
    +          "return", "throw", "try", "typeof"
    +          ];
    +      var pattern = '(?:^^|[+-]';
    +      for (var i = 0; i < preceders.length; ++i) {
    +        pattern += '|' + preceders[i].replace(/([^=<>:&a-z])/g, '\\$1');
    +      }
    +      pattern += ')\\s*';  // matches at end, and matches empty string
    +      return pattern;
    +      // CAVEAT: this does not properly handle the case where a regular
    +      // expression immediately follows another since a regular expression may
    +      // have flags for case-sensitivity and the like.  Having regexp tokens
    +      // adjacent is not valid in any language I'm aware of, so I'm punting.
    +      // TODO: maybe style special characters inside a regexp as punctuation.
    +    }();
    +
    +  // Define regexps here so that the interpreter doesn't have to create an
    +  // object each time the function containing them is called.
    +  // The language spec requires a new object created even if you don't access
    +  // the $1 members.
    +  var pr_amp = /&/g;
    +  var pr_lt = /</g;
    +  var pr_gt = />/g;
    +  var pr_quot = /\"/g;
    +  /** like textToHtml but escapes double quotes to be attribute safe. */
    +  function attribToHtml(str) {
    +    return str.replace(pr_amp, '&amp;')
    +        .replace(pr_lt, '&lt;')
    +        .replace(pr_gt, '&gt;')
    +        .replace(pr_quot, '&quot;');
    +  }
    +
    +  /** escapest html special characters to html. */
    +  function textToHtml(str) {
    +    return str.replace(pr_amp, '&amp;')
    +        .replace(pr_lt, '&lt;')
    +        .replace(pr_gt, '&gt;');
    +  }
    +
    +
    +  var pr_ltEnt = /&lt;/g;
    +  var pr_gtEnt = /&gt;/g;
    +  var pr_aposEnt = /&apos;/g;
    +  var pr_quotEnt = /&quot;/g;
    +  var pr_ampEnt = /&amp;/g;
    +  var pr_nbspEnt = /&nbsp;/g;
    +  /** unescapes html to plain text. */
    +  function htmlToText(html) {
    +    var pos = html.indexOf('&');
    +    if (pos < 0) { return html; }
    +    // Handle numeric entities specially.  We can't use functional substitution
    +    // since that doesn't work in older versions of Safari.
    +    // These should be rare since most browsers convert them to normal chars.
    +    for (--pos; (pos = html.indexOf('&#', pos + 1)) >= 0;) {
    +      var end = html.indexOf(';', pos);
    +      if (end >= 0) {
    +        var num = html.substring(pos + 3, end);
    +        var radix = 10;
    +        if (num && num.charAt(0) === 'x') {
    +          num = num.substring(1);
    +          radix = 16;
    +        }
    +        var codePoint = parseInt(num, radix);
    +        if (!isNaN(codePoint)) {
    +          html = (html.substring(0, pos) + String.fromCharCode(codePoint) +
    +                  html.substring(end + 1));
    +        }
    +      }
    +    }
    +
    +    return html.replace(pr_ltEnt, '<')
    +        .replace(pr_gtEnt, '>')
    +        .replace(pr_aposEnt, "'")
    +        .replace(pr_quotEnt, '"')
    +        .replace(pr_nbspEnt, ' ')
    +        .replace(pr_ampEnt, '&');
    +  }
    +
    +  /** is the given node's innerHTML normally unescaped? */
    +  function isRawContent(node) {
    +    return 'XMP' === node.tagName;
    +  }
    +
    +  var newlineRe = /[\r\n]/g;
    +  /**
    +   * Are newlines and adjacent spaces significant in the given node's innerHTML?
    +   */
    +  function isPreformatted(node, content) {
    +    // PRE means preformatted, and is a very common case, so don't create
    +    // unnecessary computed style objects.
    +    if ('PRE' === node.tagName) { return true; }
    +    if (!newlineRe.test(content)) { return true; }  // Don't care
    +    var whitespace = '';
    +    // For disconnected nodes, IE has no currentStyle.
    +    if (node.currentStyle) {
    +      whitespace = node.currentStyle.whiteSpace;
    +    } else if (window.getComputedStyle) {
    +      // Firefox makes a best guess if node is disconnected whereas Safari
    +      // returns the empty string.
    +      whitespace = window.getComputedStyle(node, null).whiteSpace;
    +    }
    +    return !whitespace || whitespace === 'pre';
    +  }
    +
    +  function normalizedHtml(node, out, opt_sortAttrs) {
    +    switch (node.nodeType) {
    +      case 1:  // an element
    +        var name = node.tagName.toLowerCase();
    +
    +        out.push('<', name);
    +        var attrs = node.attributes;
    +        var n = attrs.length;
    +        if (n) {
    +          if (opt_sortAttrs) {
    +            var sortedAttrs = [];
    +            for (var i = n; --i >= 0;) { sortedAttrs[i] = attrs[i]; }
    +            sortedAttrs.sort(function (a, b) {
    +                return (a.name < b.name) ? -1 : a.name === b.name ? 0 : 1;
    +              });
    +            attrs = sortedAttrs;
    +          }
    +          for (var i = 0; i < n; ++i) {
    +            var attr = attrs[i];
    +            if (!attr.specified) { continue; }
    +            out.push(' ', attr.name.toLowerCase(),
    +                     '="', attribToHtml(attr.value), '"');
    +          }
    +        }
    +        out.push('>');
    +        for (var child = node.firstChild; child; child = child.nextSibling) {
    +          normalizedHtml(child, out, opt_sortAttrs);
    +        }
    +        if (node.firstChild || !/^(?:br|link|img)$/.test(name)) {
    +          out.push('<\/', name, '>');
    +        }
    +        break;
    +      case 3: case 4: // text
    +        out.push(textToHtml(node.nodeValue));
    +        break;
    +    }
    +  }
    +
    +  /**
    +   * Given a group of {@link RegExp}s, returns a {@code RegExp} that globally
    +   * matches the union o the sets o strings matched d by the input RegExp.
    +   * Since it matches globally, if the input strings have a start-of-input
    +   * anchor (/^.../), it is ignored for the purposes of unioning.
    +   * @param {Array.<RegExp>} regexs non multiline, non-global regexs.
    +   * @return {RegExp} a global regex.
    +   */
    +  function combinePrefixPatterns(regexs) {
    +    var capturedGroupIndex = 0;
    +
    +    var needToFoldCase = false;
    +    var ignoreCase = false;
    +    for (var i = 0, n = regexs.length; i < n; ++i) {
    +      var regex = regexs[i];
    +      if (regex.ignoreCase) {
    +        ignoreCase = true;
    +      } else if (/[a-z]/i.test(regex.source.replace(
    +                     /\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi, ''))) {
    +        needToFoldCase = true;
    +        ignoreCase = false;
    +        break;
    +      }
    +    }
    +
    +    function decodeEscape(charsetPart) {
    +      if (charsetPart.charAt(0) !== '\\') { return charsetPart.charCodeAt(0); }
    +      switch (charsetPart.charAt(1)) {
    +        case 'b': return 8;
    +        case 't': return 9;
    +        case 'n': return 0xa;
    +        case 'v': return 0xb;
    +        case 'f': return 0xc;
    +        case 'r': return 0xd;
    +        case 'u': case 'x':
    +          return parseInt(charsetPart.substring(2), 16)
    +              || charsetPart.charCodeAt(1);
    +        case '0': case '1': case '2': case '3': case '4':
    +        case '5': case '6': case '7':
    +          return parseInt(charsetPart.substring(1), 8);
    +        default: return charsetPart.charCodeAt(1);
    +      }
    +    }
    +
    +    function encodeEscape(charCode) {
    +      if (charCode < 0x20) {
    +        return (charCode < 0x10 ? '\\x0' : '\\x') + charCode.toString(16);
    +      }
    +      var ch = String.fromCharCode(charCode);
    +      if (ch === '\\' || ch === '-' || ch === '[' || ch === ']') {
    +        ch = '\\' + ch;
    +      }
    +      return ch;
    +    }
    +
    +    function caseFoldCharset(charSet) {
    +      var charsetParts = charSet.substring(1, charSet.length - 1).match(
    +          new RegExp(
    +              '\\\\u[0-9A-Fa-f]{4}'
    +              + '|\\\\x[0-9A-Fa-f]{2}'
    +              + '|\\\\[0-3][0-7]{0,2}'
    +              + '|\\\\[0-7]{1,2}'
    +              + '|\\\\[\\s\\S]'
    +              + '|-'
    +              + '|[^-\\\\]',
    +              'g'));
    +      var groups = [];
    +      var ranges = [];
    +      var inverse = charsetParts[0] === '^';
    +      for (var i = inverse ? 1 : 0, n = charsetParts.length; i < n; ++i) {
    +        var p = charsetParts[i];
    +        switch (p) {
    +          case '\\B': case '\\b':
    +          case '\\D': case '\\d':
    +          case '\\S': case '\\s':
    +          case '\\W': case '\\w':
    +            groups.push(p);
    +            continue;
    +        }
    +        var start = decodeEscape(p);
    +        var end;
    +        if (i + 2 < n && '-' === charsetParts[i + 1]) {
    +          end = decodeEscape(charsetParts[i + 2]);
    +          i += 2;
    +        } else {
    +          end = start;
    +        }
    +        ranges.push([start, end]);
    +        // If the range might intersect letters, then expand it.
    +        if (!(end < 65 || start > 122)) {
    +          if (!(end < 65 || start > 90)) {
    +            ranges.push([Math.max(65, start) | 32, Math.min(end, 90) | 32]);
    +          }
    +          if (!(end < 97 || start > 122)) {
    +            ranges.push([Math.max(97, start) & ~32, Math.min(end, 122) & ~32]);
    +          }
    +        }
    +      }
    +
    +      // [[1, 10], [3, 4], [8, 12], [14, 14], [16, 16], [17, 17]]
    +      // -> [[1, 12], [14, 14], [16, 17]]
    +      ranges.sort(function (a, b) { return (a[0] - b[0]) || (b[1]  - a[1]); });
    +      var consolidatedRanges = [];
    +      var lastRange = [NaN, NaN];
    +      for (var i = 0; i < ranges.length; ++i) {
    +        var range = ranges[i];
    +        if (range[0] <= lastRange[1] + 1) {
    +          lastRange[1] = Math.max(lastRange[1], range[1]);
    +        } else {
    +          consolidatedRanges.push(lastRange = range);
    +        }
    +      }
    +
    +      var out = ['['];
    +      if (inverse) { out.push('^'); }
    +      out.push.apply(out, groups);
    +      for (var i = 0; i < consolidatedRanges.length; ++i) {
    +        var range = consolidatedRanges[i];
    +        out.push(encodeEscape(range[0]));
    +        if (range[1] > range[0]) {
    +          if (range[1] + 1 > range[0]) { out.push('-'); }
    +          out.push(encodeEscape(range[1]));
    +        }
    +      }
    +      out.push(']');
    +      return out.join('');
    +    }
    +
    +    function allowAnywhereFoldCaseAndRenumberGroups(regex) {
    +      // Split into character sets, escape sequences, punctuation strings
    +      // like ('(', '(?:', ')', '^'), and runs of characters that do not
    +      // include any of the above.
    +      var parts = regex.source.match(
    +          new RegExp(
    +              '(?:'
    +              + '\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]'  // a character set
    +              + '|\\\\u[A-Fa-f0-9]{4}'  // a unicode escape
    +              + '|\\\\x[A-Fa-f0-9]{2}'  // a hex escape
    +              + '|\\\\[0-9]+'  // a back-reference or octal escape
    +              + '|\\\\[^ux0-9]'  // other escape sequence
    +              + '|\\(\\?[:!=]'  // start of a non-capturing group
    +              + '|[\\(\\)\\^]'  // start/emd of a group, or line start
    +              + '|[^\\x5B\\x5C\\(\\)\\^]+'  // run of other characters
    +              + ')',
    +              'g'));
    +      var n = parts.length;
    +
    +      // Maps captured group numbers to the number they will occupy in
    +      // the output or to -1 if that has not been determined, or to
    +      // undefined if they need not be capturing in the output.
    +      var capturedGroups = [];
    +
    +      // Walk over and identify back references to build the capturedGroups
    +      // mapping.
    +      for (var i = 0, groupIndex = 0; i < n; ++i) {
    +        var p = parts[i];
    +        if (p === '(') {
    +          // groups are 1-indexed, so max group index is count of '('
    +          ++groupIndex;
    +        } else if ('\\' === p.charAt(0)) {
    +          var decimalValue = +p.substring(1);
    +          if (decimalValue && decimalValue <= groupIndex) {
    +            capturedGroups[decimalValue] = -1;
    +          }
    +        }
    +      }
    +
    +      // Renumber groups and reduce capturing groups to non-capturing groups
    +      // where possible.
    +      for (var i = 1; i < capturedGroups.length; ++i) {
    +        if (-1 === capturedGroups[i]) {
    +          capturedGroups[i] = ++capturedGroupIndex;
    +        }
    +      }
    +      for (var i = 0, groupIndex = 0; i < n; ++i) {
    +        var p = parts[i];
    +        if (p === '(') {
    +          ++groupIndex;
    +          if (capturedGroups[groupIndex] === undefined) {
    +            parts[i] = '(?:';
    +          }
    +        } else if ('\\' === p.charAt(0)) {
    +          var decimalValue = +p.substring(1);
    +          if (decimalValue && decimalValue <= groupIndex) {
    +            parts[i] = '\\' + capturedGroups[groupIndex];
    +          }
    +        }
    +      }
    +
    +      // Remove any prefix anchors so that the output will match anywhere.
    +      // ^^ really does mean an anchored match though.
    +      for (var i = 0, groupIndex = 0; i < n; ++i) {
    +        if ('^' === parts[i] && '^' !== parts[i + 1]) { parts[i] = ''; }
    +      }
    +
    +      // Expand letters to groupts to handle mixing of case-sensitive and
    +      // case-insensitive patterns if necessary.
    +      if (regex.ignoreCase && needToFoldCase) {
    +        for (var i = 0; i < n; ++i) {
    +          var p = parts[i];
    +          var ch0 = p.charAt(0);
    +          if (p.length >= 2 && ch0 === '[') {
    +            parts[i] = caseFoldCharset(p);
    +          } else if (ch0 !== '\\') {
    +            // TODO: handle letters in numeric escapes.
    +            parts[i] = p.replace(
    +                /[a-zA-Z]/g,
    +                function (ch) {
    +                  var cc = ch.charCodeAt(0);
    +                  return '[' + String.fromCharCode(cc & ~32, cc | 32) + ']';
    +                });
    +          }
    +        }
    +      }
    +
    +      return parts.join('');
    +    }
    +
    +    var rewritten = [];
    +    for (var i = 0, n = regexs.length; i < n; ++i) {
    +      var regex = regexs[i];
    +      if (regex.global || regex.multiline) { throw new Error('' + regex); }
    +      rewritten.push(
    +          '(?:' + allowAnywhereFoldCaseAndRenumberGroups(regex) + ')');
    +    }
    +
    +    return new RegExp(rewritten.join('|'), ignoreCase ? 'gi' : 'g');
    +  }
    +
    +  var PR_innerHtmlWorks = null;
    +  function getInnerHtml(node) {
    +    // inner html is hopelessly broken in Safari 2.0.4 when the content is
    +    // an html description of well formed XML and the containing tag is a PRE
    +    // tag, so we detect that case and emulate innerHTML.
    +    if (null === PR_innerHtmlWorks) {
    +      var testNode = document.createElement('PRE');
    +      testNode.appendChild(
    +          document.createTextNode('<!DOCTYPE foo PUBLIC "foo bar">\n<foo />'));
    +      PR_innerHtmlWorks = !/</.test(testNode.innerHTML);
    +    }
    +
    +    if (PR_innerHtmlWorks) {
    +      var content = node.innerHTML;
    +      // XMP tags contain unescaped entities so require special handling.
    +      if (isRawContent(node)) {
    +        content = textToHtml(content);
    +      } else if (!isPreformatted(node, content)) {
    +        content = content.replace(/(<br\s*\/?>)[\r\n]+/g, '$1')
    +            .replace(/(?:[\r\n]+[ \t]*)+/g, ' ');
    +      }
    +      return content;
    +    }
    +
    +    var out = [];
    +    for (var child = node.firstChild; child; child = child.nextSibling) {
    +      normalizedHtml(child, out);
    +    }
    +    return out.join('');
    +  }
    +
    +  /** returns a function that expand tabs to spaces.  This function can be fed
    +    * successive chunks of text, and will maintain its own internal state to
    +    * keep track of how tabs are expanded.
    +    * @return {function (string) : string} a function that takes
    +    *   plain text and return the text with tabs expanded.
    +    * @private
    +    */
    +  function makeTabExpander(tabWidth) {
    +    var SPACES = '                ';
    +    var charInLine = 0;
    +
    +    return function (plainText) {
    +      // walk over each character looking for tabs and newlines.
    +      // On tabs, expand them.  On newlines, reset charInLine.
    +      // Otherwise increment charInLine
    +      var out = null;
    +      var pos = 0;
    +      for (var i = 0, n = plainText.length; i < n; ++i) {
    +        var ch = plainText.charAt(i);
    +
    +        switch (ch) {
    +          case '\t':
    +            if (!out) { out = []; }
    +            out.push(plainText.substring(pos, i));
    +            // calculate how much space we need in front of this part
    +            // nSpaces is the amount of padding -- the number of spaces needed
    +            // to move us to the next column, where columns occur at factors of
    +            // tabWidth.
    +            var nSpaces = tabWidth - (charInLine % tabWidth);
    +            charInLine += nSpaces;
    +            for (; nSpaces >= 0; nSpaces -= SPACES.length) {
    +              out.push(SPACES.substring(0, nSpaces));
    +            }
    +            pos = i + 1;
    +            break;
    +          case '\n':
    +            charInLine = 0;
    +            break;
    +          default:
    +            ++charInLine;
    +        }
    +      }
    +      if (!out) { return plainText; }
    +      out.push(plainText.substring(pos));
    +      return out.join('');
    +    };
    +  }
    +
    +  var pr_chunkPattern = new RegExp(
    +      '[^<]+'  // A run of characters other than '<'
    +      + '|<\!--[\\s\\S]*?--\>'  // an HTML comment
    +      + '|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>'  // a CDATA section
    +      // a probable tag that should not be highlighted
    +      + '|<\/?[a-zA-Z](?:[^>\"\']|\'[^\']*\'|\"[^\"]*\")*>'
    +      + '|<',  // A '<' that does not begin a larger chunk
    +      'g');
    +  var pr_commentPrefix = /^<\!--/;
    +  var pr_cdataPrefix = /^<!\[CDATA\[/;
    +  var pr_brPrefix = /^<br\b/i;
    +  var pr_tagNameRe = /^<(\/?)([a-zA-Z][a-zA-Z0-9]*)/;
    +
    +  /** split markup into chunks of html tags (style null) and
    +    * plain text (style {@link #PR_PLAIN}), converting tags which are
    +    * significant for tokenization (<br>) into their textual equivalent.
    +    *
    +    * @param {string} s html where whitespace is considered significant.
    +    * @return {Object} source code and extracted tags.
    +    * @private
    +    */
    +  function extractTags(s) {
    +    // since the pattern has the 'g' modifier and defines no capturing groups,
    +    // this will return a list of all chunks which we then classify and wrap as
    +    // PR_Tokens
    +    var matches = s.match(pr_chunkPattern);
    +    var sourceBuf = [];
    +    var sourceBufLen = 0;
    +    var extractedTags = [];
    +    if (matches) {
    +      for (var i = 0, n = matches.length; i < n; ++i) {
    +        var match = matches[i];
    +        if (match.length > 1 && match.charAt(0) === '<') {
    +          if (pr_commentPrefix.test(match)) { continue; }
    +          if (pr_cdataPrefix.test(match)) {
    +            // strip CDATA prefix and suffix.  Don't unescape since it's CDATA
    +            sourceBuf.push(match.substring(9, match.length - 3));
    +            sourceBufLen += match.length - 12;
    +          } else if (pr_brPrefix.test(match)) {
    +            // <br> tags are lexically significant so convert them to text.
    +            // This is undone later.
    +            sourceBuf.push('\n');
    +            ++sourceBufLen;
    +          } else {
    +            if (match.indexOf(PR_NOCODE) >= 0 && isNoCodeTag(match)) {
    +              // A <span class="nocode"> will start a section that should be
    +              // ignored.  Continue walking the list until we see a matching end
    +              // tag.
    +              var name = match.match(pr_tagNameRe)[2];
    +              var depth = 1;
    +              var j;
    +              end_tag_loop:
    +              for (j = i + 1; j < n; ++j) {
    +                var name2 = matches[j].match(pr_tagNameRe);
    +                if (name2 && name2[2] === name) {
    +                  if (name2[1] === '/') {
    +                    if (--depth === 0) { break end_tag_loop; }
    +                  } else {
    +                    ++depth;
    +                  }
    +                }
    +              }
    +              if (j < n) {
    +                extractedTags.push(
    +                    sourceBufLen, matches.slice(i, j + 1).join(''));
    +                i = j;
    +              } else {  // Ignore unclosed sections.
    +                extractedTags.push(sourceBufLen, match);
    +              }
    +            } else {
    +              extractedTags.push(sourceBufLen, match);
    +            }
    +          }
    +        } else {
    +          var literalText = htmlToText(match);
    +          sourceBuf.push(literalText);
    +          sourceBufLen += literalText.length;
    +        }
    +      }
    +    }
    +    return { source: sourceBuf.join(''), tags: extractedTags };
    +  }
    +
    +  /** True if the given tag contains a class attribute with the nocode class. */
    +  function isNoCodeTag(tag) {
    +    return !!tag
    +        // First canonicalize the representation of attributes
    +        .replace(/\s(\w+)\s*=\s*(?:\"([^\"]*)\"|'([^\']*)'|(\S+))/g,
    +                 ' $1="$2$3$4"')
    +        // Then look for the attribute we want.
    +        .match(/[cC][lL][aA][sS][sS]=\"[^\"]*\bnocode\b/);
    +  }
    +
    +  /**
    +   * Apply the given language handler to sourceCode and add the resulting
    +   * decorations to out.
    +   * @param {number} basePos the index of sourceCode within the chunk of source
    +   *    whose decorations are already present on out.
    +   */
    +  function appendDecorations(basePos, sourceCode, langHandler, out) {
    +    if (!sourceCode) { return; }
    +    var job = {
    +      source: sourceCode,
    +      basePos: basePos
    +    };
    +    langHandler(job);
    +    out.push.apply(out, job.decorations);
    +  }
    +
    +  /** Given triples of [style, pattern, context] returns a lexing function,
    +    * The lexing function interprets the patterns to find token boundaries and
    +    * returns a decoration list of the form
    +    * [index_0, style_0, index_1, style_1, ..., index_n, style_n]
    +    * where index_n is an index into the sourceCode, and style_n is a style
    +    * constant like PR_PLAIN.  index_n-1 <= index_n, and style_n-1 applies to
    +    * all characters in sourceCode[index_n-1:index_n].
    +    *
    +    * The stylePatterns is a list whose elements have the form
    +    * [style : string, pattern : RegExp, DEPRECATED, shortcut : string].
    +    *
    +    * Style is a style constant like PR_PLAIN, or can be a string of the
    +    * form 'lang-FOO', where FOO is a language extension describing the
    +    * language of the portion of the token in $1 after pattern executes.
    +    * E.g., if style is 'lang-lisp', and group 1 contains the text
    +    * '(hello (world))', then that portion of the token will be passed to the
    +    * registered lisp handler for formatting.
    +    * The text before and after group 1 will be restyled using this decorator
    +    * so decorators should take care that this doesn't result in infinite
    +    * recursion.  For example, the HTML lexer rule for SCRIPT elements looks
    +    * something like ['lang-js', /<[s]cript>(.+?)<\/script>/].  This may match
    +    * '<script>foo()<\/script>', which would cause the current decorator to
    +    * be called with '<script>' which would not match the same rule since
    +    * group 1 must not be empty, so it would be instead styled as PR_TAG by
    +    * the generic tag rule.  The handler registered for the 'js' extension would
    +    * then be called with 'foo()', and finally, the current decorator would
    +    * be called with '<\/script>' which would not match the original rule and
    +    * so the generic tag rule would identify it as a tag.
    +    *
    +    * Pattern must only match prefixes, and if it matches a prefix, then that
    +    * match is considered a token with the same style.
    +    *
    +    * Context is applied to the last non-whitespace, non-comment token
    +    * recognized.
    +    *
    +    * Shortcut is an optional string of characters, any of which, if the first
    +    * character, gurantee that this pattern and only this pattern matches.
    +    *
    +    * @param {Array} shortcutStylePatterns patterns that always start with
    +    *   a known character.  Must have a shortcut string.
    +    * @param {Array} fallthroughStylePatterns patterns that will be tried in
    +    *   order if the shortcut ones fail.  May have shortcuts.
    +    *
    +    * @return {function (Object)} a
    +    *   function that takes source code and returns a list of decorations.
    +    */
    +  function createSimpleLexer(shortcutStylePatterns, fallthroughStylePatterns) {
    +    var shortcuts = {};
    +    var tokenizer;
    +    (function () {
    +      var allPatterns = shortcutStylePatterns.concat(fallthroughStylePatterns);
    +      var allRegexs = [];
    +      var regexKeys = {};
    +      for (var i = 0, n = allPatterns.length; i < n; ++i) {
    +        var patternParts = allPatterns[i];
    +        var shortcutChars = patternParts[3];
    +        if (shortcutChars) {
    +          for (var c = shortcutChars.length; --c >= 0;) {
    +            shortcuts[shortcutChars.charAt(c)] = patternParts;
    +          }
    +        }
    +        var regex = patternParts[1];
    +        var k = '' + regex;
    +        if (!regexKeys.hasOwnProperty(k)) {
    +          allRegexs.push(regex);
    +          regexKeys[k] = null;
    +        }
    +      }
    +      allRegexs.push(/[\0-\uffff]/);
    +      tokenizer = combinePrefixPatterns(allRegexs);
    +    })();
    +
    +    var nPatterns = fallthroughStylePatterns.length;
    +    var notWs = /\S/;
    +
    +    /**
    +     * Lexes job.source and produces an output array job.decorations of style
    +     * classes preceded by the position at which they start in job.source in
    +     * order.
    +     *
    +     * @param {Object} job an object like {@code
    +     *    source: {string} sourceText plain text,
    +     *    basePos: {int} position of job.source in the larger chunk of
    +     *        sourceCode.
    +     * }
    +     */
    +    var decorate = function (job) {
    +      var sourceCode = job.source, basePos = job.basePos;
    +      /** Even entries are positions in source in ascending order.  Odd enties
    +        * are style markers (e.g., PR_COMMENT) that run from that position until
    +        * the end.
    +        * @type {Array.<number|string>}
    +        */
    +      var decorations = [basePos, PR_PLAIN];
    +      var pos = 0;  // index into sourceCode
    +      var tokens = sourceCode.match(tokenizer) || [];
    +      var styleCache = {};
    +
    +      for (var ti = 0, nTokens = tokens.length; ti < nTokens; ++ti) {
    +        var token = tokens[ti];
    +        var style = styleCache[token];
    +        var match = void 0;
    +
    +        var isEmbedded;
    +        if (typeof style === 'string') {
    +          isEmbedded = false;
    +        } else {
    +          var patternParts = shortcuts[token.charAt(0)];
    +          if (patternParts) {
    +            match = token.match(patternParts[1]);
    +            style = patternParts[0];
    +          } else {
    +            for (var i = 0; i < nPatterns; ++i) {
    +              patternParts = fallthroughStylePatterns[i];
    +              match = token.match(patternParts[1]);
    +              if (match) {
    +                style = patternParts[0];
    +                break;
    +              }
    +            }
    +
    +            if (!match) {  // make sure that we make progress
    +              style = PR_PLAIN;
    +            }
    +          }
    +
    +          isEmbedded = style.length >= 5 && 'lang-' === style.substring(0, 5);
    +          if (isEmbedded && !(match && typeof match[1] === 'string')) {
    +            isEmbedded = false;
    +            style = PR_SOURCE;
    +          }
    +
    +          if (!isEmbedded) { styleCache[token] = style; }
    +        }
    +
    +        var tokenStart = pos;
    +        pos += token.length;
    +
    +        if (!isEmbedded) {
    +          decorations.push(basePos + tokenStart, style);
    +        } else {  // Treat group 1 as an embedded block of source code.
    +          var embeddedSource = match[1];
    +          var embeddedSourceStart = token.indexOf(embeddedSource);
    +          var embeddedSourceEnd = embeddedSourceStart + embeddedSource.length;
    +          if (match[2]) {
    +            // If embeddedSource can be blank, then it would match at the
    +            // beginning which would cause us to infinitely recurse on the
    +            // entire token, so we catch the right context in match[2].
    +            embeddedSourceEnd = token.length - match[2].length;
    +            embeddedSourceStart = embeddedSourceEnd - embeddedSource.length;
    +          }
    +          var lang = style.substring(5);
    +          // Decorate the left of the embedded source
    +          appendDecorations(
    +              basePos + tokenStart,
    +              token.substring(0, embeddedSourceStart),
    +              decorate, decorations);
    +          // Decorate the embedded source
    +          appendDecorations(
    +              basePos + tokenStart + embeddedSourceStart,
    +              embeddedSource,
    +              langHandlerForExtension(lang, embeddedSource),
    +              decorations);
    +          // Decorate the right of the embedded section
    +          appendDecorations(
    +              basePos + tokenStart + embeddedSourceEnd,
    +              token.substring(embeddedSourceEnd),
    +              decorate, decorations);
    +        }
    +      }
    +      job.decorations = decorations;
    +    };
    +    return decorate;
    +  }
    +
    +  /** returns a function that produces a list of decorations from source text.
    +    *
    +    * This code treats ", ', and ` as string delimiters, and \ as a string
    +    * escape.  It does not recognize perl's qq() style strings.
    +    * It has no special handling for double delimiter escapes as in basic, or
    +    * the tripled delimiters used in python, but should work on those regardless
    +    * although in those cases a single string literal may be broken up into
    +    * multiple adjacent string literals.
    +    *
    +    * It recognizes C, C++, and shell style comments.
    +    *
    +    * @param {Object} options a set of optional parameters.
    +    * @return {function (Object)} a function that examines the source code
    +    *     in the input job and builds the decoration list.
    +    */
    +  function sourceDecorator(options) {
    +    var shortcutStylePatterns = [], fallthroughStylePatterns = [];
    +    if (options['tripleQuotedStrings']) {
    +      // '''multi-line-string''', 'single-line-string', and double-quoted
    +      shortcutStylePatterns.push(
    +          [PR_STRING,  /^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,
    +           null, '\'"']);
    +    } else if (options['multiLineStrings']) {
    +      // 'multi-line-string', "multi-line-string"
    +      shortcutStylePatterns.push(
    +          [PR_STRING,  /^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,
    +           null, '\'"`']);
    +    } else {
    +      // 'single-line-string', "single-line-string"
    +      shortcutStylePatterns.push(
    +          [PR_STRING,
    +           /^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,
    +           null, '"\'']);
    +    }
    +    if (options['verbatimStrings']) {
    +      // verbatim-string-literal production from the C# grammar.  See issue 93.
    +      fallthroughStylePatterns.push(
    +          [PR_STRING, /^@\"(?:[^\"]|\"\")*(?:\"|$)/, null]);
    +    }
    +    if (options['hashComments']) {
    +      if (options['cStyleComments']) {
    +        // Stop C preprocessor declarations at an unclosed open comment
    +        shortcutStylePatterns.push(
    +            [PR_COMMENT, /^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,
    +             null, '#']);
    +        fallthroughStylePatterns.push(
    +            [PR_STRING,
    +             /^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,
    +             null]);
    +      } else {
    +        shortcutStylePatterns.push([PR_COMMENT, /^#[^\r\n]*/, null, '#']);
    +      }
    +    }
    +    if (options['cStyleComments']) {
    +      fallthroughStylePatterns.push([PR_COMMENT, /^\/\/[^\r\n]*/, null]);
    +      fallthroughStylePatterns.push(
    +          [PR_COMMENT, /^\/\*[\s\S]*?(?:\*\/|$)/, null]);
    +    }
    +    if (options['regexLiterals']) {
    +      var REGEX_LITERAL = (
    +          // A regular expression literal starts with a slash that is
    +          // not followed by * or / so that it is not confused with
    +          // comments.
    +          '/(?=[^/*])'
    +          // and then contains any number of raw characters,
    +          + '(?:[^/\\x5B\\x5C]'
    +          // escape sequences (\x5C),
    +          +    '|\\x5C[\\s\\S]'
    +          // or non-nesting character sets (\x5B\x5D);
    +          +    '|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+'
    +          // finally closed by a /.
    +          + '/');
    +      fallthroughStylePatterns.push(
    +          ['lang-regex',
    +           new RegExp('^' + REGEXP_PRECEDER_PATTERN + '(' + REGEX_LITERAL + ')')
    +           ]);
    +    }
    +
    +    var keywords = options['keywords'].replace(/^\s+|\s+$/g, '');
    +    if (keywords.length) {
    +      fallthroughStylePatterns.push(
    +          [PR_KEYWORD,
    +           new RegExp('^(?:' + keywords.replace(/\s+/g, '|') + ')\\b'), null]);
    +    }
    +
    +    shortcutStylePatterns.push([PR_PLAIN,       /^\s+/, null, ' \r\n\t\xA0']);
    +    fallthroughStylePatterns.push(
    +        // TODO(mikesamuel): recognize non-latin letters and numerals in idents
    +        [PR_LITERAL,     /^@[a-z_$][a-z_$@0-9]*/i, null],
    +        [PR_TYPE,        /^@?[A-Z]+[a-z][A-Za-z_$@0-9]*/, null],
    +        [PR_PLAIN,       /^[a-z_$][a-z_$@0-9]*/i, null],
    +        [PR_LITERAL,
    +         new RegExp(
    +             '^(?:'
    +             // A hex number
    +             + '0x[a-f0-9]+'
    +             // or an octal or decimal number,
    +             + '|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)'
    +             // possibly in scientific notation
    +             + '(?:e[+\\-]?\\d+)?'
    +             + ')'
    +             // with an optional modifier like UL for unsigned long
    +             + '[a-z]*', 'i'),
    +         null, '0123456789'],
    +        [PR_PUNCTUATION, /^.[^\s\w\.$@\'\"\`\/\#]*/, null]);
    +
    +    return createSimpleLexer(shortcutStylePatterns, fallthroughStylePatterns);
    +  }
    +
    +  var decorateSource = sourceDecorator({
    +        'keywords': ALL_KEYWORDS,
    +        'hashComments': true,
    +        'cStyleComments': true,
    +        'multiLineStrings': true,
    +        'regexLiterals': true
    +      });
    +
    +  /** Breaks {@code job.source} around style boundaries in
    +    * {@code job.decorations} while re-interleaving {@code job.extractedTags},
    +    * and leaves the result in {@code job.prettyPrintedHtml}.
    +    * @param {Object} job like {
    +    *    source: {string} source as plain text,
    +    *    extractedTags: {Array.<number|string>} extractedTags chunks of raw
    +    *                   html preceded by their position in {@code job.source}
    +    *                   in order
    +    *    decorations: {Array.<number|string} an array of style classes preceded
    +    *                 by the position at which they start in job.source in order
    +    * }
    +    * @private
    +    */
    +  function recombineTagsAndDecorations(job) {
    +    var sourceText = job.source;
    +    var extractedTags = job.extractedTags;
    +    var decorations = job.decorations;
    +
    +    var html = [];
    +    // index past the last char in sourceText written to html
    +    var outputIdx = 0;
    +
    +    var openDecoration = null;
    +    var currentDecoration = null;
    +    var tagPos = 0;  // index into extractedTags
    +    var decPos = 0;  // index into decorations
    +    var tabExpander = makeTabExpander(window['PR_TAB_WIDTH']);
    +
    +    var adjacentSpaceRe = /([\r\n ]) /g;
    +    var startOrSpaceRe = /(^| ) /gm;
    +    var newlineRe = /\r\n?|\n/g;
    +    var trailingSpaceRe = /[ \r\n]$/;
    +    var lastWasSpace = true;  // the last text chunk emitted ended with a space.
    +
    +    // See bug 71 and http://stackoverflow.com/questions/136443/why-doesnt-ie7-
    +    var isIE678 = window['_pr_isIE6']();
    +    var lineBreakHtml = (
    +        isIE678
    +        ? (job.sourceNode.tagName === 'PRE'
    +           // Use line feeds instead of <br>s so that copying and pasting works
    +           // on IE.
    +           // Doing this on other browsers breaks lots of stuff since \r\n is
    +           // treated as two newlines on Firefox.
    +           ? (isIE678 === 6 ? '&#160;\r\n' :
    +              isIE678 === 7 ? '&#160;<br>\r' : '&#160;\r')
    +           // IE collapses multiple adjacent <br>s into 1 line break.
    +           // Prefix every newline with '&#160;' to prevent such behavior.
    +           // &nbsp; is the same as &#160; but works in XML as well as HTML.
    +           : '&#160;<br />')
    +        : '<br />');
    +
    +    // Look for a class like linenums or linenums:<n> where <n> is the 1-indexed
    +    // number of the first line.
    +    var numberLines = job.sourceNode.className.match(/\blinenums\b(?::(\d+))?/);
    +    var lineBreaker;
    +    if (numberLines) {
    +      var lineBreaks = [];
    +      for (var i = 0; i < 10; ++i) {
    +        lineBreaks[i] = lineBreakHtml + '</li><li class="L' + i + '">';
    +      }
    +      var lineNum = numberLines[1] && numberLines[1].length
    +          ? numberLines[1] - 1 : 0;  // Lines are 1-indexed
    +      html.push('<ol class="linenums"><li class="L', (lineNum) % 10, '"');
    +      if (lineNum) {
    +        html.push(' value="', lineNum + 1, '"');
    +      }
    +      html.push('>');
    +      lineBreaker = function () {
    +        var lb = lineBreaks[++lineNum % 10];
    +        // If a decoration is open, we need to close it before closing a list-item
    +        // and reopen it on the other side of the list item.
    +        return openDecoration
    +            ? ('</span>' + lb + '<span class="' + openDecoration + '">') : lb;
    +      };
    +    } else {
    +      lineBreaker = lineBreakHtml;
    +    }
    +
    +    // A helper function that is responsible for opening sections of decoration
    +    // and outputing properly escaped chunks of source
    +    function emitTextUpTo(sourceIdx) {
    +      if (sourceIdx > outputIdx) {
    +        if (openDecoration && openDecoration !== currentDecoration) {
    +          // Close the current decoration
    +          html.push('</span>');
    +          openDecoration = null;
    +        }
    +        if (!openDecoration && currentDecoration) {
    +          openDecoration = currentDecoration;
    +          html.push('<span class="', openDecoration, '">');
    +        }
    +        // This interacts badly with some wikis which introduces paragraph tags
    +        // into pre blocks for some strange reason.
    +        // It's necessary for IE though which seems to lose the preformattedness
    +        // of <pre> tags when their innerHTML is assigned.
    +        // http://stud3.tuwien.ac.at/~e0226430/innerHtmlQuirk.html
    +        // and it serves to undo the conversion of <br>s to newlines done in
    +        // chunkify.
    +        var htmlChunk = textToHtml(
    +            tabExpander(sourceText.substring(outputIdx, sourceIdx)))
    +            .replace(lastWasSpace
    +                     ? startOrSpaceRe
    +                     : adjacentSpaceRe, '$1&#160;');
    +        // Keep track of whether we need to escape space at the beginning of the
    +        // next chunk.
    +        lastWasSpace = trailingSpaceRe.test(htmlChunk);
    +        html.push(htmlChunk.replace(newlineRe, lineBreaker));
    +        outputIdx = sourceIdx;
    +      }
    +    }
    +
    +    while (true) {
    +      // Determine if we're going to consume a tag this time around.  Otherwise
    +      // we consume a decoration or exit.
    +      var outputTag;
    +      if (tagPos < extractedTags.length) {
    +        if (decPos < decorations.length) {
    +          // Pick one giving preference to extractedTags since we shouldn't open
    +          // a new style that we're going to have to immediately close in order
    +          // to output a tag.
    +          outputTag = extractedTags[tagPos] <= decorations[decPos];
    +        } else {
    +          outputTag = true;
    +        }
    +      } else {
    +        outputTag = false;
    +      }
    +      // Consume either a decoration or a tag or exit.
    +      if (outputTag) {
    +        emitTextUpTo(extractedTags[tagPos]);
    +        if (openDecoration) {
    +          // Close the current decoration
    +          html.push('</span>');
    +          openDecoration = null;
    +        }
    +        html.push(extractedTags[tagPos + 1]);
    +        tagPos += 2;
    +      } else if (decPos < decorations.length) {
    +        emitTextUpTo(decorations[decPos]);
    +        currentDecoration = decorations[decPos + 1];
    +        decPos += 2;
    +      } else {
    +        break;
    +      }
    +    }
    +    emitTextUpTo(sourceText.length);
    +    if (openDecoration) {
    +      html.push('</span>');
    +    }
    +    if (numberLines) { html.push('</li></ol>'); }
    +    job.prettyPrintedHtml = html.join('');
    +  }
    +
    +  /** Maps language-specific file extensions to handlers. */
    +  var langHandlerRegistry = {};
    +  /** Register a language handler for the given file extensions.
    +    * @param {function (Object)} handler a function from source code to a list
    +    *      of decorations.  Takes a single argument job which describes the
    +    *      state of the computation.   The single parameter has the form
    +    *      {@code {
    +    *        source: {string} as plain text.
    +    *        decorations: {Array.<number|string>} an array of style classes
    +    *                     preceded by the position at which they start in
    +    *                     job.source in order.
    +    *                     The language handler should assigned this field.
    +    *        basePos: {int} the position of source in the larger source chunk.
    +    *                 All positions in the output decorations array are relative
    +    *                 to the larger source chunk.
    +    *      } }
    +    * @param {Array.<string>} fileExtensions
    +    */
    +  function registerLangHandler(handler, fileExtensions) {
    +    for (var i = fileExtensions.length; --i >= 0;) {
    +      var ext = fileExtensions[i];
    +      if (!langHandlerRegistry.hasOwnProperty(ext)) {
    +        langHandlerRegistry[ext] = handler;
    +      } else if ('console' in window) {
    +        console['warn']('cannot override language handler %s', ext);
    +      }
    +    }
    +  }
    +  function langHandlerForExtension(extension, source) {
    +    if (!(extension && langHandlerRegistry.hasOwnProperty(extension))) {
    +      // Treat it as markup if the first non whitespace character is a < and
    +      // the last non-whitespace character is a >.
    +      extension = /^\s*</.test(source)
    +          ? 'default-markup'
    +          : 'default-code';
    +    }
    +    return langHandlerRegistry[extension];
    +  }
    +  registerLangHandler(decorateSource, ['default-code']);
    +  registerLangHandler(
    +      createSimpleLexer(
    +          [],
    +          [
    +           [PR_PLAIN,       /^[^<?]+/],
    +           [PR_DECLARATION, /^<!\w[^>]*(?:>|$)/],
    +           [PR_COMMENT,     /^<\!--[\s\S]*?(?:-\->|$)/],
    +           // Unescaped content in an unknown language
    +           ['lang-',        /^<\?([\s\S]+?)(?:\?>|$)/],
    +           ['lang-',        /^<%([\s\S]+?)(?:%>|$)/],
    +           [PR_PUNCTUATION, /^(?:<[%?]|[%?]>)/],
    +           ['lang-',        /^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],
    +           // Unescaped content in javascript.  (Or possibly vbscript).
    +           ['lang-js',      /^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],
    +           // Contains unescaped stylesheet content
    +           ['lang-css',     /^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],
    +           ['lang-in.tag',  /^(<\/?[a-z][^<>]*>)/i]
    +          ]),
    +      ['default-markup', 'htm', 'html', 'mxml', 'xhtml', 'xml', 'xsl']);
    +  registerLangHandler(
    +      createSimpleLexer(
    +          [
    +           [PR_PLAIN,        /^[\s]+/, null, ' \t\r\n'],
    +           [PR_ATTRIB_VALUE, /^(?:\"[^\"]*\"?|\'[^\']*\'?)/, null, '\"\'']
    +           ],
    +          [
    +           [PR_TAG,          /^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],
    +           [PR_ATTRIB_NAME,  /^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],
    +           ['lang-uq.val',   /^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],
    +           [PR_PUNCTUATION,  /^[=<>\/]+/],
    +           ['lang-js',       /^on\w+\s*=\s*\"([^\"]+)\"/i],
    +           ['lang-js',       /^on\w+\s*=\s*\'([^\']+)\'/i],
    +           ['lang-js',       /^on\w+\s*=\s*([^\"\'>\s]+)/i],
    +           ['lang-css',      /^style\s*=\s*\"([^\"]+)\"/i],
    +           ['lang-css',      /^style\s*=\s*\'([^\']+)\'/i],
    +           ['lang-css',      /^style\s*=\s*([^\"\'>\s]+)/i]
    +           ]),
    +      ['in.tag']);
    +  registerLangHandler(
    +      createSimpleLexer([], [[PR_ATTRIB_VALUE, /^[\s\S]+/]]), ['uq.val']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': CPP_KEYWORDS,
    +          'hashComments': true,
    +          'cStyleComments': true
    +        }), ['c', 'cc', 'cpp', 'cxx', 'cyc', 'm']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': 'null true false'
    +        }), ['json']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': CSHARP_KEYWORDS,
    +          'hashComments': true,
    +          'cStyleComments': true,
    +          'verbatimStrings': true
    +        }), ['cs']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': JAVA_KEYWORDS,
    +          'cStyleComments': true
    +        }), ['java']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': SH_KEYWORDS,
    +          'hashComments': true,
    +          'multiLineStrings': true
    +        }), ['bsh', 'csh', 'sh']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': PYTHON_KEYWORDS,
    +          'hashComments': true,
    +          'multiLineStrings': true,
    +          'tripleQuotedStrings': true
    +        }), ['cv', 'py']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': PERL_KEYWORDS,
    +          'hashComments': true,
    +          'multiLineStrings': true,
    +          'regexLiterals': true
    +        }), ['perl', 'pl', 'pm']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': RUBY_KEYWORDS,
    +          'hashComments': true,
    +          'multiLineStrings': true,
    +          'regexLiterals': true
    +        }), ['rb']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': JSCRIPT_KEYWORDS,
    +          'cStyleComments': true,
    +          'regexLiterals': true
    +        }), ['js']);
    +  registerLangHandler(
    +      createSimpleLexer([], [[PR_STRING, /^[\s\S]+/]]), ['regex']);
    +
    +  function applyDecorator(job) {
    +    var sourceCodeHtml = job.sourceCodeHtml;
    +    var opt_langExtension = job.langExtension;
    +
    +    // Prepopulate output in case processing fails with an exception.
    +    job.prettyPrintedHtml = sourceCodeHtml;
    +
    +    try {
    +      // Extract tags, and convert the source code to plain text.
    +      var sourceAndExtractedTags = extractTags(sourceCodeHtml);
    +      /** Plain text. @type {string} */
    +      var source = sourceAndExtractedTags.source;
    +      job.source = source;
    +      job.basePos = 0;
    +
    +      /** Even entries are positions in source in ascending order.  Odd entries
    +        * are tags that were extracted at that position.
    +        * @type {Array.<number|string>}
    +        */
    +      job.extractedTags = sourceAndExtractedTags.tags;
    +
    +      // Apply the appropriate language handler
    +      langHandlerForExtension(opt_langExtension, source)(job);
    +      // Integrate the decorations and tags back into the source code to produce
    +      // a decorated html string which is left in job.prettyPrintedHtml.
    +      recombineTagsAndDecorations(job);
    +    } catch (e) {
    +      if ('console' in window) {
    +        console['log'](e && e['stack'] ? e['stack'] : e);
    +      }
    +    }
    +  }
    +
    +  function prettyPrintOne(sourceCodeHtml, opt_langExtension) {
    +    var job = {
    +      sourceCodeHtml: sourceCodeHtml,
    +      langExtension: opt_langExtension
    +    };
    +    applyDecorator(job);
    +    return job.prettyPrintedHtml;
    +  }
    +
    +  function prettyPrint(opt_whenDone) {
    +    function byTagName(tn) { return document.getElementsByTagName(tn); }
    +    // fetch a list of nodes to rewrite
    +    var codeSegments = [byTagName('pre'), byTagName('code'), byTagName('xmp')];
    +    var elements = [];
    +    for (var i = 0; i < codeSegments.length; ++i) {
    +      for (var j = 0, n = codeSegments[i].length; j < n; ++j) {
    +        elements.push(codeSegments[i][j]);
    +      }
    +    }
    +    codeSegments = null;
    +
    +    var clock = Date;
    +    if (!clock['now']) {
    +      clock = { 'now': function () { return (new Date).getTime(); } };
    +    }
    +
    +    // The loop is broken into a series of continuations to make sure that we
    +    // don't make the browser unresponsive when rewriting a large page.
    +    var k = 0;
    +    var prettyPrintingJob;
    +
    +    function doWork() {
    +      var endTime = (window['PR_SHOULD_USE_CONTINUATION'] ?
    +                     clock.now() + 250 /* ms */ :
    +                     Infinity);
    +      for (; k < elements.length && clock.now() < endTime; k++) {
    +        var cs = elements[k];
    +        // [JACOCO] 'prettyprint' -> 'source'
    +        if (cs.className && cs.className.indexOf('source') >= 0) {
    +          // If the classes includes a language extensions, use it.
    +          // Language extensions can be specified like
    +          //     <pre class="prettyprint lang-cpp">
    +          // the language extension "cpp" is used to find a language handler as
    +          // passed to PR_registerLangHandler.
    +          var langExtension = cs.className.match(/\blang-(\w+)\b/);
    +          if (langExtension) { langExtension = langExtension[1]; }
    +
    +          // make sure this is not nested in an already prettified element
    +          var nested = false;
    +          for (var p = cs.parentNode; p; p = p.parentNode) {
    +            if ((p.tagName === 'pre' || p.tagName === 'code' ||
    +                 p.tagName === 'xmp') &&
    +                // [JACOCO] 'prettyprint' -> 'source'
    +                p.className && p.className.indexOf('source') >= 0) {
    +              nested = true;
    +              break;
    +            }
    +          }
    +          if (!nested) {
    +            // fetch the content as a snippet of properly escaped HTML.
    +            // Firefox adds newlines at the end.
    +            var content = getInnerHtml(cs);
    +            content = content.replace(/(?:\r\n?|\n)$/, '');
    +
    +            // do the pretty printing
    +            prettyPrintingJob = {
    +              sourceCodeHtml: content,
    +              langExtension: langExtension,
    +              sourceNode: cs
    +            };
    +            applyDecorator(prettyPrintingJob);
    +            replaceWithPrettyPrintedHtml();
    +          }
    +        }
    +      }
    +      if (k < elements.length) {
    +        // finish up in a continuation
    +        setTimeout(doWork, 250);
    +      } else if (opt_whenDone) {
    +        opt_whenDone();
    +      }
    +    }
    +
    +    function replaceWithPrettyPrintedHtml() {
    +      var newContent = prettyPrintingJob.prettyPrintedHtml;
    +      if (!newContent) { return; }
    +      var cs = prettyPrintingJob.sourceNode;
    +
    +      // push the prettified html back into the tag.
    +      if (!isRawContent(cs)) {
    +        // just replace the old html with the new
    +        cs.innerHTML = newContent;
    +      } else {
    +        // we need to change the tag to a <pre> since <xmp>s do not allow
    +        // embedded tags such as the span tags used to attach styles to
    +        // sections of source code.
    +        var pre = document.createElement('PRE');
    +        for (var i = 0; i < cs.attributes.length; ++i) {
    +          var a = cs.attributes[i];
    +          if (a.specified) {
    +            var aname = a.name.toLowerCase();
    +            if (aname === 'class') {
    +              pre.className = a.value;  // For IE 6
    +            } else {
    +              pre.setAttribute(a.name, a.value);
    +            }
    +          }
    +        }
    +        pre.innerHTML = newContent;
    +
    +        // remove the old
    +        cs.parentNode.replaceChild(pre, cs);
    +        cs = pre;
    +      }
    +    }
    +
    +    doWork();
    +  }
    +
    +  window['PR_normalizedHtml'] = normalizedHtml;
    +  window['prettyPrintOne'] = prettyPrintOne;
    +  window['prettyPrint'] = prettyPrint;
    +  window['PR'] = {
    +        'combinePrefixPatterns': combinePrefixPatterns,
    +        'createSimpleLexer': createSimpleLexer,
    +        'registerLangHandler': registerLangHandler,
    +        'sourceDecorator': sourceDecorator,
    +        'PR_ATTRIB_NAME': PR_ATTRIB_NAME,
    +        'PR_ATTRIB_VALUE': PR_ATTRIB_VALUE,
    +        'PR_COMMENT': PR_COMMENT,
    +        'PR_DECLARATION': PR_DECLARATION,
    +        'PR_KEYWORD': PR_KEYWORD,
    +        'PR_LITERAL': PR_LITERAL,
    +        'PR_NOCODE': PR_NOCODE,
    +        'PR_PLAIN': PR_PLAIN,
    +        'PR_PUNCTUATION': PR_PUNCTUATION,
    +        'PR_SOURCE': PR_SOURCE,
    +        'PR_STRING': PR_STRING,
    +        'PR_TAG': PR_TAG,
    +        'PR_TYPE': PR_TYPE
    +      };
    +})();
    diff --git a/target/site/jacoco/jacoco-resources/redbar.gif b/target/site/jacoco/jacoco-resources/redbar.gif
    new file mode 100644
    index 0000000000000000000000000000000000000000..c2f71469ba995289439d86ea39b1b33edb03388c
    GIT binary patch
    literal 91
    zcmZ?wbhEHbWMtrCc+AD{pP&D~tn7aso&R25|6^nS*Vg{;>G{84!T)8;{;yfXu$BQ0
    fDgI<(<YM4w&|v@qkQodt90ol_LPjnP91PX~3&9+X
    
    literal 0
    HcmV?d00001
    
    diff --git a/target/site/jacoco/jacoco-resources/report.css b/target/site/jacoco/jacoco-resources/report.css
    new file mode 100644
    index 0000000..dd936bc
    --- /dev/null
    +++ b/target/site/jacoco/jacoco-resources/report.css
    @@ -0,0 +1,243 @@
    +body, td {
    +  font-family:sans-serif;
    +  font-size:10pt;
    +}
    +
    +h1 {
    +  font-weight:bold;
    +  font-size:18pt;
    +}
    +
    +.breadcrumb {
    +  border:#d6d3ce 1px solid;
    +  padding:2px 4px 2px 4px;
    +}
    +
    +.breadcrumb .info {
    +  float:right;
    +}
    +
    +.breadcrumb .info a {
    +  margin-left:8px;
    +}
    +
    +.el_report {
    +  padding-left:18px;
    +  background-image:url(report.gif);
    +  background-position:left center;
    +  background-repeat:no-repeat;
    +}
    +
    +.el_group {
    +  padding-left:18px;
    +  background-image:url(group.gif);
    +  background-position:left center;
    +  background-repeat:no-repeat;
    +}
    +
    +.el_bundle {
    +  padding-left:18px;
    +  background-image:url(bundle.gif);
    +  background-position:left center;
    +  background-repeat:no-repeat;
    +}
    +
    +.el_package {
    +  padding-left:18px;
    +  background-image:url(package.gif);
    +  background-position:left center;
    +  background-repeat:no-repeat;
    +}
    +
    +.el_class {
    +  padding-left:18px;
    +  background-image:url(class.gif);
    +  background-position:left center;
    +  background-repeat:no-repeat;
    +}
    +
    +.el_source {
    +  padding-left:18px;
    +  background-image:url(source.gif);
    +  background-position:left center;
    +  background-repeat:no-repeat;
    +}
    +
    +.el_method {
    +  padding-left:18px;
    +  background-image:url(method.gif);
    +  background-position:left center;
    +  background-repeat:no-repeat;
    +}
    +
    +.el_session {
    +  padding-left:18px;
    +  background-image:url(session.gif);
    +  background-position:left center;
    +  background-repeat:no-repeat;
    +}
    +
    +pre.source {
    +  border:#d6d3ce 1px solid;
    +  font-family:monospace;
    +}
    +
    +pre.source ol {
    +  margin-bottom: 0px;
    +  margin-top: 0px;
    +}
    +
    +pre.source li {
    +  border-left: 1px solid #D6D3CE;
    +  color: #A0A0A0;
    +  padding-left: 0px;
    +}
    +
    +pre.source span.fc {
    +  background-color:#ccffcc;
    +}
    +
    +pre.source span.nc {
    +  background-color:#ffaaaa;
    +}
    +
    +pre.source span.pc {
    +  background-color:#ffffcc;
    +}
    +
    +pre.source span.bfc {
    +  background-image: url(branchfc.gif);
    +  background-repeat: no-repeat;
    +  background-position: 2px center;
    +}
    +
    +pre.source span.bfc:hover {
    +  background-color:#80ff80;
    +}
    +
    +pre.source span.bnc {
    +  background-image: url(branchnc.gif);
    +  background-repeat: no-repeat;
    +  background-position: 2px center;
    +}
    +
    +pre.source span.bnc:hover {
    +  background-color:#ff8080;
    +}
    +
    +pre.source span.bpc {
    +  background-image: url(branchpc.gif);
    +  background-repeat: no-repeat;
    +  background-position: 2px center;
    +}
    +
    +pre.source span.bpc:hover {
    +  background-color:#ffff80;
    +}
    +
    +table.coverage {
    +  empty-cells:show;
    +  border-collapse:collapse;
    +}
    +
    +table.coverage thead {
    +  background-color:#e0e0e0;
    +}
    +
    +table.coverage thead td {
    +  white-space:nowrap;
    +  padding:2px 14px 0px 6px;
    +  border-bottom:#b0b0b0 1px solid;
    +}
    +
    +table.coverage thead td.bar {
    +  border-left:#cccccc 1px solid;
    +}
    +
    +table.coverage thead td.ctr1 {
    +  text-align:right;
    +  border-left:#cccccc 1px solid;
    +}
    +
    +table.coverage thead td.ctr2 {
    +  text-align:right;
    +  padding-left:2px;
    +}
    +
    +table.coverage thead td.sortable {
    +  cursor:pointer;
    +  background-image:url(sort.gif);
    +  background-position:right center;
    +  background-repeat:no-repeat;
    +}
    +
    +table.coverage thead td.up {
    +  background-image:url(up.gif);
    +}
    +
    +table.coverage thead td.down {
    +  background-image:url(down.gif);
    +}
    +
    +table.coverage tbody td {
    +  white-space:nowrap;
    +  padding:2px 6px 2px 6px;
    +  border-bottom:#d6d3ce 1px solid;
    +}
    +
    +table.coverage tbody tr:hover {
    +  background: #f0f0d0 !important;
    +}
    +
    +table.coverage tbody td.bar {
    +  border-left:#e8e8e8 1px solid;
    +}
    +
    +table.coverage tbody td.ctr1 {
    +  text-align:right;
    +  padding-right:14px;
    +  border-left:#e8e8e8 1px solid;
    +}
    +
    +table.coverage tbody td.ctr2 {
    +  text-align:right;
    +  padding-right:14px;
    +  padding-left:2px;
    +}
    +
    +table.coverage tfoot td {
    +  white-space:nowrap;
    +  padding:2px 6px 2px 6px;
    +}
    +
    +table.coverage tfoot td.bar {
    +  border-left:#e8e8e8 1px solid;
    +}
    +
    +table.coverage tfoot td.ctr1 {
    +  text-align:right;
    +  padding-right:14px;
    +  border-left:#e8e8e8 1px solid;
    +}
    +
    +table.coverage tfoot td.ctr2 {
    +  text-align:right;
    +  padding-right:14px;
    +  padding-left:2px;
    +}
    +
    +.footer {
    +  margin-top:20px;
    +  border-top:#d6d3ce 1px solid;
    +  padding-top:2px;
    +  font-size:8pt;
    +  color:#a0a0a0;
    +}
    +
    +.footer a {
    +  color:#a0a0a0;
    +}
    +
    +.right {
    +  float:right;
    +}
    diff --git a/target/site/jacoco/jacoco-resources/report.gif b/target/site/jacoco/jacoco-resources/report.gif
    new file mode 100644
    index 0000000000000000000000000000000000000000..8547be50bf3e97e725920927b5aa4cdb031f4823
    GIT binary patch
    literal 363
    zcmZ?wbhEHb6krfwSZc{In}J~s1H&!`1_uX+xVSjMb&S>db~X8S)dhAn1$OlXwvB~0
    zO@%hC#Wq5_7&^+V`^qgRRa;E2HJ?*&DsqWoev|2fCetO&CQDmPR<;_iXfs~ZZnVC`
    za8s8-+pK*(^AAm4c5K#~(^ocST-lU)byMc8y)_R`^xu2&{oaco_g{R!|Ki8Pmp>lA
    z{_*VHkC*R%zWMa)!{^_hzyAL8?f2(zzrTL}{q@K1Z$Ey2|M}<VuRs5>0mYvzj9d)%
    z3_1)z0P+(9TgQR<1s*zF)+bahX*_u_??Pbv&V#KE^V2&`bhGjjR;*MxC8EFO_3_}<
    zH?w9WrJ7AX`tJM8r525X{~8+WorLsRL^?W{nR=L*odosT`KItOGtTI963}JgV_m??
    z%&>&9-=1G*^3>@wm-A|~FmK+nbvd`DhNhP0UUhXIS1vYAPL5-o?Ce}VXI&i`tO1G(
    BvdRDe
    
    literal 0
    HcmV?d00001
    
    diff --git a/target/site/jacoco/jacoco-resources/session.gif b/target/site/jacoco/jacoco-resources/session.gif
    new file mode 100644
    index 0000000000000000000000000000000000000000..0151bad8a001e5cc5cc7723a608185f746b7f8c1
    GIT binary patch
    literal 213
    zcmZ?wbhEHb6krfwXc1xPS$gU4xw~t2pG#?5#^Be>V3WrXI-S9<hrzA(|Nr^_@5k?-
    zZ~y=IhyVNSXZ04}pKqV%t9oe5k~tY+Ar=Pzi2#Z}Sr{1@<Qa4rfB<AC18dL&^}dwM
    zX_r*ys<8N;e6mS?i^dP8jVmAd@U^}&$uv>xc~m$hYN?d{@xrG~CzZCfhpBIRC}Q>I
    kiQ?_Ai=3VZEOFW9fBwaksdwMK(Err)E%VcVRYeAC06w^MK>z>%
    
    literal 0
    HcmV?d00001
    
    diff --git a/target/site/jacoco/jacoco-resources/sort.gif b/target/site/jacoco/jacoco-resources/sort.gif
    new file mode 100644
    index 0000000000000000000000000000000000000000..6757c2c32b57d768f3c12c4ae99a28bc32c9cbd7
    GIT binary patch
    literal 58
    zcmZ?wbhEHb<YC}qXkcX6uwldh|Nj+#vM_QnFf!;c00|xjP6h@h!JfpGjC*fB>i!bx
    N`t(%z_h<$NYXI&b5{m!;
    
    literal 0
    HcmV?d00001
    
    diff --git a/target/site/jacoco/jacoco-resources/sort.js b/target/site/jacoco/jacoco-resources/sort.js
    new file mode 100644
    index 0000000..e269fe3
    --- /dev/null
    +++ b/target/site/jacoco/jacoco-resources/sort.js
    @@ -0,0 +1,148 @@
    +/*******************************************************************************
    + * Copyright (c) 2009, 2018 Mountainminds GmbH & Co. KG and Contributors
    + * This program and the accompanying materials are made available under
    + * the terms of the Eclipse Public License 2.0 which is available at
    + * http://www.eclipse.org/legal/epl-2.0
    + *
    + * SPDX-License-Identifier: EPL-2.0
    + *
    + * Contributors:
    + *    Marc R. Hoffmann - initial API and implementation
    + *
    + *******************************************************************************/
    +
    +(function () {
    +
    +  /**
    +   * Sets the initial sorting derived from the hash.
    +   *
    +   * @param linkelementids
    +   *          list of element ids to search for links to add sort inidcator
    +   *          hash links
    +   */
    +  function initialSort(linkelementids) {
    +    window.linkelementids = linkelementids;
    +    var hash = window.location.hash;
    +    if (hash) {
    +      var m = hash.match(/up-./);
    +      if (m) {
    +        var header = window.document.getElementById(m[0].charAt(3));
    +        if (header) {
    +          sortColumn(header, true);
    +        }
    +        return;
    +      }
    +      var m = hash.match(/dn-./);
    +      if (m) {
    +        var header = window.document.getElementById(m[0].charAt(3));
    +        if (header) {
    +          sortColumn(header, false);
    +        }
    +        return
    +      }
    +    }
    +  }
    +
    +  /**
    +   * Sorts the columns with the given header dependening on the current sort state.
    +   */
    +  function toggleSort(header) {
    +    var sortup = header.className.indexOf('down ') == 0;
    +    sortColumn(header, sortup);
    +  }
    +
    +  /**
    +   * Sorts the columns with the given header in the given direction.
    +   */
    +  function sortColumn(header, sortup) {
    +    var table = header.parentNode.parentNode.parentNode;
    +    var body = table.tBodies[0];
    +    var colidx = getNodePosition(header);
    +
    +    resetSortedStyle(table);
    +
    +    var rows = body.rows;
    +    var sortedrows = [];
    +    for (var i = 0; i < rows.length; i++) {
    +      r = rows[i];
    +      sortedrows[parseInt(r.childNodes[colidx].id.slice(1))] = r;
    +    }
    +
    +    var hash;
    +
    +    if (sortup) {
    +      for (var i = sortedrows.length - 1; i >= 0; i--) {
    +        body.appendChild(sortedrows[i]);
    +      }
    +      header.className = 'up ' + header.className;
    +      hash = 'up-' + header.id;
    +    } else {
    +      for (var i = 0; i < sortedrows.length; i++) {
    +        body.appendChild(sortedrows[i]);
    +      }
    +      header.className = 'down ' + header.className;
    +      hash = 'dn-' + header.id;
    +    }
    +
    +    setHash(hash);
    +  }
    +
    +  /**
    +   * Adds the sort indicator as a hash to the document URL and all links.
    +   */
    +  function setHash(hash) {
    +    window.document.location.hash = hash;
    +    ids = window.linkelementids;
    +    for (var i = 0; i < ids.length; i++) {
    +        setHashOnAllLinks(document.getElementById(ids[i]), hash);
    +    }
    +  }
    +
    +  /**
    +   * Extend all links within the given tag with the given hash.
    +   */
    +  function setHashOnAllLinks(tag, hash) {
    +    links = tag.getElementsByTagName("a");
    +    for (var i = 0; i < links.length; i++) {
    +        var a = links[i];
    +        var href = a.href;
    +        var hashpos = href.indexOf("#");
    +        if (hashpos != -1) {
    +            href = href.substring(0, hashpos);
    +        }
    +        a.href = href + "#" + hash;
    +    }
    +  }
    +
    +  /**
    +   * Calculates the position of a element within its parent.
    +   */
    +  function getNodePosition(element) {
    +    var pos = -1;
    +    while (element) {
    +      element = element.previousSibling;
    +      pos++;
    +    }
    +    return pos;
    +  }
    +
    +  /**
    +   * Remove the sorting indicator style from all headers.
    +   */
    +  function resetSortedStyle(table) {
    +    for (var c = table.tHead.firstChild.firstChild; c; c = c.nextSibling) {
    +      if (c.className) {
    +        if (c.className.indexOf('down ') == 0) {
    +          c.className = c.className.slice(5);
    +        }
    +        if (c.className.indexOf('up ') == 0) {
    +          c.className = c.className.slice(3);
    +        }
    +      }
    +    }
    +  }
    +
    +  window['initialSort'] = initialSort;
    +  window['toggleSort'] = toggleSort;
    +
    +})();
    diff --git a/target/site/jacoco/jacoco-resources/source.gif b/target/site/jacoco/jacoco-resources/source.gif
    new file mode 100644
    index 0000000000000000000000000000000000000000..b226e41c5276581db33d71525298ef572cc5d7ce
    GIT binary patch
    literal 354
    zcmZ?wbhEHb6krfwxXQrr`Rnf=KmWY@^y|~t-#>r-`SJ62+pK*(^ACOa@_X{KW3$$r
    zUbOlAiXE5N?74dH#gDtszu$lH{mGl3&)@xg`{~!`Z@=#VMPB~6_u~7*S3h2T`1$R}
    z?`Q9Re)#(P)3@JWfBgRb^LKTLe^s%6bxA;7sb4jaQ5?`-<<ng5TVLWgvEHM%)~l!1
    zYi_IS^d`3r{dQ}59F})EE$?<()ZzT#ME{lvwpTV~T-lU)Yj4ffO_~4y|7XAeia%Kx
    z85k@XbU-p7KQXY?ADC0%p(B)eLgkXi62W-^(!DQ#v2a~Gz-z9%&!+3h!38t#X02Ds
    zad;WPFvUVOY)YY2k84HG1kp%gVW!3wVI5ap$%?8ZHc4GqO=+PiQzvV>Y72H(vk7Xs
    us!1$fvP8{QU92ZrK%7tARasP&f6JDw8m_8J3W|I7DyXXX9C3DJum%7=h^`F)
    
    literal 0
    HcmV?d00001
    
    diff --git a/target/site/jacoco/jacoco-resources/up.gif b/target/site/jacoco/jacoco-resources/up.gif
    new file mode 100644
    index 0000000000000000000000000000000000000000..58ed21660ec467736a4d2af17d91341f7cfb556c
    GIT binary patch
    literal 67
    zcmZ?wbhEHb<YC}qSjfcSX{EDa!-oH0p!k!8k&A(eL5G2Xk%5PSlYxOrWJ=;nroA^G
    Ub$^Kz-Nct)ygK&ScM%3_0PmU?SpWb4
    
    literal 0
    HcmV?d00001
    
    diff --git a/target/site/jacoco/jacoco-sessions.html b/target/site/jacoco/jacoco-sessions.html
    new file mode 100644
    index 0000000..41258b6
    --- /dev/null
    +++ b/target/site/jacoco/jacoco-sessions.html
    @@ -0,0 +1 @@
    +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="ru"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="jacoco-resources/report.gif" type="image/gif"/><title>Sessions</title></head><body><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="jacoco-sessions.html" class="el_session">Sessions</a></span><a href="index.html" class="el_report">untitled</a> &gt; <span class="el_session">Sessions</span></div><h1>Sessions</h1><p>This coverage report is based on execution data from the following sessions:</p><table class="coverage" cellspacing="0"><thead><tr><td>Session</td><td>Start Time</td><td>Dump Time</td></tr></thead><tbody><tr><td><span class="el_session">Adelika-e0a37b2d</span></td><td>6 февр. 2023 г., 19:42:27</td><td>6 февр. 2023 г., 19:42:31</td></tr></tbody></table><p>Execution data for the following classes is considered in this report:</p><table class="coverage" cellspacing="0"><thead><tr><td>Class</td><td>Id</td></tr></thead><tbody><tr><td><span class="el_class">CatTest</span></td><td><code>7d7f66aa47f963b2</code></td></tr><tr><td><span class="el_class">FelineTest</span></td><td><code>4ca23ac98142d0f8</code></td></tr><tr><td><span class="el_class">LionTest</span></td><td><code>31299ba03560ab3a</code></td></tr><tr><td><a href="com.example/Animal.html" class="el_class">com.example.Animal</a></td><td><code>fa2335bc2aafd227</code></td></tr><tr><td><a href="com.example/Cat.html" class="el_class">com.example.Cat</a></td><td><code>1ecae83b9ac4681f</code></td></tr><tr><td><a href="com.example/Feline.html" class="el_class">com.example.Feline</a></td><td><code>605b8d0421926ed3</code></td></tr><tr><td><span class="el_class">com.example.Feline.MockitoMock.2046008341</span></td><td><code>3d03bc471bafad29</code></td></tr><tr><td><span class="el_class">com.example.Feline.MockitoMock.2046008341.auxiliary.TCIm3pIz</span></td><td><code>8fa42210b30ed794</code></td></tr><tr><td><span class="el_class">com.example.Feline.MockitoMock.2046008341.auxiliary.TvvZaJij</span></td><td><code>47e1bc05cef153f0</code></td></tr><tr><td><span class="el_class">com.example.Feline.MockitoMock.2046008341.auxiliary.yjhF5R9i</span></td><td><code>f39f0d4eff8cf31d</code></td></tr><tr><td><a href="com.example/Lion.html" class="el_class">com.example.Lion</a></td><td><code>aad24a571dad4048</code></td></tr><tr><td><span class="el_class">net.bytebuddy.ByteBuddy</span></td><td><code>6bc52217f7be4981</code></td></tr><tr><td><span class="el_class">net.bytebuddy.ClassFileVersion</span></td><td><code>f1ed2155318f5ed9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.ClassFileVersion.VersionLocator.Resolved</span></td><td><code>baef02abdc77b618</code></td></tr><tr><td><span class="el_class">net.bytebuddy.ClassFileVersion.VersionLocator.Resolver</span></td><td><code>99911b6fab5d2cdc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.NamingStrategy.AbstractBase</span></td><td><code>69340ff32b1b6817</code></td></tr><tr><td><span class="el_class">net.bytebuddy.NamingStrategy.SuffixingRandom</span></td><td><code>aa0e7b64fab5be27</code></td></tr><tr><td><span class="el_class">net.bytebuddy.NamingStrategy.SuffixingRandom.BaseNameResolver.ForUnnamedType</span></td><td><code>9b7a0eeb06721d08</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache</span></td><td><code>94af82693871d077</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.LookupKey</span></td><td><code>6da0d54cc43a0efe</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.SimpleKey</span></td><td><code>1d9d4df7289336c9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.Sort</span></td><td><code>89893650e4cc0a73</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.Sort.1</span></td><td><code>9d6cb76f0fa81dc9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.Sort.2</span></td><td><code>dcf92e7fe7bc3d4d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.StorageKey</span></td><td><code>46ac590da63ee2b4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.WithInlineExpunction</span></td><td><code>888b3fe8edc11928</code></td></tr><tr><td><span class="el_class">net.bytebuddy.asm.AsmVisitorWrapper.NoOp</span></td><td><code>7c943662c06a5a16</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.ByteCodeElement.Token.TokenList</span></td><td><code>84bb284802c7cdf7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.ModifierReviewable.AbstractBase</span></td><td><code>9ed1e8ca9aada7c6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.NamedElement.WithDescriptor</span></td><td><code>e3d470b846d036fb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.TypeVariableSource.AbstractBase</span></td><td><code>0dd18b33397fe977</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationDescription</span></td><td><code>c2006d419be75732</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationDescription.AbstractBase</span></td><td><code>b0e5e492bd18057a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationDescription.ForLoadedAnnotation</span></td><td><code>b2f036661815ad18</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationList.AbstractBase</span></td><td><code>c38df8bc2a4db545</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationList.Empty</span></td><td><code>109bac4fb5cd7d7c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationList.Explicit</span></td><td><code>985427cab36dc86f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationList.ForLoadedAnnotations</span></td><td><code>c61a2a1955918775</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationSource.Empty</span></td><td><code>83d2e04ef8ba25d2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue</span></td><td><code>deec47004a09bbe5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.AbstractBase</span></td><td><code>a3661f4bf113da97</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant</span></td><td><code>5e0368182ca3176e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType</span></td><td><code>642410399932bdcd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.1</span></td><td><code>5fc8c24d452e6d85</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.2</span></td><td><code>09bd795347bb4b2f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.3</span></td><td><code>01af497fdf6d2e73</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.4</span></td><td><code>3cd1b4cf7a416a2b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.5</span></td><td><code>f6fd2842b20ca023</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.6</span></td><td><code>77ad541c1ffc1f3b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.7</span></td><td><code>4f52daaf7502e1c8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.8</span></td><td><code>435e087db61b7c96</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.9</span></td><td><code>6b12d9de84663d36</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForEnumerationDescription</span></td><td><code>9ac20bf458621db2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForTypeDescription</span></td><td><code>8fa50fdd218f82ed</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.enumeration.EnumerationDescription.AbstractBase</span></td><td><code>5913d6bb12d48d84</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.enumeration.EnumerationDescription.ForLoadedEnumeration</span></td><td><code>c131a502738acb7b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription</span></td><td><code>7ab6aba3aa2d55d5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription.AbstractBase</span></td><td><code>69ed4c92080f0313</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription.InDefinedShape.AbstractBase</span></td><td><code>36334446998b9f45</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription.Latent</span></td><td><code>7a4437d36df40f93</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription.SignatureToken</span></td><td><code>86ef28f7eb4cfa33</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription.Token</span></td><td><code>45bbf8f921beb148</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldList.AbstractBase</span></td><td><code>5c004de512331d63</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldList.Explicit</span></td><td><code>de43f7a73791f835</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldList.ForTokens</span></td><td><code>605bed96d8be752c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription</span></td><td><code>3f08c33141204b47</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.AbstractBase</span></td><td><code>9066041e06cee4f1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.ForLoadedConstructor</span></td><td><code>52a2d00d8ee8bef8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.ForLoadedMethod</span></td><td><code>47fe406ade390b19</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.InDefinedShape.AbstractBase</span></td><td><code>4795a61830160337</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.InDefinedShape.AbstractBase.ForLoadedExecutable</span></td><td><code>4ddbc963bae0d883</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.Latent</span></td><td><code>0743a5e7a17a2982</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.Latent.TypeInitializer</span></td><td><code>476fd44afb67b364</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.SignatureToken</span></td><td><code>bf116a2370d03850</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.Token</span></td><td><code>95bc7edcf9585086</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.TypeSubstituting</span></td><td><code>6efed280a0afb23b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.TypeToken</span></td><td><code>05edde60871de27f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodList.AbstractBase</span></td><td><code>80046fbd6b0fc481</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodList.Explicit</span></td><td><code>b359896b1b3ee1f2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodList.ForLoadedMethods</span></td><td><code>f4dd1c63df047b6d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodList.ForTokens</span></td><td><code>0d97cc5fe908b0f2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodList.TypeSubstituting</span></td><td><code>83d11dec79e75422</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.AbstractBase</span></td><td><code>419c065227bd4f0e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.ForLoadedParameter</span></td><td><code>5f13af285a5eec5f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.ForLoadedParameter.OfMethod</span></td><td><code>c671eff6ecc3aae9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.InDefinedShape.AbstractBase</span></td><td><code>6f8a7b6f27be0b47</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.Latent</span></td><td><code>33bfbbd6c4eae34e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.Token</span></td><td><code>9138e7a608cff6aa</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.Token.TypeList</span></td><td><code>18d4a8073270a143</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.TypeSubstituting</span></td><td><code>d4670441f5a6e1ae</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.AbstractBase</span></td><td><code>b891158051e26c10</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.Empty</span></td><td><code>8f3c4740780185cc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.Explicit.ForTypes</span></td><td><code>915ce3f76c682e43</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.ForLoadedExecutable</span></td><td><code>690bb90b0c642a7b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.ForLoadedExecutable.OfConstructor</span></td><td><code>317cb386b218ee79</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.ForLoadedExecutable.OfMethod</span></td><td><code>350d84bd84a187f3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.ForTokens</span></td><td><code>d18db6c1b8ac3eb1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.TypeSubstituting</span></td><td><code>6c8596ab3f5a0878</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.FieldManifestation</span></td><td><code>6158167f1648d494</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.ModifierContributor.Resolver</span></td><td><code>e5c0bf14c94215a1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.Ownership</span></td><td><code>b55fac8d36b37183</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.SynchronizationState</span></td><td><code>9084837df536b4ef</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.SyntheticState</span></td><td><code>9a63422fbbd974c8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.TypeManifestation</span></td><td><code>9f089702c49da591</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.Visibility</span></td><td><code>ded1b1f13025e6b4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.Visibility.1</span></td><td><code>7f046d4d48a5f847</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.PackageDescription.AbstractBase</span></td><td><code>258dce2032d9cc20</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.PackageDescription.ForLoadedPackage</span></td><td><code>c83440762facd609</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.PackageDescription.Simple</span></td><td><code>4650665e29a51231</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.RecordComponentList.AbstractBase</span></td><td><code>f7a3d447fffd084a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.RecordComponentList.ForTokens</span></td><td><code>0d7142b5ba09265a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDefinition.Sort</span></td><td><code>f0d086f551f2a671</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDefinition.SuperClassIterator</span></td><td><code>c97e1c7a9f9760fd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription</span></td><td><code>b4a1e86eeea59611</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.AbstractBase</span></td><td><code>8ea5bb2c3bf1eff7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.AbstractBase.OfSimpleType</span></td><td><code>468cb86d1532a546</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.ArrayProjection</span></td><td><code>badd7d39816d1618</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.ForLoadedType</span></td><td><code>aec55bb2b886b4c1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic</span></td><td><code>eed83dd834083249</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AbstractBase</span></td><td><code>255536ae354f2870</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator</span></td><td><code>5d88e33465b19a66</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.Chained</span></td><td><code>15bcd13e4b6c374f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedExecutableExceptionType</span></td><td><code>ea5ec775ae75763d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedExecutableParameterType</span></td><td><code>c2867a70f629d8eb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedInterface</span></td><td><code>dacaa4303c61c17a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedMethodReturnType</span></td><td><code>485dca093c1bc536</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedSuperClass</span></td><td><code>0d5899688f8a8c66</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.Simple</span></td><td><code>85bb8eaafabad66a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.ForComponentType</span></td><td><code>ba4cc77ecb531a71</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.ForTypeArgument</span></td><td><code>7b9a92e94761785a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.NoOp</span></td><td><code>d44005ceed854d87</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection</span></td><td><code>e7ec2ad4602cb9e7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.ForLoadedReturnType</span></td><td><code>943a639e32439f96</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.ForLoadedSuperClass</span></td><td><code>2c11102e60a9e234</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.OfMethodParameter</span></td><td><code>4e6803c01f724427</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.WithEagerNavigation</span></td><td><code>8e07fa3ff5e2f32c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.WithEagerNavigation.OfAnnotatedElement</span></td><td><code>7df93d1bc1e2aff0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.WithLazyNavigation</span></td><td><code>4f0b9855dbae74df</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.WithLazyNavigation.OfAnnotatedElement</span></td><td><code>55dfe6b64fbef04c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.WithResolvedErasure</span></td><td><code>a7a666f4b44e607c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfGenericArray</span></td><td><code>d034510e78991f60</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfGenericArray.Latent</span></td><td><code>2d761c8801c17bf3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfNonGenericType</span></td><td><code>19d83743be11e0ab</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfNonGenericType.ForErasure</span></td><td><code>3a64fbaefa6bee06</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfNonGenericType.ForLoadedType</span></td><td><code>6065762fd613c4d9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfParameterizedType</span></td><td><code>a80d9117dd5fc0d7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfParameterizedType.ForGenerifiedErasure</span></td><td><code>7a1b94b1e4091f7a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfParameterizedType.ForLoadedType</span></td><td><code>76993cd9099e70a1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfParameterizedType.ForLoadedType.ParameterArgumentTypeList</span></td><td><code>b1b8665f31f8c15f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfParameterizedType.Latent</span></td><td><code>a9807b0bb458fa95</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.ForRawType</span></td><td><code>857c885215ecb8a3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.ForSignatureVisitor</span></td><td><code>00cad9ab32489ecd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.ForSignatureVisitor.OfTypeArgument</span></td><td><code>fc5fd7b3ddc930a2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Reducing</span></td><td><code>ff243838994f0b15</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Reifying</span></td><td><code>f1fd8acdf5dbe2e5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Reifying.1</span></td><td><code>cab8f00ccc907bf7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Reifying.2</span></td><td><code>23046a19ef97a9f6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Substitutor</span></td><td><code>9721076003aa23f6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Substitutor.ForAttachment</span></td><td><code>7f7c6d9a6a96dd7c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Substitutor.ForDetachment</span></td><td><code>7ff7c66455b3e8dd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Substitutor.WithoutTypeSubstitution</span></td><td><code>ee5cbf05d63d3fe9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList</span></td><td><code>7a21d7d4ee92e6a6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.AbstractBase</span></td><td><code>8689ec2db12f997d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Empty</span></td><td><code>d5f3a9aa0a9333b3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Explicit</span></td><td><code>da98e50538d488dc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.ForLoadedTypes</span></td><td><code>ae0e39d1192f000e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.AbstractBase</span></td><td><code>92881ab585c2ec5f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.Empty</span></td><td><code>44aca402f516ec23</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.Explicit</span></td><td><code>0b51b5a9e4c6693f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.ForDetachedTypes</span></td><td><code>40ee5bfb32731d08</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.ForDetachedTypes.OfTypeVariables</span></td><td><code>a97ab6d804b09571</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.ForDetachedTypes.WithResolvedErasure</span></td><td><code>3ffaca38eb355636</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.ForLoadedTypes</span></td><td><code>53bf0a1b647deb99</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.ForLoadedTypes.OfTypeVariables</span></td><td><code>ecc89acf142ec1e2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.OfConstructorExceptionTypes</span></td><td><code>e360314281d5e362</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.OfLoadedInterfaceTypes</span></td><td><code>df5fb5418dabb663</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.OfLoadedInterfaceTypes.TypeProjection</span></td><td><code>7a63a03093f554e3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.OfMethodExceptionTypes</span></td><td><code>b980f01fff655dc8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.OfMethodExceptionTypes.TypeProjection</span></td><td><code>c1336e0b9efaba30</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase</span></td><td><code>5940f47841584f46</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter</span></td><td><code>00da71bff4d31957</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.FieldDefinitionAdapter</span></td><td><code>926db07aff02ec3c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapter</span></td><td><code>a5b6864a26f7264e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapter.AnnotationAdapter</span></td><td><code>2cd1bc9d59a6a61f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapter.SimpleParameterAnnotationAdapter</span></td><td><code>2075c656154effd1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.MethodMatchAdapter</span></td><td><code>c902d7d94ffb72a0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.MethodMatchAdapter.AnnotationAdapter</span></td><td><code>1bf27c2c148bf624</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.OptionalMethodMatchAdapter</span></td><td><code>780d83486f243810</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Delegator</span></td><td><code>05eda69641b6be6c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.FieldDefinition.Optional.AbstractBase</span></td><td><code>21d09db1df1d776b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.FieldDefinition.Optional.Valuable.AbstractBase</span></td><td><code>99a9815521f6259e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.FieldDefinition.Optional.Valuable.AbstractBase.Adapter</span></td><td><code>21d77e3c4f55cf02</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.AbstractBase</span></td><td><code>131584e46a857d19</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.AbstractBase.Adapter</span></td><td><code>e389a93eb4770753</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ExceptionDefinition.AbstractBase</span></td><td><code>e48b623baa20db47</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ImplementationDefinition.AbstractBase</span></td><td><code>47d5ba01d7de4311</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ParameterDefinition.AbstractBase</span></td><td><code>ed12920dd361e747</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ParameterDefinition.Initial.AbstractBase</span></td><td><code>46526951923f1cef</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ParameterDefinition.Simple.AbstractBase</span></td><td><code>292d691bfcd42d49</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ParameterDefinition.Simple.Annotatable.AbstractBase</span></td><td><code>10f5a468f336a984</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ParameterDefinition.Simple.Annotatable.AbstractBase.Adapter</span></td><td><code>5cf89ed3c3cb906f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ReceiverTypeDefinition.AbstractBase</span></td><td><code>089d997bdc637b98</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.TypeVariableDefinition.AbstractBase</span></td><td><code>0915f57cb8e301d7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Default</span></td><td><code>2570eb78e252b142</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Default.Loaded</span></td><td><code>5354ba3169bbb397</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Default.Unloaded</span></td><td><code>8afc8c053b8eced6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.TargetType</span></td><td><code>319e9f5d85826344</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.Compound</span></td><td><code>b13f4a28debfd07d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod</span></td><td><code>5d61872f3b6e0328</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod.MethodModifierTransformer</span></td><td><code>c05f1a48982de6c9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod.TransformedMethod</span></td><td><code>075bb83006d769f4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod.TransformedMethod.AttachmentVisitor</span></td><td><code>839ca6f8b5fc749a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod.TransformedMethod.TransformedParameter</span></td><td><code>a25196befdd1e5c5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod.TransformedMethod.TransformedParameterList</span></td><td><code>4d70dde4996148dc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.NoOp</span></td><td><code>0bcc7d85ad41aaf9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.TypeResolutionStrategy.Passive</span></td><td><code>93a2eb1be80b3485</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.VisibilityBridgeStrategy.Default</span></td><td><code>288b5a8b0f9c255a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.VisibilityBridgeStrategy.Default.1</span></td><td><code>e5697eb55991bb69</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.VisibilityBridgeStrategy.Default.2</span></td><td><code>d6757ccbed2d6647</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.VisibilityBridgeStrategy.Default.3</span></td><td><code>68700518e139ad6e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ByteArrayClassLoader.PersistenceHandler</span></td><td><code>70fa730e057ca4e8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ByteArrayClassLoader.PersistenceHandler.1</span></td><td><code>29823a33f791c302</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ByteArrayClassLoader.PersistenceHandler.2</span></td><td><code>ea1e7c0ac4651eec</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.AbstractBase</span></td><td><code>98ced20214d16c0d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.UsingReflection</span></td><td><code>aee8e64f67cf419c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.UsingReflection.Dispatcher.CreationAction</span></td><td><code>f4233c37e9e56373</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.UsingReflection.Dispatcher.UsingUnsafeInjection</span></td><td><code>21eb05b1876550fd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.UsingUnsafe</span></td><td><code>677fc4d0b0055841</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.UsingUnsafe.Dispatcher.CreationAction</span></td><td><code>adf928be31935da8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.UsingUnsafe.Dispatcher.Enabled</span></td><td><code>1e6f9ef9dd0e8ed5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassLoadingStrategy</span></td><td><code>21950907e36f5db4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassLoadingStrategy.Default</span></td><td><code>270840aa26b2351d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassLoadingStrategy.Default.InjectionDispatcher</span></td><td><code>3015bf39d5ccf44f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassLoadingStrategy.Default.WrappingDispatcher</span></td><td><code>a3144e40d8c5b299</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassLoadingStrategy.ForUnsafeInjection</span></td><td><code>bc0cf5fda82f1861</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.MultipleParentClassLoader.Builder</span></td><td><code>4f22d84701ecc4c1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.PackageDefinitionStrategy.Definition.Undefined</span></td><td><code>58779731141cd9b9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.PackageDefinitionStrategy.NoOp</span></td><td><code>f3b4f030a022efd7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.PackageDefinitionStrategy.Trivial</span></td><td><code>12495cef749a9cc0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.ClassWriterStrategy.Default</span></td><td><code>f0774d4bbe85a809</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.ClassWriterStrategy.Default.1</span></td><td><code>09a3c2cfe88a5ae4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.ClassWriterStrategy.Default.2</span></td><td><code>76afb59bd5abdd5f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.ClassWriterStrategy.FrameComputingClassWriter</span></td><td><code>a3f9255ce72f4310</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldLocator.AbstractBase</span></td><td><code>5c18cd63a92f6ada</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldLocator.ForClassHierarchy</span></td><td><code>1d6d53ac245c1a79</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldLocator.ForClassHierarchy.Factory</span></td><td><code>7b5af0c7d459fde1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldLocator.Resolution.Simple</span></td><td><code>c234024718f61d24</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldRegistry.Default</span></td><td><code>84833e45d4c9acf6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldRegistry.Default.Compiled</span></td><td><code>675c6579a35ffeb8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldRegistry.Default.Compiled.Entry</span></td><td><code>428f7388ec9491a7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldRegistry.Default.Entry</span></td><td><code>0c34f1a6ea8e23b1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.InstrumentedType.Default</span></td><td><code>2c4c016bd8be7708</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.InstrumentedType.Factory.Default</span></td><td><code>5942279ad4756226</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.InstrumentedType.Factory.Default.1</span></td><td><code>e9c6c25148314e7a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.InstrumentedType.Factory.Default.2</span></td><td><code>b60d573fafd686f9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler</span></td><td><code>9618c561457e3491</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.AbstractBase</span></td><td><code>b3e8a2b52dfeb03d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default</span></td><td><code>9513299b95f2976d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Harmonizer.ForJavaMethod</span></td><td><code>cf0d30fe78b2060e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Harmonizer.ForJavaMethod.Token</span></td><td><code>386c951a177a9478</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key</span></td><td><code>f1921424fce8fc2a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Detached</span></td><td><code>ebaac6818b9f1c13</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Harmonized</span></td><td><code>82103453dc0f82d7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store</span></td><td><code>9a41881e9897ae4f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store.Entry.Initial</span></td><td><code>f2b88bb2936db34b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store.Entry.Resolved</span></td><td><code>75dc26063049d474</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store.Entry.Resolved.Node</span></td><td><code>e960e59a823f2697</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store.Graph</span></td><td><code>bc69df19f52a24b9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Merger.Directional</span></td><td><code>a0e7064d898dfdb6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Linked.Delegation</span></td><td><code>34357da843d3c022</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Node.Simple</span></td><td><code>19b84132ad9135f2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Node.Sort</span></td><td><code>3c0e488bccd1272f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.NodeList</span></td><td><code>4c05b99654ac9a69</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Simple</span></td><td><code>3129bc836c8691d0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default</span></td><td><code>e5f526db3b8937ee</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default.Compiled</span></td><td><code>d0cedcf3abc82ac1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default.Compiled.Entry</span></td><td><code>63f7f1d5119be76f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default.Entry</span></td><td><code>1bf4fb07bb8d70fd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default.Prepared</span></td><td><code>74786be5b57802c1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default.Prepared.Entry</span></td><td><code>30c8fa7a5f61adff</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Handler.ForImplementation</span></td><td><code>0e3e1d9284e2df5e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Handler.ForImplementation.Compiled</span></td><td><code>23df30ee1ad870c5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.RecordComponentRegistry.Default</span></td><td><code>cb8fd673d5abef85</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.RecordComponentRegistry.Default.Compiled</span></td><td><code>eb3fa47c3ba18e34</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeInitializer.Drain.Default</span></td><td><code>a98056ad74d098f1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeInitializer.None</span></td><td><code>d062b02ed3f4d342</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeInitializer.Simple</span></td><td><code>04dadf4830a314bb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeValidation</span></td><td><code>0a8b89ed6f4136ad</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.Default</span></td><td><code>16c8a1e3e217b1c2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.Default.ClassDumpAction.Dispatcher.Disabled</span></td><td><code>6ede7e3c53afcf1b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.Default.ForCreation</span></td><td><code>8162f81542a4dead</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.Default.UnresolvedType</span></td><td><code>8c65ee53371b9ced</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.Default.ValidatingClassVisitor</span></td><td><code>210e1640ec706cc2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.FieldPool.Record.ForExplicitField</span></td><td><code>4eb331f344940092</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.MethodPool.Record.AccessBridgeWrapper</span></td><td><code>c648692bc6f85874</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.MethodPool.Record.ForDefinedMethod</span></td><td><code>7cc754817af8c4a0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.MethodPool.Record.ForDefinedMethod.WithBody</span></td><td><code>37c96a8f0edfbf7d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.MethodPool.Record.ForNonImplementedMethod</span></td><td><code>5eb95d2a769480de</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.MethodPool.Record.Sort</span></td><td><code>aa9513040cb2be2f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default</span></td><td><code>61bea2def5fefd80</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default.1</span></td><td><code>da1bef6f4837a819</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default.2</span></td><td><code>085b16ff8ace19a9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default.3</span></td><td><code>1cbda8107b2472da</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default.4</span></td><td><code>52c207abc49c97b1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default.5</span></td><td><code>144d24af65b392ac</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassDynamicTypeBuilder</span></td><td><code>78f05fcdaba3ac67</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassDynamicTypeBuilder.InstrumentableMatcher</span></td><td><code>5db2b2fe32e30ee5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget</span></td><td><code>e867d890a78af35e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget.Factory</span></td><td><code>9d8dbd52f459fd2a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget.OriginTypeResolver</span></td><td><code>575cf9c48483dd6c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget.OriginTypeResolver.1</span></td><td><code>be44b2436fde5c56</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget.OriginTypeResolver.2</span></td><td><code>fe0aed50a5c32d5f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor</span></td><td><code>aafaa6be59bebbc0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor.FieldLocation.Relative</span></td><td><code>4c5821ee0b16adfe</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor.FieldLocation.Relative.Prepared</span></td><td><code>9a880d19ea56bacd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor.FieldNameExtractor.ForBeanProperty</span></td><td><code>8e0245f2ac0994c0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor.ForImplicitProperty</span></td><td><code>74a2525284101564</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor.ForImplicitProperty.Appender</span></td><td><code>4a69045535f6abfa</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default</span></td><td><code>f5abf3a667a32424</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.AbstractPropertyAccessorMethod</span></td><td><code>27525cb5bd22745c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.AccessorMethod</span></td><td><code>bf2b5a2e21840f8a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.AccessorMethodDelegation</span></td><td><code>4fd76f660ea1a466</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.CacheValueField</span></td><td><code>c11051dce7591c75</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.DelegationRecord</span></td><td><code>dfe20c7748e75212</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.Factory</span></td><td><code>8804be44379722d4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.FieldCacheEntry</span></td><td><code>7ba04ae23725f08e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.ExtractableView.AbstractBase</span></td><td><code>7cf707185f18add5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.SpecialMethodInvocation.AbstractBase</span></td><td><code>50318e845cb5f6f4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.SpecialMethodInvocation.Simple</span></td><td><code>3c6c97e162036c8b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Target.AbstractBase</span></td><td><code>9a16710435682aa8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Target.AbstractBase.DefaultMethodInvocation</span></td><td><code>7cc5c7f239223556</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Target.AbstractBase.DefaultMethodInvocation.1</span></td><td><code>df6c332a623a3747</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Target.AbstractBase.DefaultMethodInvocation.2</span></td><td><code>03e30a65d8493f93</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.LoadedTypeInitializer.NoOp</span></td><td><code>bba4d40ca38a00eb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodAccessorFactory.AccessType</span></td><td><code>daf487c33bfd0ee3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall</span></td><td><code>8293c099d620f3af</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.Appender</span></td><td><code>3716e6e4d32be775</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.ArgumentLoader.ForMethodParameter</span></td><td><code>f4fa327652cc317c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.ArgumentLoader.ForMethodParameter.Factory</span></td><td><code>eb57695629a6af29</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.MethodInvoker.ForContextualInvocation.Factory</span></td><td><code>989f4cfc65712713</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.MethodInvoker.ForVirtualInvocation.WithImplicitType</span></td><td><code>5f0c9bb7b70e034f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.MethodLocator.ForExplicitMethod</span></td><td><code>6e17fe65240ba36c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.TargetHandler.ForMethodParameter</span></td><td><code>276330f00650e9e8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.TargetHandler.ForMethodParameter.Resolved</span></td><td><code>56452b57cbb906c5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.TargetHandler.ForSelfOrStaticInvocation.Factory</span></td><td><code>b5e1c0b80f674ad1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.TerminationHandler.Simple</span></td><td><code>fcb14ed27cb32c76</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.TerminationHandler.Simple.1</span></td><td><code>2da719a4c1bc113a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.TerminationHandler.Simple.2</span></td><td><code>6fa4f1667e19af45</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.TerminationHandler.Simple.3</span></td><td><code>92f164951a7596ea</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodCall.WithoutSpecifiedTarget</span></td><td><code>ebcfb90bb58333a4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodDelegation</span></td><td><code>b69009f42ce18c7d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodDelegation.Appender</span></td><td><code>ceb4866abfb8cd66</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodDelegation.ImplementationDelegate.Compiled.ForStaticCall</span></td><td><code>f1f631992578479e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodDelegation.ImplementationDelegate.ForStaticMethod</span></td><td><code>2b9cd20979aa82a7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodDelegation.WithCustomProperties</span></td><td><code>52d9a936a2ea9612</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.SuperMethodCall</span></td><td><code>1a212921150f714b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.SuperMethodCall.Appender</span></td><td><code>9b7baf3c421bac01</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.SuperMethodCall.Appender.TerminationHandler</span></td><td><code>765f875942666e8e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.SuperMethodCall.Appender.TerminationHandler.1</span></td><td><code>73a0dc0ce3550b82</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.SuperMethodCall.Appender.TerminationHandler.2</span></td><td><code>ec745d3d58642532</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.Default</span></td><td><code>870ea5f336319e23</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.ForTypeAnnotations</span></td><td><code>d3d8d3d8398a7f92</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.Target.OnField</span></td><td><code>77acd84acfdaa337</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.Target.OnMethod</span></td><td><code>de83202402fd6080</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.Target.OnMethodParameter</span></td><td><code>eec4e7b4e356cc6f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.Target.OnType</span></td><td><code>1ab351f211ec6111</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationRetention</span></td><td><code>2cdaa94f3407986e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationValueFilter.Default</span></td><td><code>6b2f54d56a2f0f79</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationValueFilter.Default.1</span></td><td><code>298463b14e22fa29</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationValueFilter.Default.2</span></td><td><code>7f7638faea173a2d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.FieldAttributeAppender.ForInstrumentedField</span></td><td><code>ca19f51ae14fb7b4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.MethodAttributeAppender.Compound</span></td><td><code>42c0a457d6dbc039</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.MethodAttributeAppender.Factory.Compound</span></td><td><code>a567bc5ad764ea5c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.MethodAttributeAppender.ForInstrumentedMethod</span></td><td><code>4e40a53e08d4cbbb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.MethodAttributeAppender.ForInstrumentedMethod.1</span></td><td><code>3e38fbdc8e9f4d81</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.MethodAttributeAppender.ForInstrumentedMethod.2</span></td><td><code>ffa3d6f77e1ba581</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.MethodAttributeAppender.NoOp</span></td><td><code>aa6841038c96aed0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.TypeAttributeAppender.ForInstrumentedType</span></td><td><code>537a1dac83c99ae9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.AuxiliaryType</span></td><td><code>a95b7ad25c4c15bf</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.AuxiliaryType.NamingStrategy.SuffixingRandom</span></td><td><code>7c12b31c2d53d541</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy</span></td><td><code>089137e8ddce18ce</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.AssignableSignatureCall</span></td><td><code>c8370dc941d71aea</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.ConstructorCall</span></td><td><code>a79ded5d68bc3e90</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.ConstructorCall.Appender</span></td><td><code>21963a9350fce8ba</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.MethodCall</span></td><td><code>216fd97a37c6e46c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.MethodCall.Appender</span></td><td><code>32162cdc8d7fecf5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.PrecomputedMethodGraph</span></td><td><code>bf1628f6c4d0b545</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.ArgumentTypeResolver</span></td><td><code>bab32193b2447720</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.ArgumentTypeResolver.ParameterIndexToken</span></td><td><code>61df9ef6fd3b610a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.DeclaringTypeResolver</span></td><td><code>9a7cffc54c3a75f8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.1</span></td><td><code>f6570c7cdd736dbb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.AmbiguityResolver</span></td><td><code>0028295f5a9a674f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.AmbiguityResolver.Compound</span></td><td><code>2aac42f53f2dd494</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.AmbiguityResolver.Resolution</span></td><td><code>04287a8bfaad7a61</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.BindingResolver.Default</span></td><td><code>95ba42a4df4035d2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.MethodBinding.Builder</span></td><td><code>e5bc24efb8e9fe38</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.MethodBinding.Builder.Build</span></td><td><code>d32ffc04c3b3a8b6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.MethodBinding.Illegal</span></td><td><code>439d1f879a8a88d7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.MethodInvoker.Simple</span></td><td><code>d694503a6cf2f874</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.ParameterBinding.Anonymous</span></td><td><code>dcb8a1afafe8397e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.ParameterBinding.Unique</span></td><td><code>ab6fbf22e787e27d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.Processor</span></td><td><code>e559236b6bc10eb6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.TerminationHandler.Default</span></td><td><code>65f10b40b4cca209</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.TerminationHandler.Default.1</span></td><td><code>36b9f0fd0bd6555a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.TerminationHandler.Default.2</span></td><td><code>5a6570a33c3a04b5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodNameEqualityResolver</span></td><td><code>202d13ebb536bb12</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.ParameterLengthResolver</span></td><td><code>10b30a2d922850eb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.AllArguments.Assignment</span></td><td><code>14def4b16ae15caa</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.AllArguments.Binder</span></td><td><code>84d4dc7682bd4bc1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Argument.Binder</span></td><td><code>8ea3e2d6ada67981</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Argument.BindingMechanic</span></td><td><code>7f81e76f118b8b6c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Argument.BindingMechanic.1</span></td><td><code>f7e972369386a5bb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Argument.BindingMechanic.2</span></td><td><code>ceb3cb16d973ef6e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.BindingPriority.Resolver</span></td><td><code>85281ed4728558ff</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Default.Binder</span></td><td><code>2cb9ed19cf331e16</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.DefaultCall.Binder</span></td><td><code>dd4a18864225e278</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.DefaultMethod.Binder</span></td><td><code>5487864f99b80433</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Empty.Binder</span></td><td><code>e335f35a2f9f2594</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.FieldValue.Binder</span></td><td><code>7536fe88d980ba06</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.FieldValue.Binder.Delegate</span></td><td><code>f1274f70aff222a6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.IgnoreForBinding.Verifier</span></td><td><code>45c529ae932a81fd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Origin.Binder</span></td><td><code>eda419d1e23bba89</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.RuntimeType.Verifier</span></td><td><code>f7c40d08cca4cff6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.StubValue.Binder</span></td><td><code>21ea68846db4edd6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Super.Binder</span></td><td><code>730ea4dde991dc80</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.SuperCall.Binder</span></td><td><code>ad07bbaf3c236433</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.SuperMethod.Binder</span></td><td><code>54b366a5d30bd881</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder</span></td><td><code>563a735a1f2639f8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.DelegationProcessor</span></td><td><code>e8064c4fb41c05b7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.DelegationProcessor.Handler.Bound</span></td><td><code>dfb1c6a735aea564</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.DelegationProcessor.Handler.Unbound</span></td><td><code>7ef172e8a100d8bf</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.ParameterBinder</span></td><td><code>1bfa0c68a9fae007</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.ParameterBinder.ForFieldBinding</span></td><td><code>682640ccdadd448c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.Record</span></td><td><code>82c7ead3814ad8d7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.This.Binder</span></td><td><code>5330ff8ce22cce20</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.ByteCodeAppender.Compound</span></td><td><code>1fadf2b05c028150</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.ByteCodeAppender.Simple</span></td><td><code>fa31f4490a29b855</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.ByteCodeAppender.Size</span></td><td><code>67d777379a34a113</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.Duplication</span></td><td><code>87726ed8bb6e39de</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.Duplication.1</span></td><td><code>6cbf4aae44bb9c6a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.Duplication.2</span></td><td><code>af584a2bbddd7890</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.Duplication.3</span></td><td><code>d4751d9b66a2e5f5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.Removal</span></td><td><code>6d539a300caa5092</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.Removal.1</span></td><td><code>ab763f3b743f79a5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.Removal.2</span></td><td><code>e831bd58569dc2d5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.StackManipulation.Compound</span></td><td><code>13667638e26a8351</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.StackManipulation.Illegal</span></td><td><code>d75e2eb0d394f6c3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.StackManipulation.Size</span></td><td><code>8b05f74683ed5e3c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.StackManipulation.Trivial</span></td><td><code>56f2787cdbce4d40</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.StackSize</span></td><td><code>555e1a1ce2e91c7e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.TypeCreation</span></td><td><code>b7e70b66f8f0b2e0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.Assigner</span></td><td><code>98eca14b5f4e0588</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.Assigner.Typing</span></td><td><code>003e4f8ce4f0c7b1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.TypeCasting</span></td><td><code>dc2f4d6c8e416972</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveBoxingDelegate</span></td><td><code>99a9d09b518dd877</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveBoxingDelegate.BoxingStackManipulation</span></td><td><code>96e0379915a5a251</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveTypeAwareAssigner</span></td><td><code>5a833f02cac4bc9b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveUnboxingDelegate</span></td><td><code>14e47d44e5cebb1d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveUnboxingDelegate.ImplicitlyTypedUnboxingResponsible</span></td><td><code>8acb01d95782daac</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveWideningDelegate</span></td><td><code>83bf95c70a705412</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveWideningDelegate.WideningStackManipulation</span></td><td><code>7cbc8cfb9c474627</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.VoidAwareAssigner</span></td><td><code>19ca0b5bae3e30da</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.reference.GenericTypeAwareAssigner</span></td><td><code>89faeba189552baa</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.reference.ReferenceTypeAwareAssigner</span></td><td><code>a7a112058f6eb219</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.collection.ArrayFactory</span></td><td><code>2a1d07db6c9a9b41</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.collection.ArrayFactory.ArrayCreator</span></td><td><code>013990a4628b7804</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.collection.ArrayFactory.ArrayCreator.ForReferenceType</span></td><td><code>fee337a22b49d069</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.collection.ArrayFactory.ArrayStackManipulation</span></td><td><code>71a061004f592d42</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.ClassConstant</span></td><td><code>8c2c8e360f844ad5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.ClassConstant.ForReferenceType</span></td><td><code>20514ae9ff4c19fc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.DefaultValue</span></td><td><code>56544d5987e5a6d8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.DoubleConstant</span></td><td><code>829c95b7b67e95cf</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.FloatConstant</span></td><td><code>bdee038754940fff</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.IntegerConstant</span></td><td><code>58a28f871a6a0499</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.LongConstant</span></td><td><code>113f925135fa3020</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.MethodConstant</span></td><td><code>475ac6b79eed7e65</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.MethodConstant.CachedMethod</span></td><td><code>e2e37b57d73ce25e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.MethodConstant.ForMethod</span></td><td><code>ee57757917882406</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.NullConstant</span></td><td><code>be0d703e1eeb7ab2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.TextConstant</span></td><td><code>0cd165242ee23e83</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.FieldAccess</span></td><td><code>a68fd2c449c1a97f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.FieldAccess.AccessDispatcher</span></td><td><code>cb98557ca84d79f8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.FieldAccess.AccessDispatcher.AbstractFieldInstruction</span></td><td><code>e25f847aec265c7d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.FieldAccess.AccessDispatcher.FieldGetInstruction</span></td><td><code>768717da84e7230d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.FieldAccess.AccessDispatcher.FieldPutInstruction</span></td><td><code>0d2da9182fc4014d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodInvocation</span></td><td><code>52ef9f2373794636</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodInvocation.Invocation</span></td><td><code>50198686bff75b86</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodReturn</span></td><td><code>3cbfd6833fda70dd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodVariableAccess</span></td><td><code>0a431422536f9847</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodVariableAccess.MethodLoading</span></td><td><code>b41ca96139cee265</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodVariableAccess.MethodLoading.TypeCastingHandler.NoOp</span></td><td><code>cc8d4bf48a193789</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodVariableAccess.OffsetLoading</span></td><td><code>441e79addaf569b4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.AnnotationWriter</span></td><td><code>0932d72e909ca807</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.Attribute</span></td><td><code>706e3dca943537f4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.ByteVector</span></td><td><code>ab1294742a7052e3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.ClassVisitor</span></td><td><code>126a150b7e4ee8c5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.ClassWriter</span></td><td><code>a0aafa0ac1142534</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.FieldVisitor</span></td><td><code>3be001ce1486e754</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.FieldWriter</span></td><td><code>3c4ebfcb2bc7032e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.Handler</span></td><td><code>763c7a3b0dc4fc7e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.MethodVisitor</span></td><td><code>f6a3226a406e0186</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.MethodWriter</span></td><td><code>37f4009f9bdcf83f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.Symbol</span></td><td><code>f44d88efeab63dac</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.SymbolTable</span></td><td><code>00001f478e852135</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.SymbolTable.Entry</span></td><td><code>904cbca1953e75e2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.Type</span></td><td><code>fd99e2c0b8eef5a7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.TypeReference</span></td><td><code>7c2c246da0bafedc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.signature.SignatureVisitor</span></td><td><code>38847e0b5d40325e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.signature.SignatureWriter</span></td><td><code>c8f0c38b6698b545</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.AnnotationTypeMatcher</span></td><td><code>e2a076c603503810</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.BooleanMatcher</span></td><td><code>35b6b2ba2fb01719</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.CollectionErasureMatcher</span></td><td><code>40c60c13219a2b88</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.CollectionItemMatcher</span></td><td><code>80e5556ab4ee0f7f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.CollectionOneToOneMatcher</span></td><td><code>d43b1161d3365019</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.CollectionSizeMatcher</span></td><td><code>82ebd3133e33eff0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.DeclaringAnnotationMatcher</span></td><td><code>76c3957a2555198e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.DeclaringTypeMatcher</span></td><td><code>cf2a977489563200</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ElementMatcher.Junction.AbstractBase</span></td><td><code>3108822bcef14782</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ElementMatcher.Junction.Conjunction</span></td><td><code>f99efa6157cc1945</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ElementMatcher.Junction.Disjunction</span></td><td><code>8b7df9670ab1e6a2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ElementMatchers</span></td><td><code>28a0610452f7db5d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.EqualityMatcher</span></td><td><code>54d13541c6f4e2d6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ErasureMatcher</span></td><td><code>d3cd19d7e22f880e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.FilterableList.AbstractBase</span></td><td><code>f15837c3f5c772f6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.FilterableList.Empty</span></td><td><code>74dae74169349349</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.Disjunction</span></td><td><code>ec31f8f08fe7da85</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.ForFieldToken</span></td><td><code>e6756ba7270dbd5d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.ForFieldToken.ResolvedMatcher</span></td><td><code>274dcd150693fd35</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.ForMethodToken</span></td><td><code>997f0e6ac66be8c4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.ForMethodToken.ResolvedMatcher</span></td><td><code>2a621c9d35e0e6e8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.Resolved</span></td><td><code>73fd06900ae5ea7e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodParameterTypeMatcher</span></td><td><code>7a3d1180ac04d57e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodParameterTypesMatcher</span></td><td><code>5a4a084cacd7883a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodParametersMatcher</span></td><td><code>0451972f5218f9e5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodReturnTypeMatcher</span></td><td><code>9a716eb6255d75df</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher</span></td><td><code>04f33fac6e78fb6b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort</span></td><td><code>cfeebd943f3aea22</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort.1</span></td><td><code>8c7506e86b0bbf66</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort.2</span></td><td><code>20ccb3487287b6ed</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort.3</span></td><td><code>1959d0639b62c09d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort.4</span></td><td><code>1582e62f919615c9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort.5</span></td><td><code>98ddc3c3f2c845c3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ModifierMatcher</span></td><td><code>2bb2869de319598f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ModifierMatcher.Mode</span></td><td><code>f44584cac7ce7e8e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.NameMatcher</span></td><td><code>51db797c623dddd4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.NegatingMatcher</span></td><td><code>b74326d4a1a805d2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.SignatureTokenMatcher</span></td><td><code>7ca35626d4d9b56b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher</span></td><td><code>1801c8082301e024</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode</span></td><td><code>3400d3cefe334df0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.1</span></td><td><code>d8f686e90f91e06a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.2</span></td><td><code>cf5d64f2b2a4fd34</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.3</span></td><td><code>a6cdd1a2c1b40a0d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.4</span></td><td><code>700c46f5b61adaa4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.5</span></td><td><code>0112a049e682fd07</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.6</span></td><td><code>65eda6c306f19357</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.7</span></td><td><code>12468516b69e2dd4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.8</span></td><td><code>a70439ff144ac9a4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.9</span></td><td><code>1ad4e989d59d2453</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.SuperTypeMatcher</span></td><td><code>be23a04336719063</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.TypeSortMatcher</span></td><td><code>0200af2e8396f457</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.VisibilityMatcher</span></td><td><code>c903a40a41811804</code></td></tr><tr><td><span class="el_class">net.bytebuddy.pool.TypePool.AbstractBase</span></td><td><code>55f93fdd947a4fbc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.pool.TypePool.AbstractBase.Hierarchical</span></td><td><code>4e00f6bc0cb9d6df</code></td></tr><tr><td><span class="el_class">net.bytebuddy.pool.TypePool.CacheProvider.Simple</span></td><td><code>05f44eae27914661</code></td></tr><tr><td><span class="el_class">net.bytebuddy.pool.TypePool.ClassLoading</span></td><td><code>66248d72d4ede0f2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.pool.TypePool.Empty</span></td><td><code>f060167d7bd580c2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.CompoundList</span></td><td><code>d87e0d57b84ea1ac</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.Invoker.Dispatcher</span></td><td><code>bb7f751c11c3b61b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.JavaModule</span></td><td><code>99d530cf1ad13fe1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.RandomString</span></td><td><code>64af255bcd70f219</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher</span></td><td><code>08870cc3f3040450</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.Dispatcher.ForDefaultValue</span></td><td><code>6f8e12a44fc34055</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.Dispatcher.ForDefaultValue.OfNonPrimitiveArray</span></td><td><code>4290b6124d3ab65f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.Dispatcher.ForInstanceCheck</span></td><td><code>32bd757797c52b01</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.Dispatcher.ForNonStaticMethod</span></td><td><code>88342697919f04cf</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.Dispatcher.ForStaticMethod</span></td><td><code>08fb96247abfc891</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.DynamicClassLoader</span></td><td><code>ea7b2e03d2bd9a69</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.DynamicClassLoader.Resolver.CreationAction</span></td><td><code>7c2f4d133cb62444</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.DynamicClassLoader.Resolver.ForModuleSystem</span></td><td><code>bcdb441131f76b9a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.InvokerCreationAction</span></td><td><code>722fc8d12687a8c9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.ProxiedInvocationHandler</span></td><td><code>6c3fab73b89c5c23</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.privilege.GetMethodAction</span></td><td><code>b33eb57c2832bd45</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.privilege.GetSystemPropertyAction</span></td><td><code>061f17ed27fcdb80</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.NonAbstractClassFilter</span></td><td><code>1e5a6074e0969c3f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.BaseProviderFactory</span></td><td><code>7ba29961dfebc4ba</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.BooterDeserializer</span></td><td><code>442f429c26b69928</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ClassLoaderConfiguration</span></td><td><code>6e06a3a75082a947</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.Classpath</span></td><td><code>e71f884825972c25</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ClasspathConfiguration</span></td><td><code>b4f746df2629957b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter</span></td><td><code>812225234cbb3325</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.1</span></td><td><code>bdfcde0181550217</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkingReporterFactory</span></td><td><code>076c5152b5fb9c11</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkingRunListener</span></td><td><code>b96d9f327ffdaaf4</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.IsolatedClassLoader</span></td><td><code>ae0066301f45e487</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.JdkReflector</span></td><td><code>d6f5d6728272255a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PropertiesWrapper</span></td><td><code>e77715f3c27548eb</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ProviderConfiguration</span></td><td><code>d735e73a98b2dd3b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ProviderFactory</span></td><td><code>10eaa6c74a289a7c</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ProviderFactory.ProviderProxy</span></td><td><code>7a176b1eaeb3c61e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.StartupConfiguration</span></td><td><code>b4437ea6e48d2360</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.SurefireReflector</span></td><td><code>073f35a652554917</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.SystemPropertyManager</span></td><td><code>586f8b734e8457bd</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.TypeEncodedValue</span></td><td><code>520e6294ac61be38</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit3.JUnit3TestChecker</span></td><td><code>7102b454a4fc6b40</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.JUnit4Reflector</span></td><td><code>6be9a9a787b76734</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.JUnit4RunListener</span></td><td><code>b6d5ab51bf0a9446</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.JUnit4RunListenerFactory</span></td><td><code>fc6a4376532e9afe</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.JUnit4TestChecker</span></td><td><code>db394de547f23665</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.junit4.JUnit4Provider</span></td><td><code>bd99b88d79022720</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.providerapi.AbstractProvider</span></td><td><code>41999770f94bdbc3</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ConsoleOutputCapture</span></td><td><code>8698f1f1b0d3d1ac</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ConsoleOutputCapture.ForwardingPrintStream</span></td><td><code>07ce062280b3f566</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ReporterConfiguration</span></td><td><code>af3c1ea7f8012a4f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.SimpleReportEntry</span></td><td><code>c4fe7d3fd77a7f9f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.suite.RunResult</span></td><td><code>4f4ef8baf9a9eaed</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.DirectoryScannerParameters</span></td><td><code>dfed7046a1155a37</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.RunOrderParameters</span></td><td><code>0c8e07ddcfeb0d3f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.TestArtifactInfo</span></td><td><code>3385503f66e44602</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.TestRequest</span></td><td><code>c341fc8ac6d6267e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.DefaultRunOrderCalculator</span></td><td><code>6eae8682ccf1a30a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.DefaultScanResult</span></td><td><code>61b36318792d6986</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.ReflectionUtils</span></td><td><code>f3750af81644d0aa</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.RunOrder</span></td><td><code>d922f6bc92e209d9</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.TestsToRun</span></td><td><code>0f98b18d5c7c18ab</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.UrlUtils</span></td><td><code>1ff98da53c689785</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.ByteBuffer</span></td><td><code>ee465046a50e3fa4</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.StringUtils</span></td><td><code>517a9dd6a335139c</code></td></tr><tr><td><span class="el_class">org.junit.Assert</span></td><td><code>eda6db924019425b</code></td></tr><tr><td><span class="el_class">org.junit.internal.Checks</span></td><td><code>5f543b0bb87b92da</code></td></tr><tr><td><span class="el_class">org.junit.internal.MethodSorter</span></td><td><code>a26607ae067f7352</code></td></tr><tr><td><span class="el_class">org.junit.internal.MethodSorter.1</span></td><td><code>d3997b4bdb7889c1</code></td></tr><tr><td><span class="el_class">org.junit.internal.MethodSorter.2</span></td><td><code>c8e6351cbf098013</code></td></tr><tr><td><span class="el_class">org.junit.internal.builders.AllDefaultPossibilitiesBuilder</span></td><td><code>4f18a1d7932cb8ab</code></td></tr><tr><td><span class="el_class">org.junit.internal.builders.AnnotatedBuilder</span></td><td><code>0faf353d180c9332</code></td></tr><tr><td><span class="el_class">org.junit.internal.builders.IgnoredBuilder</span></td><td><code>e152f333c53967a6</code></td></tr><tr><td><span class="el_class">org.junit.internal.builders.JUnit3Builder</span></td><td><code>4a2cc8e608e1275e</code></td></tr><tr><td><span class="el_class">org.junit.internal.builders.JUnit4Builder</span></td><td><code>f2e00a3e1fc23005</code></td></tr><tr><td><span class="el_class">org.junit.internal.builders.SuiteMethodBuilder</span></td><td><code>1df136431e07e393</code></td></tr><tr><td><span class="el_class">org.junit.internal.requests.ClassRequest</span></td><td><code>47dbc61675e5a92e</code></td></tr><tr><td><span class="el_class">org.junit.internal.requests.ClassRequest.CustomAllDefaultPossibilitiesBuilder</span></td><td><code>ea1c269d9656f543</code></td></tr><tr><td><span class="el_class">org.junit.internal.requests.ClassRequest.CustomSuiteMethodBuilder</span></td><td><code>03d01020b1c503c7</code></td></tr><tr><td><span class="el_class">org.junit.internal.requests.MemoizingRequest</span></td><td><code>1e70801476dbab8f</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.model.EachTestNotifier</span></td><td><code>077481995383e000</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.model.ReflectiveCallable</span></td><td><code>d591724635588bcb</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.rules.RuleMemberValidator</span></td><td><code>95b5ee2068ec6875</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.rules.RuleMemberValidator.Builder</span></td><td><code>f24845fa6fd065af</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.rules.RuleMemberValidator.DeclaringClassMustBePublic</span></td><td><code>1de994463c748d89</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.rules.RuleMemberValidator.FieldMustBeARule</span></td><td><code>e24e9f59de6fe5b7</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.rules.RuleMemberValidator.FieldMustBeATestRule</span></td><td><code>690823bd2992f52e</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.rules.RuleMemberValidator.MemberMustBeNonStaticOrAlsoClassRule</span></td><td><code>1e703fb3e7f4e533</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.rules.RuleMemberValidator.MemberMustBePublic</span></td><td><code>806c174eb921b478</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.rules.RuleMemberValidator.MemberMustBeStatic</span></td><td><code>ac28a03dd36b2b5a</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.rules.RuleMemberValidator.MethodMustBeARule</span></td><td><code>88ea4a2237de2b8b</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.rules.RuleMemberValidator.MethodMustBeATestRule</span></td><td><code>9f4dd18a26005c18</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.statements.InvokeMethod</span></td><td><code>05a7aa636afa2c39</code></td></tr><tr><td><span class="el_class">org.junit.internal.runners.statements.RunBefores</span></td><td><code>ef86a61ca3ab20ba</code></td></tr><tr><td><span class="el_class">org.junit.runner.Description</span></td><td><code>1d6f7ddbbf223f9a</code></td></tr><tr><td><span class="el_class">org.junit.runner.Request</span></td><td><code>214d9ade1c7dc38d</code></td></tr><tr><td><span class="el_class">org.junit.runner.Result</span></td><td><code>ecf6c1c04298ff7d</code></td></tr><tr><td><span class="el_class">org.junit.runner.Result.Listener</span></td><td><code>cf649a4ffbe55db9</code></td></tr><tr><td><span class="el_class">org.junit.runner.Runner</span></td><td><code>f5abacc70e2e08a4</code></td></tr><tr><td><span class="el_class">org.junit.runner.notification.RunListener</span></td><td><code>69d2c783b42f6720</code></td></tr><tr><td><span class="el_class">org.junit.runner.notification.RunNotifier</span></td><td><code>f6313076e2224ebb</code></td></tr><tr><td><span class="el_class">org.junit.runner.notification.RunNotifier.1</span></td><td><code>e31025c12b4dbdee</code></td></tr><tr><td><span class="el_class">org.junit.runner.notification.RunNotifier.2</span></td><td><code>4c7314c6d595dc3e</code></td></tr><tr><td><span class="el_class">org.junit.runner.notification.RunNotifier.3</span></td><td><code>df2bada5cb3794f3</code></td></tr><tr><td><span class="el_class">org.junit.runner.notification.RunNotifier.4</span></td><td><code>fbdd84204c215de7</code></td></tr><tr><td><span class="el_class">org.junit.runner.notification.RunNotifier.5</span></td><td><code>f62dc396b601f8bd</code></td></tr><tr><td><span class="el_class">org.junit.runner.notification.RunNotifier.9</span></td><td><code>c3c3d54b8ed47ee1</code></td></tr><tr><td><span class="el_class">org.junit.runner.notification.RunNotifier.SafeNotifier</span></td><td><code>0b43c10299733bfb</code></td></tr><tr><td><span class="el_class">org.junit.runner.notification.SynchronizedRunListener</span></td><td><code>2b59d5cb3b105225</code></td></tr><tr><td><span class="el_class">org.junit.runners.BlockJUnit4ClassRunner</span></td><td><code>95752fb34ff12f3f</code></td></tr><tr><td><span class="el_class">org.junit.runners.BlockJUnit4ClassRunner.1</span></td><td><code>d0f63145230a5f42</code></td></tr><tr><td><span class="el_class">org.junit.runners.BlockJUnit4ClassRunner.2</span></td><td><code>f93eace695ddd30e</code></td></tr><tr><td><span class="el_class">org.junit.runners.BlockJUnit4ClassRunner.RuleCollector</span></td><td><code>9c768e710e39c989</code></td></tr><tr><td><span class="el_class">org.junit.runners.JUnit4</span></td><td><code>6d26e2305347fe01</code></td></tr><tr><td><span class="el_class">org.junit.runners.Parameterized</span></td><td><code>963841242a61a1e2</code></td></tr><tr><td><span class="el_class">org.junit.runners.Parameterized.RunnersFactory</span></td><td><code>c5ee5b5ac59f40b0</code></td></tr><tr><td><span class="el_class">org.junit.runners.ParentRunner</span></td><td><code>335ee90b10f96ea1</code></td></tr><tr><td><span class="el_class">org.junit.runners.ParentRunner.1</span></td><td><code>ecc6961e8bc209c4</code></td></tr><tr><td><span class="el_class">org.junit.runners.ParentRunner.2</span></td><td><code>c5cb913a629ec4c8</code></td></tr><tr><td><span class="el_class">org.junit.runners.ParentRunner.3</span></td><td><code>20bad8188aebc0f2</code></td></tr><tr><td><span class="el_class">org.junit.runners.ParentRunner.4</span></td><td><code>80476dbdcb8d52cc</code></td></tr><tr><td><span class="el_class">org.junit.runners.ParentRunner.ClassRuleCollector</span></td><td><code>26f7fb338afcd13b</code></td></tr><tr><td><span class="el_class">org.junit.runners.RuleContainer</span></td><td><code>d44c3ba6dc65af53</code></td></tr><tr><td><span class="el_class">org.junit.runners.RuleContainer.1</span></td><td><code>57bbc73f6f47763b</code></td></tr><tr><td><span class="el_class">org.junit.runners.Suite</span></td><td><code>154944342f498508</code></td></tr><tr><td><span class="el_class">org.junit.runners.model.FrameworkField</span></td><td><code>2fe27c284e7d39f4</code></td></tr><tr><td><span class="el_class">org.junit.runners.model.FrameworkMember</span></td><td><code>bfd059486f267475</code></td></tr><tr><td><span class="el_class">org.junit.runners.model.FrameworkMethod</span></td><td><code>f293b82d5aa86323</code></td></tr><tr><td><span class="el_class">org.junit.runners.model.FrameworkMethod.1</span></td><td><code>8fd5e02769c0e0c2</code></td></tr><tr><td><span class="el_class">org.junit.runners.model.RunnerBuilder</span></td><td><code>585cad2d320dc86e</code></td></tr><tr><td><span class="el_class">org.junit.runners.model.Statement</span></td><td><code>9a75aa5de27bf4d5</code></td></tr><tr><td><span class="el_class">org.junit.runners.model.TestClass</span></td><td><code>7e71209792391ee8</code></td></tr><tr><td><span class="el_class">org.junit.runners.model.TestClass.FieldComparator</span></td><td><code>1b96cd3d5c4aeb07</code></td></tr><tr><td><span class="el_class">org.junit.runners.model.TestClass.MethodComparator</span></td><td><code>0369eb29eb04248a</code></td></tr><tr><td><span class="el_class">org.junit.runners.parameterized.BlockJUnit4ClassRunnerWithParameters</span></td><td><code>ebeaa09f1f8eb6f3</code></td></tr><tr><td><span class="el_class">org.junit.runners.parameterized.BlockJUnit4ClassRunnerWithParameters.1</span></td><td><code>c4024da18ca412c5</code></td></tr><tr><td><span class="el_class">org.junit.runners.parameterized.BlockJUnit4ClassRunnerWithParameters.InjectionType</span></td><td><code>4a7c5c9856e4e9f4</code></td></tr><tr><td><span class="el_class">org.junit.runners.parameterized.BlockJUnit4ClassRunnerWithParametersFactory</span></td><td><code>6f2e3a2b7ea357b7</code></td></tr><tr><td><span class="el_class">org.junit.runners.parameterized.TestWithParameters</span></td><td><code>0ec69411e744952d</code></td></tr><tr><td><span class="el_class">org.junit.validator.AnnotationValidatorFactory</span></td><td><code>e1e5570798173ab9</code></td></tr><tr><td><span class="el_class">org.junit.validator.AnnotationsValidator</span></td><td><code>6cbe8454c9a93bb8</code></td></tr><tr><td><span class="el_class">org.junit.validator.AnnotationsValidator.AnnotatableValidator</span></td><td><code>d211a963f22be103</code></td></tr><tr><td><span class="el_class">org.junit.validator.AnnotationsValidator.ClassValidator</span></td><td><code>1b463c4e6642e880</code></td></tr><tr><td><span class="el_class">org.junit.validator.AnnotationsValidator.FieldValidator</span></td><td><code>64068b954dc56a31</code></td></tr><tr><td><span class="el_class">org.junit.validator.AnnotationsValidator.MethodValidator</span></td><td><code>f16b57f17c787036</code></td></tr><tr><td><span class="el_class">org.junit.validator.PublicClassValidator</span></td><td><code>3bac248cf06b18e4</code></td></tr><tr><td><span class="el_class">org.mockito.Answers</span></td><td><code>0be722c7c2217735</code></td></tr><tr><td><span class="el_class">org.mockito.Mockito</span></td><td><code>c3c660aa2ffb8353</code></td></tr><tr><td><span class="el_class">org.mockito.MockitoAnnotations</span></td><td><code>d52f4cdc6e0cd17e</code></td></tr><tr><td><span class="el_class">org.mockito.configuration.DefaultMockitoConfiguration</span></td><td><code>cccce65487c358bb</code></td></tr><tr><td><span class="el_class">org.mockito.internal.MockitoCore</span></td><td><code>94b2d5ddbc6a2444</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.CaptorAnnotationProcessor</span></td><td><code>b1d3667699da5bde</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.ClassPathLoader</span></td><td><code>1837784d8946effa</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.DefaultInjectionEngine</span></td><td><code>9d4f4284084eab52</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.GlobalConfiguration</span></td><td><code>f3e24b2612771a52</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.IndependentAnnotationEngine</span></td><td><code>d89813946ef012b7</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.InjectingAnnotationEngine</span></td><td><code>f64318cb98c8c006</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.MockAnnotationProcessor</span></td><td><code>c227d08ff7d98a5c</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.SpyAnnotationEngine</span></td><td><code>68dec0d15617b751</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.ConstructorInjection</span></td><td><code>a2e0cfed216ffbf1</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.MockInjection</span></td><td><code>41ad05a9cf251c66</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.MockInjection.OngoingMockInjection</span></td><td><code>4c9b53365f5f9c2a</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.MockInjectionStrategy</span></td><td><code>cd40af08f6405c20</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.MockInjectionStrategy.1</span></td><td><code>c6860b7b40dd6139</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.PropertyAndSetterInjection</span></td><td><code>8ab6f13ba606583f</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.PropertyAndSetterInjection.1</span></td><td><code>2daa5541dc14b3cb</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.SpyOnInjectedFieldsHandler</span></td><td><code>6f93949c7ad54b5c</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.filter.NameBasedCandidateFilter</span></td><td><code>cbf3f2390a7a068c</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.filter.TerminalMockCandidateFilter</span></td><td><code>80b5d7c476edad41</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.filter.TypeBasedCandidateFilter</span></td><td><code>bb38595e57e057ee</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.scanner.InjectMocksScanner</span></td><td><code>1b7ab81c25844e8f</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.injection.scanner.MockScanner</span></td><td><code>3b1d7ca146e28785</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.DefaultMockitoPlugins</span></td><td><code>c5c6bafba7fe1a11</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.DefaultPluginSwitch</span></td><td><code>973f142b836667e1</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.PluginFinder</span></td><td><code>7bb78b839b8a576b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.PluginInitializer</span></td><td><code>172e9a5c046703bf</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.PluginLoader</span></td><td><code>2d00b0c8836bfc7a</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.PluginRegistry</span></td><td><code>c71cf2fb99597e7b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.Plugins</span></td><td><code>f125808a6755a284</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.DelegatingMethod</span></td><td><code>7ea1353e5c77b5f3</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.MockSettingsImpl</span></td><td><code>73433353e7684171</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.SuspendMethod</span></td><td><code>dc8e823dfe533d87</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.ByteBuddyCrossClassLoaderSerializationSupport</span></td><td><code>35537ede985fa8f5</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.ByteBuddyMockMaker</span></td><td><code>5efa55e045667572</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.MockFeatures</span></td><td><code>161a6ae9389d4da3</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.MockMethodInterceptor</span></td><td><code>889f5d95fdd30914</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.MockMethodInterceptor.DispatcherDefaultingToRealMethod</span></td><td><code>eb121594c82e0f72</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.ModuleHandler</span></td><td><code>727bb36de4878f8a</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.ModuleHandler.ModuleSystemFound</span></td><td><code>e72927e25f142ca6</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.SubclassByteBuddyMockMaker</span></td><td><code>25f58b4b40e0b021</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.SubclassByteBuddyMockMaker.1</span></td><td><code>e7aa37594b29ef14</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.SubclassBytecodeGenerator</span></td><td><code>f96968347af96b08</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.SubclassInjectionLoader</span></td><td><code>36ebabbe6027618d</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.SubclassInjectionLoader.WithReflection</span></td><td><code>efc5d3b20869d5f0</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.TypeCachingBytecodeGenerator</span></td><td><code>b8560d222197be6d</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.TypeCachingBytecodeGenerator.MockitoMockKey</span></td><td><code>8fb34c2e10b7db99</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.TypeSupport</span></td><td><code>652949fe1e4bb215</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.instance.DefaultInstantiatorProvider</span></td><td><code>3900ee0969504a34</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.instance.ObjenesisInstantiator</span></td><td><code>e451a21eadbc4d30</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.settings.CreationSettings</span></td><td><code>417c97a74f5fad25</code></td></tr><tr><td><span class="el_class">org.mockito.internal.debugging.Localized</span></td><td><code>3453e26ea406565f</code></td></tr><tr><td><span class="el_class">org.mockito.internal.debugging.LocationImpl</span></td><td><code>b13b42f8f18069c1</code></td></tr><tr><td><span class="el_class">org.mockito.internal.exceptions.stacktrace.DefaultStackTraceCleaner</span></td><td><code>0be2358e0d7b7d96</code></td></tr><tr><td><span class="el_class">org.mockito.internal.exceptions.stacktrace.DefaultStackTraceCleanerProvider</span></td><td><code>475c82ec8ba01c75</code></td></tr><tr><td><span class="el_class">org.mockito.internal.exceptions.stacktrace.StackTraceFilter</span></td><td><code>3df073dc72decbe3</code></td></tr><tr><td><span class="el_class">org.mockito.internal.handler.InvocationNotifierHandler</span></td><td><code>7c138f78143ab433</code></td></tr><tr><td><span class="el_class">org.mockito.internal.handler.MockHandlerFactory</span></td><td><code>236482acbbebaf4a</code></td></tr><tr><td><span class="el_class">org.mockito.internal.handler.MockHandlerImpl</span></td><td><code>f62c11da1db64aef</code></td></tr><tr><td><span class="el_class">org.mockito.internal.handler.NullResultGuardian</span></td><td><code>40a1d637e9eadd05</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.ArgumentsProcessor</span></td><td><code>d50039fd637b3496</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.DefaultInvocationFactory</span></td><td><code>fa6c69aea1733666</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.InterceptedInvocation</span></td><td><code>40a1bce4be9e6523</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.InterceptedInvocation.1</span></td><td><code>1a1152b98b0c7d86</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.InvocationMarker</span></td><td><code>f84ab0aa4401f5c6</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.InvocationMatcher</span></td><td><code>0f3f05080ade9bf3</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.InvocationMatcher.1</span></td><td><code>80b88eded9ee9335</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.InvocationsFinder</span></td><td><code>3a308688617c4f42</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.InvocationsFinder.RemoveNotMatching</span></td><td><code>8802785431e19d86</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.MatcherApplicationStrategy</span></td><td><code>61ba3ebb5e5c5981</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.MatcherApplicationStrategy.MatcherApplicationType</span></td><td><code>338c14ae51b8af66</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.MatchersBinder</span></td><td><code>b39b9426c9814ac7</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.RealMethod.FromBehavior</span></td><td><code>3606745ce75bc7b7</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.RealMethod.FromCallable</span></td><td><code>91b88c5e1e6b856f</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.RealMethod.FromCallable.1</span></td><td><code>851ae10acd2d90b9</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.StubInfoImpl</span></td><td><code>1314bab3c1422857</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.TypeSafeMatching</span></td><td><code>0523de66dbdeab05</code></td></tr><tr><td><span class="el_class">org.mockito.internal.invocation.mockref.MockWeakReference</span></td><td><code>ac456a2a5b693d6e</code></td></tr><tr><td><span class="el_class">org.mockito.internal.listeners.StubbingLookupNotifier</span></td><td><code>6b94cdf6e74e7282</code></td></tr><tr><td><span class="el_class">org.mockito.internal.listeners.VerificationStartedNotifier</span></td><td><code>b5b225637c7897a9</code></td></tr><tr><td><span class="el_class">org.mockito.internal.matchers.Equality</span></td><td><code>e1d16aba206ff315</code></td></tr><tr><td><span class="el_class">org.mockito.internal.matchers.Equals</span></td><td><code>1bb4b6d86ac8a29b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.progress.ArgumentMatcherStorageImpl</span></td><td><code>83a3e5fcf460cd8d</code></td></tr><tr><td><span class="el_class">org.mockito.internal.progress.MockingProgressImpl</span></td><td><code>f0bb250cbbac6b8b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.progress.MockingProgressImpl.1</span></td><td><code>a1ad00aef40918d3</code></td></tr><tr><td><span class="el_class">org.mockito.internal.progress.SequenceNumber</span></td><td><code>fd2449d941ed721b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.progress.ThreadSafeMockingProgress</span></td><td><code>5ef9d6f1a875dc18</code></td></tr><tr><td><span class="el_class">org.mockito.internal.progress.ThreadSafeMockingProgress.1</span></td><td><code>1c85bd989b9441aa</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.BaseStubbing</span></td><td><code>0fd68c747fb3e1ac</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.ConsecutiveStubbing</span></td><td><code>1b3fea0e4598e3dc</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.DoAnswerStyleStubbing</span></td><td><code>f2057cd0aee1a50b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.InvocationContainerImpl</span></td><td><code>9442a67b8d6e7df7</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.OngoingStubbingImpl</span></td><td><code>646db189ef95b765</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.StubbedInvocationMatcher</span></td><td><code>738da3903cdefa65</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.answers.CallsRealMethods</span></td><td><code>16da2f316c946fec</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.answers.DefaultAnswerValidator</span></td><td><code>de0c324c57207f3c</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.answers.InvocationInfo</span></td><td><code>6efa401244b5c70b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.answers.Returns</span></td><td><code>b865c001022cfefe</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.defaultanswers.GloballyConfiguredAnswer</span></td><td><code>f308e3faf16f6212</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.defaultanswers.ReturnsDeepStubs</span></td><td><code>af1362f9ed1b0c51</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.defaultanswers.ReturnsEmptyValues</span></td><td><code>fb54ce54650adcb6</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.defaultanswers.ReturnsMocks</span></td><td><code>f72b0e3d274c564c</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.defaultanswers.ReturnsMoreEmptyValues</span></td><td><code>4a4f9f45d874e56f</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.defaultanswers.ReturnsSmartNulls</span></td><td><code>8920a999612923c9</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.defaultanswers.TriesToReturnSelf</span></td><td><code>b9eec415ba57796d</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.Checks</span></td><td><code>c6a1d20be0e11d77</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.ConsoleMockitoLogger</span></td><td><code>b50468c7ba4abdba</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.DefaultMockingDetails</span></td><td><code>eb4060f4b147ea49</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.KotlinInlineClassUtil</span></td><td><code>7e6640221d263a51</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.MockCreationValidator</span></td><td><code>e30e40e6aabce2d8</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.MockNameImpl</span></td><td><code>c374206ea5426e18</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.MockUtil</span></td><td><code>22b633290ad851ce</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.ObjectMethodsGuru</span></td><td><code>2e0e0e3f520fd2eb</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.Primitives</span></td><td><code>3126a7777504288b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.StringUtil</span></td><td><code>fc180f2e2cfb19c5</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.collections.HashCodeAndEqualsMockWrapper</span></td><td><code>2ddb4b6df187f1be</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.collections.HashCodeAndEqualsSafeSet</span></td><td><code>f13e3c60a5f3dac1</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.collections.HashCodeAndEqualsSafeSet.1</span></td><td><code>04a9da11a07d7dbd</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.collections.Iterables</span></td><td><code>f2f271f84160edef</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.collections.ListUtil</span></td><td><code>0f36e4acc6b97d6b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.collections.Sets</span></td><td><code>ba0259dd5d0f4cdf</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.reflection.FieldReader</span></td><td><code>adeb073a2d5e6410</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.reflection.GenericMetadataSupport</span></td><td><code>85227a69a82c938b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.reflection.GenericMetadataSupport.FromClassGenericMetadataSupport</span></td><td><code>356b7028b146ffda</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.reflection.GenericMetadataSupport.NotGenericReturnTypeSupport</span></td><td><code>f614172becdb4957</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.reflection.GenericMetadataSupport.ParameterizedReturnType</span></td><td><code>de8799dae02553cd</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.reflection.ReflectionMemberAccessor</span></td><td><code>22d3c34a9b15b269</code></td></tr><tr><td><span class="el_class">org.mockito.internal.verification.DefaultRegisteredInvocations</span></td><td><code>b26cd697d974791a</code></td></tr><tr><td><span class="el_class">org.mockito.internal.verification.DefaultRegisteredInvocations.RemoveToString</span></td><td><code>5cb1bfebe2b41345</code></td></tr><tr><td><span class="el_class">org.mockito.internal.verification.MockAwareVerificationMode</span></td><td><code>7d19b8cd6993b835</code></td></tr><tr><td><span class="el_class">org.mockito.internal.verification.Times</span></td><td><code>4aa9f1560e0ec411</code></td></tr><tr><td><span class="el_class">org.mockito.internal.verification.VerificationDataImpl</span></td><td><code>2cdb469587b059ff</code></td></tr><tr><td><span class="el_class">org.mockito.internal.verification.VerificationEventImpl</span></td><td><code>4f05d64f894ba8bc</code></td></tr><tr><td><span class="el_class">org.mockito.internal.verification.VerificationModeFactory</span></td><td><code>1ca686294e0a83db</code></td></tr><tr><td><span class="el_class">org.mockito.internal.verification.checkers.MissingInvocationChecker</span></td><td><code>39cd891e47500276</code></td></tr><tr><td><span class="el_class">org.mockito.internal.verification.checkers.NumberOfInvocationsChecker</span></td><td><code>e5dd03036a7ede01</code></td></tr><tr><td><span class="el_class">org.mockito.mock.SerializableMode</span></td><td><code>73f88c1884829594</code></td></tr><tr><td><span class="el_class">org.mockito.plugins.AnnotationEngine.NoAction</span></td><td><code>cb985c28ad2cce16</code></td></tr><tr><td><span class="el_class">org.objenesis.ObjenesisBase</span></td><td><code>0c1d2fd83029257f</code></td></tr><tr><td><span class="el_class">org.objenesis.ObjenesisStd</span></td><td><code>f35c83a75caea811</code></td></tr><tr><td><span class="el_class">org.objenesis.instantiator.sun.SunReflectionFactoryHelper</span></td><td><code>d17e7b3403696605</code></td></tr><tr><td><span class="el_class">org.objenesis.instantiator.sun.SunReflectionFactoryInstantiator</span></td><td><code>6156947e7d7c507c</code></td></tr><tr><td><span class="el_class">org.objenesis.strategy.BaseInstantiatorStrategy</span></td><td><code>b0aaa6460452f5ce</code></td></tr><tr><td><span class="el_class">org.objenesis.strategy.PlatformDescription</span></td><td><code>c6456f671febfd7c</code></td></tr><tr><td><span class="el_class">org.objenesis.strategy.StdInstantiatorStrategy</span></td><td><code>abae05ba56ea35a6</code></td></tr><tr><td><span class="el_class">sun.text.resources.cldr.ext.FormatData_ru</span></td><td><code>7711049ed4b6e8d6</code></td></tr><tr><td><span class="el_class">sun.util.resources.cldr.provider.CLDRLocaleDataMetaInfo</span></td><td><code>3d1ea3e23b319ce9</code></td></tr><tr><td><span class="el_class">sun.util.resources.provider.LocaleDataProvider</span></td><td><code>eebde39dfb7981b7</code></td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html>
    \ No newline at end of file
    diff --git a/target/site/jacoco/jacoco.csv b/target/site/jacoco/jacoco.csv
    new file mode 100644
    index 0000000..9f76073
    --- /dev/null
    +++ b/target/site/jacoco/jacoco.csv
    @@ -0,0 +1,5 @@
    +GROUP,PACKAGE,CLASS,INSTRUCTION_MISSED,INSTRUCTION_COVERED,BRANCH_MISSED,BRANCH_COVERED,LINE_MISSED,LINE_COVERED,COMPLEXITY_MISSED,COMPLEXITY_COVERED,METHOD_MISSED,METHOD_COVERED
    +untitled,com.example,Feline,0,15,0,0,0,5,0,5,0,5
    +untitled,com.example,Animal,11,16,2,2,3,4,3,2,1,2
    +untitled,com.example,Lion,0,39,0,4,0,11,0,6,0,4
    +untitled,com.example,Cat,0,16,0,0,0,6,0,3,0,3
    diff --git a/target/site/jacoco/jacoco.xml b/target/site/jacoco/jacoco.xml
    new file mode 100644
    index 0000000..f75a0f3
    --- /dev/null
    +++ b/target/site/jacoco/jacoco.xml
    @@ -0,0 +1 @@
    +<?xml version="1.0" encoding="UTF-8" standalone="yes"?><!DOCTYPE report PUBLIC "-//JACOCO//DTD Report 1.1//EN" "report.dtd"><report name="untitled"><sessioninfo id="Adelika-e0a37b2d" start="1675690947463" dump="1675690951717"/><package name="com/example"><class name="com/example/Feline" sourcefilename="Feline.java"><method name="&lt;init&gt;" desc="()V" line="5"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="eatMeat" desc="()Ljava/util/List;" line="9"><counter type="INSTRUCTION" missed="0" covered="4"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getFamily" desc="()Ljava/lang/String;" line="14"><counter type="INSTRUCTION" missed="0" covered="2"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getKittens" desc="()I" line="18"><counter type="INSTRUCTION" missed="0" covered="4"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getKittens" desc="(I)I" line="22"><counter type="INSTRUCTION" missed="0" covered="2"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="15"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="5"/><counter type="METHOD" missed="0" covered="5"/><counter type="CLASS" missed="0" covered="1"/></class><class name="com/example/Animal" sourcefilename="Animal.java"><method name="&lt;init&gt;" desc="()V" line="5"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getFood" desc="(Ljava/lang/String;)Ljava/util/List;" line="8"><counter type="INSTRUCTION" missed="9" covered="13"/><counter type="BRANCH" missed="2" covered="2"/><counter type="LINE" missed="2" covered="3"/><counter type="COMPLEXITY" missed="2" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getFamily" desc="()Ljava/lang/String;" line="18"><counter type="INSTRUCTION" missed="2" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="11" covered="16"/><counter type="BRANCH" missed="2" covered="2"/><counter type="LINE" missed="3" covered="4"/><counter type="COMPLEXITY" missed="3" covered="2"/><counter type="METHOD" missed="1" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class name="com/example/Lion" sourcefilename="Lion.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Lcom/example/Feline;)V" line="11"><counter type="INSTRUCTION" missed="0" covered="27"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="8"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getKittens" desc="()I" line="23"><counter type="INSTRUCTION" missed="0" covered="4"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="doesHaveMane" desc="()Z" line="27"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getFood" desc="()Ljava/util/List;" line="31"><counter type="INSTRUCTION" missed="0" covered="5"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="39"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="11"/><counter type="COMPLEXITY" missed="0" covered="6"/><counter type="METHOD" missed="0" covered="4"/><counter type="CLASS" missed="0" covered="1"/></class><class name="com/example/Predator" sourcefilename="Predator.java"/><class name="com/example/Cat" sourcefilename="Cat.java"><method name="&lt;init&gt;" desc="(Lcom/example/Feline;)V" line="9"><counter type="INSTRUCTION" missed="0" covered="9"/><counter type="LINE" missed="0" covered="4"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getSound" desc="()Ljava/lang/String;" line="15"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getFood" desc="()Ljava/util/List;" line="19"><counter type="INSTRUCTION" missed="0" covered="4"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="16"/><counter type="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></class><sourcefile name="Lion.java"><line nr="11" mi="0" ci="2" mb="0" cb="0"/><line nr="12" mi="0" ci="3" mb="0" cb="0"/><line nr="13" mi="0" ci="4" mb="0" cb="2"/><line nr="14" mi="0" ci="4" mb="0" cb="0"/><line nr="15" mi="0" ci="4" mb="0" cb="2"/><line nr="16" mi="0" ci="4" mb="0" cb="0"/><line nr="18" mi="0" ci="5" mb="0" cb="0"/><line nr="20" mi="0" ci="1" mb="0" cb="0"/><line nr="23" mi="0" ci="4" mb="0" cb="0"/><line nr="27" mi="0" ci="3" mb="0" cb="0"/><line nr="31" mi="0" ci="5" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="39"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="11"/><counter type="COMPLEXITY" missed="0" covered="6"/><counter type="METHOD" missed="0" covered="4"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Predator.java"/><sourcefile name="Animal.java"><line nr="5" mi="0" ci="3" mb="0" cb="0"/><line nr="8" mi="0" ci="4" mb="1" cb="1"/><line nr="9" mi="4" ci="0" mb="0" cb="0"/><line nr="10" mi="0" ci="4" mb="1" cb="1"/><line nr="11" mi="0" ci="5" mb="0" cb="0"/><line nr="13" mi="5" ci="0" mb="0" cb="0"/><line nr="18" mi="2" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="11" covered="16"/><counter type="BRANCH" missed="2" covered="2"/><counter type="LINE" missed="3" covered="4"/><counter type="COMPLEXITY" missed="3" covered="2"/><counter type="METHOD" missed="1" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Feline.java"><line nr="5" mi="0" ci="3" mb="0" cb="0"/><line nr="9" mi="0" ci="4" mb="0" cb="0"/><line nr="14" mi="0" ci="2" mb="0" cb="0"/><line nr="18" mi="0" ci="4" mb="0" cb="0"/><line nr="22" mi="0" ci="2" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="15"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="5"/><counter type="METHOD" missed="0" covered="5"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Cat.java"><line nr="9" mi="0" ci="2" mb="0" cb="0"/><line nr="10" mi="0" ci="3" mb="0" cb="0"/><line nr="11" mi="0" ci="1" mb="0" cb="0"/><line nr="13" mi="0" ci="3" mb="0" cb="0"/><line nr="15" mi="0" ci="3" mb="0" cb="0"/><line nr="19" mi="0" ci="4" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="16"/><counter type="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><counter type="INSTRUCTION" missed="11" covered="86"/><counter type="BRANCH" missed="2" covered="6"/><counter type="LINE" missed="3" covered="26"/><counter type="COMPLEXITY" missed="3" covered="16"/><counter type="METHOD" missed="1" covered="14"/><counter type="CLASS" missed="0" covered="4"/></package><counter type="INSTRUCTION" missed="11" covered="86"/><counter type="BRANCH" missed="2" covered="6"/><counter type="LINE" missed="3" covered="26"/><counter type="COMPLEXITY" missed="3" covered="16"/><counter type="METHOD" missed="1" covered="14"/><counter type="CLASS" missed="0" covered="4"/></report>
    \ No newline at end of file
    diff --git a/target/surefire-reports/CatTest.txt b/target/surefire-reports/CatTest.txt
    new file mode 100644
    index 0000000..580de0e
    --- /dev/null
    +++ b/target/surefire-reports/CatTest.txt
    @@ -0,0 +1,4 @@
    +-------------------------------------------------------------------------------
    +Test set: CatTest
    +-------------------------------------------------------------------------------
    +Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.905 sec
    diff --git a/target/surefire-reports/FelineTest.txt b/target/surefire-reports/FelineTest.txt
    new file mode 100644
    index 0000000..591a085
    --- /dev/null
    +++ b/target/surefire-reports/FelineTest.txt
    @@ -0,0 +1,4 @@
    +-------------------------------------------------------------------------------
    +Test set: FelineTest
    +-------------------------------------------------------------------------------
    +Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.108 sec
    diff --git a/target/surefire-reports/LionTest.txt b/target/surefire-reports/LionTest.txt
    new file mode 100644
    index 0000000..cfca8ca
    --- /dev/null
    +++ b/target/surefire-reports/LionTest.txt
    @@ -0,0 +1,4 @@
    +-------------------------------------------------------------------------------
    +Test set: LionTest
    +-------------------------------------------------------------------------------
    +Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec
    diff --git a/target/surefire-reports/TEST-CatTest.xml b/target/surefire-reports/TEST-CatTest.xml
    new file mode 100644
    index 0000000..90fedec
    --- /dev/null
    +++ b/target/surefire-reports/TEST-CatTest.xml
    @@ -0,0 +1,70 @@
    +<?xml version="1.0" encoding="UTF-8" ?>
    +<testsuite tests="2" failures="0" name="CatTest" time="2.568" errors="0" skipped="0">
    +  <properties>
    +    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    +    <property name="java.vm.version" value="11.0.16.1+9-LTS"/>
    +    <property name="sun.boot.library.path" value="C:\Program Files\Amazon Corretto\jdk11.0.16_9\bin"/>
    +    <property name="maven.multiModuleProjectDirectory" value="C:\projects\qa_java"/>
    +    <property name="java.vm.vendor" value="Amazon.com Inc."/>
    +    <property name="java.vendor.url" value="https://aws.amazon.com/corretto/"/>
    +    <property name="guice.disable.misplaced.annotation.check" value="true"/>
    +    <property name="path.separator" value=";"/>
    +    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    +    <property name="sun.os.patch.level" value=""/>
    +    <property name="user.script" value=""/>
    +    <property name="user.country" value="RU"/>
    +    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    +    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    +    <property name="user.dir" value="C:\projects\qa_java"/>
    +    <property name="java.vm.compressedOopsMode" value="32-bit"/>
    +    <property name="java.runtime.version" value="11.0.16.1+9-LTS"/>
    +    <property name="java.awt.graphicsenv" value="sun.awt.Win32GraphicsEnvironment"/>
    +    <property name="os.arch" value="amd64"/>
    +    <property name="java.io.tmpdir" value="C:\Users\134E~1\AppData\Local\Temp\"/>
    +    <property name="line.separator" value="
    +"/>
    +    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    +    <property name="user.variant" value=""/>
    +    <property name="os.name" value="Windows 10"/>
    +    <property name="classworlds.conf" value="C:\Program Files\apache-maven-3.8.6\bin\m2.conf"/>
    +    <property name="sun.jnu.encoding" value="Cp1251"/>
    +    <property name="java.library.path" value="C:\Program Files\Amazon Corretto\jdk11.0.16_9\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\apache-maven-3.8.6\bin;C:\Program Files\Amazon Corretto\jdk11.0.16_9\bin;C:\ProgramData\Oracle\Java\javapath;c:\Program Files (x86)\Intel\iCLS Client\;c:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;c:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\Skype\Phone\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\apache-maven-3.8.6\bin;C:\Users\Ольга\AppData\Local\Programs\Python\Python38-32\;C:\Users\Ольга\AppData\Local\Microsoft\WindowsApps;C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2022.2.2\bin;;C:\Users\Ольга\AppData\Local\Programs\Python\Python38-32\Scripts\;C:\Users\Ольга\WebDriver\bin;;."/>
    +    <property name="maven.conf" value="C:\Program Files\apache-maven-3.8.6/conf"/>
    +    <property name="jdk.debug" value="release"/>
    +    <property name="java.class.version" value="55.0"/>
    +    <property name="java.specification.name" value="Java Platform API Specification"/>
    +    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    +    <property name="os.version" value="10.0"/>
    +    <property name="library.jansi.path" value="C:\Program Files\apache-maven-3.8.6\lib\jansi-native"/>
    +    <property name="user.home" value="C:\Users\Ольга"/>
    +    <property name="user.timezone" value="GMT+06:00"/>
    +    <property name="java.awt.printerjob" value="sun.awt.windows.WPrinterJob"/>
    +    <property name="file.encoding" value="Cp1251"/>
    +    <property name="java.specification.version" value="11"/>
    +    <property name="user.name" value="Ольга"/>
    +    <property name="java.class.path" value="C:\Program Files\apache-maven-3.8.6\boot\plexus-classworlds-2.6.0.jar"/>
    +    <property name="java.vm.specification.version" value="11"/>
    +    <property name="sun.arch.data.model" value="64"/>
    +    <property name="sun.java.command" value="org.codehaus.plexus.classworlds.launcher.Launcher clean jacoco:prepare-agent test jacoco:report"/>
    +    <property name="java.home" value="C:\Program Files\Amazon Corretto\jdk11.0.16_9"/>
    +    <property name="user.language" value="ru"/>
    +    <property name="java.specification.vendor" value="Oracle Corporation"/>
    +    <property name="awt.toolkit" value="sun.awt.windows.WToolkit"/>
    +    <property name="java.vm.info" value="mixed mode"/>
    +    <property name="java.version" value="11.0.16.1"/>
    +    <property name="java.vendor" value="Amazon.com Inc."/>
    +    <property name="sun.stderr.encoding" value="cp866"/>
    +    <property name="maven.home" value="C:\Program Files\apache-maven-3.8.6"/>
    +    <property name="file.separator" value="\"/>
    +    <property name="java.version.date" value="2022-08-12"/>
    +    <property name="java.vendor.url.bug" value="https://github.com/corretto/corretto-11/issues/"/>
    +    <property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
    +    <property name="sun.cpu.endian" value="little"/>
    +    <property name="java.vendor.version" value="Corretto-11.0.16.9.1"/>
    +    <property name="sun.stdout.encoding" value="cp866"/>
    +    <property name="sun.desktop" value="windows"/>
    +    <property name="sun.cpu.isalist" value="amd64"/>
    +  </properties>
    +  <testcase classname="CatTest" name="getCatSoundTest" time="2.468"/>
    +  <testcase classname="CatTest" name="getCatFoodTest" time="0.1"/>
    +</testsuite>
    \ No newline at end of file
    diff --git a/target/surefire-reports/TEST-FelineTest.xml b/target/surefire-reports/TEST-FelineTest.xml
    new file mode 100644
    index 0000000..2df2a16
    --- /dev/null
    +++ b/target/surefire-reports/TEST-FelineTest.xml
    @@ -0,0 +1,77 @@
    +<?xml version="1.0" encoding="UTF-8" ?>
    +<testsuite tests="9" failures="0" name="FelineTest" time="0.072" errors="0" skipped="0">
    +  <properties>
    +    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    +    <property name="java.vm.version" value="11.0.16.1+9-LTS"/>
    +    <property name="sun.boot.library.path" value="C:\Program Files\Amazon Corretto\jdk11.0.16_9\bin"/>
    +    <property name="maven.multiModuleProjectDirectory" value="C:\projects\qa_java"/>
    +    <property name="java.vm.vendor" value="Amazon.com Inc."/>
    +    <property name="java.vendor.url" value="https://aws.amazon.com/corretto/"/>
    +    <property name="guice.disable.misplaced.annotation.check" value="true"/>
    +    <property name="path.separator" value=";"/>
    +    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    +    <property name="sun.os.patch.level" value=""/>
    +    <property name="user.script" value=""/>
    +    <property name="user.country" value="RU"/>
    +    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    +    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    +    <property name="user.dir" value="C:\projects\qa_java"/>
    +    <property name="java.vm.compressedOopsMode" value="32-bit"/>
    +    <property name="java.runtime.version" value="11.0.16.1+9-LTS"/>
    +    <property name="java.awt.graphicsenv" value="sun.awt.Win32GraphicsEnvironment"/>
    +    <property name="os.arch" value="amd64"/>
    +    <property name="java.io.tmpdir" value="C:\Users\134E~1\AppData\Local\Temp\"/>
    +    <property name="line.separator" value="
    +"/>
    +    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    +    <property name="user.variant" value=""/>
    +    <property name="os.name" value="Windows 10"/>
    +    <property name="classworlds.conf" value="C:\Program Files\apache-maven-3.8.6\bin\m2.conf"/>
    +    <property name="sun.jnu.encoding" value="Cp1251"/>
    +    <property name="java.library.path" value="C:\Program Files\Amazon Corretto\jdk11.0.16_9\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\apache-maven-3.8.6\bin;C:\Program Files\Amazon Corretto\jdk11.0.16_9\bin;C:\ProgramData\Oracle\Java\javapath;c:\Program Files (x86)\Intel\iCLS Client\;c:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;c:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\Skype\Phone\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\apache-maven-3.8.6\bin;C:\Users\Ольга\AppData\Local\Programs\Python\Python38-32\;C:\Users\Ольга\AppData\Local\Microsoft\WindowsApps;C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2022.2.2\bin;;C:\Users\Ольга\AppData\Local\Programs\Python\Python38-32\Scripts\;C:\Users\Ольга\WebDriver\bin;;."/>
    +    <property name="maven.conf" value="C:\Program Files\apache-maven-3.8.6/conf"/>
    +    <property name="jdk.debug" value="release"/>
    +    <property name="java.class.version" value="55.0"/>
    +    <property name="java.specification.name" value="Java Platform API Specification"/>
    +    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    +    <property name="os.version" value="10.0"/>
    +    <property name="library.jansi.path" value="C:\Program Files\apache-maven-3.8.6\lib\jansi-native"/>
    +    <property name="user.home" value="C:\Users\Ольга"/>
    +    <property name="user.timezone" value="GMT+06:00"/>
    +    <property name="java.awt.printerjob" value="sun.awt.windows.WPrinterJob"/>
    +    <property name="file.encoding" value="Cp1251"/>
    +    <property name="java.specification.version" value="11"/>
    +    <property name="user.name" value="Ольга"/>
    +    <property name="java.class.path" value="C:\Program Files\apache-maven-3.8.6\boot\plexus-classworlds-2.6.0.jar"/>
    +    <property name="java.vm.specification.version" value="11"/>
    +    <property name="sun.arch.data.model" value="64"/>
    +    <property name="sun.java.command" value="org.codehaus.plexus.classworlds.launcher.Launcher clean jacoco:prepare-agent test jacoco:report"/>
    +    <property name="java.home" value="C:\Program Files\Amazon Corretto\jdk11.0.16_9"/>
    +    <property name="user.language" value="ru"/>
    +    <property name="java.specification.vendor" value="Oracle Corporation"/>
    +    <property name="awt.toolkit" value="sun.awt.windows.WToolkit"/>
    +    <property name="java.vm.info" value="mixed mode"/>
    +    <property name="java.version" value="11.0.16.1"/>
    +    <property name="java.vendor" value="Amazon.com Inc."/>
    +    <property name="sun.stderr.encoding" value="cp866"/>
    +    <property name="maven.home" value="C:\Program Files\apache-maven-3.8.6"/>
    +    <property name="file.separator" value="\"/>
    +    <property name="java.version.date" value="2022-08-12"/>
    +    <property name="java.vendor.url.bug" value="https://github.com/corretto/corretto-11/issues/"/>
    +    <property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
    +    <property name="sun.cpu.endian" value="little"/>
    +    <property name="java.vendor.version" value="Corretto-11.0.16.9.1"/>
    +    <property name="sun.stdout.encoding" value="cp866"/>
    +    <property name="sun.desktop" value="windows"/>
    +    <property name="sun.cpu.isalist" value="amd64"/>
    +  </properties>
    +  <testcase classname="FelineTest" name="getFelineKittens[0]" time="0.007"/>
    +  <testcase classname="FelineTest" name="eatFelineMeat[0]" time="0.002"/>
    +  <testcase classname="FelineTest" name="getFelineFamily[0]" time="0.049"/>
    +  <testcase classname="FelineTest" name="getFelineKittens[1]" time="0.006"/>
    +  <testcase classname="FelineTest" name="eatFelineMeat[1]" time="0.001"/>
    +  <testcase classname="FelineTest" name="getFelineFamily[1]" time="0.001"/>
    +  <testcase classname="FelineTest" name="getFelineKittens[2]" time="0.001"/>
    +  <testcase classname="FelineTest" name="eatFelineMeat[2]" time="0.002"/>
    +  <testcase classname="FelineTest" name="getFelineFamily[2]" time="0.003"/>
    +</testsuite>
    \ No newline at end of file
    diff --git a/target/surefire-reports/TEST-LionTest.xml b/target/surefire-reports/TEST-LionTest.xml
    new file mode 100644
    index 0000000..c736e2f
    --- /dev/null
    +++ b/target/surefire-reports/TEST-LionTest.xml
    @@ -0,0 +1,73 @@
    +<?xml version="1.0" encoding="UTF-8" ?>
    +<testsuite tests="5" failures="0" name="LionTest" time="0" errors="0" skipped="0">
    +  <properties>
    +    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    +    <property name="java.vm.version" value="11.0.16.1+9-LTS"/>
    +    <property name="sun.boot.library.path" value="C:\Program Files\Amazon Corretto\jdk11.0.16_9\bin"/>
    +    <property name="maven.multiModuleProjectDirectory" value="C:\projects\qa_java"/>
    +    <property name="java.vm.vendor" value="Amazon.com Inc."/>
    +    <property name="java.vendor.url" value="https://aws.amazon.com/corretto/"/>
    +    <property name="guice.disable.misplaced.annotation.check" value="true"/>
    +    <property name="path.separator" value=";"/>
    +    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    +    <property name="sun.os.patch.level" value=""/>
    +    <property name="user.script" value=""/>
    +    <property name="user.country" value="RU"/>
    +    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    +    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    +    <property name="user.dir" value="C:\projects\qa_java"/>
    +    <property name="java.vm.compressedOopsMode" value="32-bit"/>
    +    <property name="java.runtime.version" value="11.0.16.1+9-LTS"/>
    +    <property name="java.awt.graphicsenv" value="sun.awt.Win32GraphicsEnvironment"/>
    +    <property name="os.arch" value="amd64"/>
    +    <property name="java.io.tmpdir" value="C:\Users\134E~1\AppData\Local\Temp\"/>
    +    <property name="line.separator" value="
    +"/>
    +    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    +    <property name="user.variant" value=""/>
    +    <property name="os.name" value="Windows 10"/>
    +    <property name="classworlds.conf" value="C:\Program Files\apache-maven-3.8.6\bin\m2.conf"/>
    +    <property name="sun.jnu.encoding" value="Cp1251"/>
    +    <property name="java.library.path" value="C:\Program Files\Amazon Corretto\jdk11.0.16_9\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\apache-maven-3.8.6\bin;C:\Program Files\Amazon Corretto\jdk11.0.16_9\bin;C:\ProgramData\Oracle\Java\javapath;c:\Program Files (x86)\Intel\iCLS Client\;c:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;c:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\Skype\Phone\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\apache-maven-3.8.6\bin;C:\Users\Ольга\AppData\Local\Programs\Python\Python38-32\;C:\Users\Ольга\AppData\Local\Microsoft\WindowsApps;C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2022.2.2\bin;;C:\Users\Ольга\AppData\Local\Programs\Python\Python38-32\Scripts\;C:\Users\Ольга\WebDriver\bin;;."/>
    +    <property name="maven.conf" value="C:\Program Files\apache-maven-3.8.6/conf"/>
    +    <property name="jdk.debug" value="release"/>
    +    <property name="java.class.version" value="55.0"/>
    +    <property name="java.specification.name" value="Java Platform API Specification"/>
    +    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    +    <property name="os.version" value="10.0"/>
    +    <property name="library.jansi.path" value="C:\Program Files\apache-maven-3.8.6\lib\jansi-native"/>
    +    <property name="user.home" value="C:\Users\Ольга"/>
    +    <property name="user.timezone" value="GMT+06:00"/>
    +    <property name="java.awt.printerjob" value="sun.awt.windows.WPrinterJob"/>
    +    <property name="file.encoding" value="Cp1251"/>
    +    <property name="java.specification.version" value="11"/>
    +    <property name="user.name" value="Ольга"/>
    +    <property name="java.class.path" value="C:\Program Files\apache-maven-3.8.6\boot\plexus-classworlds-2.6.0.jar"/>
    +    <property name="java.vm.specification.version" value="11"/>
    +    <property name="sun.arch.data.model" value="64"/>
    +    <property name="sun.java.command" value="org.codehaus.plexus.classworlds.launcher.Launcher clean jacoco:prepare-agent test jacoco:report"/>
    +    <property name="java.home" value="C:\Program Files\Amazon Corretto\jdk11.0.16_9"/>
    +    <property name="user.language" value="ru"/>
    +    <property name="java.specification.vendor" value="Oracle Corporation"/>
    +    <property name="awt.toolkit" value="sun.awt.windows.WToolkit"/>
    +    <property name="java.vm.info" value="mixed mode"/>
    +    <property name="java.version" value="11.0.16.1"/>
    +    <property name="java.vendor" value="Amazon.com Inc."/>
    +    <property name="sun.stderr.encoding" value="cp866"/>
    +    <property name="maven.home" value="C:\Program Files\apache-maven-3.8.6"/>
    +    <property name="file.separator" value="\"/>
    +    <property name="java.version.date" value="2022-08-12"/>
    +    <property name="java.vendor.url.bug" value="https://github.com/corretto/corretto-11/issues/"/>
    +    <property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
    +    <property name="sun.cpu.endian" value="little"/>
    +    <property name="java.vendor.version" value="Corretto-11.0.16.9.1"/>
    +    <property name="sun.stdout.encoding" value="cp866"/>
    +    <property name="sun.desktop" value="windows"/>
    +    <property name="sun.cpu.isalist" value="amd64"/>
    +  </properties>
    +  <testcase classname="LionTest" name="getLionKittensTest" time="0"/>
    +  <testcase classname="LionTest" name="doesHaveManeFemale" time="0"/>
    +  <testcase classname="LionTest" name="doesHaveManeMale" time="0"/>
    +  <testcase classname="LionTest" name="doesHaveManeException" time="0"/>
    +  <testcase classname="LionTest" name="getLionFoodTest" time="0"/>
    +</testsuite>
    \ No newline at end of file
    
    From 975e93384863ded4fdab877348d9cf12cf523467 Mon Sep 17 00:00:00 2001
    From: Olga Stogova <adelikade@gmail.com>
    Date: Wed, 15 Feb 2023 19:47:31 +0600
    Subject: [PATCH 2/4] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D0=BB=D0=B0=20?=
     =?UTF-8?q?=D0=BF=D0=B0=D1=80=D0=B0=D0=BC=D0=B5=D1=82=D1=80=D0=B8=D0=B7?=
     =?UTF-8?q?=D0=B0=D1=86=D0=B8=D1=8E=20=D0=B8=D0=B7=20FelineTest.java=20?=
     =?UTF-8?q?=D0=B8=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=D0=B0=20?=
     =?UTF-8?q?=D0=B2=20LionTest.java,=20=D1=83=D0=B4=D0=B0=D0=BB=D0=B8=D0=BB?=
     =?UTF-8?q?=D0=B0=20xml-=D1=84=D0=B0=D0=B9=D0=BB=D1=8B=20=D0=B8=D0=B7=20.i?=
     =?UTF-8?q?dea=20=D0=B8=D0=B7=20=D0=BE=D1=82=D1=81=D0=BB=D0=B5=D0=B6=D0=B8?=
     =?UTF-8?q?=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F?=
    MIME-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    
    ---
     .idea/compiler.xml                      |  14 ---
     .idea/jarRepositories.xml               |  20 ----
     .idea/misc.xml                          |  12 ---
     .idea/uiDesigner.xml                    | 124 ------------------------
     .idea/vcs.xml                           |   6 --
     src/main/java/com/example/Feline.java   |   3 +-
     src/main/java/com/example/Predator.java |   2 +-
     src/test/java/FelineTest.java           |  52 ++--------
     src/test/java/LionTest.java             |  19 +++-
     9 files changed, 26 insertions(+), 226 deletions(-)
     delete mode 100644 .idea/compiler.xml
     delete mode 100644 .idea/jarRepositories.xml
     delete mode 100644 .idea/misc.xml
     delete mode 100644 .idea/uiDesigner.xml
     delete mode 100644 .idea/vcs.xml
    
    diff --git a/.idea/compiler.xml b/.idea/compiler.xml
    deleted file mode 100644
    index 3c3f603..0000000
    --- a/.idea/compiler.xml
    +++ /dev/null
    @@ -1,14 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<project version="4">
    -  <component name="CompilerConfiguration">
    -    <annotationProcessing>
    -      <profile name="Maven default annotation processors profile" enabled="true">
    -        <sourceOutputDir name="target/generated-sources/annotations" />
    -        <sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
    -        <outputRelativeToContentRoot value="true" />
    -        <module name="untitled" />
    -        <module name="qa_java" />
    -      </profile>
    -    </annotationProcessing>
    -  </component>
    -</project>
    \ No newline at end of file
    diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
    deleted file mode 100644
    index 712ab9d..0000000
    --- a/.idea/jarRepositories.xml
    +++ /dev/null
    @@ -1,20 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<project version="4">
    -  <component name="RemoteRepositoriesConfiguration">
    -    <remote-repository>
    -      <option name="id" value="central" />
    -      <option name="name" value="Central Repository" />
    -      <option name="url" value="https://repo.maven.apache.org/maven2" />
    -    </remote-repository>
    -    <remote-repository>
    -      <option name="id" value="central" />
    -      <option name="name" value="Maven Central repository" />
    -      <option name="url" value="https://repo1.maven.org/maven2" />
    -    </remote-repository>
    -    <remote-repository>
    -      <option name="id" value="jboss.community" />
    -      <option name="name" value="JBoss Community repository" />
    -      <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
    -    </remote-repository>
    -  </component>
    -</project>
    \ No newline at end of file
    diff --git a/.idea/misc.xml b/.idea/misc.xml
    deleted file mode 100644
    index aa6bab1..0000000
    --- a/.idea/misc.xml
    +++ /dev/null
    @@ -1,12 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<project version="4">
    -  <component name="ExternalStorageConfigurationManager" enabled="true" />
    -  <component name="MavenProjectsManager">
    -    <option name="originalFiles">
    -      <list>
    -        <option value="$PROJECT_DIR$/pom.xml" />
    -      </list>
    -    </option>
    -  </component>
    -  <component name="ProjectRootManager" version="2" languageLevel="JDK_19" project-jdk-name="corretto-19" project-jdk-type="JavaSDK" />
    -</project>
    \ No newline at end of file
    diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml
    deleted file mode 100644
    index 2b63946..0000000
    --- a/.idea/uiDesigner.xml
    +++ /dev/null
    @@ -1,124 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<project version="4">
    -  <component name="Palette2">
    -    <group name="Swing">
    -      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
    -        <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
    -      </item>
    -      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
    -        <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
    -      </item>
    -      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.svg" removable="false" auto-create-binding="false" can-attach-label="false">
    -        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
    -      </item>
    -      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.svg" removable="false" auto-create-binding="false" can-attach-label="true">
    -        <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
    -      </item>
    -      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.svg" removable="false" auto-create-binding="true" can-attach-label="false">
    -        <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
    -        <initial-values>
    -          <property name="text" value="Button" />
    -        </initial-values>
    -      </item>
    -      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.svg" removable="false" auto-create-binding="true" can-attach-label="false">
    -        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
    -        <initial-values>
    -          <property name="text" value="RadioButton" />
    -        </initial-values>
    -      </item>
    -      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.svg" removable="false" auto-create-binding="true" can-attach-label="false">
    -        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
    -        <initial-values>
    -          <property name="text" value="CheckBox" />
    -        </initial-values>
    -      </item>
    -      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.svg" removable="false" auto-create-binding="false" can-attach-label="false">
    -        <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
    -        <initial-values>
    -          <property name="text" value="Label" />
    -        </initial-values>
    -      </item>
    -      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
    -        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
    -          <preferred-size width="150" height="-1" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
    -        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
    -          <preferred-size width="150" height="-1" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
    -        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
    -          <preferred-size width="150" height="-1" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.svg" removable="false" auto-create-binding="true" can-attach-label="true">
    -        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
    -          <preferred-size width="150" height="50" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
    -        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
    -          <preferred-size width="150" height="50" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
    -        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
    -          <preferred-size width="150" height="50" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.svg" removable="false" auto-create-binding="true" can-attach-label="true">
    -        <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
    -      </item>
    -      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.svg" removable="false" auto-create-binding="true" can-attach-label="false">
    -        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
    -          <preferred-size width="150" height="50" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.svg" removable="false" auto-create-binding="true" can-attach-label="false">
    -        <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
    -          <preferred-size width="150" height="50" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.svg" removable="false" auto-create-binding="true" can-attach-label="false">
    -        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
    -          <preferred-size width="150" height="50" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.svg" removable="false" auto-create-binding="true" can-attach-label="false">
    -        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
    -          <preferred-size width="200" height="200" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.svg" removable="false" auto-create-binding="false" can-attach-label="false">
    -        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
    -          <preferred-size width="200" height="200" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.svg" removable="false" auto-create-binding="true" can-attach-label="true">
    -        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
    -      </item>
    -      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.svg" removable="false" auto-create-binding="true" can-attach-label="false">
    -        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
    -      </item>
    -      <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
    -        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
    -      </item>
    -      <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
    -        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
    -      </item>
    -      <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.svg" removable="false" auto-create-binding="false" can-attach-label="false">
    -        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
    -          <preferred-size width="-1" height="20" />
    -        </default-constraints>
    -      </item>
    -      <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
    -        <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
    -      </item>
    -      <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
    -        <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
    -      </item>
    -    </group>
    -  </component>
    -</project>
    \ No newline at end of file
    diff --git a/.idea/vcs.xml b/.idea/vcs.xml
    deleted file mode 100644
    index 35eb1dd..0000000
    --- a/.idea/vcs.xml
    +++ /dev/null
    @@ -1,6 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<project version="4">
    -  <component name="VcsDirectoryMappings">
    -    <mapping directory="" vcs="Git" />
    -  </component>
    -</project>
    \ No newline at end of file
    diff --git a/src/main/java/com/example/Feline.java b/src/main/java/com/example/Feline.java
    index 1130b5e..ac0f653 100644
    --- a/src/main/java/com/example/Feline.java
    +++ b/src/main/java/com/example/Feline.java
    @@ -4,6 +4,7 @@
     
     public class Feline extends Animal implements Predator {
     
    +
         @Override
         public List<String> eatMeat() throws Exception {
             return getFood("Хищник");
    @@ -22,4 +23,4 @@ public int getKittens(int kittensCount) {
             return kittensCount;
         }
     
    -}
    +}
    \ No newline at end of file
    diff --git a/src/main/java/com/example/Predator.java b/src/main/java/com/example/Predator.java
    index 02e6cfd..a11b577 100644
    --- a/src/main/java/com/example/Predator.java
    +++ b/src/main/java/com/example/Predator.java
    @@ -6,4 +6,4 @@ public interface Predator {
     
         List<String> eatMeat() throws Exception;
     
    -}
    +}
    \ No newline at end of file
    diff --git a/src/test/java/FelineTest.java b/src/test/java/FelineTest.java
    index c1609eb..4c855f6 100644
    --- a/src/test/java/FelineTest.java
    +++ b/src/test/java/FelineTest.java
    @@ -1,73 +1,33 @@
     import com.example.Feline;
    -import org.junit.Before;
    +import org.junit.Assert;
     import org.junit.Test;
    -import org.junit.runner.RunWith;
    -import org.junit.runners.Parameterized;
    -import org.mockito.MockitoAnnotations;
     
     import java.util.List;
    -import java.util.Objects;
     
     import static org.junit.Assert.assertEquals;
     
    -@RunWith(Parameterized.class)
     public class FelineTest {
    -    private final List<String> felineFood;
    -    private final String felineFamily;
    -    private final int felineKittens;
    -    private final boolean expectedResult;
     
    -    public FelineTest(List<String> felineFood, String felineFamily, int felineKittens, boolean expectedResult) {
    -        this.felineFood = felineFood;
    -        this.felineFamily = felineFamily;
    -        this.felineKittens = felineKittens;
    -        this.expectedResult = expectedResult;
    -
    -    }
    -
    -    @Parameterized.Parameters
    -
    -    public static Object[][] getFelineTestData() {
    -        return new Object[][]{
    -                {List.of("Животные", "Птицы", "Рыба"), "Кошачьи", 1, true},
    -                {List.of("Трава", "Различные растения"), "Еноты", 122, false},
    -                {List.of("1", "2"), "2", 0, false},
    -        };
    -    }
    -
    -    @Before
    -    public void init() {
    -        MockitoAnnotations.initMocks(this);
    -    }
     
         @Test
    -    public void eatFelineMeat() throws Exception {
    +    public void getFelineFood() throws Exception {
             Feline feline = new Feline();
    -        List<String> actualFood = feline.eatMeat();
    -        boolean actualResult = felineFood.equals(actualFood);
    -        assertEquals("Кошачьи едят мясо", expectedResult, actualResult);
    -        System.out.println("Результат выполнения теста:");
    -        System.out.println(actualResult == expectedResult);
    +        List<String> actualFood = List.of("Животные", "Птицы", "Рыба");
    +        Assert.assertEquals(actualFood, feline.getFood("Хищник"));
         }
     
         @Test
         public void getFelineFamily() {
             Feline feline = new Feline();
             String actualFamily = feline.getFamily();
    -        boolean actualResult = felineFamily.equals(actualFamily);
    -        assertEquals("Должно быть семейство кошачьих", expectedResult, actualResult);
    -        System.out.println("Результат выполнения теста:");
    -        System.out.println(actualResult == expectedResult);
    +        assertEquals("Кошачьи", actualFamily);
         }
     
         @Test
         public void getFelineKittens() {
             Feline feline = new Feline();
             int actualKittens = feline.getKittens();
    -        boolean actualResult = Objects.equals(felineKittens, actualKittens);
    -        assertEquals("У кошачьих 1 котенок", expectedResult, actualResult);
    -        System.out.println("Результат выполнения теста:");
    -        System.out.println(actualResult == expectedResult);
    +        assertEquals(1, actualKittens);
         }
     }
     
    diff --git a/src/test/java/LionTest.java b/src/test/java/LionTest.java
    index 7b5ba43..9b65410 100644
    --- a/src/test/java/LionTest.java
    +++ b/src/test/java/LionTest.java
    @@ -3,18 +3,33 @@
     import org.junit.Assert;
     import org.junit.Before;
     import org.junit.Test;
    +import org.junit.runner.RunWith;
    +import org.junit.runners.Parameterized;
     import org.mockito.Mock;
     import org.mockito.Mockito;
     import org.mockito.MockitoAnnotations;
     
    +import java.util.Arrays;
     import java.util.List;
     
    +@RunWith(Parameterized.class)
     public class LionTest {
    -    public int expectedLionResult;
    +
    +    @Parameterized.Parameter(0)
         public int numberOfKittens;
    +    @Parameterized.Parameter(1)
    +    public int expectedLionResult;
         @Mock
         Feline feline;
     
    +    @Parameterized.Parameters(name = "{index}: {0}-{1}")
    +    public static Iterable<Object[]> data() {
    +        return Arrays.asList(new Object[][]{
    +                {1, 1},
    +                {2, 2}
    +        });
    +    }
    +
         @Before
         public void init() {
             MockitoAnnotations.initMocks(this);
    @@ -29,7 +44,7 @@ public void getLionKittensTest() throws Exception {
     
         @Test
         public void getLionFoodTest() throws Exception {
    -        Lion lion = new Lion("Самец", feline);
    +        Lion lion = new Lion("Самка", feline);
             List<String> food = List.of("Животные", "Птицы", "Рыба");
             Mockito.when(feline.getFood("Хищник")).thenReturn(food);
             Assert.assertEquals(food, lion.getFood());
    
    From 2740e5bad6f7eaccacba34062d051f4be552d19a Mon Sep 17 00:00:00 2001
    From: Olga Stogova <adelikade@gmail.com>
    Date: Thu, 16 Feb 2023 23:43:06 +0600
    Subject: [PATCH 3/4] =?UTF-8?q?=D0=92=D1=8B=D0=BD=D0=B5=D1=81=D0=BB=D0=B0?=
     =?UTF-8?q?=20=D0=BD=D0=B5=D0=BF=D0=B0=D1=80=D0=B0=D0=BC=D0=B5=D1=82=D1=80?=
     =?UTF-8?q?=D0=B8=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=D0=BD=D1=8B=D0=B5=20=D1=82?=
     =?UTF-8?q?=D0=B5=D1=81=D1=82=D1=8B=20=D0=B2=20=D0=B4=D1=80=D1=83=D0=B3?=
     =?UTF-8?q?=D0=BE=D0=B9=20=D0=BA=D0=BB=D0=B0=D1=81=D1=81=20=D0=B8=20=D1=83?=
     =?UTF-8?q?=D0=B1=D1=80=D0=B0=D0=BB=D0=B0=20=D0=BF=D0=B0=D1=80=D0=B0=D0=BC?=
     =?UTF-8?q?=D0=B5=D1=82=D1=80.=20=D0=9E=D1=87=D0=B5=D0=BD=D1=8C=20=D0=B1?=
     =?UTF-8?q?=D0=BE=D0=BB=D1=8C=D1=88=D0=B0=D1=8F=20=D0=BF=D1=80=D0=BE=D1=81?=
     =?UTF-8?q?=D1=8C=D0=B1=D0=B0,=20=D0=B5=D1=81=D0=BB=D0=B8=20=D0=BD=D0=B5?=
     =?UTF-8?q?=D1=82=20=D0=BA=D1=80=D0=B8=D1=82=D0=B8=D1=87=D0=BD=D1=8B=D1=85?=
     =?UTF-8?q?=20=D0=B7=D0=B0=D0=BC=D0=B5=D1=87=D0=B0=D0=BD=D0=B8=D0=B9,=20?=
     =?UTF-8?q?=D0=BF=D1=80=D0=B8=D0=BD=D1=8F=D1=82=D1=8C=20=D1=80=D0=B0=D0=B1?=
     =?UTF-8?q?=D0=BE=D1=82=D1=83:=D0=BA=20=D1=81=D0=BE=D0=B6=D0=B0=D0=BB?=
     =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D1=8E,=20=D0=B8=D0=BD=D0=B0=D1=87=D0=B5=20?=
     =?UTF-8?q?=D0=BC=D0=BD=D0=B5=20=D0=BD=D0=B5=D0=B4=D0=BE=D1=81=D1=82=D1=83?=
     =?UTF-8?q?=D0=BF=D0=B5=D0=BD=20=D1=81=D0=BB=D0=B5=D0=B4=D1=83=D1=8E=D1=89?=
     =?UTF-8?q?=D0=B8=D0=B9=20=D1=84=D0=B8=D0=BD=D0=B0=D0=BB=D1=8C=D0=BD=D1=8B?=
     =?UTF-8?q?=D0=B9=20=D0=BF=D1=80=D0=BE=D0=B5=D0=BA=D1=82,=20=D0=B4=D0=B5?=
     =?UTF-8?q?=D0=B4=D0=BB=D0=B0=D0=B9=D0=BD=20=D0=BF=D0=BE=20=D0=BA=D0=BE?=
     =?UTF-8?q?=D1=82=D0=BE=D1=80=D0=BE=D0=BC=D1=83=20=D0=BD=D0=B0=20=D1=8D?=
     =?UTF-8?q?=D1=82=D0=BE=D0=B9=20=D0=BD=D0=B5=D0=B4=D0=B5=D0=BB=D0=B5.?=
    MIME-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    
    ---
     src/test/java/LionParametrizedTest.java | 42 +++++++++++++++++++++++++
     src/test/java/LionTest.java             | 23 +-------------
     2 files changed, 43 insertions(+), 22 deletions(-)
     create mode 100644 src/test/java/LionParametrizedTest.java
    
    diff --git a/src/test/java/LionParametrizedTest.java b/src/test/java/LionParametrizedTest.java
    new file mode 100644
    index 0000000..590cb9e
    --- /dev/null
    +++ b/src/test/java/LionParametrizedTest.java
    @@ -0,0 +1,42 @@
    +import com.example.Feline;
    +import com.example.Lion;
    +import org.junit.Assert;
    +import org.junit.Before;
    +import org.junit.Test;
    +import org.junit.runner.RunWith;
    +import org.junit.runners.Parameterized;
    +import org.mockito.Mock;
    +import org.mockito.Mockito;
    +import org.mockito.MockitoAnnotations;
    +
    +import java.util.Arrays;
    +
    +@RunWith(Parameterized.class)
    +public class LionParametrizedTest {
    +
    +    @Parameterized.Parameter(0)
    +    public int numberOfKittens;
    +    @Parameterized.Parameter(1)
    +    public int expectedLionResult;
    +    @Mock
    +    Feline feline;
    +
    +    @Parameterized.Parameters(name = "{index}: {0}-{1}")
    +    public static Iterable<Object[]> data() {
    +        return Arrays.asList(new Object[][]{
    +                {1, 1}
    +        });
    +    }
    +
    +    @Before
    +    public void init() {
    +        MockitoAnnotations.initMocks(this);
    +    }
    +
    +    @Test
    +    public void getLionKittensTest() throws Exception {
    +        Lion lion = new Lion("Самка", feline);
    +        Mockito.when(feline.getKittens()).thenReturn(numberOfKittens);
    +        Assert.assertEquals(expectedLionResult, lion.getKittens());
    +    }
    +}
    \ No newline at end of file
    diff --git a/src/test/java/LionTest.java b/src/test/java/LionTest.java
    index 9b65410..658f4ed 100644
    --- a/src/test/java/LionTest.java
    +++ b/src/test/java/LionTest.java
    @@ -3,45 +3,24 @@
     import org.junit.Assert;
     import org.junit.Before;
     import org.junit.Test;
    -import org.junit.runner.RunWith;
    -import org.junit.runners.Parameterized;
     import org.mockito.Mock;
     import org.mockito.Mockito;
     import org.mockito.MockitoAnnotations;
     
    -import java.util.Arrays;
     import java.util.List;
     
    -@RunWith(Parameterized.class)
    +
     public class LionTest {
     
    -    @Parameterized.Parameter(0)
    -    public int numberOfKittens;
    -    @Parameterized.Parameter(1)
    -    public int expectedLionResult;
         @Mock
         Feline feline;
     
    -    @Parameterized.Parameters(name = "{index}: {0}-{1}")
    -    public static Iterable<Object[]> data() {
    -        return Arrays.asList(new Object[][]{
    -                {1, 1},
    -                {2, 2}
    -        });
    -    }
     
         @Before
         public void init() {
             MockitoAnnotations.initMocks(this);
         }
     
    -    @Test
    -    public void getLionKittensTest() throws Exception {
    -        Lion lion = new Lion("Самка", feline);
    -        Mockito.when(feline.getKittens()).thenReturn(numberOfKittens);
    -        Assert.assertEquals(expectedLionResult, lion.getKittens());
    -    }
    -
         @Test
         public void getLionFoodTest() throws Exception {
             Lion lion = new Lion("Самка", feline);
    
    From 9f9be2650b9ab9e1047eac3406a54384a0e45751 Mon Sep 17 00:00:00 2001
    From: Olga Stogova <adelikade@gmail.com>
    Date: Fri, 17 Feb 2023 13:40:44 +0600
    Subject: [PATCH 4/4] =?UTF-8?q?=D0=9E=D0=BF=D1=82=D0=B8=D0=BC=D0=B8=D0=B7?=
     =?UTF-8?q?=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BB=D0=B0=20=D0=BF=D0=B0=D1=80?=
     =?UTF-8?q?=D0=B0=D0=BC=D0=B5=D1=82=D1=80=D0=B8=D0=B7=D0=BE=D0=B2=D0=B0?=
     =?UTF-8?q?=D0=BD=D0=BD=D1=8B=D0=B9=20=D1=82=D0=B5=D1=81=D1=82?=
    MIME-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    
    ---
     src/test/java/LionParametrizedTest.java | 19 ++++++++-----------
     1 file changed, 8 insertions(+), 11 deletions(-)
    
    diff --git a/src/test/java/LionParametrizedTest.java b/src/test/java/LionParametrizedTest.java
    index 590cb9e..4c6ca88 100644
    --- a/src/test/java/LionParametrizedTest.java
    +++ b/src/test/java/LionParametrizedTest.java
    @@ -9,23 +9,20 @@
     import org.mockito.Mockito;
     import org.mockito.MockitoAnnotations;
     
    -import java.util.Arrays;
    -
     @RunWith(Parameterized.class)
     public class LionParametrizedTest {
     
    -    @Parameterized.Parameter(0)
    +    @Parameterized.Parameter
         public int numberOfKittens;
    -    @Parameterized.Parameter(1)
    -    public int expectedLionResult;
         @Mock
         Feline feline;
     
    -    @Parameterized.Parameters(name = "{index}: {0}-{1}")
    -    public static Iterable<Object[]> data() {
    -        return Arrays.asList(new Object[][]{
    -                {1, 1}
    -        });
    +    @Parameterized.Parameters()
    +    public static Object[][] getNumberOfKittens() {
    +        return new Object[][]{
    +                {1},
    +                {2}
    +        };
         }
     
         @Before
    @@ -37,6 +34,6 @@ public void init() {
         public void getLionKittensTest() throws Exception {
             Lion lion = new Lion("Самка", feline);
             Mockito.when(feline.getKittens()).thenReturn(numberOfKittens);
    -        Assert.assertEquals(expectedLionResult, lion.getKittens());
    +        Assert.assertEquals(numberOfKittens, lion.getKittens());
         }
     }
    \ No newline at end of file