From a7758902b4bc42e7a966b2a477a5f85c50eed856 Mon Sep 17 00:00:00 2001 From: Anastasia Date: Thu, 26 Feb 2026 13:48:10 +0300 Subject: [PATCH 1/5] add jacoco report --- src/test/java/com/example/CatTest.java | 4 + src/test/java/com/example/FelineTest.java | 4 + .../com/example/LionParameterizedTest.java | 4 + src/test/java/com/example/LionTest.java | 4 + 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 | 22 + 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 | 35 + 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 + 38 files changed, 2048 insertions(+) create mode 100644 src/test/java/com/example/CatTest.java create mode 100644 src/test/java/com/example/FelineTest.java create mode 100644 src/test/java/com/example/LionParameterizedTest.java create mode 100644 src/test/java/com/example/LionTest.java 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 diff --git a/src/test/java/com/example/CatTest.java b/src/test/java/com/example/CatTest.java new file mode 100644 index 0000000..cad5fd4 --- /dev/null +++ b/src/test/java/com/example/CatTest.java @@ -0,0 +1,4 @@ +package com.example; + +public class CatTest { +} diff --git a/src/test/java/com/example/FelineTest.java b/src/test/java/com/example/FelineTest.java new file mode 100644 index 0000000..45d9f16 --- /dev/null +++ b/src/test/java/com/example/FelineTest.java @@ -0,0 +1,4 @@ +package com.example; + +public class FelineTest { +} diff --git a/src/test/java/com/example/LionParameterizedTest.java b/src/test/java/com/example/LionParameterizedTest.java new file mode 100644 index 0000000..ceae173 --- /dev/null +++ b/src/test/java/com/example/LionParameterizedTest.java @@ -0,0 +1,4 @@ +package com.example; + +public class LionParameterizedTest { +} diff --git a/src/test/java/com/example/LionTest.java b/src/test/java/com/example/LionTest.java new file mode 100644 index 0000000..617b81b --- /dev/null +++ b/src/test/java/com/example/LionTest.java @@ -0,0 +1,4 @@ +package com.example; + +public class LionTest { +} diff --git a/target/site/jacoco/com.example/Animal.html b/target/site/jacoco/com.example/Animal.html new file mode 100644 index 0000000..fc85ac3 --- /dev/null +++ b/target/site/jacoco/com.example/Animal.html @@ -0,0 +1 @@ +Animal

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..55a0a41 --- /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..81be3f8 --- /dev/null +++ b/target/site/jacoco/com.example/Cat.html @@ -0,0 +1 @@ +Cat

Cat

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total0 of 12100 %0 of 0n/a030503
Cat(Feline)6100 %n/a010301
getFood()4100 %n/a010101
getSound()2100 %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..716bfef --- /dev/null +++ b/target/site/jacoco/com.example/Cat.java.html @@ -0,0 +1,22 @@ +Cat.java

Cat.java

package com.example;
+
+import java.util.List;
+
+public class Cat {
+
+    Predator predator;
+
+    public Cat(Feline feline) {
+        this.predator = feline;
+    }
+
+    public String getSound() {
+        return "Мяу";
+    }
+
+    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..536bc78 --- /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..82e2e7e --- /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..2f27544 --- /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..820abb4 --- /dev/null +++ b/target/site/jacoco/com.example/Lion.java.html @@ -0,0 +1,35 @@ +Lion.java

Lion.java

package com.example;
+
+import java.util.List;
+
+public class Lion {
+
+    private final boolean hasMane;
+    private final 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..c58339b --- /dev/null +++ b/target/site/jacoco/com.example/index.html @@ -0,0 +1 @@ +com.example

com.example

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total11 of 9388 %2 of 875 %31932811504
Animal111659 %2250 %35371301
Lion39100 %4100 %060110401
Feline15100 %n/a05050501
Cat12100 %n/a03050301
\ 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..99a2065 --- /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 9388 %2 of 875 %31932811504
Animal.java111659 %2250 %35371301
Lion.java39100 %4100 %060110401
Feline.java15100 %n/a05050501
Cat.java12100 %n/a03050301
\ 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..8f5a613 --- /dev/null +++ b/target/site/jacoco/index.html @@ -0,0 +1 @@ +animal-project

animal-project

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total11 of 9388 %2 of 875 %31932811504
com.example118288 %2675 %31932811504
\ 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..fa9db08
    --- /dev/null
    +++ b/target/site/jacoco/jacoco-resources/sort.js
    @@ -0,0 +1,148 @@
    +/*******************************************************************************
    + * Copyright (c) 2009, 2022 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..8dd131b
    --- /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">animal-project</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">macs-MacBook-Pro.local-7e0248c2</span></td><td>26 февр. 2026 г., 13:42:33</td><td>26 февр. 2026 г., 13:42:34</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><a href="com.example/Animal.html" class="el_class">com.example.Animal</a></td><td><code>9d5b78849bac9d39</code></td></tr><tr><td><a href="com.example/Cat.html" class="el_class">com.example.Cat</a></td><td><code>dbbd95aee030da84</code></td></tr><tr><td><span class="el_class">com.example.CatTest</span></td><td><code>f9cb23c3e8bf8a5d</code></td></tr><tr><td><a href="com.example/Feline.html" class="el_class">com.example.Feline</a></td><td><code>c3b9d8fc78f396fc</code></td></tr><tr><td><span class="el_class">com.example.Feline.MockitoMock.shYnL3Pa</span></td><td><code>445f358efbc6eaee</code></td></tr><tr><td><span class="el_class">com.example.Feline.MockitoMock.shYnL3Pa.auxiliary.4nQ328s8</span></td><td><code>0eec35c7d530a84e</code></td></tr><tr><td><span class="el_class">com.example.Feline.MockitoMock.shYnL3Pa.auxiliary.Giqlg3cH</span></td><td><code>ee5606e63a6a835b</code></td></tr><tr><td><span class="el_class">com.example.Feline.MockitoMock.shYnL3Pa.auxiliary.RDNafhvV</span></td><td><code>0e2d7f2f22168f3f</code></td></tr><tr><td><span class="el_class">com.example.FelineTest</span></td><td><code>8ae10f90f4d4b8b7</code></td></tr><tr><td><a href="com.example/Lion.html" class="el_class">com.example.Lion</a></td><td><code>e9588b632352f2e6</code></td></tr><tr><td><span class="el_class">com.example.LionParameterizedTest</span></td><td><code>8c8d1dd6529e53c4</code></td></tr><tr><td><span class="el_class">com.example.LionTest</span></td><td><code>2c463d0ff27e68ad</code></td></tr><tr><td><span class="el_class">net.bytebuddy.ByteBuddy</span></td><td><code>d4e5f2084d659ff9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.ClassFileVersion</span></td><td><code>907fca1b89111e0a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.ClassFileVersion.VersionLocator.Resolver</span></td><td><code>575662f2862fb481</code></td></tr><tr><td><span class="el_class">net.bytebuddy.ClassFileVersion.VersionLocator.Unresolved</span></td><td><code>57e18b677b1a8425</code></td></tr><tr><td><span class="el_class">net.bytebuddy.NamingStrategy.AbstractBase</span></td><td><code>77e9d686c976f6e6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.NamingStrategy.Suffixing</span></td><td><code>65bfa03c85847dc9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.NamingStrategy.Suffixing.BaseNameResolver.ForUnnamedType</span></td><td><code>1fb9c5c929a4a173</code></td></tr><tr><td><span class="el_class">net.bytebuddy.NamingStrategy.SuffixingRandom</span></td><td><code>cdbdedcf0cea0a02</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache</span></td><td><code>d02df3631a17fa08</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.LookupKey</span></td><td><code>b75da15a4577d948</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.SimpleKey</span></td><td><code>99731a44c3f39c30</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.Sort</span></td><td><code>3f135d4f310abf3c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.Sort.1</span></td><td><code>3be4336e35a8cbfd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.Sort.2</span></td><td><code>5a2bb9e71930a24a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.Sort.3</span></td><td><code>5792db85826ac4ba</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.StorageKey</span></td><td><code>da984e48de27d4a8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.TypeCache.WithInlineExpunction</span></td><td><code>5c74d69cd94d649e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.asm.AsmVisitorWrapper.NoOp</span></td><td><code>a613c160b15bbc65</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.ByteCodeElement.Token.TokenList</span></td><td><code>1070489264457774</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.ModifierReviewable.AbstractBase</span></td><td><code>0b625f401d945e23</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.NamedElement.WithDescriptor</span></td><td><code>69f25e85d31086f5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.TypeVariableSource.AbstractBase</span></td><td><code>b8003891860323ce</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationDescription</span></td><td><code>7e080fcc4ab41eb1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationDescription.AbstractBase</span></td><td><code>55a8b2f7b58a15aa</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationDescription.ForLoadedAnnotation</span></td><td><code>a2b247526c4d26ca</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationList.AbstractBase</span></td><td><code>c3dca45e359b717d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationList.Empty</span></td><td><code>10e1e01ec4afb6b0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationList.Explicit</span></td><td><code>b96636e855735fc3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationList.ForLoadedAnnotations</span></td><td><code>a6be8b00fa72ab7a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationSource.Empty</span></td><td><code>034fcbd435657d97</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue</span></td><td><code>e46e60f3e4357d8a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.AbstractBase</span></td><td><code>6b46c288929d794a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant</span></td><td><code>650f7b88da7502df</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType</span></td><td><code>8683233734d98d81</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.1</span></td><td><code>ecf694f5c718a013</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.2</span></td><td><code>113fe247f14fdcdd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.3</span></td><td><code>ad40ce4c8d647d57</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.4</span></td><td><code>649136274570c878</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.5</span></td><td><code>25519a3723562b18</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.6</span></td><td><code>d0a4ee1eb78e8925</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.7</span></td><td><code>5cc6d38c7688ce9e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.8</span></td><td><code>542fa217a5fe4c51</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForConstant.PropertyDelegate.ForNonArrayType.9</span></td><td><code>9adc51229ebb26c9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForEnumerationDescription</span></td><td><code>451401174e8ca82f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForEnumerationDescription.Loaded</span></td><td><code>fda0610025cc12ff</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.ForTypeDescription</span></td><td><code>256f9475d7baab5e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.annotation.AnnotationValue.Loaded.AbstractBase</span></td><td><code>1a834bbf25c86ab4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.enumeration.EnumerationDescription.AbstractBase</span></td><td><code>36efae2fe3237ba9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.enumeration.EnumerationDescription.ForLoadedEnumeration</span></td><td><code>5b47cbeca30adac0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription</span></td><td><code>68bfcf27b64f643e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription.AbstractBase</span></td><td><code>8e18b7d4e1ceddcb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription.InDefinedShape.AbstractBase</span></td><td><code>e1174a0c69da5a57</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription.Latent</span></td><td><code>f267c31e54d89fa1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription.SignatureToken</span></td><td><code>3fabeebea84ce146</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldDescription.Token</span></td><td><code>3f20efc75bd15e42</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldList.AbstractBase</span></td><td><code>78739d279005d8a4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldList.Explicit</span></td><td><code>323b76a02a64f9a7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.field.FieldList.ForTokens</span></td><td><code>ea98dba6ef4eb758</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription</span></td><td><code>cb9472a3dd295bbd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.AbstractBase</span></td><td><code>deaeb62afc98ead8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.ForLoadedConstructor</span></td><td><code>f8e1111441309268</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.ForLoadedMethod</span></td><td><code>d9fe344c56539dc6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.InDefinedShape.AbstractBase</span></td><td><code>673ca3d2d56a4b0a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.InDefinedShape.AbstractBase.ForLoadedExecutable</span></td><td><code>db01999a48adc399</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.Latent</span></td><td><code>20e100c8a3802774</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.Latent.TypeInitializer</span></td><td><code>d5f8ea2d4fb9f2a7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.SignatureToken</span></td><td><code>5888f2557f6a88e0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.Token</span></td><td><code>a89fdbfb13002946</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.TypeSubstituting</span></td><td><code>8dc21d2e259d2c0f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodDescription.TypeToken</span></td><td><code>f7f14b8ac76ebd98</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodList.AbstractBase</span></td><td><code>b054427f9b6a48f1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodList.Explicit</span></td><td><code>b03ab4c21a93dfd0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodList.ForLoadedMethods</span></td><td><code>38bd1bf17eb05676</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodList.ForTokens</span></td><td><code>40aa960dc7616ac5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.MethodList.TypeSubstituting</span></td><td><code>f1f510557a04392e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.AbstractBase</span></td><td><code>173e1a83772e6071</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.ForLoadedParameter</span></td><td><code>8dd9bfdcb695c00c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.ForLoadedParameter.OfMethod</span></td><td><code>811597af8855d53c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.InDefinedShape.AbstractBase</span></td><td><code>717f5d8d90c005f1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.Latent</span></td><td><code>1aa2e08f2ad0d5c2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.Token</span></td><td><code>36549650fa40d54b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.Token.TypeList</span></td><td><code>1890975119bdb094</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterDescription.TypeSubstituting</span></td><td><code>6cc95e3ea064743d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.AbstractBase</span></td><td><code>6fe6f7a3a2c191ea</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.Empty</span></td><td><code>8f4a45d2f54ed28b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.Explicit.ForTypes</span></td><td><code>75d84e0b4fcd99a9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.ForLoadedExecutable</span></td><td><code>1456c072c3be7105</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.ForLoadedExecutable.OfConstructor</span></td><td><code>6d7eaa8911075319</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.ForLoadedExecutable.OfMethod</span></td><td><code>f0835708e2d15fb4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.ForTokens</span></td><td><code>b77d0ee711552f0c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.method.ParameterList.TypeSubstituting</span></td><td><code>293f1f350b97c439</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.FieldManifestation</span></td><td><code>61ed9ad5f460d425</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.ModifierContributor.Resolver</span></td><td><code>4c37457cc5fe415c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.Ownership</span></td><td><code>03978521bbedeaac</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.SynchronizationState</span></td><td><code>1ee1e76d573ad75b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.SyntheticState</span></td><td><code>0ea0b3d14a159257</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.TypeManifestation</span></td><td><code>823497b74af56cf0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.Visibility</span></td><td><code>eddec8671a9488f2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.modifier.Visibility.1</span></td><td><code>d7e383ada6123e01</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.RecordComponentList.AbstractBase</span></td><td><code>fa2d664156de0c87</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.RecordComponentList.ForTokens</span></td><td><code>b72447d1fcbe18bd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDefinition.Sort</span></td><td><code>e252ac8a021f4082</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDefinition.SuperClassIterator</span></td><td><code>dcc41092c6176f54</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription</span></td><td><code>36fd0fa20ad52135</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.AbstractBase</span></td><td><code>258559cdb4b6404f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.AbstractBase.OfSimpleType</span></td><td><code>c72c2e5e6e03df99</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.ForLoadedType</span></td><td><code>8fa35f44ace50391</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic</span></td><td><code>5601518ac3dba89e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AbstractBase</span></td><td><code>3e49593313e4528f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator</span></td><td><code>b0fc4c110c19aecd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.Chained</span></td><td><code>ce5936070db33961</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedExecutableExceptionType</span></td><td><code>83ae335cad65ee98</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedExecutableParameterType</span></td><td><code>3db4d13b1a55ffe8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedInterface</span></td><td><code>25bcc5acc7d6039e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedMethodReturnType</span></td><td><code>68fd86a349490e9d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedSuperClass</span></td><td><code>64cbe4cf03033a19</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.Delegator.Simple</span></td><td><code>58348630fb7f5660</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.ForComponentType</span></td><td><code>0f95408415168381</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.ForTypeArgument</span></td><td><code>c4c5a6817a5b11ba</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.AnnotationReader.NoOp</span></td><td><code>7d262d1efdc1a658</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection</span></td><td><code>0ee749354388952f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.ForLoadedReturnType</span></td><td><code>09e831a0a48649e7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.ForLoadedSuperClass</span></td><td><code>4097c89a98a6a8c7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.OfMethodParameter</span></td><td><code>cc35cbb5a12db70b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.WithEagerNavigation</span></td><td><code>ba4ed13a2c16fa27</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.WithEagerNavigation.OfAnnotatedElement</span></td><td><code>5bccd0ca3c6cf39e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.WithLazyNavigation</span></td><td><code>5734f0b82230f143</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.WithLazyNavigation.OfAnnotatedElement</span></td><td><code>2203d6c2cc2e43d7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection.WithResolvedErasure</span></td><td><code>5656afa8f8c7fa04</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.LazyProxy</span></td><td><code>837c46ba31dd9215</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfNonGenericType</span></td><td><code>ffefd02f303394e6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfNonGenericType.ForErasure</span></td><td><code>d952d613f637b449</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfNonGenericType.ForLoadedType</span></td><td><code>f00423b3668c6a6d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfParameterizedType</span></td><td><code>91d595189a038777</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfParameterizedType.ForGenerifiedErasure</span></td><td><code>4fa1e7c89c00c97f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfParameterizedType.ForLoadedType</span></td><td><code>68b564e96aa7b7f7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfParameterizedType.ForLoadedType.ParameterArgumentTypeList</span></td><td><code>186a3e289af3008c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.OfParameterizedType.Latent</span></td><td><code>0563e8e02d018d81</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.ForRawType</span></td><td><code>2730ba635b3e4dae</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.ForSignatureVisitor</span></td><td><code>7c9ee6e3c386d02f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.ForSignatureVisitor.OfTypeArgument</span></td><td><code>d8e6035b10ed1222</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Reducing</span></td><td><code>6646869e65b4683e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Reifying</span></td><td><code>f695f950ef96d452</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Reifying.1</span></td><td><code>3887b35198c64c3f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Reifying.2</span></td><td><code>dda2c47b308dfe77</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Substitutor</span></td><td><code>65dc96c548e3e991</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Substitutor.ForAttachment</span></td><td><code>da6e736f271084bb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Substitutor.ForDetachment</span></td><td><code>84581ab83cefe0ba</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.Generic.Visitor.Substitutor.WithoutTypeSubstitution</span></td><td><code>17ef049604f02334</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeDescription.LazyProxy</span></td><td><code>12b49bec0a736b32</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList</span></td><td><code>da60a7cfb717d0a8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.AbstractBase</span></td><td><code>4700315364477234</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Empty</span></td><td><code>59d00ad7b53c811a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Explicit</span></td><td><code>81495dfc3a359dfe</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.ForLoadedTypes</span></td><td><code>4356a7471aec6f20</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.AbstractBase</span></td><td><code>5376e1d2298a6512</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.Empty</span></td><td><code>df9431d33e66dbb4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.Explicit</span></td><td><code>1ab8c93e54ee2ac6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.ForDetachedTypes</span></td><td><code>1b6544725fdb45a6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.ForDetachedTypes.OfTypeVariables</span></td><td><code>05b85732c40f12b7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.ForDetachedTypes.WithResolvedErasure</span></td><td><code>3ae7efc80de7c3db</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.ForLoadedTypes</span></td><td><code>c603bfa8790b860c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.ForLoadedTypes.OfTypeVariables</span></td><td><code>d713fc161a8b3c83</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.OfConstructorExceptionTypes</span></td><td><code>41a985dd07ed867c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.OfLoadedInterfaceTypes</span></td><td><code>99d4f3faf0ed1337</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.OfLoadedInterfaceTypes.TypeProjection</span></td><td><code>7f6f3c7654719119</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.OfMethodExceptionTypes</span></td><td><code>74966b175ac75ab9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.description.type.TypeList.Generic.OfMethodExceptionTypes.TypeProjection</span></td><td><code>2d651d381fd3d0a8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase</span></td><td><code>531a2e961b13325b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter</span></td><td><code>5f4faab3b408ec94</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.FieldDefinitionAdapter</span></td><td><code>fd8d7a11be3c9ede</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapter</span></td><td><code>e75374fa15e452ff</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapter.AnnotationAdapter</span></td><td><code>baf66768a8ba7010</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapter.SimpleParameterAnnotationAdapter</span></td><td><code>24c4f03b22480ac9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.MethodMatchAdapter</span></td><td><code>5914cb1a77b4c084</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.MethodMatchAdapter.AnnotationAdapter</span></td><td><code>8becc0d3a2f579f7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Adapter.OptionalMethodMatchAdapter</span></td><td><code>1e5cba284e697ff2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.Delegator</span></td><td><code>cd65d88864fb9551</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.AbstractBase.UsingTypeWriter</span></td><td><code>2c521e681717b547</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.FieldDefinition.Optional.AbstractBase</span></td><td><code>ae345146b4ff4937</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.FieldDefinition.Optional.Valuable.AbstractBase</span></td><td><code>bbf864ab6ae58db5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.FieldDefinition.Optional.Valuable.AbstractBase.Adapter</span></td><td><code>c094da12c027af78</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.AbstractBase</span></td><td><code>9c472892ce0a50bb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.AbstractBase.Adapter</span></td><td><code>d3915da6e1e1de4c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ExceptionDefinition.AbstractBase</span></td><td><code>5d66e82b417f9b46</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ImplementationDefinition.AbstractBase</span></td><td><code>e0513b10037138a8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ParameterDefinition.AbstractBase</span></td><td><code>ce292c22036f8154</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ParameterDefinition.Initial.AbstractBase</span></td><td><code>75703fad010e1cc6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ParameterDefinition.Simple.AbstractBase</span></td><td><code>0a7a2334f6a9b15d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ParameterDefinition.Simple.Annotatable.AbstractBase</span></td><td><code>c67240824c7cd31a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ParameterDefinition.Simple.Annotatable.AbstractBase.Adapter</span></td><td><code>f1f199a3d7662651</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.ReceiverTypeDefinition.AbstractBase</span></td><td><code>a20cd2a086e77441</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Builder.MethodDefinition.TypeVariableDefinition.AbstractBase</span></td><td><code>b010816c4e7b6513</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Default</span></td><td><code>ca6748217ece3884</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Default.Loaded</span></td><td><code>e63ea06339154cad</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.DynamicType.Default.Unloaded</span></td><td><code>876286f205b44199</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.TargetType</span></td><td><code>26c139b5f2f58862</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.Compound</span></td><td><code>a5a52522b43091ef</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod</span></td><td><code>22ab387d59f6c970</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod.MethodModifierTransformer</span></td><td><code>829c18ff395159ba</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod.TransformedMethod</span></td><td><code>083bfd5734c4504d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod.TransformedMethod.AttachmentVisitor</span></td><td><code>43014c50e1310fbf</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod.TransformedMethod.TransformedParameter</span></td><td><code>84642c4a6f0d1bdc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.ForMethod.TransformedMethod.TransformedParameterList</span></td><td><code>54d561afbee57f99</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.Transformer.NoOp</span></td><td><code>49cd89a2b3b975a3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.TypeResolutionStrategy.Passive</span></td><td><code>d5784ee7fb36ce53</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.VisibilityBridgeStrategy.Default</span></td><td><code>ae8d9f7fd85c6aad</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.VisibilityBridgeStrategy.Default.1</span></td><td><code>63c0d42260c7599e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.VisibilityBridgeStrategy.Default.2</span></td><td><code>a8389e9d32c4ecd7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.VisibilityBridgeStrategy.Default.3</span></td><td><code>30f7afc5a8be245c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ByteArrayClassLoader.PersistenceHandler</span></td><td><code>811732d1db761cc5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ByteArrayClassLoader.PersistenceHandler.1</span></td><td><code>c9ee72578a4d55a4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ByteArrayClassLoader.PersistenceHandler.2</span></td><td><code>f7eb2a49ccc0c5d4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.AbstractBase</span></td><td><code>331215a38873f162</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.UsingReflection</span></td><td><code>9b4c6d016e86d89d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.UsingReflection.Dispatcher.CreationAction</span></td><td><code>e95efd9bc7c2fbec</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.UsingReflection.Dispatcher.Direct</span></td><td><code>2a61312aae25f447</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassInjector.UsingReflection.Dispatcher.Direct.ForJava7CapableVm</span></td><td><code>5b1e1d52a58d44e8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassLoadingStrategy</span></td><td><code>17fb081ccc92f99c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassLoadingStrategy.Default</span></td><td><code>7390ec8634515594</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassLoadingStrategy.Default.InjectionDispatcher</span></td><td><code>759cb7a298fc98b7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.ClassLoadingStrategy.Default.WrappingDispatcher</span></td><td><code>88c49bdd78533ba6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.MultipleParentClassLoader.Builder</span></td><td><code>c6fb9f2d63f216f9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.PackageDefinitionStrategy.Definition.Undefined</span></td><td><code>1b8dafe51f80088c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.PackageDefinitionStrategy.NoOp</span></td><td><code>31480ec85144aa31</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.loading.PackageDefinitionStrategy.Trivial</span></td><td><code>d0ed587787d4d89f</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>52e278e8d81b4dc4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldLocator.AbstractBase</span></td><td><code>db8c5004661a0bd8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldLocator.ForClassHierarchy</span></td><td><code>0e8431af1152b965</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldLocator.ForClassHierarchy.Factory</span></td><td><code>d97235dbbc3871e9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldLocator.Resolution.Simple</span></td><td><code>7e3dca01a01498d1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldRegistry.Default</span></td><td><code>cc5265630d0906f2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldRegistry.Default.Compiled</span></td><td><code>00933225bc77b175</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldRegistry.Default.Compiled.Entry</span></td><td><code>0ec1361a69a955fd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.FieldRegistry.Default.Entry</span></td><td><code>a7413622fd851aa9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.InstrumentedType.Default</span></td><td><code>83177f7ca587cf30</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.InstrumentedType.Factory.Default</span></td><td><code>cd900ae01efd903f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.InstrumentedType.Factory.Default.1</span></td><td><code>a7ce85bb2f37ff77</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.InstrumentedType.Factory.Default.2</span></td><td><code>ad157a47dace4f55</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler</span></td><td><code>fc88be698cc4a50f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.AbstractBase</span></td><td><code>ad55505e167100d9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default</span></td><td><code>a37bac0e0eceb0c9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Harmonizer.ForJavaMethod</span></td><td><code>4b92bfc82ab49b25</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Harmonizer.ForJavaMethod.Token</span></td><td><code>e2da236960e0a189</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key</span></td><td><code>421619c0f44567f3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Detached</span></td><td><code>82540bbf94c15922</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Harmonized</span></td><td><code>5d9ad1d55d82a355</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store</span></td><td><code>f948e4de58324a0f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store.Entry.Initial</span></td><td><code>1fc852958287c36a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store.Entry.Resolved</span></td><td><code>6672a261c5f5dd2e</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>0f0b18948cce4159</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store.Graph</span></td><td><code>f50e2614e64a132c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Merger.Directional</span></td><td><code>0ba0f74ab7d66be7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Linked.Delegation</span></td><td><code>7341085250d5f338</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Node.Simple</span></td><td><code>f9767f80e7124acc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Node.Sort</span></td><td><code>8e20af4bf9dad8a0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.NodeList</span></td><td><code>3f435ec381113f00</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodGraph.Simple</span></td><td><code>9a1f1f9d25ac44be</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default</span></td><td><code>35ae92274e85ac88</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default.Compiled</span></td><td><code>dd840dc4ea29fc06</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default.Compiled.Entry</span></td><td><code>827864e42dc177c2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default.Entry</span></td><td><code>66b9b2c39c4a08ee</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default.Prepared</span></td><td><code>3c270a20a21353d7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Default.Prepared.Entry</span></td><td><code>e96586202cb119f0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Handler.ForImplementation</span></td><td><code>ea77701fcbc47e2c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.MethodRegistry.Handler.ForImplementation.Compiled</span></td><td><code>7b000ab44a4af2cc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.RecordComponentRegistry.Default</span></td><td><code>eec49897d441dcbe</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.RecordComponentRegistry.Default.Compiled</span></td><td><code>1d64a300c478cbd4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeInitializer.Drain.Default</span></td><td><code>a3bc2736d5ad95f5</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>3429322f4d42e2d4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeValidation</span></td><td><code>b9ab70dc0d5e3c60</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.Default</span></td><td><code>c13cf997e386f3cc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.Default.ClassDumpAction.Dispatcher.Disabled</span></td><td><code>d4f0d2e7fbcab045</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.Default.ForCreation</span></td><td><code>fc9ad618be46b3c0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.Default.UnresolvedType</span></td><td><code>3f5380fd3549f07e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.Default.ValidatingClassVisitor</span></td><td><code>0449b85d73902e5f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.FieldPool.Record.ForExplicitField</span></td><td><code>a03e0587988aae1f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.MethodPool.Record.AccessBridgeWrapper</span></td><td><code>9527fd76169900c9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.MethodPool.Record.ForDefinedMethod</span></td><td><code>e3fde8a86929682d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.MethodPool.Record.ForDefinedMethod.WithBody</span></td><td><code>963047d43410ba83</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.MethodPool.Record.ForNonImplementedMethod</span></td><td><code>28a00d78fb553a8c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.TypeWriter.MethodPool.Record.Sort</span></td><td><code>928d954d831a88bc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default</span></td><td><code>0d114e09a2faac83</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default.1</span></td><td><code>16fc5c99e02d7f9f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default.2</span></td><td><code>dd199479878d5739</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default.3</span></td><td><code>792ea5ce51475037</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default.4</span></td><td><code>98fceb895a262b45</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy.Default.5</span></td><td><code>f0898605f9020c16</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassDynamicTypeBuilder</span></td><td><code>16995528b814abfb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassDynamicTypeBuilder.InstrumentableMatcher</span></td><td><code>c2850d79fc87446b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget</span></td><td><code>17f509a8b52b39f3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget.Factory</span></td><td><code>f6c0a700d93e9d10</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget.OriginTypeResolver</span></td><td><code>282c73cc811d5b71</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget.OriginTypeResolver.1</span></td><td><code>2eb773d398b87160</code></td></tr><tr><td><span class="el_class">net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget.OriginTypeResolver.2</span></td><td><code>903a99da03746eb8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor</span></td><td><code>0174e94238af9d2f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor.FieldLocation.Relative</span></td><td><code>e3f1a92ea73df3a5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor.FieldLocation.Relative.Prepared</span></td><td><code>c55029896988613b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor.FieldNameExtractor.ForBeanProperty</span></td><td><code>751b847060c7cd95</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor.ForImplicitProperty</span></td><td><code>623c50de803e8dff</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.FieldAccessor.ForImplicitProperty.Appender</span></td><td><code>db2e4aeceee38d5f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default</span></td><td><code>d63040bc175192ee</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.AbstractPropertyAccessorMethod</span></td><td><code>4a69ecc69149f327</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.AccessorMethod</span></td><td><code>147ddbd116dc5018</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.AccessorMethodDelegation</span></td><td><code>4ecb89b1b8e43487</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.CacheValueField</span></td><td><code>091aa1cc83b89353</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.DelegationRecord</span></td><td><code>7772d9b1460b4444</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.Factory</span></td><td><code>329a9c16f45fea72</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.Default.FieldCacheEntry</span></td><td><code>93ea3c3584aedbb3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.ExtractableView.AbstractBase</span></td><td><code>a2bce3211300b141</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.FrameGeneration</span></td><td><code>85cfd05a0313231d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.FrameGeneration.1</span></td><td><code>1a7229cc1aa2fe64</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.FrameGeneration.2</span></td><td><code>4c4edc4b4128953d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Context.FrameGeneration.3</span></td><td><code>0086e69e9329bfd5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.SpecialMethodInvocation.AbstractBase</span></td><td><code>99ac1d4463895d3f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.SpecialMethodInvocation.Simple</span></td><td><code>7916d516ba029853</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Target.AbstractBase</span></td><td><code>891cf9f2a321fafd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Target.AbstractBase.DefaultMethodInvocation</span></td><td><code>29b19b204be139f3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Target.AbstractBase.DefaultMethodInvocation.1</span></td><td><code>3ba9a760aa49a971</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.Implementation.Target.AbstractBase.DefaultMethodInvocation.2</span></td><td><code>8279f38afb254f72</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.LoadedTypeInitializer.NoOp</span></td><td><code>1af8ca0d9b7adbe8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodAccessorFactory.AccessType</span></td><td><code>a8b1b417256441f1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodDelegation</span></td><td><code>ec9af1244cdb0f2c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodDelegation.Appender</span></td><td><code>578e9e4be578040b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodDelegation.ImplementationDelegate.Compiled.ForStaticCall</span></td><td><code>78b3eb01c3540dcc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodDelegation.ImplementationDelegate.ForStaticMethod</span></td><td><code>f19452fcc061d904</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.MethodDelegation.WithCustomProperties</span></td><td><code>c804a366d1128499</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.SuperMethodCall</span></td><td><code>48a9709638c71f00</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.SuperMethodCall.Appender</span></td><td><code>1278488d60ed8e86</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.SuperMethodCall.Appender.TerminationHandler</span></td><td><code>35d2e0ef6d7f630d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.SuperMethodCall.Appender.TerminationHandler.1</span></td><td><code>05664af3a3b6738b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.SuperMethodCall.Appender.TerminationHandler.2</span></td><td><code>be670f96c6d93831</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.Default</span></td><td><code>7787cf7f483d6685</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.ForTypeAnnotations</span></td><td><code>040d5aab72de4582</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.Target.OnField</span></td><td><code>52ad3ce83f52621f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.Target.OnMethod</span></td><td><code>b2534f024a4880dd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.Target.OnMethodParameter</span></td><td><code>c9f39d80b694c092</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationAppender.Target.OnType</span></td><td><code>db8f4f1dbbcf3c3e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationRetention</span></td><td><code>6dca59a58d56874f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationValueFilter.Default</span></td><td><code>190882f8828de18a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationValueFilter.Default.1</span></td><td><code>593737e47cc84848</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.AnnotationValueFilter.Default.2</span></td><td><code>a61861baa0bc96ee</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>87d24d92007e506e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.MethodAttributeAppender.Factory.Compound</span></td><td><code>85113e9ca3ae38c3</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>a3b87b1a75d290fd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.attribute.MethodAttributeAppender.ForInstrumentedMethod.2</span></td><td><code>10e734a991eea3bf</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>577555a7861b5701</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.AuxiliaryType.NamingStrategy.SuffixingRandom</span></td><td><code>9ff4d19573d987f3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy</span></td><td><code>e4ad67673bba91b3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.AssignableSignatureCall</span></td><td><code>e32307e618f933aa</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.ConstructorCall</span></td><td><code>b40129a97ef170e6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.ConstructorCall.Appender</span></td><td><code>6a4a35552c21bf78</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.MethodCall</span></td><td><code>d2f0f120376a3b4f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.MethodCall.Appender</span></td><td><code>df4a3b2e219da333</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.auxiliary.MethodCallProxy.PrecomputedMethodGraph</span></td><td><code>7fb29fbd9d22e04c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.ArgumentTypeResolver</span></td><td><code>74973272be85ce17</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.ArgumentTypeResolver.ParameterIndexToken</span></td><td><code>a8052b758f0a0361</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.DeclaringTypeResolver</span></td><td><code>d1000b5d5bf7bd79</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.1</span></td><td><code>54de841f73ee4eae</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.AmbiguityResolver</span></td><td><code>7d40b5a2d5d69397</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.AmbiguityResolver.Compound</span></td><td><code>eab4a548d2693cd2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.AmbiguityResolver.Resolution</span></td><td><code>e8ca39d95b4ade42</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.BindingResolver.Default</span></td><td><code>ed3f9e212bdf4696</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.MethodBinding.Builder</span></td><td><code>ffaacecf2e1956bd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.MethodBinding.Builder.Build</span></td><td><code>fbe15ed2c0b7c26f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.MethodBinding.Illegal</span></td><td><code>ca301be97fe35cde</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.MethodInvoker.Simple</span></td><td><code>dafea2ba3b2f164b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.ParameterBinding.Anonymous</span></td><td><code>30b0f734840f8b2c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.ParameterBinding.Unique</span></td><td><code>c60c100f523804e4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.Processor</span></td><td><code>1dd9238ba412581f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.TerminationHandler.Default</span></td><td><code>946265fda2ca27e8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.TerminationHandler.Default.1</span></td><td><code>db109132d7373fda</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodDelegationBinder.TerminationHandler.Default.2</span></td><td><code>cb3895b610bd15d5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.MethodNameEqualityResolver</span></td><td><code>65a8d1431b34fdcd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.ParameterLengthResolver</span></td><td><code>58a025cd0f10dff1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.AllArguments.Assignment</span></td><td><code>bfcd0244baa95f1b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.AllArguments.Binder</span></td><td><code>b7e6501b9bd85e65</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Argument.Binder</span></td><td><code>9d613cfc7a8f0cd6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Argument.BindingMechanic</span></td><td><code>ad9a5463673957e4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Argument.BindingMechanic.1</span></td><td><code>5750463a9b2658fe</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Argument.BindingMechanic.2</span></td><td><code>653fe2b1bb93cce4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.BindingPriority.Resolver</span></td><td><code>2fd170c18c979895</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Default.Binder</span></td><td><code>fdd8dd2baa86d3db</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.DefaultCall.Binder</span></td><td><code>d7e4b58cec267a0e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.DefaultMethod.Binder</span></td><td><code>03d209c7b50b3b07</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Empty.Binder</span></td><td><code>6af2e8e3cdad25b3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.FieldValue.Binder</span></td><td><code>ffe1f66fdf57240f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.FieldValue.Binder.Delegate</span></td><td><code>b16d4f0b5def41e9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.IgnoreForBinding.Verifier</span></td><td><code>f6eaa0a37f2ce769</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Origin.Binder</span></td><td><code>58bfe04015269f97</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.RuntimeType.Verifier</span></td><td><code>79ef98193cf36f83</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.StubValue.Binder</span></td><td><code>90a2fb5cbb2fc45c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.Super.Binder</span></td><td><code>159db3adf8f80917</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.SuperCall.Binder</span></td><td><code>d504027b57aeebbe</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.SuperMethod.Binder</span></td><td><code>787b81ea7c3cf9d1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder</span></td><td><code>a9644f0a487b56f8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.DelegationProcessor</span></td><td><code>08e777de45b651f6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.DelegationProcessor.Handler.Bound</span></td><td><code>fe4b74c6469cb373</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.DelegationProcessor.Handler.Unbound</span></td><td><code>53b08d554175038c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.ParameterBinder</span></td><td><code>6f273cd5a9428c36</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.ParameterBinder.ForFieldBinding</span></td><td><code>49c4acf91fc87123</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.Record</span></td><td><code>f5597b43768b5a7b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bind.annotation.This.Binder</span></td><td><code>b3e837fb5b95fa04</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.ByteCodeAppender.Compound</span></td><td><code>0f6ce72d7ea48338</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.ByteCodeAppender.Simple</span></td><td><code>3d7cd79d87926f75</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.ByteCodeAppender.Size</span></td><td><code>897030ac0b46252c</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>204abf23cbf37c68</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.Duplication.3</span></td><td><code>0631976e078609bd</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>fd766afb93ac2a09</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.StackManipulation.AbstractBase</span></td><td><code>31ac4a0904ac3e09</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.StackManipulation.Compound</span></td><td><code>96939a22aac4c91b</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>e69b15cd3e8d4461</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>80f94e8effa2f7bb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.TypeCreation</span></td><td><code>4865d2e454028bc1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.Assigner</span></td><td><code>7e67d52e9390b000</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.Assigner.Typing</span></td><td><code>b09adf7fa17d04b8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.TypeCasting</span></td><td><code>1a445bd188e2931d</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveBoxingDelegate</span></td><td><code>dac9a66a711d1bdb</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>c888a19b998b7769</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>adf7d49661fe0566</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveWideningDelegate</span></td><td><code>1008755d8fe45330</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveWideningDelegate.WideningStackManipulation</span></td><td><code>796408ff7247d988</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.primitive.VoidAwareAssigner</span></td><td><code>3df36760b29d387a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.reference.GenericTypeAwareAssigner</span></td><td><code>3623cb487284bb53</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.assign.reference.ReferenceTypeAwareAssigner</span></td><td><code>59b5f6f8641c87f2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.collection.ArrayFactory</span></td><td><code>f2dcfb1430649b3e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.collection.ArrayFactory.ArrayCreator</span></td><td><code>7ff584cc516e3f40</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.collection.ArrayFactory.ArrayCreator.ForReferenceType</span></td><td><code>2ffee25860dde2e1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.collection.ArrayFactory.ArrayStackManipulation</span></td><td><code>2420354f9fdfb502</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>a779a54b4d7fcd6c</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>4af2674773bedc86</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.MethodConstant.CachedMethod</span></td><td><code>927dce16203d5f6c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.MethodConstant.ForMethod</span></td><td><code>5c66dba4a8bfbcea</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.NullConstant</span></td><td><code>9cf4bfc5c52a2517</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.constant.TextConstant</span></td><td><code>76b9599de59f2aeb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.FieldAccess</span></td><td><code>e098860a4703e90a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.FieldAccess.AccessDispatcher</span></td><td><code>20c90535a547e3cd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.FieldAccess.AccessDispatcher.AbstractFieldInstruction</span></td><td><code>75724b7b6b2e4a66</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.FieldAccess.AccessDispatcher.FieldGetInstruction</span></td><td><code>adcac7724ac0272c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.FieldAccess.AccessDispatcher.FieldPutInstruction</span></td><td><code>aeaedb775e139b65</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodInvocation</span></td><td><code>ccdb8e0f61d03f72</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodInvocation.Invocation</span></td><td><code>7edd2eb29addcb20</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>7ec211e72c6c3719</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodVariableAccess.MethodLoading</span></td><td><code>0b690307be533e18</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodVariableAccess.MethodLoading.TypeCastingHandler.NoOp</span></td><td><code>3f3d0d86b569e241</code></td></tr><tr><td><span class="el_class">net.bytebuddy.implementation.bytecode.member.MethodVariableAccess.OffsetLoading</span></td><td><code>4794627822a950ec</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>202001c737179f70</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.ClassVisitor</span></td><td><code>98826fd4e883df65</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.ClassWriter</span></td><td><code>c9c9db052671c945</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.FieldVisitor</span></td><td><code>21cf79e64cb95598</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>3a3fa5cb8e06f5c0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.MethodWriter</span></td><td><code>76fc9326535687d1</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>45a01df29df18510</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>b9cc80f05fd1a1b5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.jar.asm.signature.SignatureWriter</span></td><td><code>4b49360620cb7f6c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.AnnotationTypeMatcher</span></td><td><code>4c083a293a95675e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.BooleanMatcher</span></td><td><code>fc276a6c128e2875</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.CollectionErasureMatcher</span></td><td><code>76b5d2cc623cc312</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.CollectionItemMatcher</span></td><td><code>640386844f0e29b8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.CollectionOneToOneMatcher</span></td><td><code>670278e525ff9bfc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.CollectionSizeMatcher</span></td><td><code>8f59b8be9ab4a58b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.DeclaringAnnotationMatcher</span></td><td><code>72a4630003105f69</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.DeclaringTypeMatcher</span></td><td><code>76e282c5482618bb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ElementMatcher.Junction.AbstractBase</span></td><td><code>d129e1a5bbea50cb</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ElementMatcher.Junction.Conjunction</span></td><td><code>6586c7d2abf8bf59</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ElementMatcher.Junction.Disjunction</span></td><td><code>78eb86ff19c5e913</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ElementMatcher.Junction.ForNonNullValues</span></td><td><code>40b97e222b442c20</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ElementMatchers</span></td><td><code>4ccc5ccec6e01297</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.EqualityMatcher</span></td><td><code>7ddcccca3867f2c6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ErasureMatcher</span></td><td><code>327b39df894c794a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.FilterableList.AbstractBase</span></td><td><code>acc833b482b3e913</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.FilterableList.Empty</span></td><td><code>994e694dc878695f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.Disjunction</span></td><td><code>cf547e86976c153f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.ForFieldToken</span></td><td><code>08b4951ce99afdff</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.ForFieldToken.ResolvedMatcher</span></td><td><code>7a313b55df92d5ce</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.ForMethodToken</span></td><td><code>acf53d7e0ad9c66c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.ForMethodToken.ResolvedMatcher</span></td><td><code>a1b47b682cdd16e5</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.LatentMatcher.Resolved</span></td><td><code>838bf93f64347719</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodParameterTypeMatcher</span></td><td><code>d565dce3bed4679b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodParameterTypesMatcher</span></td><td><code>4f9a1c61c2ca1d30</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodParametersMatcher</span></td><td><code>754bf9d07553d1f9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodReturnTypeMatcher</span></td><td><code>1b6fa22a35a706bc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher</span></td><td><code>d9a4a7f8ba8d705a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort</span></td><td><code>df4da3ccf1c43fb2</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort.1</span></td><td><code>9f8edcf420246fae</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort.2</span></td><td><code>5b30e294f2304972</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort.3</span></td><td><code>9c8b9e468a9ba4ee</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort.4</span></td><td><code>4c3709005a13f932</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.MethodSortMatcher.Sort.5</span></td><td><code>93400b67a6230353</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ModifierMatcher</span></td><td><code>c0d2e66fbd31c083</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.ModifierMatcher.Mode</span></td><td><code>09bd88f8f539be92</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.NameMatcher</span></td><td><code>b901fc4b35799fa4</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.NegatingMatcher</span></td><td><code>a7d93978e9d78d7e</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.SignatureTokenMatcher</span></td><td><code>60c758b99c3d9148</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher</span></td><td><code>236df1d1d60ab580</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode</span></td><td><code>78a8ab1a5e998326</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.1</span></td><td><code>197cd818fecbf0dc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.2</span></td><td><code>130a12e752b093e0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.3</span></td><td><code>37e1825b2b41bae8</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.4</span></td><td><code>34a59e75ad57ee16</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.5</span></td><td><code>6b18de0e0195fcc7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.6</span></td><td><code>bdaf5299d13e3bfe</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.7</span></td><td><code>f608050eb76b29c9</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.8</span></td><td><code>7a1f43a330aa49e3</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.StringMatcher.Mode.9</span></td><td><code>d97cfe0669542624</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.SuperTypeMatcher</span></td><td><code>5f65e9ccb1649334</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.TypeSortMatcher</span></td><td><code>bea3cd319f7a9ab6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.matcher.VisibilityMatcher</span></td><td><code>6f0d2c70b6ce50e1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.pool.TypePool.AbstractBase</span></td><td><code>03ef41c73bcdac6f</code></td></tr><tr><td><span class="el_class">net.bytebuddy.pool.TypePool.AbstractBase.Hierarchical</span></td><td><code>1ef4bf1634aa9314</code></td></tr><tr><td><span class="el_class">net.bytebuddy.pool.TypePool.CacheProvider.Simple</span></td><td><code>d45eb8340ca21b2b</code></td></tr><tr><td><span class="el_class">net.bytebuddy.pool.TypePool.ClassLoading</span></td><td><code>f60fbd5bc692f3c0</code></td></tr><tr><td><span class="el_class">net.bytebuddy.pool.TypePool.Empty</span></td><td><code>8c0a9ed2a729f1ac</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.CompoundList</span></td><td><code>b8b501baeee21c20</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.ConstructorComparator</span></td><td><code>c7333b6b982e8e09</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.GraalImageCode</span></td><td><code>99c2d8870a99ec8c</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.Invoker.Dispatcher</span></td><td><code>b9b5f67cf01bb049</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.JavaModule</span></td><td><code>5223602c7c397de6</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.MethodComparator</span></td><td><code>4e5549fe1a1bb16a</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.OpenedClassReader</span></td><td><code>f4da9b2b059db195</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.RandomString</span></td><td><code>475c5a28b2a65671</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher</span></td><td><code>787d0fb443c33196</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.Dispatcher.ForInstanceCheck</span></td><td><code>348c5ed1a0ea72ea</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.Dispatcher.ForNonStaticMethod</span></td><td><code>bf4d2158c4101736</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.Dispatcher.ForStaticMethod</span></td><td><code>2cbd19f9947661fd</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.DynamicClassLoader</span></td><td><code>fa40b0b626be1aa7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.DynamicClassLoader.Resolver.CreationAction</span></td><td><code>8ca4ae6007eb9fd7</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.DynamicClassLoader.Resolver.ForModuleSystem</span></td><td><code>9a96cee67ed31732</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.InvokerCreationAction</span></td><td><code>8b81db7b9bb021a1</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.dispatcher.JavaDispatcher.ProxiedInvocationHandler</span></td><td><code>a4eb032d57e965fc</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.privilege.GetMethodAction</span></td><td><code>74124300a1be96ce</code></td></tr><tr><td><span class="el_class">net.bytebuddy.utility.privilege.GetSystemPropertyAction</span></td><td><code>3dcb9c5481b99d57</code></td></tr><tr><td><span class="el_class">org.apache.maven.plugin.surefire.log.api.NullConsoleLogger</span></td><td><code>50e0945fec76b333</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.booter.BaseProviderFactory</span></td><td><code>da939a0152866a4b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.booter.BiProperty</span></td><td><code>ed0281592f3976b4</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.booter.Command</span></td><td><code>52d7b732759793ff</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.booter.Constants</span></td><td><code>8f58b0da27218c74</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.booter.DumpErrorSingleton</span></td><td><code>ea25742803c9e73f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.booter.ForkedProcessEventType</span></td><td><code>4f32ae2d4e670365</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.booter.ForkingReporterFactory</span></td><td><code>be06f83accc5a8aa</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.booter.ForkingRunListener</span></td><td><code>c34d0a9f28f66585</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.booter.MasterProcessCommand</span></td><td><code>fc8c116a509256d1</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.booter.Shutdown</span></td><td><code>47a37ed2a684ef1d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.cli.CommandLineOption</span></td><td><code>5825f848ee2abcd7</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.filter.NonAbstractClassFilter</span></td><td><code>bac4a9198196b6ad</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.provider.AbstractProvider</span></td><td><code>0fea65ed91d7c12a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.report.ConsoleOutputCapture</span></td><td><code>7ee3451cf95e2f70</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.report.ConsoleOutputCapture.ForwardingPrintStream</span></td><td><code>804935f758ebaea3</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.report.ConsoleOutputCapture.NullOutputStream</span></td><td><code>a81300d2d50decb6</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.report.ReporterConfiguration</span></td><td><code>bf4075c0385296c2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.report.RunMode</span></td><td><code>70edc0a9dea60143</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.report.SimpleReportEntry</span></td><td><code>5acc6a35bed0445f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.stream.AbstractStreamDecoder</span></td><td><code>c6f3b2781f9ac881</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.stream.AbstractStreamDecoder.BufferedStream</span></td><td><code>11f69a75bc1c7211</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.stream.AbstractStreamDecoder.Memento</span></td><td><code>e504a9e8cfc028af</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.stream.AbstractStreamDecoder.Segment</span></td><td><code>773004ac6cd115ef</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.stream.AbstractStreamDecoder.StreamReadStatus</span></td><td><code>8d5ee1d510b5c935</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.stream.AbstractStreamEncoder</span></td><td><code>9547668418a858ad</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.stream.SegmentType</span></td><td><code>77b0d78ed3ddd126</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.suite.RunResult</span></td><td><code>0eef4ae883b6fcaa</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.testset.DirectoryScannerParameters</span></td><td><code>529e83b831c47f72</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.testset.IncludedExcludedPatterns</span></td><td><code>e12220ce508068df</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.testset.ResolvedTest</span></td><td><code>119a5faa0ae08a91</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.testset.ResolvedTest.ClassMatcher</span></td><td><code>cb9dd1b6069a872b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.testset.ResolvedTest.MethodMatcher</span></td><td><code>1d5196f3dfcebd52</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.testset.ResolvedTest.Type</span></td><td><code>6f46eedd1917ca66</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.testset.RunOrderParameters</span></td><td><code>f74f6b3eb9f1a132</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.testset.TestArtifactInfo</span></td><td><code>6d162cddde2db959</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.testset.TestListResolver</span></td><td><code>0f4645f0d7fd02c8</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.testset.TestRequest</span></td><td><code>1cb2946d8f0dc9e4</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.CloseableIterator</span></td><td><code>01846c357efacb7b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.DefaultRunOrderCalculator</span></td><td><code>21a42ec0f6d63b8e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.DefaultScanResult</span></td><td><code>01695a339c66ab8d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.ReflectionUtils</span></td><td><code>7f9a430ae144c985</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.RunOrder</span></td><td><code>93376844e6d709d3</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.TestsToRun</span></td><td><code>db4e8195893ece6d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.TestsToRun.ClassesIterator</span></td><td><code>543f26bfbdd04ce0</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.AbstractNoninterruptibleReadableChannel</span></td><td><code>6826ce793980b64e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.AbstractNoninterruptibleWritableChannel</span></td><td><code>484afcc5593fbc9a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.Channels</span></td><td><code>eb60281181a1dc33</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.Channels.3</span></td><td><code>605144c3f67338aa</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.Channels.4</span></td><td><code>4834cf9402eabd28</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.ClassMethod</span></td><td><code>817ad544e129b000</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.DaemonThreadFactory</span></td><td><code>b2161e778265b95d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.DaemonThreadFactory.NamedThreadFactory</span></td><td><code>e3fb668fa8792230</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.DumpFileUtils</span></td><td><code>9cc0f89ffb46ba32</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.ImmutableMap</span></td><td><code>c7398d64c0977b06</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.ImmutableMap.Node</span></td><td><code>3a9862055afaee58</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.ObjectUtils</span></td><td><code>992d9f9f62042416</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.api.util.internal.TestClassMethodNameUtils</span></td><td><code>c96abeed5fa75a6a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.AbstractPathConfiguration</span></td><td><code>f8b4034fe9c934d2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.BooterDeserializer</span></td><td><code>d2b4a565d2c195cc</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ClassLoaderConfiguration</span></td><td><code>c511fbfeb1f35c23</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.Classpath</span></td><td><code>d05af49602124353</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ClasspathConfiguration</span></td><td><code>d14c58928ac6aa7b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.CommandReader</span></td><td><code>8bc1181d0c5af474</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.CommandReader.1</span></td><td><code>72a8e2906ddc1c93</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.CommandReader.CommandRunnable</span></td><td><code>f6a6b02be2fb0964</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter</span></td><td><code>c8ce6ed3be8ec9bc</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.1</span></td><td><code>68f2dae15ae26cc2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.3</span></td><td><code>fc217f2c1d87c099</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.4</span></td><td><code>2afb302f7c81f991</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.6</span></td><td><code>850ef2748b5ef5e6</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.7</span></td><td><code>9577114e02a5bdef</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.8</span></td><td><code>3c8febd047cd2b0c</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.PingScheduler</span></td><td><code>c83e3af27d5d3c47</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedNodeArg</span></td><td><code>9dbb0ff22dfc1303</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PpidChecker</span></td><td><code>f83a9169197e13b1</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ProcessCheckerType</span></td><td><code>e554be35191ff5a7</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PropertiesWrapper</span></td><td><code>1e4e30276db2e62e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ProviderConfiguration</span></td><td><code>ec2cd1e39ec4278e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.StartupConfiguration</span></td><td><code>70176a3dd903d57a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.SystemPropertyManager</span></td><td><code>a843c08e9b5c79ad</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.TypeEncodedValue</span></td><td><code>355d20d53741b604</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.spi.AbstractMasterProcessChannelProcessorFactory</span></td><td><code>67a1c051e3809086</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.spi.AbstractMasterProcessChannelProcessorFactory.1</span></td><td><code>cc936f6c85f9235a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.spi.AbstractMasterProcessChannelProcessorFactory.2</span></td><td><code>a1fa70e4af42c555</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.spi.CommandChannelDecoder</span></td><td><code>6684e6bad0b7c71e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.spi.EventChannelEncoder</span></td><td><code>b69d9287bf010b1a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.spi.EventChannelEncoder.StackTrace</span></td><td><code>265e85a5e039b0af</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.spi.LegacyMasterProcessChannelProcessorFactory</span></td><td><code>3b29862697f79d34</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.spi.SurefireMasterProcessChannelProcessorFactory</span></td><td><code>8c14c673718fba9e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.stream.CommandDecoder</span></td><td><code>a23a4082e2bbd1ed</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.stream.CommandDecoder.1</span></td><td><code>950700970edca54a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.stream.EventEncoder</span></td><td><code>7c894cb22c8c16ca</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit3.JUnit3TestChecker</span></td><td><code>3df3144c058afe39</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.JUnit4ProviderUtil</span></td><td><code>17dc9f06bacd89c3</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.JUnit4Reflector</span></td><td><code>be0a89076ee835a8</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.JUnit4RunListener</span></td><td><code>321cf67f603a9748</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.JUnit4RunListenerFactory</span></td><td><code>f960a666ec2b1056</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.JUnit4TestChecker</span></td><td><code>b125367edb33ddb7</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.JUnitTestFailureListener</span></td><td><code>317f6d02dd6c4e74</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.common.junit4.Notifier</span></td><td><code>12b1613f216694e3</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.junit4.JUnit4Provider</span></td><td><code>24efdeaea8558a34</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.junit4.JUnit4Provider.1</span></td><td><code>496831ec2081181a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ClassMethodIndexer</span></td><td><code>0e8f3008aec84fcb</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shared.lang3.JavaVersion</span></td><td><code>a902b52c460c0348</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shared.lang3.StringUtils</span></td><td><code>4628d7808116e372</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shared.lang3.SystemProperties</span></td><td><code>6b2fea785d2a2915</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shared.lang3.SystemUtils</span></td><td><code>2518da556699ab1e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shared.lang3.function.Suppliers</span></td><td><code>6cb739fdbd96d7c1</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shared.lang3.math.NumberUtils</span></td><td><code>99f301ade68669b7</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shared.utils.StringUtils</span></td><td><code>abd8480c7152bf46</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shared.utils.cli.ShutdownHookUtils</span></td><td><code>011b23cd829ec86c</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.ExpectException</span></td><td><code>943171ebab48b749</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.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>7bb49d321e73bbc5</code></td></tr><tr><td><span class="el_class">org.mockito.Mockito</span></td><td><code>577272f0518bf2bf</code></td></tr><tr><td><span class="el_class">org.mockito.configuration.DefaultMockitoConfiguration</span></td><td><code>7c1c365c15c2133e</code></td></tr><tr><td><span class="el_class">org.mockito.internal.MockitoCore</span></td><td><code>8c1dee29fb0da68b</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.DefaultDoNotMockEnforcer</span></td><td><code>c193dbfbfd7e7112</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.GlobalConfiguration</span></td><td><code>5d2c645125c6e76f</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.IndependentAnnotationEngine</span></td><td><code>6712157121b4c009</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.InjectingAnnotationEngine</span></td><td><code>093bcb2236e9e096</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.MockAnnotationProcessor</span></td><td><code>63f2cd0aa6f4adfe</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.SpyAnnotationEngine</span></td><td><code>b0201f8ea6674009</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.DefaultMockitoPlugins</span></td><td><code>b56656ae000198c7</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>d946fdf7c3f2c58b</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.PluginInitializer</span></td><td><code>fda3656b50f9d2f1</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.PluginLoader</span></td><td><code>a0b8a7c6baea530e</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.PluginRegistry</span></td><td><code>ef9e70f0651edcfb</code></td></tr><tr><td><span class="el_class">org.mockito.internal.configuration.plugins.Plugins</span></td><td><code>ff53f63a8240eb6e</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>ef96156d4aa39063</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>91ac516637b8c4ee</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.ByteBuddyMockMaker</span></td><td><code>e18344ca184c75a1</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.BytecodeGenerator</span></td><td><code>896014d879c42ec9</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>0b02a477841f06a5</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>77380dd282d3eb30</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.ModuleHandler.ModuleSystemFound</span></td><td><code>d8515816e294707d</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.SubclassByteBuddyMockMaker</span></td><td><code>11d36e9ecc8c0605</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.SubclassByteBuddyMockMaker.1</span></td><td><code>8361f13ee7b2c0cd</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.SubclassBytecodeGenerator</span></td><td><code>b13aa2a3c3f5de88</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.SubclassInjectionLoader</span></td><td><code>47ea8dba5b15c796</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.SubclassInjectionLoader.WithReflection</span></td><td><code>55a84d6cf8f318a1</code></td></tr><tr><td><span class="el_class">org.mockito.internal.creation.bytebuddy.TypeCachingBytecodeGenerator</span></td><td><code>123a98feabc81a7a</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>c4b00e979fa0a182</code></td></tr><tr><td><span class="el_class">org.mockito.internal.debugging.Java9PlusLocationImpl</span></td><td><code>c89b58bdb45a8526</code></td></tr><tr><td><span class="el_class">org.mockito.internal.debugging.Java9PlusLocationImpl.MetadataShim</span></td><td><code>51626abff131ec07</code></td></tr><tr><td><span class="el_class">org.mockito.internal.debugging.LocationFactory</span></td><td><code>28d49edcf5091319</code></td></tr><tr><td><span class="el_class">org.mockito.internal.debugging.LocationFactory.Java9PlusLocationFactory</span></td><td><code>7041d193e796a0ee</code></td></tr><tr><td><span class="el_class">org.mockito.internal.exceptions.stacktrace.DefaultStackTraceCleaner</span></td><td><code>370150513bd990b0</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.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>973b60d05d2d4a4d</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>06ea8a896a1550ba</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.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.MatcherApplicationStrategy</span></td><td><code>60f4d78d262883d3</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>0d588952c2946cca</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.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>cf919842a27db421</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>92818897164b80b6</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>70d6f02b67d57b4f</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>558393abbeee5acd</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>7a1b5ff44181d6b8</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>f923109370288432</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>56e4359834584989</code></td></tr><tr><td><span class="el_class">org.mockito.internal.stubbing.defaultanswers.TriesToReturnSelf</span></td><td><code>2df789f77987f023</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.KotlinInlineClassUtil</span></td><td><code>0581c028953ad812</code></td></tr><tr><td><span class="el_class">org.mockito.internal.util.MockCreationValidator</span></td><td><code>b073c74d6aea57f3</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>d287b066371cb395</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.Iterables</span></td><td><code>f2f271f84160edef</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>5b659ecadce64e6d</code></td></tr><tr><td><span class="el_class">org.mockito.internal.verification.DefaultRegisteredInvocations</span></td><td><code>2c81cbe8de7c014f</code></td></tr><tr><td><span class="el_class">org.mockito.mock.SerializableMode</span></td><td><code>35d1981ec862bf72</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></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.8.202204050719</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..7f234e4
    --- /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
    +animal-project,com.example,Feline,0,15,0,0,0,5,0,5,0,5
    +animal-project,com.example,Animal,11,16,2,2,3,4,3,2,1,2
    +animal-project,com.example,Lion,0,39,0,4,0,11,0,6,0,4
    +animal-project,com.example,Cat,0,12,0,0,0,5,0,3,0,3
    diff --git a/target/site/jacoco/jacoco.xml b/target/site/jacoco/jacoco.xml
    new file mode 100644
    index 0000000..4f6e68e
    --- /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="animal-project"><sessioninfo id="macs-MacBook-Pro.local-7e0248c2" start="1772102553589" dump="1772102554876"/><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/Predator" sourcefilename="Predator.java"/><class name="com/example/Lion" sourcefilename="Lion.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Lcom/example/Feline;)V" line="10"><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="24"><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="28"><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="32"><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/Cat" sourcefilename="Cat.java"><method name="&lt;init&gt;" desc="(Lcom/example/Feline;)V" line="9"><counter type="INSTRUCTION" missed="0" covered="6"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getSound" 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="getFood" desc="()Ljava/util/List;" 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><counter type="INSTRUCTION" missed="0" covered="12"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></class><sourcefile name="Predator.java"/><sourcefile name="Lion.java"><line nr="10" mi="0" ci="2" mb="0" cb="0"/><line nr="12" mi="0" ci="3" mb="0" cb="0"/><line nr="14" mi="0" ci="4" mb="0" cb="2"/><line nr="15" mi="0" ci="4" mb="0" cb="0"/><line nr="16" mi="0" ci="4" mb="0" cb="2"/><line nr="17" mi="0" ci="4" mb="0" cb="0"/><line nr="19" mi="0" ci="5" mb="0" cb="0"/><line nr="21" mi="0" ci="1" mb="0" cb="0"/><line nr="24" mi="0" ci="4" mb="0" cb="0"/><line nr="28" mi="0" ci="3" mb="0" cb="0"/><line nr="32" 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="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="14" mi="0" ci="2" mb="0" cb="0"/><line nr="18" mi="0" ci="4" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="12"/><counter type="LINE" missed="0" covered="5"/><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="82"/><counter type="BRANCH" missed="2" covered="6"/><counter type="LINE" missed="3" covered="25"/><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="82"/><counter type="BRANCH" missed="2" covered="6"/><counter type="LINE" missed="3" covered="25"/><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
    
    From 80956a3c930f4f03af1e800fbc5493bc52214439 Mon Sep 17 00:00:00 2001
    From: Anastasia <anastasiaaok1996@gmail.com>
    Date: Thu, 26 Feb 2026 13:53:34 +0300
    Subject: [PATCH 2/5] add tests, dependency injection, mocks, parameterized
     tests, jacoco report
    
    ---
     .idea/.gitignore                              |   3 +
     .idea/compiler.xml                            |  13 ++++
     .idea/jarRepositories.xml                     |  20 ++++++
     .idea/misc.xml                                |  12 ++++
     .idea/modules.xml                             |   8 +++
     .idea/vcs.xml                                 |   6 ++
     pom.xml                                       |  54 ++++++++++++--
     src/main/java/com/example/Lion.java           |  14 ++--
     src/test/java/com/example/CatTest.java        |  31 +++++++-
     src/test/java/com/example/FelineTest.java     |  34 +++++++++
     .../com/example/LionParameterizedTest.java    |  41 ++++++++++-
     src/test/java/com/example/LionTest.java       |  54 ++++++++++++++
     target/classes/read.me                        |   1 +
     target/jacoco.exec                            | Bin 0 -> 67934 bytes
     .../compile/default-compile/createdFiles.lst  |   0
     .../compile/default-compile/inputFiles.lst    |   5 ++
     .../default-testCompile/createdFiles.lst      |   3 +
     .../default-testCompile/inputFiles.lst        |   4 ++
     .../TEST-com.example.CatTest.xml              |  65 +++++++++++++++++
     .../TEST-com.example.FelineTest.xml           |  67 +++++++++++++++++
     ...TEST-com.example.LionParameterizedTest.xml |  65 +++++++++++++++++
     .../TEST-com.example.LionTest.xml             |  68 ++++++++++++++++++
     .../surefire-reports/com.example.CatTest.txt  |   4 ++
     .../com.example.FelineTest.txt                |   4 ++
     .../com.example.LionParameterizedTest.txt     |   4 ++
     .../surefire-reports/com.example.LionTest.txt |   4 ++
     target/test-classes/java/read.me              |   1 +
     untitled.iml                                  |   8 +++
     28 files changed, 580 insertions(+), 13 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/modules.xml
     create mode 100644 .idea/vcs.xml
     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/surefire-reports/TEST-com.example.CatTest.xml
     create mode 100644 target/surefire-reports/TEST-com.example.FelineTest.xml
     create mode 100644 target/surefire-reports/TEST-com.example.LionParameterizedTest.xml
     create mode 100644 target/surefire-reports/TEST-com.example.LionTest.xml
     create mode 100644 target/surefire-reports/com.example.CatTest.txt
     create mode 100644 target/surefire-reports/com.example.FelineTest.txt
     create mode 100644 target/surefire-reports/com.example.LionParameterizedTest.txt
     create mode 100644 target/surefire-reports/com.example.LionTest.txt
     create mode 100644 target/test-classes/java/read.me
     create mode 100644 untitled.iml
    
    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..d9e3477
    --- /dev/null
    +++ b/.idea/compiler.xml
    @@ -0,0 +1,13 @@
    +<?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" />
    +      </profile>
    +    </annotationProcessing>
    +  </component>
    +</project>
    \ 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 @@
    +<?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
    new file mode 100644
    index 0000000..86993b2
    --- /dev/null
    +++ b/.idea/misc.xml
    @@ -0,0 +1,12 @@
    +<?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_25" default="true" project-jdk-name="openjdk-25" project-jdk-type="JavaSDK" />
    +</project>
    \ No newline at end of file
    diff --git a/.idea/modules.xml b/.idea/modules.xml
    new file mode 100644
    index 0000000..3007dae
    --- /dev/null
    +++ b/.idea/modules.xml
    @@ -0,0 +1,8 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<project version="4">
    +  <component name="ProjectModuleManager">
    +    <modules>
    +      <module fileurl="file://$PROJECT_DIR$/untitled.iml" filepath="$PROJECT_DIR$/untitled.iml" />
    +    </modules>
    +  </component>
    +</project>
    \ 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 @@
    +<?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/pom.xml b/pom.xml
    index 8177035..1bf49e5 100644
    --- a/pom.xml
    +++ b/pom.xml
    @@ -1,11 +1,12 @@
    -<?xml version="1.0" encoding="UTF-8"?>
     <project xmlns="http://maven.apache.org/POM/4.0.0"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    -         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    +         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
    +         http://maven.apache.org/xsd/maven-4.0.0.xsd">
    +
         <modelVersion>4.0.0</modelVersion>
     
    -    <groupId>org.example</groupId>
    -    <artifactId>untitled</artifactId>
    +    <groupId>com.example</groupId>
    +    <artifactId>animal-project</artifactId>
         <version>1.0-SNAPSHOT</version>
     
         <properties>
    @@ -13,9 +14,30 @@
             <maven.compiler.target>11</maven.compiler.target>
         </properties>
     
    +    <dependencies>
    +
    +        <!-- JUnit 4 -->
    +        <dependency>
    +            <groupId>junit</groupId>
    +            <artifactId>junit</artifactId>
    +            <version>4.13.2</version>
    +            <scope>test</scope>
    +        </dependency>
    +
    +        <!-- Mockito -->
    +        <dependency>
    +            <groupId>org.mockito</groupId>
    +            <artifactId>mockito-core</artifactId>
    +            <version>4.11.0</version>
    +            <scope>test</scope>
    +        </dependency>
    +
    +    </dependencies>
    +
         <build>
    -        <sourceDirectory>src/main/java</sourceDirectory>
             <plugins>
    +
    +            <!-- Compiler -->
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-compiler-plugin</artifactId>
    @@ -25,6 +47,28 @@
                         <target>11</target>
                     </configuration>
                 </plugin>
    +
    +            <!-- JaCoCo -->
    +            <plugin>
    +                <groupId>org.jacoco</groupId>
    +                <artifactId>jacoco-maven-plugin</artifactId>
    +                <version>0.8.8</version>
    +                <executions>
    +                    <execution>
    +                        <goals>
    +                            <goal>prepare-agent</goal>
    +                        </goals>
    +                    </execution>
    +                    <execution>
    +                        <id>report</id>
    +                        <phase>test</phase>
    +                        <goals>
    +                            <goal>report</goal>
    +                        </goals>
    +                    </execution>
    +                </executions>
    +            </plugin>
    +
             </plugins>
         </build>
     
    diff --git a/src/main/java/com/example/Lion.java b/src/main/java/com/example/Lion.java
    index 8bd39f8..40f1a66 100644
    --- a/src/main/java/com/example/Lion.java
    +++ b/src/main/java/com/example/Lion.java
    @@ -4,20 +4,22 @@
     
     public class Lion {
     
    -    boolean hasMane;
    +    private final boolean hasMane;
    +    private final Feline feline;
    +
    +    public Lion(String sex, Feline feline) throws Exception {
    +
    +        this.feline = feline;
     
    -    public Lion(String sex) throws Exception {
             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();
         }
    @@ -29,4 +31,4 @@ public boolean doesHaveMane() {
         public List<String> getFood() throws Exception {
             return feline.getFood("Хищник");
         }
    -}
    +}
    \ No newline at end of file
    diff --git a/src/test/java/com/example/CatTest.java b/src/test/java/com/example/CatTest.java
    index cad5fd4..eba885d 100644
    --- a/src/test/java/com/example/CatTest.java
    +++ b/src/test/java/com/example/CatTest.java
    @@ -1,4 +1,33 @@
     package com.example;
     
    +import org.junit.Assert;
    +import org.junit.Test;
    +import org.mockito.Mockito;
    +
    +import java.util.List;
    +
     public class CatTest {
    -}
    +
    +    @Test
    +    public void getSoundTest() {
    +        Feline feline = Mockito.mock(Feline.class);
    +        Cat cat = new Cat(feline);
    +
    +        Assert.assertEquals("Мяу", cat.getSound());
    +    }
    +
    +    @Test
    +    public void getFoodTest() throws Exception {
    +        Feline feline = Mockito.mock(Feline.class);
    +
    +        Mockito.when(feline.eatMeat())
    +                .thenReturn(List.of("Животные"));
    +
    +        Cat cat = new Cat(feline);
    +
    +        Assert.assertEquals(
    +                List.of("Животные"),
    +                cat.getFood()
    +        );
    +    }
    +}
    \ No newline at end of file
    diff --git a/src/test/java/com/example/FelineTest.java b/src/test/java/com/example/FelineTest.java
    index 45d9f16..6437aa6 100644
    --- a/src/test/java/com/example/FelineTest.java
    +++ b/src/test/java/com/example/FelineTest.java
    @@ -1,4 +1,38 @@
     package com.example;
     
    +import org.junit.Assert;
    +import org.junit.Test;
    +
    +import java.util.List;
    +
     public class FelineTest {
    +
    +    @Test
    +    public void eatMeatTest() throws Exception {
    +        Feline feline = new Feline();
    +        List<String> food = feline.eatMeat();
    +
    +        Assert.assertEquals(
    +                List.of("Животные", "Птицы", "Рыба"),
    +                food
    +        );
    +    }
    +
    +    @Test
    +    public void getFamilyTest() {
    +        Feline feline = new Feline();
    +        Assert.assertEquals("Кошачьи", feline.getFamily());
    +    }
    +
    +    @Test
    +    public void getKittensDefaultTest() {
    +        Feline feline = new Feline();
    +        Assert.assertEquals(1, feline.getKittens());
    +    }
    +
    +    @Test
    +    public void getKittensWithParameterTest() {
    +        Feline feline = new Feline();
    +        Assert.assertEquals(5, feline.getKittens(5));
    +    }
     }
    diff --git a/src/test/java/com/example/LionParameterizedTest.java b/src/test/java/com/example/LionParameterizedTest.java
    index ceae173..be35c87 100644
    --- a/src/test/java/com/example/LionParameterizedTest.java
    +++ b/src/test/java/com/example/LionParameterizedTest.java
    @@ -1,4 +1,43 @@
     package com.example;
     
    +import org.junit.Assert;
    +import org.junit.Test;
    +import org.junit.runner.RunWith;
    +import org.junit.runners.Parameterized;
    +import org.mockito.Mockito;
    +
    +import java.util.Arrays;
    +import java.util.Collection;
    +
    +@RunWith(Parameterized.class)
     public class LionParameterizedTest {
    -}
    +
    +    private final String sex;
    +    private final boolean expectedHasMane;
    +
    +    public LionParameterizedTest(String sex, boolean expectedHasMane) {
    +        this.sex = sex;
    +        this.expectedHasMane = expectedHasMane;
    +    }
    +
    +    @Parameterized.Parameters(name = "Пол: {0} → есть грива: {1}")
    +    public static Collection<Object[]> data() {
    +        return Arrays.asList(new Object[][]{
    +                {"Самец", true},
    +                {"Самка", false}
    +        });
    +    }
    +
    +    @Test
    +    public void doesHaveManeTest() throws Exception {
    +
    +        Feline mockFeline = Mockito.mock(Feline.class);
    +
    +        Lion lion = new Lion(sex, mockFeline);
    +
    +        Assert.assertEquals(
    +                expectedHasMane,
    +                lion.doesHaveMane()
    +        );
    +    }
    +}
    \ No newline at end of file
    diff --git a/src/test/java/com/example/LionTest.java b/src/test/java/com/example/LionTest.java
    index 617b81b..33d6c95 100644
    --- a/src/test/java/com/example/LionTest.java
    +++ b/src/test/java/com/example/LionTest.java
    @@ -1,4 +1,58 @@
     package com.example;
     
    +import org.junit.Assert;
    +import org.junit.Test;
    +import org.mockito.Mockito;
    +
    +import java.util.List;
    +
     public class LionTest {
    +
    +    @Test
    +    public void maleLionTest() throws Exception {
    +        Feline feline = Mockito.mock(Feline.class);
    +        Lion lion = new Lion("Самец", feline);
    +
    +        Assert.assertTrue(lion.doesHaveMane());
    +    }
    +
    +    @Test
    +    public void femaleLionTest() throws Exception {
    +        Feline feline = Mockito.mock(Feline.class);
    +        Lion lion = new Lion("Самка", feline);
    +
    +        Assert.assertFalse(lion.doesHaveMane());
    +    }
    +
    +    @Test(expected = Exception.class)
    +    public void incorrectSexTest() throws Exception {
    +        Feline feline = Mockito.mock(Feline.class);
    +        new Lion("Неизвестно", feline);
    +    }
    +
    +    @Test
    +    public void getKittensTest() throws Exception {
    +        Feline feline = Mockito.mock(Feline.class);
    +
    +        Mockito.when(feline.getKittens()).thenReturn(3);
    +
    +        Lion lion = new Lion("Самец", feline);
    +
    +        Assert.assertEquals(3, lion.getKittens());
    +    }
    +
    +    @Test
    +    public void getFoodTest() throws Exception {
    +        Feline feline = Mockito.mock(Feline.class);
    +
    +        Mockito.when(feline.getFood("Хищник"))
    +                .thenReturn(List.of("Мясо"));
    +
    +        Lion lion = new Lion("Самец", feline);
    +
    +        Assert.assertEquals(
    +                List.of("Мясо"),
    +                lion.getFood()
    +        );
    +    }
     }
    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..ba0757cbe35e20c6868cf8e5943a4a19490df757
    GIT binary patch
    literal 67934
    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
    YBQxPK#eA7a6O$zt_!hhx8cV1D0M4rvnE(I)
    
    literal 0
    HcmV?d00001
    
    diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
    new file mode 100644
    index 0000000..e69de29
    diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
    new file mode 100644
    index 0000000..71181f9
    --- /dev/null
    +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
    @@ -0,0 +1,5 @@
    +/Users/mac/Desktop/Тестировка/qa_java/src/main/java/com/example/Cat.java
    +/Users/mac/Desktop/Тестировка/qa_java/src/main/java/com/example/Predator.java
    +/Users/mac/Desktop/Тестировка/qa_java/src/main/java/com/example/Lion.java
    +/Users/mac/Desktop/Тестировка/qa_java/src/main/java/com/example/Animal.java
    +/Users/mac/Desktop/Тестировка/qa_java/src/main/java/com/example/Feline.java
    diff --git a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst
    new file mode 100644
    index 0000000..17a7345
    --- /dev/null
    +++ b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst
    @@ -0,0 +1,3 @@
    +com/example/CatTest.class
    +com/example/LionParameterizedTest.class
    +com/example/LionTest.class
    diff --git a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
    new file mode 100644
    index 0000000..60911cf
    --- /dev/null
    +++ b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
    @@ -0,0 +1,4 @@
    +/Users/mac/Desktop/Тестировка/qa_java/src/test/java/com/example/FelineTest.java
    +/Users/mac/Desktop/Тестировка/qa_java/src/test/java/com/example/CatTest.java
    +/Users/mac/Desktop/Тестировка/qa_java/src/test/java/com/example/LionTest.java
    +/Users/mac/Desktop/Тестировка/qa_java/src/test/java/com/example/LionParameterizedTest.java
    diff --git a/target/surefire-reports/TEST-com.example.CatTest.xml b/target/surefire-reports/TEST-com.example.CatTest.xml
    new file mode 100644
    index 0000000..e394bdd
    --- /dev/null
    +++ b/target/surefire-reports/TEST-com.example.CatTest.xml
    @@ -0,0 +1,65 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report-3.0.xsd" version="3.0" name="com.example.CatTest" time="0.816" tests="2" errors="0" skipped="0" failures="0">
    +  <properties>
    +    <property name="java.specification.version" value="25"/>
    +    <property name="sun.jnu.encoding" value="UTF-8"/>
    +    <property name="java.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    +    <property name="java.vm.vendor" value="Oracle Corporation"/>
    +    <property name="sun.arch.data.model" value="64"/>
    +    <property name="java.vendor.url" value="https://java.oracle.com/"/>
    +    <property name="os.name" value="Mac OS X"/>
    +    <property name="java.vm.specification.version" value="25"/>
    +    <property name="user.country" value="RU"/>
    +    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    +    <property name="sun.boot.library.path" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home/lib"/>
    +    <property name="sun.java.command" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar /Users/mac/Desktop/Тестировка/qa_java/target/surefire 2026-02-26T13-42-32_555-jvmRun1 surefire-20260226134233353_1tmp surefire_0-20260226134233353_2tmp"/>
    +    <property name="jdk.debug" value="release"/>
    +    <property name="surefire.test.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    +    <property name="sun.cpu.endian" value="little"/>
    +    <property name="user.home" value="/Users/mac"/>
    +    <property name="user.language" value="ru"/>
    +    <property name="java.specification.vendor" value="Oracle Corporation"/>
    +    <property name="java.version.date" value="2025-10-21"/>
    +    <property name="java.home" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home"/>
    +    <property name="file.separator" value="/"/>
    +    <property name="basedir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    +    <property name="style.color" value="always"/>
    +    <property name="java.vm.compressedOopsMode" value="Zero based"/>
    +    <property name="line.separator" value="&#10;"/>
    +    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    +    <property name="java.specification.name" value="Java Platform API Specification"/>
    +    <property name="apple.awt.application.name" value="ForkedBooter"/>
    +    <property name="surefire.real.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar"/>
    +    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    +    <property name="java.runtime.version" value="25.0.1+8-27"/>
    +    <property name="user.name" value="mac"/>
    +    <property name="stdout.encoding" value="UTF-8"/>
    +    <property name="path.separator" value=":"/>
    +    <property name="os.version" value="15.7.4"/>
    +    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    +    <property name="file.encoding" value="UTF-8"/>
    +    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    +    <property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
    +    <property name="localRepository" value="/Users/mac/.m2/repository"/>
    +    <property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
    +    <property name="java.io.tmpdir" value="/var/folders/8g/pzl9v5dj4k75stvp9ztyzk2c0000gp/T/"/>
    +    <property name="idea.version" value="2025.2.5"/>
    +    <property name="java.version" value="25.0.1"/>
    +    <property name="user.dir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    +    <property name="os.arch" value="x86_64"/>
    +    <property name="jansi.passthrough" value="true"/>
    +    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    +    <property name="native.encoding" value="UTF-8"/>
    +    <property name="java.library.path" value="/Users/mac/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
    +    <property name="java.vm.info" value="mixed mode, sharing"/>
    +    <property name="stderr.encoding" value="UTF-8"/>
    +    <property name="java.vendor" value="Oracle Corporation"/>
    +    <property name="java.vm.version" value="25.0.1+8-27"/>
    +    <property name="stdin.encoding" value="UTF-8"/>
    +    <property name="sun.io.unicode.encoding" value="UnicodeBig"/>
    +    <property name="maven.repo.local" value="/Users/mac/.m2/repository"/>
    +    <property name="java.class.version" value="69.0"/>
    +  </properties>
    +  <testcase name="getFoodTest" classname="com.example.CatTest" time="0.744"/>
    +  <testcase name="getSoundTest" classname="com.example.CatTest" time="0.0"/>
    +</testsuite>
    \ No newline at end of file
    diff --git a/target/surefire-reports/TEST-com.example.FelineTest.xml b/target/surefire-reports/TEST-com.example.FelineTest.xml
    new file mode 100644
    index 0000000..d4e2e29
    --- /dev/null
    +++ b/target/surefire-reports/TEST-com.example.FelineTest.xml
    @@ -0,0 +1,67 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report-3.0.xsd" version="3.0" name="com.example.FelineTest" time="0.001" tests="4" errors="0" skipped="0" failures="0">
    +  <properties>
    +    <property name="java.specification.version" value="25"/>
    +    <property name="sun.jnu.encoding" value="UTF-8"/>
    +    <property name="java.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    +    <property name="java.vm.vendor" value="Oracle Corporation"/>
    +    <property name="sun.arch.data.model" value="64"/>
    +    <property name="java.vendor.url" value="https://java.oracle.com/"/>
    +    <property name="os.name" value="Mac OS X"/>
    +    <property name="java.vm.specification.version" value="25"/>
    +    <property name="user.country" value="RU"/>
    +    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    +    <property name="sun.boot.library.path" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home/lib"/>
    +    <property name="sun.java.command" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar /Users/mac/Desktop/Тестировка/qa_java/target/surefire 2026-02-26T13-42-32_555-jvmRun1 surefire-20260226134233353_1tmp surefire_0-20260226134233353_2tmp"/>
    +    <property name="jdk.debug" value="release"/>
    +    <property name="surefire.test.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    +    <property name="sun.cpu.endian" value="little"/>
    +    <property name="user.home" value="/Users/mac"/>
    +    <property name="user.language" value="ru"/>
    +    <property name="java.specification.vendor" value="Oracle Corporation"/>
    +    <property name="java.version.date" value="2025-10-21"/>
    +    <property name="java.home" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home"/>
    +    <property name="file.separator" value="/"/>
    +    <property name="basedir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    +    <property name="style.color" value="always"/>
    +    <property name="java.vm.compressedOopsMode" value="Zero based"/>
    +    <property name="line.separator" value="&#10;"/>
    +    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    +    <property name="java.specification.name" value="Java Platform API Specification"/>
    +    <property name="apple.awt.application.name" value="ForkedBooter"/>
    +    <property name="surefire.real.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar"/>
    +    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    +    <property name="java.runtime.version" value="25.0.1+8-27"/>
    +    <property name="user.name" value="mac"/>
    +    <property name="stdout.encoding" value="UTF-8"/>
    +    <property name="path.separator" value=":"/>
    +    <property name="os.version" value="15.7.4"/>
    +    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    +    <property name="file.encoding" value="UTF-8"/>
    +    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    +    <property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
    +    <property name="localRepository" value="/Users/mac/.m2/repository"/>
    +    <property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
    +    <property name="java.io.tmpdir" value="/var/folders/8g/pzl9v5dj4k75stvp9ztyzk2c0000gp/T/"/>
    +    <property name="idea.version" value="2025.2.5"/>
    +    <property name="java.version" value="25.0.1"/>
    +    <property name="user.dir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    +    <property name="os.arch" value="x86_64"/>
    +    <property name="jansi.passthrough" value="true"/>
    +    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    +    <property name="native.encoding" value="UTF-8"/>
    +    <property name="java.library.path" value="/Users/mac/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
    +    <property name="java.vm.info" value="mixed mode, sharing"/>
    +    <property name="stderr.encoding" value="UTF-8"/>
    +    <property name="java.vendor" value="Oracle Corporation"/>
    +    <property name="java.vm.version" value="25.0.1+8-27"/>
    +    <property name="stdin.encoding" value="UTF-8"/>
    +    <property name="sun.io.unicode.encoding" value="UnicodeBig"/>
    +    <property name="maven.repo.local" value="/Users/mac/.m2/repository"/>
    +    <property name="java.class.version" value="69.0"/>
    +  </properties>
    +  <testcase name="getKittensDefaultTest" classname="com.example.FelineTest" time="0.0"/>
    +  <testcase name="getFamilyTest" classname="com.example.FelineTest" time="0.0"/>
    +  <testcase name="getKittensWithParameterTest" classname="com.example.FelineTest" time="0.0"/>
    +  <testcase name="eatMeatTest" classname="com.example.FelineTest" time="0.0"/>
    +</testsuite>
    \ No newline at end of file
    diff --git a/target/surefire-reports/TEST-com.example.LionParameterizedTest.xml b/target/surefire-reports/TEST-com.example.LionParameterizedTest.xml
    new file mode 100644
    index 0000000..3b09bc3
    --- /dev/null
    +++ b/target/surefire-reports/TEST-com.example.LionParameterizedTest.xml
    @@ -0,0 +1,65 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report-3.0.xsd" version="3.0" name="com.example.LionParameterizedTest" time="0.001" tests="2" errors="0" skipped="0" failures="0">
    +  <properties>
    +    <property name="java.specification.version" value="25"/>
    +    <property name="sun.jnu.encoding" value="UTF-8"/>
    +    <property name="java.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    +    <property name="java.vm.vendor" value="Oracle Corporation"/>
    +    <property name="sun.arch.data.model" value="64"/>
    +    <property name="java.vendor.url" value="https://java.oracle.com/"/>
    +    <property name="os.name" value="Mac OS X"/>
    +    <property name="java.vm.specification.version" value="25"/>
    +    <property name="user.country" value="RU"/>
    +    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    +    <property name="sun.boot.library.path" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home/lib"/>
    +    <property name="sun.java.command" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar /Users/mac/Desktop/Тестировка/qa_java/target/surefire 2026-02-26T13-42-32_555-jvmRun1 surefire-20260226134233353_1tmp surefire_0-20260226134233353_2tmp"/>
    +    <property name="jdk.debug" value="release"/>
    +    <property name="surefire.test.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    +    <property name="sun.cpu.endian" value="little"/>
    +    <property name="user.home" value="/Users/mac"/>
    +    <property name="user.language" value="ru"/>
    +    <property name="java.specification.vendor" value="Oracle Corporation"/>
    +    <property name="java.version.date" value="2025-10-21"/>
    +    <property name="java.home" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home"/>
    +    <property name="file.separator" value="/"/>
    +    <property name="basedir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    +    <property name="style.color" value="always"/>
    +    <property name="java.vm.compressedOopsMode" value="Zero based"/>
    +    <property name="line.separator" value="&#10;"/>
    +    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    +    <property name="java.specification.name" value="Java Platform API Specification"/>
    +    <property name="apple.awt.application.name" value="ForkedBooter"/>
    +    <property name="surefire.real.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar"/>
    +    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    +    <property name="java.runtime.version" value="25.0.1+8-27"/>
    +    <property name="user.name" value="mac"/>
    +    <property name="stdout.encoding" value="UTF-8"/>
    +    <property name="path.separator" value=":"/>
    +    <property name="os.version" value="15.7.4"/>
    +    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    +    <property name="file.encoding" value="UTF-8"/>
    +    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    +    <property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
    +    <property name="localRepository" value="/Users/mac/.m2/repository"/>
    +    <property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
    +    <property name="java.io.tmpdir" value="/var/folders/8g/pzl9v5dj4k75stvp9ztyzk2c0000gp/T/"/>
    +    <property name="idea.version" value="2025.2.5"/>
    +    <property name="java.version" value="25.0.1"/>
    +    <property name="user.dir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    +    <property name="os.arch" value="x86_64"/>
    +    <property name="jansi.passthrough" value="true"/>
    +    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    +    <property name="native.encoding" value="UTF-8"/>
    +    <property name="java.library.path" value="/Users/mac/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
    +    <property name="java.vm.info" value="mixed mode, sharing"/>
    +    <property name="stderr.encoding" value="UTF-8"/>
    +    <property name="java.vendor" value="Oracle Corporation"/>
    +    <property name="java.vm.version" value="25.0.1+8-27"/>
    +    <property name="stdin.encoding" value="UTF-8"/>
    +    <property name="sun.io.unicode.encoding" value="UnicodeBig"/>
    +    <property name="maven.repo.local" value="/Users/mac/.m2/repository"/>
    +    <property name="java.class.version" value="69.0"/>
    +  </properties>
    +  <testcase name="doesHaveManeTest[Пол: Самец → есть грива: true]" classname="com.example.LionParameterizedTest" time="0.0"/>
    +  <testcase name="doesHaveManeTest[Пол: Самка → есть грива: false]" classname="com.example.LionParameterizedTest" time="0.0"/>
    +</testsuite>
    \ No newline at end of file
    diff --git a/target/surefire-reports/TEST-com.example.LionTest.xml b/target/surefire-reports/TEST-com.example.LionTest.xml
    new file mode 100644
    index 0000000..eba0358
    --- /dev/null
    +++ b/target/surefire-reports/TEST-com.example.LionTest.xml
    @@ -0,0 +1,68 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report-3.0.xsd" version="3.0" name="com.example.LionTest" time="0.001" tests="5" errors="0" skipped="0" failures="0">
    +  <properties>
    +    <property name="java.specification.version" value="25"/>
    +    <property name="sun.jnu.encoding" value="UTF-8"/>
    +    <property name="java.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    +    <property name="java.vm.vendor" value="Oracle Corporation"/>
    +    <property name="sun.arch.data.model" value="64"/>
    +    <property name="java.vendor.url" value="https://java.oracle.com/"/>
    +    <property name="os.name" value="Mac OS X"/>
    +    <property name="java.vm.specification.version" value="25"/>
    +    <property name="user.country" value="RU"/>
    +    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    +    <property name="sun.boot.library.path" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home/lib"/>
    +    <property name="sun.java.command" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar /Users/mac/Desktop/Тестировка/qa_java/target/surefire 2026-02-26T13-42-32_555-jvmRun1 surefire-20260226134233353_1tmp surefire_0-20260226134233353_2tmp"/>
    +    <property name="jdk.debug" value="release"/>
    +    <property name="surefire.test.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    +    <property name="sun.cpu.endian" value="little"/>
    +    <property name="user.home" value="/Users/mac"/>
    +    <property name="user.language" value="ru"/>
    +    <property name="java.specification.vendor" value="Oracle Corporation"/>
    +    <property name="java.version.date" value="2025-10-21"/>
    +    <property name="java.home" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home"/>
    +    <property name="file.separator" value="/"/>
    +    <property name="basedir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    +    <property name="style.color" value="always"/>
    +    <property name="java.vm.compressedOopsMode" value="Zero based"/>
    +    <property name="line.separator" value="&#10;"/>
    +    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    +    <property name="java.specification.name" value="Java Platform API Specification"/>
    +    <property name="apple.awt.application.name" value="ForkedBooter"/>
    +    <property name="surefire.real.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar"/>
    +    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    +    <property name="java.runtime.version" value="25.0.1+8-27"/>
    +    <property name="user.name" value="mac"/>
    +    <property name="stdout.encoding" value="UTF-8"/>
    +    <property name="path.separator" value=":"/>
    +    <property name="os.version" value="15.7.4"/>
    +    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    +    <property name="file.encoding" value="UTF-8"/>
    +    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    +    <property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
    +    <property name="localRepository" value="/Users/mac/.m2/repository"/>
    +    <property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
    +    <property name="java.io.tmpdir" value="/var/folders/8g/pzl9v5dj4k75stvp9ztyzk2c0000gp/T/"/>
    +    <property name="idea.version" value="2025.2.5"/>
    +    <property name="java.version" value="25.0.1"/>
    +    <property name="user.dir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    +    <property name="os.arch" value="x86_64"/>
    +    <property name="jansi.passthrough" value="true"/>
    +    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    +    <property name="native.encoding" value="UTF-8"/>
    +    <property name="java.library.path" value="/Users/mac/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
    +    <property name="java.vm.info" value="mixed mode, sharing"/>
    +    <property name="stderr.encoding" value="UTF-8"/>
    +    <property name="java.vendor" value="Oracle Corporation"/>
    +    <property name="java.vm.version" value="25.0.1+8-27"/>
    +    <property name="stdin.encoding" value="UTF-8"/>
    +    <property name="sun.io.unicode.encoding" value="UnicodeBig"/>
    +    <property name="maven.repo.local" value="/Users/mac/.m2/repository"/>
    +    <property name="java.class.version" value="69.0"/>
    +  </properties>
    +  <testcase name="maleLionTest" classname="com.example.LionTest" time="0.0"/>
    +  <testcase name="getFoodTest" classname="com.example.LionTest" time="0.0"/>
    +  <testcase name="femaleLionTest" classname="com.example.LionTest" time="0.0"/>
    +  <testcase name="getKittensTest" classname="com.example.LionTest" time="0.0"/>
    +  <testcase name="incorrectSexTest" classname="com.example.LionTest" time="0.0"/>
    +</testsuite>
    \ No newline at end of file
    diff --git a/target/surefire-reports/com.example.CatTest.txt b/target/surefire-reports/com.example.CatTest.txt
    new file mode 100644
    index 0000000..4c51f08
    --- /dev/null
    +++ b/target/surefire-reports/com.example.CatTest.txt
    @@ -0,0 +1,4 @@
    +-------------------------------------------------------------------------------
    +Test set: com.example.CatTest
    +-------------------------------------------------------------------------------
    +Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.816 s -- in com.example.CatTest
    diff --git a/target/surefire-reports/com.example.FelineTest.txt b/target/surefire-reports/com.example.FelineTest.txt
    new file mode 100644
    index 0000000..d3ae08d
    --- /dev/null
    +++ b/target/surefire-reports/com.example.FelineTest.txt
    @@ -0,0 +1,4 @@
    +-------------------------------------------------------------------------------
    +Test set: com.example.FelineTest
    +-------------------------------------------------------------------------------
    +Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s -- in com.example.FelineTest
    diff --git a/target/surefire-reports/com.example.LionParameterizedTest.txt b/target/surefire-reports/com.example.LionParameterizedTest.txt
    new file mode 100644
    index 0000000..7aba6de
    --- /dev/null
    +++ b/target/surefire-reports/com.example.LionParameterizedTest.txt
    @@ -0,0 +1,4 @@
    +-------------------------------------------------------------------------------
    +Test set: com.example.LionParameterizedTest
    +-------------------------------------------------------------------------------
    +Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s -- in com.example.LionParameterizedTest
    diff --git a/target/surefire-reports/com.example.LionTest.txt b/target/surefire-reports/com.example.LionTest.txt
    new file mode 100644
    index 0000000..f2ad9a9
    --- /dev/null
    +++ b/target/surefire-reports/com.example.LionTest.txt
    @@ -0,0 +1,4 @@
    +-------------------------------------------------------------------------------
    +Test set: com.example.LionTest
    +-------------------------------------------------------------------------------
    +Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s -- in com.example.LionTest
    diff --git a/target/test-classes/java/read.me b/target/test-classes/java/read.me
    new file mode 100644
    index 0000000..8b13789
    --- /dev/null
    +++ b/target/test-classes/java/read.me
    @@ -0,0 +1 @@
    +
    diff --git a/untitled.iml b/untitled.iml
    new file mode 100644
    index 0000000..219cba0
    --- /dev/null
    +++ b/untitled.iml
    @@ -0,0 +1,8 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<module version="4">
    +  <component name="AdditionalModuleElements">
    +    <content url="file://$MODULE_DIR$" dumb="true">
    +      <sourceFolder url="file://$MODULE_DIR$/src/test" isTestSource="true" />
    +    </content>
    +  </component>
    +</module>
    \ No newline at end of file
    
    From 45277817ce41e563cb6a391eced54533f1a41835 Mon Sep 17 00:00:00 2001
    From: Anastasia <anastasiaaok1996@gmail.com>
    Date: Sat, 28 Feb 2026 16:11:35 +0300
    Subject: [PATCH 3/5] remove .idea from repository
    
    ---
     .gitignore                                    |  3 +
     .idea/.gitignore                              |  3 -
     .idea/compiler.xml                            | 13 ----
     .idea/jarRepositories.xml                     | 20 ------
     .idea/misc.xml                                | 12 ----
     .idea/modules.xml                             |  8 ---
     .idea/vcs.xml                                 |  6 --
     src/test/java/com/example/LionTest.java       | 58 ----------------
     target/classes/read.me                        |  1 -
     .../compile/default-compile/createdFiles.lst  |  0
     .../compile/default-compile/inputFiles.lst    |  5 --
     .../default-testCompile/createdFiles.lst      |  3 -
     .../default-testCompile/inputFiles.lst        |  4 --
     .../TEST-com.example.CatTest.xml              | 65 ------------------
     .../TEST-com.example.FelineTest.xml           | 67 ------------------
     ...TEST-com.example.LionParameterizedTest.xml | 65 ------------------
     .../TEST-com.example.LionTest.xml             | 68 -------------------
     .../surefire-reports/com.example.CatTest.txt  |  4 --
     .../com.example.FelineTest.txt                |  4 --
     .../com.example.LionParameterizedTest.txt     |  4 --
     .../surefire-reports/com.example.LionTest.txt |  4 --
     target/test-classes/java/read.me              |  1 -
     22 files changed, 3 insertions(+), 415 deletions(-)
     delete mode 100644 .idea/.gitignore
     delete mode 100644 .idea/compiler.xml
     delete mode 100644 .idea/jarRepositories.xml
     delete mode 100644 .idea/misc.xml
     delete mode 100644 .idea/modules.xml
     delete mode 100644 .idea/vcs.xml
     delete mode 100644 src/test/java/com/example/LionTest.java
     delete mode 100644 target/classes/read.me
     delete mode 100644 target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
     delete mode 100644 target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
     delete mode 100644 target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst
     delete mode 100644 target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
     delete mode 100644 target/surefire-reports/TEST-com.example.CatTest.xml
     delete mode 100644 target/surefire-reports/TEST-com.example.FelineTest.xml
     delete mode 100644 target/surefire-reports/TEST-com.example.LionParameterizedTest.xml
     delete mode 100644 target/surefire-reports/TEST-com.example.LionTest.xml
     delete mode 100644 target/surefire-reports/com.example.CatTest.txt
     delete mode 100644 target/surefire-reports/com.example.FelineTest.txt
     delete mode 100644 target/surefire-reports/com.example.LionParameterizedTest.txt
     delete mode 100644 target/surefire-reports/com.example.LionTest.txt
     delete mode 100644 target/test-classes/java/read.me
    
    diff --git a/.gitignore b/.gitignore
    index a1c2a23..94d84d9 100644
    --- a/.gitignore
    +++ b/.gitignore
    @@ -1,5 +1,8 @@
     # Compiled class file
     *.class
    +.idea/
    +*.iml
    +target/
     
     # Log file
     *.log
    diff --git a/.idea/.gitignore b/.idea/.gitignore
    deleted file mode 100644
    index 26d3352..0000000
    --- a/.idea/.gitignore
    +++ /dev/null
    @@ -1,3 +0,0 @@
    -# Default ignored files
    -/shelf/
    -/workspace.xml
    diff --git a/.idea/compiler.xml b/.idea/compiler.xml
    deleted file mode 100644
    index d9e3477..0000000
    --- a/.idea/compiler.xml
    +++ /dev/null
    @@ -1,13 +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" />
    -      </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 86993b2..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_25" default="true" project-jdk-name="openjdk-25" project-jdk-type="JavaSDK" />
    -</project>
    \ No newline at end of file
    diff --git a/.idea/modules.xml b/.idea/modules.xml
    deleted file mode 100644
    index 3007dae..0000000
    --- a/.idea/modules.xml
    +++ /dev/null
    @@ -1,8 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<project version="4">
    -  <component name="ProjectModuleManager">
    -    <modules>
    -      <module fileurl="file://$PROJECT_DIR$/untitled.iml" filepath="$PROJECT_DIR$/untitled.iml" />
    -    </modules>
    -  </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/test/java/com/example/LionTest.java b/src/test/java/com/example/LionTest.java
    deleted file mode 100644
    index 33d6c95..0000000
    --- a/src/test/java/com/example/LionTest.java
    +++ /dev/null
    @@ -1,58 +0,0 @@
    -package com.example;
    -
    -import org.junit.Assert;
    -import org.junit.Test;
    -import org.mockito.Mockito;
    -
    -import java.util.List;
    -
    -public class LionTest {
    -
    -    @Test
    -    public void maleLionTest() throws Exception {
    -        Feline feline = Mockito.mock(Feline.class);
    -        Lion lion = new Lion("Самец", feline);
    -
    -        Assert.assertTrue(lion.doesHaveMane());
    -    }
    -
    -    @Test
    -    public void femaleLionTest() throws Exception {
    -        Feline feline = Mockito.mock(Feline.class);
    -        Lion lion = new Lion("Самка", feline);
    -
    -        Assert.assertFalse(lion.doesHaveMane());
    -    }
    -
    -    @Test(expected = Exception.class)
    -    public void incorrectSexTest() throws Exception {
    -        Feline feline = Mockito.mock(Feline.class);
    -        new Lion("Неизвестно", feline);
    -    }
    -
    -    @Test
    -    public void getKittensTest() throws Exception {
    -        Feline feline = Mockito.mock(Feline.class);
    -
    -        Mockito.when(feline.getKittens()).thenReturn(3);
    -
    -        Lion lion = new Lion("Самец", feline);
    -
    -        Assert.assertEquals(3, lion.getKittens());
    -    }
    -
    -    @Test
    -    public void getFoodTest() throws Exception {
    -        Feline feline = Mockito.mock(Feline.class);
    -
    -        Mockito.when(feline.getFood("Хищник"))
    -                .thenReturn(List.of("Мясо"));
    -
    -        Lion lion = new Lion("Самец", feline);
    -
    -        Assert.assertEquals(
    -                List.of("Мясо"),
    -                lion.getFood()
    -        );
    -    }
    -}
    diff --git a/target/classes/read.me b/target/classes/read.me
    deleted file mode 100644
    index 8b13789..0000000
    --- a/target/classes/read.me
    +++ /dev/null
    @@ -1 +0,0 @@
    -
    diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
    deleted file mode 100644
    index e69de29..0000000
    diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
    deleted file mode 100644
    index 71181f9..0000000
    --- a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
    +++ /dev/null
    @@ -1,5 +0,0 @@
    -/Users/mac/Desktop/Тестировка/qa_java/src/main/java/com/example/Cat.java
    -/Users/mac/Desktop/Тестировка/qa_java/src/main/java/com/example/Predator.java
    -/Users/mac/Desktop/Тестировка/qa_java/src/main/java/com/example/Lion.java
    -/Users/mac/Desktop/Тестировка/qa_java/src/main/java/com/example/Animal.java
    -/Users/mac/Desktop/Тестировка/qa_java/src/main/java/com/example/Feline.java
    diff --git a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst
    deleted file mode 100644
    index 17a7345..0000000
    --- a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst
    +++ /dev/null
    @@ -1,3 +0,0 @@
    -com/example/CatTest.class
    -com/example/LionParameterizedTest.class
    -com/example/LionTest.class
    diff --git a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
    deleted file mode 100644
    index 60911cf..0000000
    --- a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
    +++ /dev/null
    @@ -1,4 +0,0 @@
    -/Users/mac/Desktop/Тестировка/qa_java/src/test/java/com/example/FelineTest.java
    -/Users/mac/Desktop/Тестировка/qa_java/src/test/java/com/example/CatTest.java
    -/Users/mac/Desktop/Тестировка/qa_java/src/test/java/com/example/LionTest.java
    -/Users/mac/Desktop/Тестировка/qa_java/src/test/java/com/example/LionParameterizedTest.java
    diff --git a/target/surefire-reports/TEST-com.example.CatTest.xml b/target/surefire-reports/TEST-com.example.CatTest.xml
    deleted file mode 100644
    index e394bdd..0000000
    --- a/target/surefire-reports/TEST-com.example.CatTest.xml
    +++ /dev/null
    @@ -1,65 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report-3.0.xsd" version="3.0" name="com.example.CatTest" time="0.816" tests="2" errors="0" skipped="0" failures="0">
    -  <properties>
    -    <property name="java.specification.version" value="25"/>
    -    <property name="sun.jnu.encoding" value="UTF-8"/>
    -    <property name="java.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    -    <property name="java.vm.vendor" value="Oracle Corporation"/>
    -    <property name="sun.arch.data.model" value="64"/>
    -    <property name="java.vendor.url" value="https://java.oracle.com/"/>
    -    <property name="os.name" value="Mac OS X"/>
    -    <property name="java.vm.specification.version" value="25"/>
    -    <property name="user.country" value="RU"/>
    -    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    -    <property name="sun.boot.library.path" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home/lib"/>
    -    <property name="sun.java.command" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar /Users/mac/Desktop/Тестировка/qa_java/target/surefire 2026-02-26T13-42-32_555-jvmRun1 surefire-20260226134233353_1tmp surefire_0-20260226134233353_2tmp"/>
    -    <property name="jdk.debug" value="release"/>
    -    <property name="surefire.test.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    -    <property name="sun.cpu.endian" value="little"/>
    -    <property name="user.home" value="/Users/mac"/>
    -    <property name="user.language" value="ru"/>
    -    <property name="java.specification.vendor" value="Oracle Corporation"/>
    -    <property name="java.version.date" value="2025-10-21"/>
    -    <property name="java.home" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home"/>
    -    <property name="file.separator" value="/"/>
    -    <property name="basedir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    -    <property name="style.color" value="always"/>
    -    <property name="java.vm.compressedOopsMode" value="Zero based"/>
    -    <property name="line.separator" value="&#10;"/>
    -    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    -    <property name="java.specification.name" value="Java Platform API Specification"/>
    -    <property name="apple.awt.application.name" value="ForkedBooter"/>
    -    <property name="surefire.real.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar"/>
    -    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    -    <property name="java.runtime.version" value="25.0.1+8-27"/>
    -    <property name="user.name" value="mac"/>
    -    <property name="stdout.encoding" value="UTF-8"/>
    -    <property name="path.separator" value=":"/>
    -    <property name="os.version" value="15.7.4"/>
    -    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    -    <property name="file.encoding" value="UTF-8"/>
    -    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    -    <property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
    -    <property name="localRepository" value="/Users/mac/.m2/repository"/>
    -    <property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
    -    <property name="java.io.tmpdir" value="/var/folders/8g/pzl9v5dj4k75stvp9ztyzk2c0000gp/T/"/>
    -    <property name="idea.version" value="2025.2.5"/>
    -    <property name="java.version" value="25.0.1"/>
    -    <property name="user.dir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    -    <property name="os.arch" value="x86_64"/>
    -    <property name="jansi.passthrough" value="true"/>
    -    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    -    <property name="native.encoding" value="UTF-8"/>
    -    <property name="java.library.path" value="/Users/mac/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
    -    <property name="java.vm.info" value="mixed mode, sharing"/>
    -    <property name="stderr.encoding" value="UTF-8"/>
    -    <property name="java.vendor" value="Oracle Corporation"/>
    -    <property name="java.vm.version" value="25.0.1+8-27"/>
    -    <property name="stdin.encoding" value="UTF-8"/>
    -    <property name="sun.io.unicode.encoding" value="UnicodeBig"/>
    -    <property name="maven.repo.local" value="/Users/mac/.m2/repository"/>
    -    <property name="java.class.version" value="69.0"/>
    -  </properties>
    -  <testcase name="getFoodTest" classname="com.example.CatTest" time="0.744"/>
    -  <testcase name="getSoundTest" classname="com.example.CatTest" time="0.0"/>
    -</testsuite>
    \ No newline at end of file
    diff --git a/target/surefire-reports/TEST-com.example.FelineTest.xml b/target/surefire-reports/TEST-com.example.FelineTest.xml
    deleted file mode 100644
    index d4e2e29..0000000
    --- a/target/surefire-reports/TEST-com.example.FelineTest.xml
    +++ /dev/null
    @@ -1,67 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report-3.0.xsd" version="3.0" name="com.example.FelineTest" time="0.001" tests="4" errors="0" skipped="0" failures="0">
    -  <properties>
    -    <property name="java.specification.version" value="25"/>
    -    <property name="sun.jnu.encoding" value="UTF-8"/>
    -    <property name="java.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    -    <property name="java.vm.vendor" value="Oracle Corporation"/>
    -    <property name="sun.arch.data.model" value="64"/>
    -    <property name="java.vendor.url" value="https://java.oracle.com/"/>
    -    <property name="os.name" value="Mac OS X"/>
    -    <property name="java.vm.specification.version" value="25"/>
    -    <property name="user.country" value="RU"/>
    -    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    -    <property name="sun.boot.library.path" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home/lib"/>
    -    <property name="sun.java.command" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar /Users/mac/Desktop/Тестировка/qa_java/target/surefire 2026-02-26T13-42-32_555-jvmRun1 surefire-20260226134233353_1tmp surefire_0-20260226134233353_2tmp"/>
    -    <property name="jdk.debug" value="release"/>
    -    <property name="surefire.test.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    -    <property name="sun.cpu.endian" value="little"/>
    -    <property name="user.home" value="/Users/mac"/>
    -    <property name="user.language" value="ru"/>
    -    <property name="java.specification.vendor" value="Oracle Corporation"/>
    -    <property name="java.version.date" value="2025-10-21"/>
    -    <property name="java.home" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home"/>
    -    <property name="file.separator" value="/"/>
    -    <property name="basedir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    -    <property name="style.color" value="always"/>
    -    <property name="java.vm.compressedOopsMode" value="Zero based"/>
    -    <property name="line.separator" value="&#10;"/>
    -    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    -    <property name="java.specification.name" value="Java Platform API Specification"/>
    -    <property name="apple.awt.application.name" value="ForkedBooter"/>
    -    <property name="surefire.real.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar"/>
    -    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    -    <property name="java.runtime.version" value="25.0.1+8-27"/>
    -    <property name="user.name" value="mac"/>
    -    <property name="stdout.encoding" value="UTF-8"/>
    -    <property name="path.separator" value=":"/>
    -    <property name="os.version" value="15.7.4"/>
    -    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    -    <property name="file.encoding" value="UTF-8"/>
    -    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    -    <property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
    -    <property name="localRepository" value="/Users/mac/.m2/repository"/>
    -    <property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
    -    <property name="java.io.tmpdir" value="/var/folders/8g/pzl9v5dj4k75stvp9ztyzk2c0000gp/T/"/>
    -    <property name="idea.version" value="2025.2.5"/>
    -    <property name="java.version" value="25.0.1"/>
    -    <property name="user.dir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    -    <property name="os.arch" value="x86_64"/>
    -    <property name="jansi.passthrough" value="true"/>
    -    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    -    <property name="native.encoding" value="UTF-8"/>
    -    <property name="java.library.path" value="/Users/mac/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
    -    <property name="java.vm.info" value="mixed mode, sharing"/>
    -    <property name="stderr.encoding" value="UTF-8"/>
    -    <property name="java.vendor" value="Oracle Corporation"/>
    -    <property name="java.vm.version" value="25.0.1+8-27"/>
    -    <property name="stdin.encoding" value="UTF-8"/>
    -    <property name="sun.io.unicode.encoding" value="UnicodeBig"/>
    -    <property name="maven.repo.local" value="/Users/mac/.m2/repository"/>
    -    <property name="java.class.version" value="69.0"/>
    -  </properties>
    -  <testcase name="getKittensDefaultTest" classname="com.example.FelineTest" time="0.0"/>
    -  <testcase name="getFamilyTest" classname="com.example.FelineTest" time="0.0"/>
    -  <testcase name="getKittensWithParameterTest" classname="com.example.FelineTest" time="0.0"/>
    -  <testcase name="eatMeatTest" classname="com.example.FelineTest" time="0.0"/>
    -</testsuite>
    \ No newline at end of file
    diff --git a/target/surefire-reports/TEST-com.example.LionParameterizedTest.xml b/target/surefire-reports/TEST-com.example.LionParameterizedTest.xml
    deleted file mode 100644
    index 3b09bc3..0000000
    --- a/target/surefire-reports/TEST-com.example.LionParameterizedTest.xml
    +++ /dev/null
    @@ -1,65 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report-3.0.xsd" version="3.0" name="com.example.LionParameterizedTest" time="0.001" tests="2" errors="0" skipped="0" failures="0">
    -  <properties>
    -    <property name="java.specification.version" value="25"/>
    -    <property name="sun.jnu.encoding" value="UTF-8"/>
    -    <property name="java.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    -    <property name="java.vm.vendor" value="Oracle Corporation"/>
    -    <property name="sun.arch.data.model" value="64"/>
    -    <property name="java.vendor.url" value="https://java.oracle.com/"/>
    -    <property name="os.name" value="Mac OS X"/>
    -    <property name="java.vm.specification.version" value="25"/>
    -    <property name="user.country" value="RU"/>
    -    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    -    <property name="sun.boot.library.path" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home/lib"/>
    -    <property name="sun.java.command" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar /Users/mac/Desktop/Тестировка/qa_java/target/surefire 2026-02-26T13-42-32_555-jvmRun1 surefire-20260226134233353_1tmp surefire_0-20260226134233353_2tmp"/>
    -    <property name="jdk.debug" value="release"/>
    -    <property name="surefire.test.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    -    <property name="sun.cpu.endian" value="little"/>
    -    <property name="user.home" value="/Users/mac"/>
    -    <property name="user.language" value="ru"/>
    -    <property name="java.specification.vendor" value="Oracle Corporation"/>
    -    <property name="java.version.date" value="2025-10-21"/>
    -    <property name="java.home" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home"/>
    -    <property name="file.separator" value="/"/>
    -    <property name="basedir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    -    <property name="style.color" value="always"/>
    -    <property name="java.vm.compressedOopsMode" value="Zero based"/>
    -    <property name="line.separator" value="&#10;"/>
    -    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    -    <property name="java.specification.name" value="Java Platform API Specification"/>
    -    <property name="apple.awt.application.name" value="ForkedBooter"/>
    -    <property name="surefire.real.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar"/>
    -    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    -    <property name="java.runtime.version" value="25.0.1+8-27"/>
    -    <property name="user.name" value="mac"/>
    -    <property name="stdout.encoding" value="UTF-8"/>
    -    <property name="path.separator" value=":"/>
    -    <property name="os.version" value="15.7.4"/>
    -    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    -    <property name="file.encoding" value="UTF-8"/>
    -    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    -    <property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
    -    <property name="localRepository" value="/Users/mac/.m2/repository"/>
    -    <property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
    -    <property name="java.io.tmpdir" value="/var/folders/8g/pzl9v5dj4k75stvp9ztyzk2c0000gp/T/"/>
    -    <property name="idea.version" value="2025.2.5"/>
    -    <property name="java.version" value="25.0.1"/>
    -    <property name="user.dir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    -    <property name="os.arch" value="x86_64"/>
    -    <property name="jansi.passthrough" value="true"/>
    -    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    -    <property name="native.encoding" value="UTF-8"/>
    -    <property name="java.library.path" value="/Users/mac/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
    -    <property name="java.vm.info" value="mixed mode, sharing"/>
    -    <property name="stderr.encoding" value="UTF-8"/>
    -    <property name="java.vendor" value="Oracle Corporation"/>
    -    <property name="java.vm.version" value="25.0.1+8-27"/>
    -    <property name="stdin.encoding" value="UTF-8"/>
    -    <property name="sun.io.unicode.encoding" value="UnicodeBig"/>
    -    <property name="maven.repo.local" value="/Users/mac/.m2/repository"/>
    -    <property name="java.class.version" value="69.0"/>
    -  </properties>
    -  <testcase name="doesHaveManeTest[Пол: Самец → есть грива: true]" classname="com.example.LionParameterizedTest" time="0.0"/>
    -  <testcase name="doesHaveManeTest[Пол: Самка → есть грива: false]" classname="com.example.LionParameterizedTest" time="0.0"/>
    -</testsuite>
    \ No newline at end of file
    diff --git a/target/surefire-reports/TEST-com.example.LionTest.xml b/target/surefire-reports/TEST-com.example.LionTest.xml
    deleted file mode 100644
    index eba0358..0000000
    --- a/target/surefire-reports/TEST-com.example.LionTest.xml
    +++ /dev/null
    @@ -1,68 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report-3.0.xsd" version="3.0" name="com.example.LionTest" time="0.001" tests="5" errors="0" skipped="0" failures="0">
    -  <properties>
    -    <property name="java.specification.version" value="25"/>
    -    <property name="sun.jnu.encoding" value="UTF-8"/>
    -    <property name="java.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    -    <property name="java.vm.vendor" value="Oracle Corporation"/>
    -    <property name="sun.arch.data.model" value="64"/>
    -    <property name="java.vendor.url" value="https://java.oracle.com/"/>
    -    <property name="os.name" value="Mac OS X"/>
    -    <property name="java.vm.specification.version" value="25"/>
    -    <property name="user.country" value="RU"/>
    -    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    -    <property name="sun.boot.library.path" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home/lib"/>
    -    <property name="sun.java.command" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar /Users/mac/Desktop/Тестировка/qa_java/target/surefire 2026-02-26T13-42-32_555-jvmRun1 surefire-20260226134233353_1tmp surefire_0-20260226134233353_2tmp"/>
    -    <property name="jdk.debug" value="release"/>
    -    <property name="surefire.test.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/test-classes:/Users/mac/Desktop/Тестировка/qa_java/target/classes:/Users/mac/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/mac/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/mac/.m2/repository/org/mockito/mockito-core/4.11.0/mockito-core-4.11.0.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy/1.12.19/byte-buddy-1.12.19.jar:/Users/mac/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.19/byte-buddy-agent-1.12.19.jar:/Users/mac/.m2/repository/org/objenesis/objenesis/3.3/objenesis-3.3.jar:"/>
    -    <property name="sun.cpu.endian" value="little"/>
    -    <property name="user.home" value="/Users/mac"/>
    -    <property name="user.language" value="ru"/>
    -    <property name="java.specification.vendor" value="Oracle Corporation"/>
    -    <property name="java.version.date" value="2025-10-21"/>
    -    <property name="java.home" value="/Users/mac/Library/Java/JavaVirtualMachines/openjdk-25.0.1/Contents/Home"/>
    -    <property name="file.separator" value="/"/>
    -    <property name="basedir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    -    <property name="style.color" value="always"/>
    -    <property name="java.vm.compressedOopsMode" value="Zero based"/>
    -    <property name="line.separator" value="&#10;"/>
    -    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    -    <property name="java.specification.name" value="Java Platform API Specification"/>
    -    <property name="apple.awt.application.name" value="ForkedBooter"/>
    -    <property name="surefire.real.class.path" value="/Users/mac/Desktop/Тестировка/qa_java/target/surefire/surefirebooter-20260226134233353_3.jar"/>
    -    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    -    <property name="java.runtime.version" value="25.0.1+8-27"/>
    -    <property name="user.name" value="mac"/>
    -    <property name="stdout.encoding" value="UTF-8"/>
    -    <property name="path.separator" value=":"/>
    -    <property name="os.version" value="15.7.4"/>
    -    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    -    <property name="file.encoding" value="UTF-8"/>
    -    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    -    <property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
    -    <property name="localRepository" value="/Users/mac/.m2/repository"/>
    -    <property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
    -    <property name="java.io.tmpdir" value="/var/folders/8g/pzl9v5dj4k75stvp9ztyzk2c0000gp/T/"/>
    -    <property name="idea.version" value="2025.2.5"/>
    -    <property name="java.version" value="25.0.1"/>
    -    <property name="user.dir" value="/Users/mac/Desktop/Тестировка/qa_java"/>
    -    <property name="os.arch" value="x86_64"/>
    -    <property name="jansi.passthrough" value="true"/>
    -    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    -    <property name="native.encoding" value="UTF-8"/>
    -    <property name="java.library.path" value="/Users/mac/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
    -    <property name="java.vm.info" value="mixed mode, sharing"/>
    -    <property name="stderr.encoding" value="UTF-8"/>
    -    <property name="java.vendor" value="Oracle Corporation"/>
    -    <property name="java.vm.version" value="25.0.1+8-27"/>
    -    <property name="stdin.encoding" value="UTF-8"/>
    -    <property name="sun.io.unicode.encoding" value="UnicodeBig"/>
    -    <property name="maven.repo.local" value="/Users/mac/.m2/repository"/>
    -    <property name="java.class.version" value="69.0"/>
    -  </properties>
    -  <testcase name="maleLionTest" classname="com.example.LionTest" time="0.0"/>
    -  <testcase name="getFoodTest" classname="com.example.LionTest" time="0.0"/>
    -  <testcase name="femaleLionTest" classname="com.example.LionTest" time="0.0"/>
    -  <testcase name="getKittensTest" classname="com.example.LionTest" time="0.0"/>
    -  <testcase name="incorrectSexTest" classname="com.example.LionTest" time="0.0"/>
    -</testsuite>
    \ No newline at end of file
    diff --git a/target/surefire-reports/com.example.CatTest.txt b/target/surefire-reports/com.example.CatTest.txt
    deleted file mode 100644
    index 4c51f08..0000000
    --- a/target/surefire-reports/com.example.CatTest.txt
    +++ /dev/null
    @@ -1,4 +0,0 @@
    --------------------------------------------------------------------------------
    -Test set: com.example.CatTest
    --------------------------------------------------------------------------------
    -Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.816 s -- in com.example.CatTest
    diff --git a/target/surefire-reports/com.example.FelineTest.txt b/target/surefire-reports/com.example.FelineTest.txt
    deleted file mode 100644
    index d3ae08d..0000000
    --- a/target/surefire-reports/com.example.FelineTest.txt
    +++ /dev/null
    @@ -1,4 +0,0 @@
    --------------------------------------------------------------------------------
    -Test set: com.example.FelineTest
    --------------------------------------------------------------------------------
    -Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s -- in com.example.FelineTest
    diff --git a/target/surefire-reports/com.example.LionParameterizedTest.txt b/target/surefire-reports/com.example.LionParameterizedTest.txt
    deleted file mode 100644
    index 7aba6de..0000000
    --- a/target/surefire-reports/com.example.LionParameterizedTest.txt
    +++ /dev/null
    @@ -1,4 +0,0 @@
    --------------------------------------------------------------------------------
    -Test set: com.example.LionParameterizedTest
    --------------------------------------------------------------------------------
    -Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s -- in com.example.LionParameterizedTest
    diff --git a/target/surefire-reports/com.example.LionTest.txt b/target/surefire-reports/com.example.LionTest.txt
    deleted file mode 100644
    index f2ad9a9..0000000
    --- a/target/surefire-reports/com.example.LionTest.txt
    +++ /dev/null
    @@ -1,4 +0,0 @@
    --------------------------------------------------------------------------------
    -Test set: com.example.LionTest
    --------------------------------------------------------------------------------
    -Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s -- in com.example.LionTest
    diff --git a/target/test-classes/java/read.me b/target/test-classes/java/read.me
    deleted file mode 100644
    index 8b13789..0000000
    --- a/target/test-classes/java/read.me
    +++ /dev/null
    @@ -1 +0,0 @@
    -
    
    From 2bf9757669268cfb000003036b2785710d468719 Mon Sep 17 00:00:00 2001
    From: Anastasia <anastasiaaok1996@gmail.com>
    Date: Sat, 28 Feb 2026 16:58:20 +0300
    Subject: [PATCH 4/5] fix review comments
    
    ---
     src/test/java/com/example/CatTest.java    |  4 ++--
     src/test/java/com/example/FelineTest.java | 14 +++++++++-----
     2 files changed, 11 insertions(+), 7 deletions(-)
    
    diff --git a/src/test/java/com/example/CatTest.java b/src/test/java/com/example/CatTest.java
    index eba885d..d65dac7 100644
    --- a/src/test/java/com/example/CatTest.java
    +++ b/src/test/java/com/example/CatTest.java
    @@ -21,12 +21,12 @@ public void getFoodTest() throws Exception {
             Feline feline = Mockito.mock(Feline.class);
     
             Mockito.when(feline.eatMeat())
    -                .thenReturn(List.of("Животные"));
    +                .thenReturn(List.of("Животные", "Птицы", "Рыба"));
     
             Cat cat = new Cat(feline);
     
             Assert.assertEquals(
    -                List.of("Животные"),
    +                List.of("Животные", "Птицы", "Рыба"),
                     cat.getFood()
             );
         }
    diff --git a/src/test/java/com/example/FelineTest.java b/src/test/java/com/example/FelineTest.java
    index 6437aa6..ba47f02 100644
    --- a/src/test/java/com/example/FelineTest.java
    +++ b/src/test/java/com/example/FelineTest.java
    @@ -1,15 +1,22 @@
     package com.example;
     
     import org.junit.Assert;
    +import org.junit.Before;
     import org.junit.Test;
     
     import java.util.List;
     
     public class FelineTest {
     
    +    private Feline feline;
    +
    +    @Before
    +    public void setUp() {
    +        feline = new Feline();
    +    }
    +
         @Test
         public void eatMeatTest() throws Exception {
    -        Feline feline = new Feline();
             List<String> food = feline.eatMeat();
     
             Assert.assertEquals(
    @@ -20,19 +27,16 @@ public void eatMeatTest() throws Exception {
     
         @Test
         public void getFamilyTest() {
    -        Feline feline = new Feline();
             Assert.assertEquals("Кошачьи", feline.getFamily());
         }
     
         @Test
         public void getKittensDefaultTest() {
    -        Feline feline = new Feline();
             Assert.assertEquals(1, feline.getKittens());
         }
     
         @Test
         public void getKittensWithParameterTest() {
    -        Feline feline = new Feline();
             Assert.assertEquals(5, feline.getKittens(5));
         }
    -}
    +}
    \ No newline at end of file
    
    From 5cb76a33652829855347fc2c99dcf81ba90bdf82 Mon Sep 17 00:00:00 2001
    From: Anastasia <anastasiaaok1996@gmail.com>
    Date: Mon, 2 Mar 2026 15:43:23 +0300
    Subject: [PATCH 5/5] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?=
     =?UTF-8?q?=D0=BD=D1=8B=20=D1=82=D0=B5=D1=81=D1=82=D1=8B=20=D0=B4=D0=BB?=
     =?UTF-8?q?=D1=8F=20Lion?=
    MIME-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    
    ---
     src/test/java/com/example/LionTest.java | 43 +++++++++++++++++++++++++
     1 file changed, 43 insertions(+)
     create mode 100644 src/test/java/com/example/LionTest.java
    
    diff --git a/src/test/java/com/example/LionTest.java b/src/test/java/com/example/LionTest.java
    new file mode 100644
    index 0000000..2b27f23
    --- /dev/null
    +++ b/src/test/java/com/example/LionTest.java
    @@ -0,0 +1,43 @@
    +package com.example;
    +
    +import org.junit.Test;
    +import org.mockito.Mockito;
    +
    +import java.util.List;
    +
    +import static org.junit.Assert.assertEquals;
    +
    +public class LionTest {
    +
    +    @Test
    +    public void getKittensTest() throws Exception {
    +        Feline feline = Mockito.mock(Feline.class);
    +        Mockito.when(feline.getKittens()).thenReturn(3);
    +
    +        Lion lion = new Lion("Самец", feline);
    +
    +        assertEquals(3, lion.getKittens());
    +    }
    +
    +    @Test
    +    public void getFoodTest() throws Exception {
    +        Feline feline = Mockito.mock(Feline.class);
    +
    +        Mockito.when(feline.getFood("Хищник"))
    +                .thenReturn(List.of("Животные", "Птицы", "Рыба"));
    +
    +        Lion lion = new Lion("Самка", feline);
    +
    +        assertEquals(
    +                List.of("Животные", "Птицы", "Рыба"),
    +                lion.getFood()
    +        );
    +    }
    +
    +    @Test(expected = Exception.class)
    +    public void constructorExceptionTest() throws Exception {
    +        Feline feline = Mockito.mock(Feline.class);
    +
    +        new Lion("Неизвестно", feline);
    +    }
    +}
    \ No newline at end of file